From abdb32cbad1b85d2d47ad954aa55b468b078a05e Mon Sep 17 00:00:00 2001 From: Christian Lohmaier Date: Sat, 14 Jan 2017 16:53:49 +0100 Subject: 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 --- solenv/bin/macosx-codesign-app-bundle | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'solenv') diff --git a/solenv/bin/macosx-codesign-app-bundle b/solenv/bin/macosx-codesign-app-bundle index 7faeb4a9b957..6db54cd4141c 100755 --- a/solenv/bin/macosx-codesign-app-bundle +++ b/solenv/bin/macosx-codesign-app-bundle @@ -31,10 +31,19 @@ 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 + echo "signing $file" + 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 -- cgit