So I finally settled on using a swift package to handle the command line tool project, which I added to the main app project using the package dependencies. This package executable product could be set as a dependency, and I added a run script build phase to sign the tool and embed it in the main app's Resources folder.
The SPM executable product needs to be signed with --options=runtime to be embedded in a notarized macOS app. The script is pretty simple:
#!/bin/bash
devID="Developer ID Application: Me Myself (ASDF1234)"
toolPath="${BUILT_PRODUCTS_DIR}/MyTool"
codesign --force --options=runtime --sign "${devID}" "${toolPath}"
cp "${toolPath}" "${CONFIGURATION_BUILD_DIR}/${CONTENTS_FOLDER_PATH}/Resources"
Post
Replies
Boosts
Views
Activity
I have also run into this problem with an app using a 3rd party framework. Building and running the app with Xcode 14 works fine, building and running with Xcode 15 produces team ID errors on the 3rd party framework and it doesn't load. I also tried stripping the code signatures and re-signing the framework but it still didn't load properly.