-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.py
More file actions
45 lines (38 loc) · 2.5 KB
/
setup.py
File metadata and controls
45 lines (38 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
from setuptools import setup, Extension
import os, sys
import numpy as np
#define extensions in advance
extensions = [
Extension("PlanetFuncs.TransitFlux.TransitFlux",sources=["src/TransitFlux/TransitFlux.c","src/TransitFlux/flux_quad.c","src/TransitFlux/flux_nonlin.c","src/TransitFlux/flux_func.c",
"src/TransitFlux/hyp2f1.c","src/TransitFlux/gamma.c","src/TransitFlux/psi.c","src/TransitFlux/round.c","src/TransitFlux/const.c","src/TransitFlux/fabs.c","src/TransitFlux/polevl.c","src/TransitFlux/mtherr.c"],
libraries=['gsl',],
include_dirs=[np.get_include(),'src/TransitFlux/',os.path.join(sys.prefix,'Library','include')],
library_dirs=[os.path.join(sys.prefix,'Library','lib'),os.path.join(sys.prefix,'lib')],
),
Extension("PlanetFuncs.PlanetOrbit.PlanetOrbit",sources=["src/PlanetOrbit/PlanetOrbit.c","src/PlanetOrbit/PlanetOrbit_functions.c"]),
Extension("PlanetFuncs.RadialVelocity.RadialVelocity",sources=["src/RadialVelocity/RadialVelocity.c"]),
]
# add ctypes extension optionally
if sys.platform != 'win32':
extensions.append(
Extension("PlanetFuncs.TransitFlux.TransitFlux_ctypes",sources=["src/TransitFlux/TransitFlux_ctypes.c","src/TransitFlux/flux_quad.c","src/TransitFlux/flux_nonlin.c","src/TransitFlux/flux_func.c",
"src/TransitFlux/hyp2f1.c","src/TransitFlux/gamma.c","src/TransitFlux/psi.c","src/TransitFlux/round.c","src/TransitFlux/const.c","src/TransitFlux/fabs.c","src/TransitFlux/polevl.c","src/TransitFlux/mtherr.c"],
libraries=['gsl','cblas','m'],
include_dirs=[np.get_include(),os.path.join(sys.prefix,'Library','include')],
library_dirs=[os.path.join(sys.prefix,'Library','lib'),os.path.join(sys.prefix,'lib')],
)
)
setup(
#metadata
name = "PlanetFuncs", version = "1.0",
description='Module containing useful planet functions taken from PlanetFuncs, plus C python extension to calculate fast Mandel & Agol 2002 transit light curves',
author='Neale Gibson',
author_email='n.gibson@tcd.ie',
#define pure python package(s)
packages=['PlanetFuncs','PlanetFuncs.TransitFlux','PlanetFuncs.PlanetOrbit','PlanetFuncs.RadialVelocity'],
package_dir={'PlanetFuncs':'src','PlanetFuncs.TransitFlux':'src/TransitFlux','PlanetFuncs.PlanetOrbit':'src/PlanetOrbit','PlanetFuncs.RadialVelocity':'src/RadialVelocity'},
#define extension module(s)
ext_modules = extensions,
include_dirs=[np.get_include(),os.path.join(sys.prefix,'Library','include')],
# library_dirs=[os.path.join(sys.prefix,'Library','lib')],
)