From bfc347e322d6b00ac6bf5a00c1d1ead0c6fcda0b 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 (cherry picked from commit abdb32cbad1b85d2d47ad954aa55b468b078a05e) Reviewed-on: https://gerrit.libreoffice.org/33072 Tested-by: Jenkins Reviewed-by: Norbert Thiebaud --- solenv/bin/macosx-codesign-app-bundle | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) 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 -- cgit