fixing mac os build and deploy scripts
authorMarcus Eggenberger <egs@quassel-irc.org>
Sun, 28 Sep 2008 15:55:10 +0000 (17:55 +0200)
committerMarcus Eggenberger <egs@quassel-irc.org>
Sun, 28 Sep 2008 15:55:10 +0000 (17:55 +0200)
scripts/build/macosx_makePackage.sh
scripts/build/macosx_makebundle.py
src/CMakeLists.txt

index 35b4f88..b37f3b0 100755 (executable)
@@ -43,17 +43,26 @@ fi
 SCRIPTDIR=$(dirname $mypath)
 QUASSEL_VERSION=$(git-describe)
 BUILDTYPE=$1
+
+# check the working dir
+WORKINGDIR=$2
+if [[ ! -n $2 ]]; then
+    WORKINGDIR="."
+fi
+WORKINGDIR="${WORKINGDIR}/"
+PACKAGETMPDIR="${WORKINGDIR}PACKAGE_TMP_DIR_${BUILDTYPE}"
 if [[ $BUILDTYPE = "Core" ]] || [[ $BUILDTYPE = "Client" ]]; then
     QUASSEL_DMG="Quassel${BUILDTYPE}_MacOSX-universal_${QUASSEL_VERSION}.dmg"
-    mkdir $BUILDTYPE
+    mkdir $PACKAGETMPDIR
     if [[ $BUILDTYPE = "Client" ]]; then
-       cp -r Quassel\ Client.app Client/
-       ${SCRIPTDIR}/macosx_DeployApp.py "Client/Quassel Client.app"
+       cp -r ${WORKINGDIR}Quassel\ Client.app ${PACKAGETMPDIR}/
+       ${SCRIPTDIR}/macosx_DeployApp.py "${PACKAGETMPDIR}/Quassel Client.app"
     else
-       cp quasselcore Core/
-       ${SCRIPTDIR}/macosx_DeployApp.py --nobundle Core
+       cp ${WORKINGDIR}quasselcore ${PACKAGETMPDIR}/
+       ${SCRIPTDIR}/macosx_DeployApp.py --nobundle ${PACKAGETMPDIR}
     fi
-    hdiutil create -srcfolder ${BUILDTYPE} -format UDBZ -volname "Quassel ${BUILDTYPE} - ${QUASSEL_VERSION}" "Quassel${BUILDTYPE}_MacOSX-universal_${QUASSEL_VERSION}.dmg" >/dev/null
+    hdiutil create -srcfolder ${PACKAGETMPDIR} -format UDBZ -volname "Quassel ${BUILDTYPE} - ${QUASSEL_VERSION}" "${WORKINGDIR}Quassel${BUILDTYPE}_MacOSX-universal_${QUASSEL_VERSION}.dmg" >/dev/null
+    rm -rf ${PACKAGETMPDIR}
 else
     echo >&2 "Valid parameters are \"Client\" or \"Core\""
 fi
index a577fbd..8ac4396 100755 (executable)
@@ -14,6 +14,7 @@
 #  Imports
 # ==============================
 import os
+import os.path
 import sys
 
 # ==============================
@@ -28,9 +29,13 @@ if len(sys.argv) < 4:
     BUNDLE_NAME= "Quassel Client"
     EXE_NAME = "quasselclient"
 else:
-    BUNDLE_NAME = sys.argv[2]
     EXE_NAME = sys.argv[3]
-CONTENTS_DIR = BUNDLE_NAME + ".app/Contents/"
+    BUNDLE_NAME = sys.argv[2]
+
+# make the dir of the exe the target dir
+if(os.path.dirname(EXE_NAME)):
+    CONTENTS_DIR = os.path.dirname(EXE_NAME) + "/"
+CONTENTS_DIR += BUNDLE_NAME + ".app/Contents/"
 
 BUNDLE_VERSION = "0.3.0"
 ICON_FILE = "pics/quassel.icns"
@@ -50,7 +55,6 @@ def createPlist(bundleName, iconFile, bundleVersion):
     templateFile = file(SOURCE_DIR + "/scripts/build/Info.plist", 'r')
     template = templateFile.read()
     templateFile.close()
-    print 
 
     plistFile = file(CONTENTS_DIR + "Info.plist", 'w')
     plistFile.write(template % {"BUNDLE_NAME" : bundleName,
index eb95a21..bf3a92f 100644 (file)
@@ -67,14 +67,14 @@ endif(WANT_MONO)
 if(APPLE)
   add_custom_command(TARGET quasselclient POST_BUILD
                      COMMAND ${CMAKE_SOURCE_DIR}/scripts/build/macosx_makebundle.py
-                             ${CMAKE_SOURCE_DIR} "Quassel Client" quasselclient)
+                             ${CMAKE_SOURCE_DIR} "Quassel Client" ../quasselclient)
   add_custom_command(TARGET quassel POST_BUILD
                      COMMAND ${CMAKE_SOURCE_DIR}/scripts/build/macosx_makebundle.py
-                             ${CMAKE_SOURCE_DIR} "Quassel" quassel)
+                             ${CMAKE_SOURCE_DIR} "Quassel" ../quassel)
   if(DEPLOY)
     add_custom_command(TARGET quasselclient POST_BUILD
-                       COMMAND ${CMAKE_SOURCE_DIR}/scripts/build/macosx_makePackage.sh Client)
+                       COMMAND ${CMAKE_SOURCE_DIR}/scripts/build/macosx_makePackage.sh Client ..)
     add_custom_command(TARGET quasselcore POST_BUILD
-                       COMMAND ${CMAKE_SOURCE_DIR}/scripts/build/macosx_makePackage.sh Core)
+                       COMMAND ${CMAKE_SOURCE_DIR}/scripts/build/macosx_makePackage.sh Core ..)
   endif(DEPLOY)
 endif(APPLE)