diff --git a/cmake/ArgumentPassthrough.cmake b/cmake/ArgumentPassthrough.cmake index 56d25d1..3226ae2 100644 --- a/cmake/ArgumentPassthrough.cmake +++ b/cmake/ArgumentPassthrough.cmake @@ -22,6 +22,8 @@ endif() if (DEFINED CMAKE_C_COMPILER) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}") list(APPEND CMAKE_PASSTHROUGH_ENV "CC=${CMAKE_C_COMPILER}") +elseif ($ENV{MSYSTEM} STREQUAL "CLANG64") + list(APPEND CMAKE_PASSTHROUGH_ENV "CC=clang") endif() if (DEFINED CMAKE_C_COMPILER_TARGET) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_C_COMPILER_TARGET=${CMAKE_C_COMPILER_TARGET}") @@ -32,16 +34,22 @@ endif() if (DEFINED CMAKE_CXX_COMPILER_TARGET) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_CXX_COMPILER_TARGET=${CMAKE_CXX_COMPILER_TARGET}") endif() +if (DEFINED CMAKE_RC_COMPILER) + list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_RC_COMPILER=${CMAKE_RC_COMPILER}") +endif() +if (DEFINED CMAKE_STRIP) + list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_STRIP=${CMAKE_STRIP}") +endif() if (DEFINED CMAKE_SYSROOT) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_SYSROOT=${CMAKE_SYSROOT}") endif() -if (DEFINED CMAKE_SYSTEM_NAME) +if (DEFINED CMAKE_SYSTEM_NAME AND NOT CMAKE_SYSTEM_NAME STREQUAL CMAKE_HOST_SYSTEM_NAME) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}") endif() -if (DEFINED CMAKE_SYSTEM_PROCESSOR) +if (DEFINED CMAKE_SYSTEM_PROCESSOR AND NOT CMAKE_SYSTEM_PROCESSOR STREQUAL CMAKE_HOST_SYSTEM_PROCESSOR) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_SYSTEM_PROCESSOR=${CMAKE_SYSTEM_PROCESSOR}") endif() -if (DEFINED CMAKE_SYSTEM_VERSION) +if (DEFINED CMAKE_SYSTEM_VERSION AND NOT CMAKE_SYTEM_VERSION STREQUAL CMAKE_HOST_SYSTEM_VERSION) list(APPEND CMAKE_PASSTHROUGH_ARGS "-DCMAKE_SYSTEM_VERSION=${CMAKE_SYSTEM_VERSION}") endif() if (DEFINED CMAKE_TOOLCHAIN_FILE)