I’ve a SPM dependency that depends on a neighborhood binary, that native binary is simply referenced within the manifest, however not printed on git (for loads of motive).
To obtain this binary I take advantage of a swift command plugin (command kind, as a result of is the one one that may write within the package deal and entry to the community).
After dowloaded the binary the spm venture builds high quality.
Sadly I am unable to do the identical when the package deal is added as a dependency in an Xcode venture.
As soon as Xcode begins resolving the dependencies fails, because of the lacking native package deal, however it may be resolved manually by going into:
DerivedData/App-random_string/SourcePackages/chekouts/mylibrary/
and launch the plugin from right here.
This cannot be performed on CI, as a result of I do not know upfront which would be the path of the spm checkouts, the random_string
modifications.
I’ve tried by launching earlier than xcodebuild -showBuildSetting | grep BUILD_DIR
, however nonetheless Xcode attempt to resolve the packages and fails with out exhibiting any output.
Is there a construct settings in Xcode to make the checkout of packages in a particular listing?
Or, does not exist a manner within the Bundle manifest utilizing ProcessInfo
to know if the package deal is resolved by Xcode or from swift package deal
?
.goal(
title: "LocalBinaryWrapper",
dependencies: [
"LocalBinary"
]
),
.binaryTarget(
title: "LocalBinary",
path: "./LocalBinary/LocalBinary.xcframework"
),