root/PythonPackages/OpenOpt/setup.py

Revision 374, 3.7 kB (checked in by dmitrey, 2 months ago)

minor changes in setup files

Line  
1 #! /usr/bin/env python
2
3 descr   = """
4 """
5
6 from os.path import join
7 import os
8 import sys, compileall
9
10 DISTNAME            = 'openopt'
11 DESCRIPTION         = 'A python module for numerical optimization'
12 LONG_DESCRIPTION    = descr
13 MAINTAINER          = 'Dmitrey Kroshko',
14 MAINTAINER_EMAIL    = 'dmitrey-at-openopt-dot-org',
15 URL                 = 'http://openopt.org',
16 LICENSE             = 'new BSD'
17
18 from openopt.ooVersionNumber import __version__ as ooVer
19 openopt_version = ooVer
20
21 DOWNLOAD_URL        = 'http://openopt.org/images/6/68/OpenOpt0.27.zip'
22
23 try:
24     import setuptools
25 except:
26     print('you should have setuptools installed (http://pypi.python.org/pypi/setuptools), for some Linux distribs you can get it via [sudo] apt-get python-setuptools')
27     print('press Enter for exit...')
28     raw_input()
29     exit()
30    
31 import string, shutil
32 from distutils.errors import DistutilsError
33 #from numpy.distutils.system_info import system_info, NotFoundError, dict_append, so_ext
34 from numpy.distutils.core import setup, Extension
35 import os, sys
36
37 DOC_FILES = []
38 from shutil import copytree, rmtree
39
40
41 def configuration(parent_package='',top_path=None, package_name=DISTNAME):
42     if os.path.exists('MANIFEST'): os.remove('MANIFEST')
43     pkg_prefix_dir = 'openopt'
44
45     # Get the version
46
47     from numpy.distutils.misc_util import Configuration
48     config = Configuration(package_name,parent_package,top_path,
49         version     = openopt_version,
50         maintainer  = MAINTAINER,
51         maintainer_email = MAINTAINER_EMAIL,
52         description = DESCRIPTION,
53         license = LICENSE,
54         url = URL,
55         download_url = DOWNLOAD_URL,
56         long_description = LONG_DESCRIPTION)
57
58
59     # XXX: once in SVN, should add svn version...
60     #print config.make_svn_version_py()
61
62     # package_data does not work with sdist for setuptools 0.5 (setuptools bug),
63     # so we need to add them here while the bug is not solved...
64
65     return config
66
67
68 if __name__ == "__main__":
69     solverPaths = {}
70     #File = string.join(__file__.split(os.sep)[:-1], os.sep)
71     for root, dirs, files in os.walk('openopt'+os.sep +'solvers'):
72         #for root, dirs, files in os.walk(os.path.dirname(file)+os.sep+'solvers'):
73         rd = root.split(os.sep)
74         if '.svn' in rd: continue
75         rd = rd[rd.index('solvers')+1:]
76         for file in files:
77             if len(file)>6 and file[-6:] == '_oo.py':
78                 solverPaths[file[:-6]] = string.join(rd,'.') + '.'+file[:-3]
79     f = open('solverPaths.py', 'w')
80     f.write('solverPaths = ' + str(solverPaths))
81     f.close()
82     shutil.move('solverPaths.py', 'openopt' + os.sep + 'kernel' + os.sep + 'solverPaths.py')
83
84
85
86     # setuptools version of config script
87
88     # package_data does not work with sdist for setuptools 0.5 (setuptools bug)
89     # So we cannot add data files via setuptools yet.
90
91     #data_files = ['test_data/' + i for i in TEST_DATA_FILES]
92     #data_files.extend(['docs/' + i for i in doc_files])
93     setup(configuration = configuration,
94         install_requires='numpy', # can also add version specifiers   #namespace_packages=['kernel'],
95         #py_modules = ['kernel', 'tests', 'examples', 'solvers'],
96         packages=setuptools.find_packages(),
97         include_package_data = True,
98         #package_data = '*.txt',
99         test_suite='',#"openopt.tests", # for python setup.py test
100         zip_safe=False, # the package can run out of an .egg file
101         #FIXME url, download_url, ext_modules
102         classifiers =
103             [ 'Development Status :: 4 - Beta',
104               'Environment :: Console',
105               'Intended Audience :: Developers',
106               'Intended Audience :: Science/Research',
107               'License :: OSI Approved :: BSD License',
108               'Topic :: Scientific/Engineering']
109     )
Note: See TracBrowser for help on using the browser.