diff --git a/CMakeLists.txt b/CMakeLists.txt index 05512f96c..2faec99a9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -95,6 +95,16 @@ set(REQUIRED_LIBEI_VERSION 1.3) set(REQUIRED_LIBPORTAL_VERSION 0.8) set(REQUIRED_QT_VERSION 6.7.0) +if (WIN32) + if ("$ENV{VSCMD_ARG_TGT_ARCH}" STREQUAL "") + set (BUILD_ARCHITECTURE x64) + else() + set (BUILD_ARCHITECTURE $ENV{VSCMD_ARG_TGT_ARCH}) + endif() +else() + set (BUILD_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR}) +endif() + if (MSVC) # On Windows, require that the same MSVC runtime is used as on the host. # Mitigates things like access violations caused by accidental ABI-compatibility breakage. @@ -102,7 +112,7 @@ if (MSVC) cmake_host_system_information( RESULT REQUIRED_MSVC_RUNTIME_MINOR QUERY WINDOWS_REGISTRY - "HKLM/SOFTWARE/Microsoft/VisualStudio/${REQUIRED_MSVC_RUNTIME_MAJOR}.0/VC/Runtimes/x64" + "HKLM/SOFTWARE/Microsoft/VisualStudio/${REQUIRED_MSVC_RUNTIME_MAJOR}.0/VC/Runtimes/${BUILD_ARCHITECTURE}" VALUE "Minor") if (REQUIRED_MSVC_RUNTIME_MINOR) message(STATUS "MSVC runtime: ${REQUIRED_MSVC_RUNTIME_MAJOR}.${REQUIRED_MSVC_RUNTIME_MINOR}") diff --git a/deploy/linux/deploy.cmake b/deploy/linux/deploy.cmake index b3189a3aa..b93c3af3c 100644 --- a/deploy/linux/deploy.cmake +++ b/deploy/linux/deploy.cmake @@ -100,9 +100,9 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") if("${DISTRO_NAME}" STREQUAL "") set(DISTRO_NAME "linux") endif() - set(OS_STRING "${DISTRO_NAME}-${CN_STRING}${CMAKE_SYSTEM_PROCESSOR}") + set(OS_STRING "${DISTRO_NAME}-${CN_STRING}${BUILD_ARCHITECTURE}") elseif(${CMAKE_SYSTEM_NAME} MATCHES "|.*BSD") message(STATUS "BSD packaging not yet supported") - set(OS_STRING ${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}) + set(OS_STRING ${CMAKE_SYSTEM_NAME}-${BUILD_ARCHITECTURE}) endif() diff --git a/deploy/mac/deploy.cmake b/deploy/mac/deploy.cmake index d8ef2f993..cf8a0b3a7 100644 --- a/deploy/mac/deploy.cmake +++ b/deploy/mac/deploy.cmake @@ -11,7 +11,7 @@ install(CODE "execute_process(COMMAND -timestamp -codesign=- )") -set(OS_STRING "macos-${CMAKE_SYSTEM_PROCESSOR}") +set(OS_STRING "macos-${BUILD_ARCHITECTURE}") set(CPACK_PACKAGE_ICON "${MY_DIR}/dmg-volume.icns") set(CPACK_DMG_BACKGROUND_IMAGE "${MY_DIR}/dmg-background.tiff") set(CPACK_DMG_DS_STORE_SETUP_SCRIPT "${MY_DIR}/generate_ds_store.applescript") diff --git a/deploy/windows/deploy.cmake b/deploy/windows/deploy.cmake index ccc1ec1e4..6faa50910 100644 --- a/deploy/windows/deploy.cmake +++ b/deploy/windows/deploy.cmake @@ -19,14 +19,7 @@ set(CPACK_PRE_BUILD_SCRIPTS ${CMAKE_CURRENT_BINARY_DIR}/pre-cpack.cmake) configure_file(${MY_DIR}/cpack-options.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/cpack-options.cmake @ONLY) set(CPACK_PROJECT_CONFIG_FILE ${CMAKE_CURRENT_BINARY_DIR}/cpack-options.cmake) -# Setup OS_STRING -if(CMAKE_SYSTEM_PROCESSOR MATCHES AMD64) - set(OS_STRING "win-x64") -elseif(CMAKE_SYSTEM_PROCESSOR MATCHES ARM64) - set(OS_STRING "win-arm64") -else() - set(OS_STRING "win-${CMAKE_SYSTEM_PROCESSOR}") -endif() +set(OS_STRING "win-${BUILD_ARCHITECTURE}") list(APPEND CPACK_GENERATOR "7Z") diff --git a/deploy/windows/wix-patch.xml.in b/deploy/windows/wix-patch.xml.in index 403730e29..54a58902e 100644 --- a/deploy/windows/wix-patch.xml.in +++ b/deploy/windows/wix-patch.xml.in @@ -32,7 +32,7 @@