vcpkg/ports/boost-cmake/fix-missing-archs.diff

39 lines
1.1 KiB
Diff
Raw Normal View History

diff --git a/include/BoostInstall.cmake b/include/BoostInstall.cmake
index 3a00c16..069dde0 100644
--- a/include/BoostInstall.cmake
+++ b/include/BoostInstall.cmake
@@ -152,7 +152,31 @@ function(__boost_install_set_output_name LIB TYPE VERSION)
# Arch and model
math(EXPR bits ${CMAKE_SIZEOF_VOID_P}*8)
- string(APPEND name_debug "-x${bits}") # x86 only for now
- string(APPEND name_release "-x${bits}")
+ set(arch "x")
+
+ if(MSVC)
+
+ if(CMAKE_CXX_COMPILER_ARCHITECTURE_ID MATCHES "^ARM")
+ set(arch "a")
+ endif()
+
+ else()
+
+ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^[Aa][Rr][Mm]"
+ OR CMAKE_SYSTEM_PROCESSOR MATCHES "aarch")
+ set(arch "a")
+ elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^mips")
+ set(arch "m")
+ elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "i(3|6)86")
+ set(arch "x")
+ else()
+ string(SUBSTRING "${CMAKE_SYSTEM_PROCESSOR}" 0 1 arch)
+ string(TOLOWER "${arch}" arch)
+ endif()
+
+ endif()
+
+ string(APPEND name_debug "-${arch}${bits}")
+ string(APPEND name_release "-${arch}${bits}")
endif()