MJegorovas
11/09/2023, 11:38 AMbuildMacosx
task outputs to wrong directory so I get error
/Users/developer/AndroidStudioProjects/SwiftLibSample/CryptoKitWrapper/build/Release-macosx/include doesn't exist
More in 🧵listOf(iosArm64(), iosSimulatorArm64(), macosArm64()).forEach {
with (it) {
val platform = when (name) {
"iosArm64" -> "iphoneos"
"iosSimulatorArm64" -> "iphonesimulator"
"macosArm64" -> "macosx"
else -> error("Unsupported target $name")
}
compilations.getByName("main") {
cinterops.create("CryptoKitWrapper") {
val interopTask = tasks[interopProcessingTaskName]
interopTask.dependsOn(":CryptoKitWrapper:build${platform.capitalize()}")
includeDirs.headerFilterOnly("$rootDir/CryptoKitWrapper/build/Release-$platform/include")
}
}
}
}
listOf("iphoneos", "iphonesimulator", "macosx").forEach { sdk ->
tasks.create<Exec>("build${sdk.capitalize()}") {
group = "build"
commandLine(
"xcodebuild",
"-project", "CryptoKitWrapper.xcodeproj",
"-target", "CryptoKitWrapper",
"-sdk", sdk
)
workingDir(projectDir)
inputs.files(
fileTree("$projectDir/CryptoKitWrapper.xcodeproj") { exclude("**/xcuserdata") },
fileTree("$projectDir/CryptoKitWrapper")
)
outputs.files(
fileTree("$projectDir/build/Release-${sdk}")
)
}
}
tasks.create<Delete>("clean") {
group = "build"
delete("$projectDir/build")
}
package = swift.cryptoKit
language = Objective-C
headers = CryptoKitWrapper/CryptoKitWrapper-Swift.h
headerFilter = CryptoKitWrapper/*
staticLibraries = libCryptoKitWrapper.a
libraryPaths.ios_arm64 = ../CryptoKitWrapper/build/Release-iphoneos
libraryPaths.ios_simulator_arm64 = ../CryptoKitWrapper/build/Release-iphonesimulator
libraryPaths.osx = ../CryptoKitWrapper/build/Release-macosx
linkerOpts = -L/usr/lib/swift
linkerOpts.ios_simulator_arm64 = -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphonesimulator/
linkerOpts.ios_arm64 = -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos/
linkerOpts.osx = -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx/
Release
folder instead of Release-macosx