]> Creatis software - gdcm.git/blob - setup.py
modif DcmWrite
[gdcm.git] / setup.py
1 from distutils.core import setup
2 import glob, os, sys
3 from distutilsSwigCPlusPlus import *
4
5 PythonIncludes=os.path.join(sys.exec_prefix, 'include')
6 PythonIncludes=os.path.join(PythonIncludes, 'python' + sys.version[:3])
7
8 ThisModule='gdcmPython'
9
10 gdcmSrcDir="src"
11 gdcmPythonSrcDir=ThisModule
12
13 # Due to a disutil oddity on Unices : see
14 # http://aspn.activestate.com/ASPN/Mail/Message/distutils-sig/588325
15 if(os.name=='posix'):
16         targetDir=os.path.join('lib', 'python' + sys.version[:3])
17         targetDir=os.path.join(targetDir, 'site-packages')
18         ExtraPath=ThisModule
19 else:
20         targetDir='Lib'
21         ExtraPath=os.path.join(targetDir,ThisModule)
22
23 targetDir=os.path.join(targetDir, ThisModule)
24
25 setup(name=ThisModule,
26       version="0.1",
27       description="...",
28       author="frog",
29       author_email="frog@creatis.insa-lyon.fr",
30       url="http://www.creatis.insa-lyon.fr/",
31       packages=[ gdcmPythonSrcDir,
32                  gdcmPythonSrcDir + '.demo',
33                ],
34       #package_dir={'':'python'},
35       #extra_path = "zob",
36       cmdclass={'build_ext':mybuild_ext}, # redirects default build_ext
37       ext_modules=[MyExtension(
38                    name='_gdcm',
39                    sources=[os.path.join(gdcmSrcDir, "gdcmDict.cxx"),
40                             os.path.join(gdcmSrcDir, "gdcmDictEntry.cxx"),
41                             os.path.join(gdcmSrcDir, "gdcmDictSet.cxx"),
42                             os.path.join(gdcmSrcDir, "gdcmElValSet.cxx"),
43                             os.path.join(gdcmSrcDir, "gdcmElValue.cxx"),
44                             os.path.join(gdcmSrcDir, "gdcmFile.cxx"),
45                             os.path.join(gdcmSrcDir, "gdcmHeader.cxx"),
46                             os.path.join(gdcmSrcDir, "gdcmUtil.cxx"),
47                             os.path.join(gdcmPythonSrcDir, "gdcm.i")],
48                    include_dirs=[gdcmSrcDir, PythonIncludes],
49                    libraries=["stdc++"],
50                    #library_dirs=[VTK_LIB_DIR],
51                    swig_cpp=1,
52                    swig_include=[gdcmSrcDir] ) ],
53       data_files=[(os.path.join(targetDir,"Data"),
54                    glob.glob(os.path.join("Data","*.*"))),
55                   (os.path.join(targetDir,"Dicts"),
56                    glob.glob(os.path.join("Dicts","*.*"))),
57                 ]
58      )