X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=swig%2Fsetup.py;h=a7eca7841fd3ade02c4217ddc984a80e0b389906;hb=e93ad2d5166621f0c3720eac1ad42f15a6809dae;hp=18d66acf414e2913a5cd755e5cf5450256dc5426;hpb=e4f3c8212f19802eaa3a2aa66c12304b5ecdb75b;p=meshio%2Fmeshio.git diff --git a/swig/setup.py b/swig/setup.py index 18d66ac..a7eca78 100644 --- a/swig/setup.py +++ b/swig/setup.py @@ -1,76 +1,76 @@ -# setup.py +# coding: utf-8 from distutils.core import setup, Extension +import os +import sys -# mqo -############################################################################### -mqoExtension=Extension("_mqo", - ["mqo.i"], - swig_opts=['-c++'], - include_dirs=[ +option={ + 'swig_opts': ['-c++'], + 'include_dirs': [ '../include' ], - libraries=[ + 'libraries': [ 'meshio', ], - library_dirs=[ + 'library_dirs': [ '../release', - 'T:/Blender/bf-blender/lib/windows/python/lib', ], - extra_compile_args=[ - '/EHsc', '/MT', '/D_WIN32', - ], - extra_link_args=[ - ], - ) + } -# pmd -############################################################################### -pmdExtension=Extension("_pmd", - ["pmd.i"], - swig_opts=['-c++'], - include_dirs=[ - '../include' - ], - libraries=[ - 'meshio', - ], - library_dirs=[ - '../release', - ], - extra_compile_args=[ +if os.name=='nt': + # vc option + option['extra_compile_args']=[ '/EHsc', '/MT', - ], - extra_link_args=[ - ], - ) + ] -# vmd -############################################################################### -vmdExtension=Extension("_vmd", - ["vmd.i"], - swig_opts=['-c++'], - include_dirs=[ - '../include' - ], - libraries=[ - 'meshio', - ], - library_dirs=[ - '../release', - ], - extra_compile_args=[ - '/EHsc', '/MT', - ], - extra_link_args=[ - ], - ) +# swig c extensions +ext_modules=[ + Extension("_mqo", ["mqo.i"], **option), + Extension("_pmd", ["pmd.i"], **option), + Extension("_vmd", ["vmd.i"], **option), + ] + +# blender importers +if sys.version_info[0]<3: + # blender 2.4 + data_files=[ + ('blender24', [ + 'blender24/README', + 'blender24/mqo_import.py', + 'blender24/pmd_import.py', + 'blender24/vmd_import.py', + 'blender24/mqo_export.py', + 'blender24/pmd_export.py', + ]) + ] +else: + # blender2.5 + data_files=[ + ('blender25', [ + 'blender25/README', + 'blender25/import_scene_mqo.py', + 'blender25/import_scene_pmd.py', + ]) + ] -setup(name="meshio", - packages=['meshio'], - package_dir={'meshio': '.'}, - ext_package='meshio', - ext_modules=[mqoExtension, pmdExtension, vmdExtension] - ) +# スタティックruntime(/MT)とリンクするのでマニフェストが不要だが +# mt.exeの呼び出しを止めることができないので +for i in range(len(ext_modules)+1): + try: + setup(name="meshio", + version='0.4', + description='polygon mesh io utilities', + author='ousttrue', + author_email='ousttrue@gmail.com', + url='http://sourceforge.jp/projects/meshio/', + packages=['meshio'], + package_dir={'meshio': '.'}, + ext_package='meshio', + ext_modules=ext_modules, + data_files=data_files + ) + break + except: + continue