ITM AMNS: User Interface  \$Id: Doxyfile 502 2015-10-15 12:23:45Z dpc $
setup.py
Go to the documentation of this file.
1 import os
2 import numpy
3 from distutils.core import setup
4 from distutils.extension import Extension
5 from Cython.Distutils import build_ext
6 
7 DATAVERSION = os.getenv("DATAVERSION")
8 ITMLIBDIR = os.getenv("ITMLIBDIR")
9 SYS = os.getenv("SYS")
10 UAL = os.getenv("UAL")
11 SVNVERSION = os.getenv("SVNVERSION")
12 ITMCONSTANTS = "%s/%s/include" % (os.getenv("ITM_ITMCONSTANTS_DIR"), os.getenv("ITM_ITMCONSTANTS_VERSION"))
13 
14 library_dirs=[UAL + "/lib", UAL + "/lowlevel", UAL + "/fortraninterface"]
15 
16 libraries=["amns-"+SVNVERSION+"-"+DATAVERSION+"-"+SYS, "UALLowLevel"]
17 
18 if SYS == "amd64_pgi_10":
19  library_dirs.extend(["../lib/amd64_pgi", "/E/L/pgi-10.2-libso"])
20  libraries.extend(["UALFORTRANInterface_pgi", "pgf90rtl", "pgc"])
21 elif SYS == "amd64_g95_0.93":
22  library_dirs.extend(["../lib/amd64_g95_0.93", "/E/L/g95-0.92/gcc-lib/x86_64-unknown-linux-gnu/4.0.3"])
23  libraries.extend(["UALFORTRANInterface_g95"])
24 elif SYS == "amd64_intel_12":
25  library_dirs.extend(["../lib/amd64_intel_12", ])
26  libraries.extend(["UALFORTRANInterface_ifort"])
27 elif SYS == "amd64_intel_17":
28  library_dirs.extend(["../lib/amd64_intel_17", ])
29  libraries.extend(["UALFORTRANInterface_ifort"])
30 elif SYS == "amd64_intel_18":
31  library_dirs.extend(["../lib/amd64_intel_18", ])
32  libraries.extend(["UALFORTRANInterface_ifort"])
33 elif SYS == "amd64_gfortran_4.7":
34  library_dirs.extend(["../lib/amd64_gfortran_4.7", ])
35  libraries.extend(["UALFORTRANInterface_ifort"])
36 elif SYS == "amd64_gfortran_6.1":
37  library_dirs.extend(["../lib/amd64_gfortran_6.1", ])
38  libraries.extend(["UALFORTRANInterface_ifort"])
39 else:
40  raise ValueError("Unsupported Fortran compiler (SYS=" + SYS + ")")
41 
42 
43 setup(
44  name = "amns",
45  version = DATAVERSION,
46  author = "David Coster",
47  author_email = "David.Coster@ipp.mpg.de",
48  description = ("Python interface to the ITM AMNS system"),
49  license = "JRC",
50  url = "http://www.efda-itm.eu/ITM/html/amns_public.html",
51  cmdclass = {'build_ext': build_ext},
52  ext_modules = [Extension("amns", ["amns.pyx"],
53  library_dirs=library_dirs,
54  libraries=libraries,
55  include_dirs = [numpy.get_include(), ITMCONSTANTS]),
56  Extension("camns_interface", ["camns_interface.pxd"],
57  library_dirs=library_dirs,
58  libraries=libraries,
59  include_dirs = [ITMCONSTANTS])]
60 )
Definition: setup.py:1