diff --git a/scripts/toolchains/freebsd.cmake b/scripts/toolchains/freebsd.cmake index 016b2f1522..22cb5eefdb 100644 --- a/scripts/toolchains/freebsd.cmake +++ b/scripts/toolchains/freebsd.cmake @@ -5,6 +5,18 @@ if(CMAKE_HOST_SYSTEM_NAME STREQUAL "FreeBSD") endif() set(CMAKE_SYSTEM_NAME FreeBSD CACHE STRING "") +if(NOT DEFINED CMAKE_SYSTEM_PROCESSOR) + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(CMAKE_SYSTEM_PROCESSOR x86_64 CACHE STRING "") + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + set(CMAKE_SYSTEM_PROCESSOR x86 CACHE STRING "") + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") + set(CMAKE_SYSTEM_PROCESSOR arm64 CACHE STRING "") + else() + set(CMAKE_SYSTEM_PROCESSOR "${CMAKE_HOST_SYSTEM_PROCESSOR}" CACHE STRING "") + endif() +endif() + get_property( _CMAKE_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE ) if(NOT _CMAKE_IN_TRY_COMPILE) string(APPEND CMAKE_C_FLAGS_INIT " -fPIC ${VCPKG_C_FLAGS} ") diff --git a/scripts/toolchains/openbsd.cmake b/scripts/toolchains/openbsd.cmake index d606e8307d..8046628a1e 100644 --- a/scripts/toolchains/openbsd.cmake +++ b/scripts/toolchains/openbsd.cmake @@ -1,18 +1,30 @@ if(NOT _VCPKG_OPENBSD_TOOLCHAIN) set(_VCPKG_OPENBSD_TOOLCHAIN 1) - + if(CMAKE_HOST_SYSTEM_NAME STREQUAL "OpenBSD") set(CMAKE_CROSSCOMPILING OFF CACHE BOOL "") endif() set(CMAKE_SYSTEM_NAME OpenBSD CACHE STRING "") +if(NOT DEFINED CMAKE_SYSTEM_PROCESSOR) + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(CMAKE_SYSTEM_PROCESSOR x86_64 CACHE STRING "") + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + set(CMAKE_SYSTEM_PROCESSOR x86 CACHE STRING "") + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") + set(CMAKE_SYSTEM_PROCESSOR arm64 CACHE STRING "") + else() + set(CMAKE_SYSTEM_PROCESSOR "${CMAKE_HOST_SYSTEM_PROCESSOR}" CACHE STRING "") + endif() +endif() + if(NOT DEFINED CMAKE_CXX_COMPILER) set(CMAKE_CXX_COMPILER "/usr/bin/clang++") endif() if(NOT DEFINED CMAKE_C_COMPILER) set(CMAKE_C_COMPILER "/usr/bin/clang") endif() - + get_property( _CMAKE_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE ) if(NOT _CMAKE_IN_TRY_COMPILE) string(APPEND CMAKE_C_FLAGS_INIT " -fPIC ${VCPKG_C_FLAGS} ")