[K/N][perf] Workaround KGP bug when dirs are queried instantly

This commit is contained in:
Pavel Punegov
2022-08-18 13:50:36 +02:00
committed by Space
parent 5034581788
commit 1502e6628b
@@ -1,10 +1,12 @@
import org.jetbrains.kotlin.konan.target.HostManager
buildscript { buildscript {
ext.rootBuildDirectory = file('../..') ext.rootBuildDirectory = file('../..')
ext { ext {
def properties = new java.util.Properties() def properties = new java.util.Properties()
properties.load(new java.io.FileReader(project.file("$rootBuildDirectory/../gradle.properties"))) properties.load(new java.io.FileReader(project.file("$rootBuildDirectory/../gradle.properties")))
properties.each { k, v-> properties.each { k, v ->
def key = k as String def key = k as String
def value = project.findProperty(key) ?: v def value = project.findProperty(key) ?: v
project.logger.info("${project.name} $key: $value") project.logger.info("${project.name} $key: $value")
@@ -115,35 +117,42 @@ kotlin {
} }
} }
fromPreset(presets.mingwX64, 'windows') { if (HostManager.hostIsMingw) {
binaries.all { fromPreset(presets.mingwX64, 'windows') {
linkerOpts = ["-L${getMingwPath()}/lib".toString()] binaries.all {
} linkerOpts = ["-L${getMingwPath()}/lib".toString()]
compilations.main.cinterops { }
libcurl { compilations.main.cinterops {
includeDirs.headerFilterOnly "${getMingwPath()}/include" libcurl {
includeDirs.headerFilterOnly "${getMingwPath()}/include"
}
} }
} }
} }
fromPreset(presets.linuxX64, 'linux') { if (HostManager.hostIsLinux) {
compilations.main.cinterops { fromPreset(presets.linuxX64, 'linux') {
libcurl { compilations.main.cinterops {
includeDirs.headerFilterOnly '/usr/include', '/usr/include/x86_64-linux-gnu' libcurl {
includeDirs.headerFilterOnly '/usr/include', '/usr/include/x86_64-linux-gnu'
}
} }
} }
} }
fromPreset(presets.macosX64, 'macosX64') {
compilations.main.cinterops { if (HostManager.hostIsMac) {
libcurl { fromPreset(presets.macosX64, 'macosX64') {
includeDirs.headerFilterOnly '/opt/local/include', '/usr/local/include' compilations.main.cinterops {
libcurl {
includeDirs.headerFilterOnly '/opt/local/include', '/usr/local/include'
}
} }
} }
} fromPreset(presets.macosArm64, 'macosArm64') {
fromPreset(presets.macosArm64, 'macosArm64') { compilations.main.cinterops {
compilations.main.cinterops { libcurl {
libcurl { includeDirs.headerFilterOnly '/opt/local/include', '/usr/local/include'
includeDirs.headerFilterOnly '/opt/local/include', '/usr/local/include' }
} }
} }
} }
@@ -153,7 +162,7 @@ kotlin {
} }
} }
configure([findByName('windows'), findByName('linux'), findByName('macosX64'), findByName('macosArm64')]) { configure([findByName('windows'), findByName('linux'), findByName('macosX64'), findByName('macosArm64')].findAll { it != null }) {
def isCurrentHost = (name == getHostName()) def isCurrentHost = (name == getHostName())
compilations.all { compilations.all {
cinterops.all { cinterops.all {