iosxcodeframeworksxcodebuildxcframework

Xcode: build all the dependent targets when building a framework target


I have an Xcode project with a Framework A target.

That target depends on a few other modules, e.g. SubFramework A and SubFramework B.

When running the Xcodebuild command:

xcodebuild archive \
-scheme SchemeName \
-configuration Release \
-destination 'generic/platform=iOS Simulator' \
-archivePath './build/SchemeName.framework-iphonesimulator.xcarchive' \
SKIP_INSTALL=NO \
BUILD_LIBRARIES_FOR_DISTRIBUTION=YES

I'm getting only the resulting library out, i.e. SchemeName.framework. When I then try to bundle it into the application, of course, I cannot compile it as SubFramework A and SubFramework B are not included.

Q:

Is it possible to modify the scheme's build settings, xcodebuild command or target settings in order to get the SubFramework A and SubFramework B as the build output results too?


Solution

  • Seems Xcode cannot bundle frameworks within frameworks. If app needs Framework A, which needs SubFramework A and SubFramework B, app must also link SubFramework A and SubFramework B.