cmake: improve host system detection in some more cases

This commit is contained in:
Alex Rønne Petersen 2025-11-12 10:04:30 +01:00
parent cbfa87cbea
commit 0f71a9291a
No known key found for this signature in database

View file

@ -732,8 +732,15 @@ endforeach()
include(CheckSymbolExists) include(CheckSymbolExists)
string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" ZIG_HOST_TARGET_OS) string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" ZIG_HOST_TARGET_OS)
if(ZIG_HOST_TARGET_OS STREQUAL "darwin") if(ZIG_HOST_TARGET_OS STREQUAL "android")
set(ZIG_HOST_TARGET_OS "linux")
set(ZIG_HOST_TARGET_IS_ANDROID TRUE)
elseif(ZIG_HOST_TARGET_OS STREQUAL "darwin")
set(ZIG_HOST_TARGET_OS "macos") set(ZIG_HOST_TARGET_OS "macos")
elseif(ZIG_HOST_TARGET_OS STREQUAL "gnu")
set(ZIG_HOST_TARGET_OS "hurd")
elseif(ZIG_HOST_TARGET_OS STREQUAL "serenityos")
set(ZIG_HOST_TARGET_OS "serenity")
elseif(ZIG_HOST_TARGET_OS STREQUAL "sunos") elseif(ZIG_HOST_TARGET_OS STREQUAL "sunos")
set(ZIG_HOST_TARGET_OS "illumos") set(ZIG_HOST_TARGET_OS "illumos")
endif() endif()
@ -762,15 +769,17 @@ if(ZIG_HOST_TARGET_ARCH MATCHES "^arm(eb)?$")
endif() endif()
string(REGEX REPLACE "^ppc((64)?(le)?)$" "powerpc\\1" ZIG_HOST_TARGET_ARCH "${ZIG_HOST_TARGET_ARCH}") string(REGEX REPLACE "^ppc((64)?(le)?)$" "powerpc\\1" ZIG_HOST_TARGET_ARCH "${ZIG_HOST_TARGET_ARCH}")
set(ZIG_HOST_TARGET_ABI "")
if(MSVC) if(MSVC)
set(ZIG_HOST_TARGET_ABI "-msvc") set(ZIG_HOST_TARGET_ABI "-msvc")
elseif(MINGW) elseif(MINGW)
set(ZIG_HOST_TARGET_ABI "-gnu") set(ZIG_HOST_TARGET_ABI "-gnu")
elseif(ZIG_HOST_TARGET_ARCH MATCHES "^(arm|thumb)hf?(eb)?$") elseif(ZIG_HOST_TARGET_IS_ANDROID)
string(REGEX REPLACE "^(arm|thumb)hf?((eb)?)$" "\\1\\2" ZIG_HOST_TARGET_ARCH "${ZIG_HOST_TARGET_ARCH}") if(ZIG_HOST_TARGET_ARCH STREQUAL "arm")
set(ZIG_HOST_TARGET_ABI "-eabihf") set(ZIG_HOST_TARGET_ABI "androideabi")
else() else()
set(ZIG_HOST_TARGET_ABI "") set(ZIG_HOST_TARGET_ABI "android")
endif()
endif() endif()
set(ZIG_HOST_TARGET_TRIPLE "${ZIG_HOST_TARGET_ARCH}-${ZIG_HOST_TARGET_OS}${ZIG_HOST_TARGET_ABI}" CACHE STRING "Host zig target triple.") set(ZIG_HOST_TARGET_TRIPLE "${ZIG_HOST_TARGET_ARCH}-${ZIG_HOST_TARGET_OS}${ZIG_HOST_TARGET_ABI}" CACHE STRING "Host zig target triple.")