[X2Go-Commits] [x2goclient] 01/01: {x2goclient.pro, res/osxbundle/{Info.plist, postbuild.sh}}:

git-admin at x2go.org git-admin at x2go.org
Wed Mar 11 23:22:34 CET 2015


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch bugfix/osx
in repository x2goclient.

commit 5ff18d97b7b1f5e8919df4464ff179b72fe790b3
Author: Mihai Moldovan <ionic at ionic.de>
Date:   Wed Mar 11 23:20:29 2015 +0100

    {x2goclient.pro,res/osxbundle/{Info.plist,postbuild.sh}}:
    
      - Add new postbuild script to set the correct version in the processed Info.plist output file.
      - Use this script in x2goclient.pro as QMAKE_POST_LINK command.
      - Move Icon copying into that script.
      - Define version in x2goclient.pro.
---
 debian/changelog           |    6 ++++++
 res/osxbundle/Info.plist   |    6 +++++-
 res/osxbundle/postbuild.sh |   21 +++++++++++++++++++++
 x2goclient.pro             |    6 +++++-
 4 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index a2b3ba1..04667b5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -192,6 +192,12 @@ x2goclient (4.0.4.0-0x2go1) UNRELEASED; urgency=low
       errors relating to missing sshd host keys. Fixes: #794.
     - onmainwindow.cpp: also make the message about a non-running sshd
       non-modal.
+    - {x2goclient.pro,res/osxbundle/{Info.plist,postbuild.sh}}:
+      + Add new postbuild script to set the correct version in the processed
+        Info.plist output file.
+      + Use this script in x2goclient.pro as QMAKE_POST_LINK command.
+      + Move Icon copying into that script.
+      + Define version in x2goclient.pro.
 
  -- X2Go Release Manager <git-admin at x2go.org>  Thu, 19 Feb 2015 13:25:28 +0100
 
diff --git a/res/osxbundle/Info.plist b/res/osxbundle/Info.plist
index 3c4bc90..10a2d2f 100644
--- a/res/osxbundle/Info.plist
+++ b/res/osxbundle/Info.plist
@@ -6,8 +6,12 @@
 	<string>x2go-mac.icns</string>
 	<key>CFBundlePackageType</key>
 	<string>APPL</string>
+	<key>CFBundleShortVersionString</key>
+	<string>@SHORT_VERSION@</string>
+	<key>CFBundleVersion</key>
+	<string>@FULL_VERSION@</string>
 	<key>CFBundleGetInfoString</key>
-	<string>Created by Qt/QMake</string>
+	<string>@TARGET@ @FULL_VERSION@</string>
 	<key>CFBundleSignature</key>
 	<string>????</string>
 	<key>CFBundleExecutable</key>
diff --git a/res/osxbundle/postbuild.sh b/res/osxbundle/postbuild.sh
new file mode 100755
index 0000000..1b78d05
--- /dev/null
+++ b/res/osxbundle/postbuild.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+set -ex
+
+TARGET="${1:?"no TARGET name given"}"
+VERSION="${2:?"no version given"}"
+INFO_PLIST_OUT_PATH="${3:?"no output directory given"}"
+COPY_CMD="${4:?"no copy command given"}"
+ICON_PATH="${5:?"no icon path given"}"
+ICON_OUT_DIR="${6:?"no destination icon path given"}"
+
+# Do NOT change this to gnused. The inplace options for bsdsed and gnused differ.
+SED="/usr/bin/sed"
+
+# Substitute FULL_VERSION in Info.plist file.
+${SED} -i '' -e "s/@FULL_VERSION@/${VERSION}/g" -e "s/@TARGET@/${TARGET}/g" "${INFO_PLIST_OUT_PATH}"
+
+# Copy icon.
+${COPY_CMD} "${ICON_PATH}" "${ICON_OUT_DIR}"
+
+exit 0
diff --git a/x2goclient.pro b/x2goclient.pro
index d41b07e..b7d11c3 100644
--- a/x2goclient.pro
+++ b/x2goclient.pro
@@ -8,6 +8,8 @@ CONFIG += $$(X2GO_CLIENT_TARGET)
 CONFIG += $$(X2GO_LINUX_STATIC)
 #CONFIG += console
 
+VERSION = "$$cat($${PWD}/VERSION)"
+
 FORMS += src/ui/cupsprintsettingsdialog.ui \
          src/ui/cupsprintwidget.ui \
          src/ui/printdialog.ui \
@@ -201,10 +203,12 @@ macx {
   # Info.plist file being created in the first place.
   # The last command takes care of actually putting the icon in place - yet
   # another bug in qmake. Bummer.
+  # Qt 4.8 is currently missing patches for substituting FULL_VERSION. Work
+  # around by using the postbuild.sh script.
   QMAKE_INFO_PLIST = $${PWD}/res/osxbundle/Info.plist
   QMAKE_INFO_PLIST_OUT = $${TARGET}.app/Contents/Info.plist
   PRE_TARGETDEPS += $${TARGET}.app/Contents/Info.plist
-  QMAKE_POST_LINK += /bin/cp -n $${ICON} $${OUT_PWD}/$${TARGET}.app/Contents/Resources/
+  QMAKE_POST_LINK += $${PWD}/res/osxbundle/postbuild.sh \"$${TARGET}\" \"$${VERSION}\" \"$${QMAKE_INFO_PLIST_OUT}\" \"$${QMAKE_COPY}\" \"$${ICON}\" \"$${OUT_PWD}/$${TARGET}.app/Contents/Resources/\"
 }
 win32-* {
   message("building $$TARGET for windows without ldap and cups")

--
Alioth's /srv/git/code.x2go.org/x2goclient.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goclient.git


More information about the x2go-commits mailing list