Skip to content

Commit 09159f5

Browse files
committed
⚠️ WIP changes for Windows compilation
1 parent 714c6b2 commit 09159f5

File tree

13 files changed

+78
-111
lines changed

13 files changed

+78
-111
lines changed

aws-crt-kotlin/build.gradle.kts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import aws.sdk.kotlin.gradle.crt.CMakeBuildType
66
import aws.sdk.kotlin.gradle.crt.cmakeInstallDir
77
import aws.sdk.kotlin.gradle.crt.configureCrtCMakeBuild
8-
import aws.sdk.kotlin.gradle.crt.disableCrossCompileTargets
98
import aws.sdk.kotlin.gradle.dsl.configurePublishing
109
import aws.sdk.kotlin.gradle.kmp.configureIosSimulatorTasks
1110
import aws.sdk.kotlin.gradle.kmp.configureKmpTargets
@@ -115,12 +114,6 @@ tasks.register("linuxTestBinaries") {
115114
}
116115
}
117116

118-
val disableCrossCompile = providers.gradleProperty("aws.sdk.kotlin.crt.disableCrossCompile").getOrNull() == "true"
119-
if (disableCrossCompile) {
120-
logger.warn("aws.sdk.kotlin.crt.disableCrossCompile=true: Cross compilation is disabled.")
121-
disableCrossCompileTargets()
122-
}
123-
124117
// run tests on specific JVM version
125118
val testJavaVersion = typedProp<String>("test.java.version")?.let {
126119
JavaLanguageVersion.of(it)

build-support/src/main/kotlin/aws/sdk/kotlin/gradle/crt/CMakeTasks.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import org.gradle.api.tasks.TaskProvider
1111
import org.gradle.kotlin.dsl.named
1212
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget
1313
import org.jetbrains.kotlin.konan.target.HostManager
14+
import org.jetbrains.kotlin.konan.target.KonanTarget
1415

1516
/**
1617
* See [CMAKE_BUILD_TYPE](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html)
@@ -208,12 +209,17 @@ private fun Project.registerCmakeInstallTask(
208209
}
209210
}
210211

212+
private val containerCompileTargets = setOf(
213+
KonanTarget.LINUX_X64,
214+
KonanTarget.LINUX_ARM64,
215+
)
216+
211217
private fun runCmake(project: Project, target: KotlinNativeTarget, cmakeArgs: List<String>) {
212218
project.exec {
213219
workingDir(project.rootDir)
214220
val exeArgs = cmakeArgs.toMutableList()
215221
val exeName = when {
216-
target.konanTarget in crossCompileTargets -> {
222+
target.konanTarget in containerCompileTargets -> {
217223
// cross compiling via dockcross - set the docker exe to cmake
218224
val containerScriptArgs = listOf("--args", "--pull=missing", "--", "cmake")
219225
exeArgs.addAll(0, containerScriptArgs)

build-support/src/main/kotlin/aws/sdk/kotlin/gradle/crt/NativeUtils.kt

Lines changed: 0 additions & 87 deletions
This file was deleted.

crt/aws-c-cal

docker-images/build-all.sh

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#!/bin/bash
2+
set -e
23

34
err() {
45
echo -e >&2 "ERROR: $*\n"
@@ -26,12 +27,16 @@ fi
2627

2728
echo "using container executor OCI_EXE=$OCI_EXE"
2829

29-
# linxuX64
30-
$OCI_EXE build -f "$SCRIPT_DIR/linux-x64/Dockerfile" -t aws-crt-kotlin/linux-x64:latest "$PROJ_ROOT"
31-
$OCI_EXE run --rm aws-crt-kotlin/linux-x64:latest > "$PROJ_ROOT/dockcross-linux-x64"
32-
chmod ug+x "$PROJ_ROOT/dockcross-linux-x64"
30+
IMAGES=(
31+
"linux-x64"
32+
"linux-arm64"
33+
"mingw-x64"
34+
)
3335

34-
# linuxArm64
35-
$OCI_EXE build -f "$SCRIPT_DIR/linux-arm64/Dockerfile" -t aws-crt-kotlin/linux-arm64:latest "$PROJ_ROOT"
36-
$OCI_EXE run --rm aws-crt-kotlin/linux-arm64:latest > "$PROJ_ROOT/dockcross-linux-arm64"
37-
chmod ug+x "$PROJ_ROOT/dockcross-linux-arm64"
36+
for IMAGE in "${IMAGES[@]}"; do
37+
echo "Building dockcross-$IMAGE..."
38+
$OCI_EXE build -f "$SCRIPT_DIR/$IMAGE/Dockerfile" -t "aws-crt-kotlin/$IMAGE:latest" "$PROJ_ROOT"
39+
$OCI_EXE run --rm "aws-crt-kotlin/$IMAGE:latest" > "$PROJ_ROOT/dockcross-$IMAGE"
40+
chmod ug+x "$PROJ_ROOT/dockcross-$IMAGE"
41+
echo ""
42+
done

0 commit comments

Comments
 (0)