OS X: Fix macdeployqt not to embed symlinks when ran multiple times
authorJocelyn Turcotte <jturcotte@woboq.com>
Fri, 22 Jan 2016 17:03:18 +0000 (18:03 +0100)
committerJocelyn Turcotte <jturcotte@woboq.com>
Fri, 22 Jan 2016 17:04:46 +0000 (18:04 +0100)
ln has a special syntax to create the symlink inside the last path if it's
a directory (or a symlink to a directory).

Also pass --strict to codesign --verify to catch this kind of error.

admin/osx/macdeployqt.py
admin/osx/sign_app.sh

index 8c60022445dd19938abf352943eb6477bfe406d9..25bfaeb2cdf4266bd598f78821aa62f92799fa8c 100755 (executable)
@@ -261,6 +261,9 @@ def CopyFramework(source_dylib):
       dest_path = os.path.join(frameworks_dir, framework)
       dest_dylib_path = os.path.join(frameworks_dir, *parts[i:-1])
       break
+  if os.path.exists(dest_path):
+    print dest_path, "already exists, skipping..."
+    return
 
   args = ['mkdir', '-p', dest_dylib_path]
   commands.append(args)
index e495fe105308f9e915aabaf91620d6c8127ec711..355b8d28a96fb9cddbfa0c7cd82b09dcc5510a12 100755 (executable)
@@ -10,7 +10,7 @@ codesign -s "$identity" --force --preserve-metadata=entitlements --verbose=4 --d
 
 # Verify the signature
 codesign -dv $src_app
-codesign --verify -v $src_app
+codesign --verify -v --strict $src_app
 spctl -a -t exec -vv $src_app
 
 # Validate that the key used for signing the binary matches the expected TeamIdentifier