[go: up one dir, main page]

Menu

[49328f]: / setup.py  Maximize  Restore  History

Download this file

78 lines (68 with data), 2.2 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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/usr/bin/env python
# encoding: utf-8
# vi: set ft=python sts=4 ts=4 sw=4 et:
######################################################################
#
# See COPYING file distributed along with the psignifit package for
# the copyright and license terms
#
######################################################################
""" setup.py for Psignifit 3.x """
from distutils.core import setup, Extension
import numpy
import os
# metadata definitions
name = "pypsignifit"
version = "3.0beta"
author = "Ingo Fründ, Valentin Haenel"
author_email = "psignifit-users@lists.sourceforge.net"
description = "Statistical inference for psychometric functions"
url= "http://sourceforge.net/projects/psignifit/"
license = "MIT"
packages = ["pypsignifit"]
# Psi++ source files
psipp_sources = [
"src/bootstrap.cc",
"src/core.cc",
"src/data.cc",
"src/mclist.cc",
"src/mcmc.cc",
"src/optimizer.cc",
"src/psychometric.cc",
"src/rng.cc",
"src/sigmoid.cc",
"src/special.cc",
"src/linalg.cc",
"src/prior.cc",
"src/getstart.cc"]
# psipy interface
psipy_sources = ["psipy/psipy.cc"]
psipy = Extension ( "_psipy",
sources = psipp_sources + psipy_sources,
include_dirs=[numpy.get_include(), "src", "psipy"])
# swignifit interface
swignifit_sources = ["swignifit/swignifit_raw.cxx"]
swignifit = Extension('swignifit._swignifit_raw',
sources = psipp_sources + swignifit_sources,
include_dirs=["src"])
# decide which interface to use
# control this via the INTERFACE environment varible
interface = os.getenv("INTERFACE")
ext_modules = []
if interface not in ("swignifit", "psipy", None):
raise ValueError("The interface '%s' does not exist!" % interface)
if interface == "swignifit" or interface == None:
packages.append("swignifit")
ext_modules.append(swignifit)
if interface == "psipy" or interface == None:
ext_modules.append(psipy)
if __name__ == "__main__":
setup(name = name,
version = version,
author = author,
author_email = author_email,
description = description,
url = url,
license = license,
packages = packages,
ext_modules = ext_modules)