summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swift/Packaging/MacOSX/package.sh')
-rwxr-xr-xSwift/Packaging/MacOSX/package.sh15
1 files changed, 15 insertions, 0 deletions
diff --git a/Swift/Packaging/MacOSX/package.sh b/Swift/Packaging/MacOSX/package.sh
index d7a31d2..7a63237 100755
--- a/Swift/Packaging/MacOSX/package.sh
+++ b/Swift/Packaging/MacOSX/package.sh
@@ -4,6 +4,7 @@ APP=$1
TEMPLATE=$2
TARGET=$3
QTDIR=$4
+CODESIGN_IDENTITY=$5
if [[ ! -f "$TEMPLATE" || ! -d "$APP" || ! -d "$QTDIR" || -z "$TARGET" ]]; then
echo "Error"
@@ -21,6 +22,20 @@ mkdir -p $WC_DIR
hdiutil attach "$WC_DMG" -noautoopen -quiet -mountpoint "$WC_DIR"
ditto -rsrc "$APP" "$WC_DIR"/`basename $APP`
$QTDIR/bin/macdeployqt "$WC_DIR"/`basename $APP` -no-strip
+
+# The bearer plugins of Qt5 cannot be disabled by an application.
+# They will constantly ask the OS to scan for available wireless networks, unrelated to actual API calls.
+# This results in unnessecary resource load, so we remove the plugins from our packages.
+rm "$WC_DIR"/`basename $APP`/Contents/PlugIns/bearer/*.dylib
+
+# Remove debugging symbols from the application bundle
+rm -rf "$WC_DIR"/`basename $APP`/Contents/MacOS/*.dSYM
+
+# Codesign the app bundle if requested by caller
+if [ ! -z "$CODESIGN_IDENTITY" ]; then
+ codesign --verbose --force --deep --sign "$CODESIGN_IDENTITY" "$WC_DIR"/`basename $APP`
+fi
+
hdiutil detach "$WC_DIR" -quiet -force
rm -f $TARGET
hdiutil convert "$WC_DMG" -quiet -format UDZO -imagekey zlib-level=9 -o "$TARGET"