diff --git a/tools/cmake/helpers/platform.cmake b/tools/cmake/helpers/platform.cmake index a377dfd042b..961b41d6897 100644 --- a/tools/cmake/helpers/platform.cmake +++ b/tools/cmake/helpers/platform.cmake @@ -74,20 +74,16 @@ function(get_os OS) endfunction() function(get_arch ARCH) - if(ARCH_X86) + if( CMAKE_SIZEOF_VOID_P MATCHES 8 ) + # void ptr = 8 byte --> x86_64 + set(${ARCH} "x64" PARENT_SCOPE) + elseif( CMAKE_SIZEOF_VOID_P MATCHES 4 ) + # void ptr = 4 byte --> x86 set(${ARCH} "x86" PARENT_SCOPE) - elseif(ARCH_X64) - set(${ARCH} "x64" PARENT_SCOPE) else() - if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "i386") - set(${ARCH} "x86" PARENT_SCOPE) - elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86_64") - set(${ARCH} "x64" PARENT_SCOPE) - else() message(FATAL_ERROR "Unsupported architecture") - endif() - endif() -endfunction() + endif() +endfunction(get_arch ARCH) function(get_sdk SDK) if(SDK_QT)