Browse Source

Workaround hdiutil madness

rdb 17 years ago
parent
commit
85c303d7fa
1 changed files with 12 additions and 9 deletions
  1. 12 9
      doc/makepanda/makepanda.py

+ 12 - 9
doc/makepanda/makepanda.py

@@ -3548,10 +3548,10 @@ def MakeInstallerLinux():
     oscmd("cp --recursive built/include linuxroot/usr/include/panda3d")
     oscmd("cp --recursive direct        linuxroot/usr/share/panda3d/direct")
     oscmd("cp --recursive built/pandac  linuxroot/usr/share/panda3d/pandac")
-    oscmd("cp --recursive built/Pmw     linuxroot/usr/share/panda3d/Pmw")
     oscmd("cp built/direct/__init__.py  linuxroot/usr/share/panda3d/direct/__init__.py")
     oscmd("cp --recursive built/models  linuxroot/usr/share/panda3d/models")
-    oscmd("cp --recursive samples       linuxroot/usr/share/panda3d/samples")
+    if (os.path.isdir("built/Pmw")): oscmd("cp --recursive built/Pmw     linuxroot/usr/share/panda3d/Pmw")
+    if (os.path.isdir("samples")):   oscmd("cp --recursive samples       linuxroot/usr/share/panda3d/samples")
     oscmd("cp doc/LICENSE               linuxroot/usr/share/panda3d/LICENSE")
     oscmd("cp doc/LICENSE               linuxroot/usr/include/panda3d/LICENSE")
     oscmd("cp doc/ReleaseNotes          linuxroot/usr/share/panda3d/ReleaseNotes")
@@ -3602,9 +3602,11 @@ def MakeInstallerOSX():
         oscmd("hdiutil detach Panda3D-tpl-rw -quiet -force", True)
         oscmd("rm -rf Panda3D-tpl-rw")
     if (os.path.isfile("Panda3D-%s.dmg" % VERSION)): oscmd("rm -f Panda3D-%s.dmg" % VERSION)
-    oscmd("hdiutil convert -format UDRW -o Panda3D-tpl-rw.dmg makepanda/Panda3D-tpl.dmg")
+    oscmd("hdiutil convert -format UDRW -o Panda3D-tpl-rw.dmg makepanda/Panda3D-tpl.dmg", True)
+    if (not os.path.exists("Panda3D-tpl-rw.dmg")): exit()
     oscmd("mkdir Panda3D-tpl-rw")
-    oscmd("hdiutil attach Panda3D-tpl-rw.dmg -noautoopen -quiet -mountpoint Panda3D-tpl-rw")
+    oscmd("hdiutil attach Panda3D-tpl-rw.dmg -noautoopen -quiet -mountpoint Panda3D-tpl-rw", True)
+    if (not os.path.exists("Panda3D-tpl-rw")): exit()
     try:
       oscmd("mkdir -p Panda3D-tpl-rw/Panda3D/%s/etc" % VERSION)
       oscmd("mkdir -p Panda3D-tpl-rw/Panda3D/%s/lib" % VERSION)
@@ -3632,16 +3634,17 @@ def MakeInstallerOSX():
           if ((base != "extensions") and (base != "extensions_native")):
               compileall.compile_dir("Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/direct/src/"+base)
       compileall.compile_dir("Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/Pmw")
-      oscmd("chmod -R 555 Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/direct")
-      oscmd("chmod -R 555 Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/pandac")
+      oscmd("chmod -R 555 Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/direct", True)
+      oscmd("chmod -R 555 Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/pandac", True)
       if os.path.isdir("samples"):   oscmd("chmod -R 555 Panda3D-tpl-rw/Panda3D/"+VERSION+"/samples")
       if os.path.isdir("built/Pmw"): oscmd("chmod -R 555 Panda3D-tpl-rw/Panda3D/"+VERSION+"/lib/Pmw")
     except: # Make sure the dmg gets unmounted even when error occurs
-      oscmd("hdiutil detach Panda3D-tpl-rw -quiet -force")
+      oscmd("hdiutil detach Panda3D-tpl-rw -quiet -force", True)
       oscmd("rm -f Panda3D-tpl-rw.dmg")
       raise
-    oscmd("hdiutil detach Panda3D-tpl-rw -quiet -force")
-    oscmd("hdiutil convert -format UDBZ -o Panda3D-"+VERSION+".dmg Panda3D-tpl-rw.dmg")
+    oscmd("hdiutil detach Panda3D-tpl-rw -quiet -force", True)
+    oscmd("hdiutil convert -format UDBZ -o Panda3D-"+VERSION+".dmg Panda3D-tpl-rw.dmg", True)
+    if (not os.path.exists("Panda3D-%s.dmg" % VERSION)): exit()
     oscmd("rm -f Panda3D-tpl-rw.dmg")
     oscmd("rm -rf Panda3D-tpl-rw")