OSDN Git Service

fa483f407a836e61bc1172a83f4857523aff7838
[meshio/meshio.git] / swig / python / setup.py
1 import os
2 import commands
3 from distutils.core import setup, Extension
4
5 def exec_command(cmd):
6     print cmd
7     os.system(cmd)
8
9 if os.name=='nt':
10     BOOST_ROOT='C:/boost/boost_1_46_1'
11     # for vc
12     extra_compile_args=["/EHsc", "/wd4996"]
13     libraries=[]
14     include_dirs=['../../src', BOOST_ROOT]
15     exec_command("swig -c++ -python -o mqo_wrap.cpp -D_MSC_VER ../mqo.i")
16     exec_command("swig -c++ -python -o pmd_wrap.cpp -D_MSC_VER ../pmd.i")
17     exec_command("mv mqo.py pmd.py meshio")
18 else:
19     extra_compile_args=['-std=c++0x']
20     libraries=["iconv"]
21     include_dirs=['../../src']
22     exec_command("swig -c++ -python -o mqo_wrap.cpp ../mqo.i")
23     exec_command("swig -c++ -python -o pmd_wrap.cpp ../pmd.i")
24     exec_command("mv mqo.py pmd.py meshio")
25
26 setup(
27         name='meshio',
28         version='1.0',
29         description='3D mesh IO library',
30         author='ousttrue',
31         author_email='ousttru@gmail.com',
32         url='http://meshio.sourceforge.jp/',
33
34         packages=['meshio'],
35
36         ext_modules = [
37             Extension("meshio._mqo", 
38                 language="c++",
39                 sources=["mqo_wrap.cpp", "../../src/mqo.cpp", "../../src/binary.cpp"], 
40                 include_dirs=include_dirs,
41                 extra_compile_args=extra_compile_args,
42                 libraries=libraries
43                 ),
44
45             Extension("meshio._pmd", 
46                 language="c++",
47                 sources=["pmd_wrap.cpp", "../../src/pmd.cpp", "../../src/binary.cpp"], 
48                 include_dirs=include_dirs,
49                 extra_compile_args=extra_compile_args,
50                 libraries=libraries
51                 ),
52             ]
53         )
54