Fix cross-compilation using MinGW-w64

This commit is contained in:
Oliver Hamlet
2024-09-04 17:38:27 +01:00
parent 4e71695ebf
commit 19f5c30e6f
+15 -13
View File
@@ -47,19 +47,21 @@ set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
set(Boost_USE_STATIC_RUNTIME OFF)
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
if(CMAKE_GENERATOR_PLATFORM STREQUAL "Win32")
set(RUST_TARGET i686-pc-windows-msvc)
elseif(CMAKE_GENERATOR_PLATFORM STREQUAL "x64")
set(RUST_TARGET x86_64-pc-windows-msvc)
endif()
else()
if(CMAKE_GENERATOR_PLATFORM STREQUAL "Win32")
set(RUST_TARGET i686-pc-windows-gnu)
elseif(CMAKE_GENERATOR_PLATFORM STREQUAL "x64")
set(RUST_TARGET x86_64-pc-windows-gnu)
endif()
if(NOT DEFINED RUST_TARGET AND WIN32)
if(MSVC)
set(RUST_TARGET_ENV "msvc")
elseif(MINGW)
set(RUST_TARGET_ENV "gnu")
endif()
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
set(RUST_TARGET_ARCH "i686")
elseif(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(RUST_TARGET_ARCH "x86_64")
endif()
if(DEFINED RUST_TARGET_ENV AND DEFINED RUST_TARGET_ARCH)
set(RUST_TARGET "${RUST_TARGET_ARCH}-pc-windows-${RUST_TARGET_ENV}")
endif()
endif()