/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip:1:1 changes being made to the file will invalidate the code signature in: /Users/davidhoskins/QuikQuak_JUCE/CrowdChamber/Builds/MacOSX/build/Release/
This is only for the VST3 in both Arm and Intel.
Is there a way of stripping the plug-in, and code signing it in Xcode?
And I don’t understand why it’s only the VST3 and not the others, as they all have the same options.
The usual technique is to codesign manually afterwards running a command from Terminal.
I’m sure you can set this up to run from Xcode too but since stripping is something you’d normally do only for the release build, and you’ll probably want to do additional things as well (notarizing etc), you might as well do all of these things in a shell script that you run after the build.
In newer versions of JUCE, buidling a VST3 in Xcode will actually do the following in order:
Build a minimal unsigned VST3 bundle with no supporting files
Sign the minimal VST3 using an ad-hoc certificate
Load the minimal VST3 in juce_vst3_helper to generate supporting files (Arm Macs require executable code, including plugins, to be signed in order to load them)
Sign the final VST3 bundle including supporting files
I haven’t checked, but it sounds like stripping is happening at some point after the ad-hoc signing, but before the second signing. You can use the codesign tool to verify that the final VST3 bundle has the signature you’d expect.
Stripping the ad-hoc signed plugin shouldn’t cause any problems, as long as the VST3 has a valid signature at the point where juce_vst3_helper runs.