« Converting Xojo proje… | Home | Edit and Update for S… »

MBS FileMaker Plugin for Apple Silicon

Last weekend I had a funny idea to continue the preparation on supporting Apple Silicon for the MBS FileMaker Plugin. The work went nice until we came to linking the project and FMWrapper.framework was Intel only. But I had an idea and made myself a dummy FMWrapper.framework, which exports the right functions and is built for both Intel and Apple Silicon. The plugin builds now and we got a new plugin file for both CPU architectures. Checking in Terminal, the file command reports the content like this:

> file MBS.fmplugin/Contents/MacOS/MBS
MBS.fmplugin/Contents/MacOS/MBS: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit bundle x86_64] [arm64]
MBS.fmplugin/Contents/MacOS/MBS (for architecture x86_64): Mach-O 64-bit bundle x86_64
MBS.fmplugin/Contents/MacOS/MBS (for architecture arm64): Mach-O 64-bit bundle arm64

The new plugin is 53.7 MB big. The arm64 side is 26.2 MB in size and a bit smaller than the 27.6 MB part for Intel. Since disk space is no longer a problem, we intend to simply ship this file with both targets later this year and avoid trouble with clients installing the wrong version: Intel or Apple Silicon.

Technically you can of course use lipo command line tool to reduce the code you don't need, but that breaks code signature.

cd path/to/folder
codesign --remove-signature MBS.fmplugin
lipo -extract x86_64 -output MBS.fmplugin/Contents/MacOS/MBS MBS.fmplugin/Contents/MacOS/MBS

Then you get an Intel only and FileMaker may tell you that there is no longer a signature included.

Let us know if you have questions. We look forward to news from Claris about when they will support Apple Silicon directly.
27 01 21 - 15:09