Support compilation to Android arm32 from Windows hosts. (#2623)

This commit is contained in:
Nikolay Igotti
2019-02-05 08:11:38 +03:00
committed by GitHub
parent dee467457b
commit fd9321d2bd
3 changed files with 16 additions and 1 deletions
+12
View File
@@ -289,6 +289,12 @@ dependencies.linux_x64-android_arm32 = \
target-sysroot-21-android_arm32 \
target-toolchain-21-linux-android_arm32 \
libffi-3.2.1-2-linux-x86-64
targetToolchain.mingw_x64-android_arm32 = target-toolchain-21-windows-android_arm32
dependencies.mingw_x64-android_arm32 = \
msys2-mingw-w64-x86_64-gcc-7.3.0-clang-llvm-lld-6.0.1 \
target-sysroot-21-android_arm32 \
target-toolchain-21-windows-android_arm32 \
libffi-3.2.1-mingw-w64-x86-64
quadruple.android_arm32 = arm-linux-androideabi
entrySelector.android_arm32 = -Wl,--defsym -Wl,main=Konan_main
@@ -313,6 +319,12 @@ dependencies.linux_x64-android_arm64 = \
target-sysroot-21-android_arm64 \
target-toolchain-21-linux-android_arm64 \
libffi-3.2.1-2-linux-x86-64
targetToolchain.mingw_x64-android_arm64 = target-toolchain-21-windows-android_arm64
dependencies.mingw_x64-android_arm64 = \
msys2-mingw-w64-x86_64-gcc-7.3.0-clang-llvm-lld-6.0.1 \
target-sysroot-21-android_arm64 \
target-toolchain-21-windows-android_arm64 \
libffi-3.2.1-mingw-w64-x86-64
quadruple.android_arm64 = aarch64-linux-android
entrySelector.android_arm64 = -Wl,--defsym -Wl,main=Konan_main
@@ -184,6 +184,9 @@ open class HostManager(protected val distribution: Distribution = Distribution()
KonanTarget.MINGW_X64,
KonanTarget.LINUX_X64,
KonanTarget.LINUX_ARM32_HFP,
KonanTarget.ANDROID_ARM32,
// TODO: toolchain to be fixed for that to work.
// KonanTarget.ANDROID_ARM64,
KonanTarget.WASM32
) + zephyrSubtargets
KonanTarget.MACOS_X64 -> listOf(
@@ -93,7 +93,7 @@ open class AndroidLinker(targetProperties: AndroidConfigurables)
: LinkerFlags(targetProperties), AndroidConfigurables by targetProperties {
private val prefix = "$absoluteTargetToolchain/bin/"
private val clang = "$prefix/clang"
private val clang = if (HostManager.hostIsMingw) "$prefix/clang.cmd" else "$prefix/clang"
private val ar = "$absoluteTargetToolchain/${targetProperties.targetArg}/bin/ar"
override val useCompilerDriverAsLinker: Boolean get() = true