It’s likely that your code signature is simply borked. Try this:
% codesign --verify -vvv --strict --deep /path/to/your.app
Note that using --deep
in a --verify
operation is just fine (-:
The most common cause of this problem for frameworks is folks copying the framework using cp -r
, which doesn’t preserve symlinks.
And below is my codesign order
Hmmm…
codesign -s "Developer ID Application" --options=runtime,library --timestamp -f ***.app/Contents/Resources/***\ ***.driver
This is a worry. Presumably this .driver
bundle contains code, which means it shouldn’t be in the Resources
directory. See Placing Content in a Bundle.
codesign -s "Developer ID Application" --options=runtime,library --timestamp -f ***.app/Contents/Resources/***/***.app/Contents/MacOS/***
I’m presuming that’s this is some sort of helper tool rather than the main executable for the containing .app
.
codesign -s "Developer ID Application" --options=runtime,library --timestamp -f ***.app/Contents/Resources/daemon/xxxr.app/Contents/MacOS/***
This is also worrying. In general, when signing bundled code, you should sign the bundle, not the specific executable.
Also, this is nested code and doesn’t belong in the Resources
directory.
codesign -s "Developer ID Application" --options=runtime --timestamp -f ***.app/Contents/Frameworks/***.framework/Versions/A/Resources/***.app/Contents/MacOS/***
This has the same issues as above.
codesign -s "Developer ID Application" --options=runtime --timestamp -f ***.app/Contents/Frameworks/***.framework/Versions/A/Frameworks/***.framework/Versions/Current/Resources/***
…
codesign -s "Developer ID Application" --options=runtime --timestamp -f ***.app/Contents/Frameworks/***.framework/Versions/A/Resources/upload-symbols
…
I suspect that these are both helper tools and thus, again, don’t belong in Resources
.
codesign -s "Developer ID Application" --options=runtime --timestamp -f ***.app/Contents/Frameworks/***.framework/Versions/A/Frameworks/***.framework/Versions/Current/Libraries/***.dylib
…
I see you signing the dynamic libraries embedded within your framework but I don’t see you sign your framework as a whole.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"