annotate DEPENDENCIES/mingw32/Python27/Lib/site-packages/numpy/f2py/setup.py @ 133:4acb5d8d80b6 tip

Don't fail environmental check if README.md exists (but .txt and no-suffix don't)
author Chris Cannam
date Tue, 30 Jul 2019 12:25:44 +0100
parents 2a2c65a20a8b
children
rev   line source
Chris@87 1 #!/usr/bin/env python
Chris@87 2 """
Chris@87 3 setup.py for installing F2PY
Chris@87 4
Chris@87 5 Usage:
Chris@87 6 python setup.py install
Chris@87 7
Chris@87 8 Copyright 2001-2005 Pearu Peterson all rights reserved,
Chris@87 9 Pearu Peterson <pearu@cens.ioc.ee>
Chris@87 10 Permission to use, modify, and distribute this software is given under the
Chris@87 11 terms of the NumPy License.
Chris@87 12
Chris@87 13 NO WARRANTY IS EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
Chris@87 14 $Revision: 1.32 $
Chris@87 15 $Date: 2005/01/30 17:22:14 $
Chris@87 16 Pearu Peterson
Chris@87 17
Chris@87 18 """
Chris@87 19 from __future__ import division, print_function
Chris@87 20
Chris@87 21 __version__ = "$Id: setup.py,v 1.32 2005/01/30 17:22:14 pearu Exp $"
Chris@87 22
Chris@87 23 import os
Chris@87 24 import sys
Chris@87 25 from distutils.dep_util import newer
Chris@87 26 from numpy.distutils import log
Chris@87 27 from numpy.distutils.core import setup
Chris@87 28 from numpy.distutils.misc_util import Configuration
Chris@87 29
Chris@87 30 from __version__ import version
Chris@87 31
Chris@87 32 def configuration(parent_package='',top_path=None):
Chris@87 33 config = Configuration('f2py', parent_package, top_path)
Chris@87 34
Chris@87 35 config.add_data_dir('docs')
Chris@87 36 config.add_data_dir('tests')
Chris@87 37
Chris@87 38 config.add_data_files('src/fortranobject.c',
Chris@87 39 'src/fortranobject.h',
Chris@87 40 'f2py.1'
Chris@87 41 )
Chris@87 42
Chris@87 43 config.make_svn_version_py()
Chris@87 44
Chris@87 45 def generate_f2py_py(build_dir):
Chris@87 46 f2py_exe = 'f2py'+os.path.basename(sys.executable)[6:]
Chris@87 47 if f2py_exe[-4:]=='.exe':
Chris@87 48 f2py_exe = f2py_exe[:-4] + '.py'
Chris@87 49 if 'bdist_wininst' in sys.argv and f2py_exe[-3:] != '.py':
Chris@87 50 f2py_exe = f2py_exe + '.py'
Chris@87 51 target = os.path.join(build_dir, f2py_exe)
Chris@87 52 if newer(__file__, target):
Chris@87 53 log.info('Creating %s', target)
Chris@87 54 f = open(target, 'w')
Chris@87 55 f.write('''\
Chris@87 56 #!%s
Chris@87 57 # See http://cens.ioc.ee/projects/f2py2e/
Chris@87 58 import os, sys
Chris@87 59 for mode in ["g3-numpy", "2e-numeric", "2e-numarray", "2e-numpy"]:
Chris@87 60 try:
Chris@87 61 i=sys.argv.index("--"+mode)
Chris@87 62 del sys.argv[i]
Chris@87 63 break
Chris@87 64 except ValueError: pass
Chris@87 65 os.environ["NO_SCIPY_IMPORT"]="f2py"
Chris@87 66 if mode=="g3-numpy":
Chris@87 67 sys.stderr.write("G3 f2py support is not implemented, yet.\\n")
Chris@87 68 sys.exit(1)
Chris@87 69 elif mode=="2e-numeric":
Chris@87 70 from f2py2e import main
Chris@87 71 elif mode=="2e-numarray":
Chris@87 72 sys.argv.append("-DNUMARRAY")
Chris@87 73 from f2py2e import main
Chris@87 74 elif mode=="2e-numpy":
Chris@87 75 from numpy.f2py import main
Chris@87 76 else:
Chris@87 77 sys.stderr.write("Unknown mode: " + repr(mode) + "\\n")
Chris@87 78 sys.exit(1)
Chris@87 79 main()
Chris@87 80 '''%(sys.executable))
Chris@87 81 f.close()
Chris@87 82 return target
Chris@87 83
Chris@87 84 config.add_scripts(generate_f2py_py)
Chris@87 85
Chris@87 86 log.info('F2PY Version %s', config.get_version())
Chris@87 87
Chris@87 88 return config
Chris@87 89
Chris@87 90 if __name__ == "__main__":
Chris@87 91
Chris@87 92 config = configuration(top_path='')
Chris@87 93 version = config.get_version()
Chris@87 94 print('F2PY Version', version)
Chris@87 95 config = config.todict()
Chris@87 96
Chris@87 97 if sys.version[:3]>='2.3':
Chris@87 98 config['download_url'] = "http://cens.ioc.ee/projects/f2py2e/2.x"\
Chris@87 99 "/F2PY-2-latest.tar.gz"
Chris@87 100 config['classifiers'] = [
Chris@87 101 'Development Status :: 5 - Production/Stable',
Chris@87 102 'Intended Audience :: Developers',
Chris@87 103 'Intended Audience :: Science/Research',
Chris@87 104 'License :: OSI Approved :: NumPy License',
Chris@87 105 'Natural Language :: English',
Chris@87 106 'Operating System :: OS Independent',
Chris@87 107 'Programming Language :: C',
Chris@87 108 'Programming Language :: Fortran',
Chris@87 109 'Programming Language :: Python',
Chris@87 110 'Topic :: Scientific/Engineering',
Chris@87 111 'Topic :: Software Development :: Code Generators',
Chris@87 112 ]
Chris@87 113 setup(version=version,
Chris@87 114 description = "F2PY - Fortran to Python Interface Generaton",
Chris@87 115 author = "Pearu Peterson",
Chris@87 116 author_email = "pearu@cens.ioc.ee",
Chris@87 117 maintainer = "Pearu Peterson",
Chris@87 118 maintainer_email = "pearu@cens.ioc.ee",
Chris@87 119 license = "BSD",
Chris@87 120 platforms = "Unix, Windows (mingw|cygwin), Mac OSX",
Chris@87 121 long_description = """\
Chris@87 122 The Fortran to Python Interface Generator, or F2PY for short, is a
Chris@87 123 command line tool (f2py) for generating Python C/API modules for
Chris@87 124 wrapping Fortran 77/90/95 subroutines, accessing common blocks from
Chris@87 125 Python, and calling Python functions from Fortran (call-backs).
Chris@87 126 Interfacing subroutines/data from Fortran 90/95 modules is supported.""",
Chris@87 127 url = "http://cens.ioc.ee/projects/f2py2e/",
Chris@87 128 keywords = ['Fortran', 'f2py'],
Chris@87 129 **config)