summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2017-01-14 16:53:49 +0100
committerNorbert Thiebaud <nthiebaud@gmail.com>2017-01-14 21:18:29 +0000
commitbfc347e322d6b00ac6bf5a00c1d1ead0c6fcda0b (patch)
tree6f45904e262bf84e9cef20bf14a896c0d0cee967
parentCodesignRules.plist was removed in 615fae2f67028f3c5c51c70c77dbaa9b9f3856d6 (diff)
downloadcore-bfc347e322d6b00ac6bf5a00c1d1ead0c6fcda0b.tar.gz
core-bfc347e322d6b00ac6bf5a00c1d1ead0c6fcda0b.zip
workaround for codesigning on Mac baseline - do jnilibs first
as otherwise signing fails (LibreOffice.app: code object is not signed at all In subcomponent: path/to/foo.jnilib) Change-Id: I3e4691f2ada408d9e76d200a3291b044753ec85c (cherry picked from commit abdb32cbad1b85d2d47ad954aa55b468b078a05e) Reviewed-on: https://gerrit.libreoffice.org/33072 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
-rwxr-xr-xsolenv/bin/macosx-codesign-app-bundle10
1 files changed, 9 insertions, 1 deletions
diff --git a/solenv/bin/macosx-codesign-app-bundle b/solenv/bin/macosx-codesign-app-bundle
index c48f60e20f45..179ef5c518a1 100755
--- a/solenv/bin/macosx-codesign-app-bundle
+++ b/solenv/bin/macosx-codesign-app-bundle
@@ -31,10 +31,18 @@ else
# We then want to sign data files, too, hmm.
other_files="\
-or -name '*.fodt' -or -name 'schema.strings' -or -name 'schema.xml' \
- -or -name '*.jar' -or -name '*.jnilib' -or -name 'LICENSE' -or -name 'LICENSE.html' \
+ -or -name '*.jar' -or -name 'LICENSE' -or -name 'LICENSE.html' \
-or -name '*.applescript' -or -name '*.odt'"
fi
+# Sign jnilibs first as workaround for signing issue on old baseline
+# order matters/screws things up otherwise
+find -d "$APP_BUNDLE" \( -name '*.jnilib' \) ! -type l |
+ while read file; do
+ id=`echo ${file#${APP_BUNDLE}/Contents/} | sed -e 's,/,.,g'`
+ codesign --verbose --identifier=$MACOSX_BUNDLE_IDENTIFIER.$id --sign "$MACOSX_CODESIGNING_IDENTITY" "$file" || exit 1
+done
+
# Sign dylibs
#
# The dylibs in the Python framework are called *.so. Go figure