OSDN Git Service

fix build script.
authorousttrue <ousttrue@gmail.com>
Sat, 31 Jul 2010 07:27:42 +0000 (16:27 +0900)
committerousttrue <ousttrue@gmail.com>
Sat, 31 Jul 2010 07:27:42 +0000 (16:27 +0900)
README
swig/Makefile [new file with mode: 0644]
swig/__init__.py [new file with mode: 0644]
swig/blender/pmd_import.py
swig/pymeshio/mmd.py
swig/setup.py

diff --git a/README b/README
index 8b88782..f9fabcd 100644 (file)
--- a/README
+++ b/README
@@ -40,16 +40,16 @@ setup.py
 \8e\96\91O\82Éstatic\83\89\83C\83u\83\89\83\8a\82ð\8dì\90¬\82µ\82Ä\82©\82ç\89º\8bL\82Ì\83R\83}\83\93\83h\82ð\8eÀ\8ds\82·\82é\81B
 > cd MeshIO/swig
 > python setup.py build
-\83X\83^\83e\83B\83b\83N\82ÌC\83\89\83\93\83^\83C\83\80(cl.exe\82Ì/MT\83I\83v\83V\83\87\83\93)\82ð\8eg\82Á\82Ä\82¢\82é\82Ì\82Å\83}\83j\83t\83F\83X\83g\82ª\95s\97v\82È\82Ì\82¾\82ªsetup.py\82ª\83}\83j\83t\83F\83X\83g\82ð\91g\82Ý\8d\9e\82à\82¤\82Æ\82µ\82Ä\83G\83\89\81[\82ª\94­\90\82·\82é\82Ì\82ð\96¢\89ð\8c\88\81B
-\82Æ\82è\82 \82¦\82¸\83G\83\89\81[\82ª\94­\90\82µ\82È\82­\82È\82é\82Ü\82Å\95¡\90\94\89ñ
-> python setup.py build
-\82ð\8eÀ\8ds\82·\82é\81B
 swig/build/lib.win32-2.6/meshio\89º\82ªpython2.6\8cü\82¯\82Ì\83p\83b\83P\81[\83W\82É\82È\82è\82Ü\82·\81B
+> python setup.py bdist_wininst
+\82Æ\82·\82é\82Æwindows\8cü\82¯\82Ì\83C\83\93\83X\83g\81[\83\89\82ð\8dì\90¬\81B
 
 ***python3\82Å\83r\83\8b\83h\82·\82é\82Æ\82«
 > python3 setup.py build
 \82ð\8eÀ\8ds\82·\82é\81B
-swig/build/lib.win32-3.1/meshio\89º\82ªpython2.6\8cü\82¯\82Ì\83p\83b\83P\81[\83W\82É\82È\82è\82Ü\82·\81B
+swig/build/lib.win32-3.1/meshio\89º\82ªpython3.1\8cü\82¯\82Ì\83p\83b\83P\81[\83W\82É\82È\82è\82Ü\82·\81B
+> python3 setup.py bdist_wininst
+\82Æ\82·\82é\82Æwindows\8cü\82¯\82Ì\83C\83\93\83X\83g\81[\83\89\82ð\8dì\90¬\81B
 
 *C\83\89\83C\83u\83\89\83\8a\82Ì\8eg\82¢\95û
 \82Æ\82è\82 \82¦\82¸test/main.cpp\82Æinclude/{mqo,pmd,vmd}.h\82ð\8c©\82Ä\82­\82¾\82³\82¢\81B
@@ -71,6 +71,7 @@ blender25/*.py
 *\97\9a\97ð
 2010/04/30 SourceForge\82É\8fê\8f\8a\8am\95Û\81Bmqo, pmd, vmd\82Ì\93Ç\82Ý\8d\9e\82Ý\82ð\8eÀ\91\95\81B
 2010/05/12 python\83o\83C\83\93\83f\83B\83\93\83O\82ð\8eÀ\91\95\81Bblender24\8cü\82¯\82Ìmqo, pmd, vmd\83C\83\93\83|\81[\83^\82ð\8eÀ\91\95\81Bblender25\8cü\82¯\82Ìmqo, pmd\83C\83\93\83|\81[\83^\82ð\8eÀ\91\95\81B
+2010/07/31 blender\83v\83\89\83O\83C\83\93\82ðC\83\82\83W\83\85\81[\83\8b\96³\82µ\82Å\93®\82©\82·\82½\82ß\82Ì\91ã\91Ö\83\89\83C\83u\83\89\83\8apymeshio\82ð\92Ç\89Á\81B
 
 *URL
 https://sourceforge.jp/projects/meshio
diff --git a/swig/Makefile b/swig/Makefile
new file mode 100644 (file)
index 0000000..c00462c
--- /dev/null
@@ -0,0 +1,22 @@
+PYTHON2=/cygdrive/C/Python26/python.exe
+PYTHON3=/cygdrive/C/Python31/python.exe
+
+build: setup.py mqo.i vmd.i pmd.i
+       make -C blender
+       $(PYTHON2) setup.py build
+       $(PYTHON3) setup.py build
+
+rebuild: clean build
+
+install: build
+       $(PYTHON2) setup.py install
+       $(PYTHON3) setup.py install
+
+package: build
+       $(PYTHON2) setup.py bdist_wininst
+       $(PYTHON3) setup.py bdist_wininst
+
+clean:
+       rm -rf build dist
+       touch *.i
+
diff --git a/swig/__init__.py b/swig/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
index 1d2ac0c..2a4128a 100755 (executable)
@@ -842,7 +842,7 @@ def _execute(filename):
     if not io.read(filename):
         bl.message("fail to load %s" % filename)
         return
-    bl.progress_set('loaded %s' % filename, 0.1)
+    bl.progress_set('loaded', 0.1)
 
     # create root object
     model_name=io.getEnglishName()
index 185f6ab..00d9ecf 100755 (executable)
@@ -990,8 +990,8 @@ class PMDLoader(object):
         ############################################################
         if self.io.tell()>=self.end:
             return True
-        if not self.loadPhysics():
-            return False
+        #if not self.loadPhysics():
+        #    return False
         self._check_position()
 
         return True
@@ -1135,11 +1135,11 @@ class PMDLoader(object):
         # 剛体リスト
         count = struct.unpack("I", self.io.read(4))[0]
         for i in xrange(count):
-            count = struct.unpack("83s", self.io.read(83))[0]
+            struct.unpack("83s", self.io.read(83))[0]
         # ジョイントリスト
         count = struct.unpack("I", self.io.read(4))[0]
         for i in xrange(count):
-            count = struct.unpack("124s", self.io.read(124))[0]
+            struct.unpack("124s", self.io.read(124))[0]
         return True
 
 
index 017bcac..698bd29 100644 (file)
@@ -3,6 +3,9 @@
 from distutils.core import setup, Extension
 import os
 import sys
+import shutil
+
+VERSION='1.02'
 
 option={
         'swig_opts': ['-c++'],
@@ -30,41 +33,65 @@ ext_modules=[
         Extension("_vmd", ["vmd.i"], **option),
         ]
 
+# copy pymesh files
+shutil.copy("englishmap.py", "pymeshio")
+
 # blender importers
 if sys.version_info[0]<3:
     # blender 2.4
      data_files=[
              ('blender24', [
-                 'blender24/README',
+                 'blender/README24',
                  'blender/bl24.py',
                  'blender/mqo_import.py', 
                  'blender/mqo_export.py',
                  'blender/pmd_import.py', 
                  'blender/pmd_export.py', 
                  ]),
+             ('blender24/pymeshio', [
+                 'pymeshio/__init__.py',
+                 'pymeshio/mqo.py',
+                 'pymeshio/mmd.py',
+                 'pymeshio/englishmap.py',
+                 ]),
              ]
 
 else:
+    # rename blender25 files
+    if not os.path.exists("addons"):
+        os.mkdir("addons")
+    shutil.copy("blender/mqo_import.py", "addons/io_import_scene_mqo.py")
+    shutil.copy("blender/mqo_export.py", "addons/io_export_scene_mqo.py")
+    shutil.copy("blender/pmd_import.py", "addons/io_import_scene_pmd.py")
+    shutil.copy("blender/pmd_export.py", "addons/io_export_scene_pmd.py")
+
     # blender2.5
     data_files=[
             ('blender25', [
-                'blender25/README',
+                'blender/README25',
                 ]),
             ('blender25/addons', [
-                'blender/addons/bl25.py',
-                'blender/addons/io_import_scene_mqo.py',
-                'blender/addons/io_export_scene_mqo.py',
-                'blender/addons/io_import_scene_pmd.py',
-                'blender/addons/io_export_scene_pmd.py',
+                'blender/bl25.py',
+                'addons/io_import_scene_mqo.py',
+                'addons/io_export_scene_mqo.py',
+                'addons/io_import_scene_pmd.py',
+                'addons/io_export_scene_pmd.py',
+                ]),
+            ('blender25/addons/pymeshio', [
+                'pymeshio/__init__.py',
+                'pymeshio/mqo.py',
+                'pymeshio/mmd.py',
+                'pymeshio/englishmap.py',
                 ]),
             ]
 
 # スタティックruntime(/MT)とリンクするのでマニフェストが不要だが
 # mt.exeの呼び出しを止めることができないので
+# 繰り返す(1度目でエラーになり2度目で通過できる)
 for i in range(len(ext_modules)+1):
     try:
         setup(name="meshio",
-                version='1.01',
+                version=VERSION,
                 description='polygon mesh io utilities',
                 author='ousttrue',
                 author_email='ousttrue@gmail.com',