mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Uses a stripped down, updated variant of like Pulsar/Planemo/ephemeris Makefile stuff. Modified in dozens of ways for tags, version and path differences, etc.. Symbolic links to keep everything in line.
100 lines
2.6 KiB
Python
100 lines
2.6 KiB
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
|
|
import ast
|
|
import os
|
|
import re
|
|
try:
|
|
from setuptools import setup
|
|
except ImportError:
|
|
from distutils.core import setup
|
|
|
|
SOURCE_DIR = "galaxy"
|
|
|
|
_version_re = re.compile(r'__version__\s+=\s+(.*)')
|
|
|
|
with open('%s/project_galaxy_objectstore.py' % SOURCE_DIR, 'rb') as f:
|
|
init_contents = f.read().decode('utf-8')
|
|
|
|
def get_var(var_name):
|
|
pattern = re.compile(r'%s\s+=\s+(.*)' % var_name)
|
|
match = pattern.search(init_contents).group(1)
|
|
return str(ast.literal_eval(match))
|
|
|
|
version = get_var("__version__")
|
|
PROJECT_NAME = get_var("PROJECT_NAME")
|
|
PROJECT_URL = get_var("PROJECT_URL")
|
|
PROJECT_AUTHOR = get_var("PROJECT_AUTHOR")
|
|
PROJECT_EMAIL = get_var("PROJECT_EMAIL")
|
|
PROJECT_DESCRIPTION = get_var("PROJECT_DESCRIPTION")
|
|
|
|
TEST_DIR = 'tests'
|
|
PACKAGES = [
|
|
'galaxy',
|
|
'galaxy.objectstore',
|
|
]
|
|
ENTRY_POINTS = '''
|
|
[console_scripts]
|
|
'''
|
|
PACKAGE_DATA = {
|
|
# Be sure to update MANIFEST.in for source dist.
|
|
'galaxy': [
|
|
],
|
|
}
|
|
PACKAGE_DIR = {
|
|
SOURCE_DIR: SOURCE_DIR,
|
|
}
|
|
|
|
readme = open('README.rst').read()
|
|
history = open('HISTORY.rst').read().replace('.. :changelog:', '')
|
|
|
|
if os.path.exists("requirements.txt"):
|
|
requirements = open("requirements.txt").read().split("\n")
|
|
else:
|
|
# In tox, it will cover them anyway.
|
|
requirements = []
|
|
|
|
|
|
test_requirements = [
|
|
# TODO: put package test requirements here
|
|
]
|
|
|
|
|
|
setup(
|
|
name=PROJECT_NAME,
|
|
version=version,
|
|
description=PROJECT_DESCRIPTION,
|
|
long_description=readme + '\n\n' + history,
|
|
long_description_content_type='text/x-rst',
|
|
author=PROJECT_AUTHOR,
|
|
author_email=PROJECT_EMAIL,
|
|
url=PROJECT_URL,
|
|
packages=PACKAGES,
|
|
entry_points=ENTRY_POINTS,
|
|
package_data=PACKAGE_DATA,
|
|
package_dir=PACKAGE_DIR,
|
|
include_package_data=True,
|
|
install_requires=requirements,
|
|
license="AFL",
|
|
zip_safe=False,
|
|
keywords='galaxy',
|
|
classifiers=[
|
|
'Development Status :: 5 - Production/Stable',
|
|
'Intended Audience :: Developers',
|
|
'Environment :: Console',
|
|
'License :: OSI Approved :: Academic Free License (AFL)',
|
|
'Operating System :: POSIX',
|
|
'Topic :: Software Development',
|
|
'Topic :: Software Development :: Code Generators',
|
|
'Topic :: Software Development :: Testing',
|
|
'Natural Language :: English',
|
|
"Programming Language :: Python :: 2",
|
|
'Programming Language :: Python :: 2.7',
|
|
'Programming Language :: Python :: 3.5',
|
|
'Programming Language :: Python :: 3.6',
|
|
'Programming Language :: Python :: 3.7',
|
|
],
|
|
test_suite=TEST_DIR,
|
|
tests_require=test_requirements
|
|
)
|