#!/usr/bin/env python import os import sys try: from setuptools import setup except ImportError: from distutils.core import setup import mayan PACKAGE_NAME = 'mayan-edms' PACKAGE_DIR = 'mayan' if sys.argv[-1] == 'publish': os.system('python setup.py sdist upload') sys.exit() def fullsplit(path, result=None): """ Split a pathname into components (the opposite of os.path.join) in a platform-neutral way. """ if result is None: result = [] head, tail = os.path.split(path) if head == '': return [tail] + result if head == path: return result return fullsplit(head, [tail] + result) def find_packages(directory): # Compile the list of packages available, because distutils doesn't have # an easy way to do this. packages, data_files = [], [] root_dir = os.path.dirname(__file__) if root_dir != '': os.chdir(root_dir) for dirpath, dirnames, filenames in os.walk(directory): if not dirpath.startswith('mayan/media'): # Ignore dirnames that start with '.' if os.path.basename(dirpath).startswith('.'): continue if '__init__.py' in filenames: packages.append('.'.join(fullsplit(dirpath))) elif filenames: data_files.append( [dirpath, [os.path.join(dirpath, f) for f in filenames]] ) return packages install_requires = """ {% for requirement in requirements %}{{ requirement|safe }} {% endfor %}""".split() with open('README.rst') as f: readme = f.read() with open('HISTORY.rst') as f: history = f.read() setup( author='Roberto Rosario', author_email='roberto.rosario@mayan-edms.com', classifiers=[ 'Development Status :: 5 - Production/Stable', 'Environment :: Web Environment', 'Framework :: Django', 'Intended Audience :: Education', 'Intended Audience :: Developers', 'Intended Audience :: Information Technology', 'License :: OSI Approved :: Apache Software License', 'Natural Language :: English', 'Programming Language :: Python', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Topic :: Internet :: WWW/HTTP', 'Topic :: Internet :: WWW/HTTP :: WSGI :: Application', 'Topic :: Communications :: File Sharing', ], description=mayan.__description__, include_package_data=True, install_requires=install_requires, license='Apache 2.0', long_description=readme + '\n\n' + history, name=PACKAGE_NAME, packages=find_packages(PACKAGE_DIR), platforms=['any'], python_requires = '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*', scripts=['mayan/bin/mayan-edms.py'], url='https://gitlab.com/mayan-edms/mayan-edms', version=mayan.__version__, zip_safe=False, )