I am creating a package that depends on OpenSSL on macOS. To use SPM to build the package, I need to pass it some build/linker flags:
swift build -Xlinker -L/usr/local/opt/openssl/lib -Xcc -I/usr/local/opt/openssl/include
The problem is that when I build my xcode project using SPM, I cannot pass the flags. In theory I would think the following would work,
swift package generate-xcodeproj -Xlinker -L/usr/local/opt/openssl/lib -Xcc -I/usr/local/opt/openssl/include
but it doesn't and once Xcode project is generated, to build in it, I need to go into the Settings and update the appropriate paths.
This is obviously ugly and also it wouldn't work for proper CI workflow, which depend on features that are currently only supported by xcode project and not SPM.
I have already tried passing these values when doing a command line xcodebuild
like the following, but that also didn't work.
xcodebuild -project MyProj.xcodeproj -scheme MyProjScheme HEADER_SEARCH_PATHS=/usr/local/opt/openssl/include LIBRARY_SEARCH_PATHS=/usr/local/opt/openssl/lib build
Any suggestions?