mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-13 15:44:36 +00:00
update
This commit is contained in:
commit
6fb3c84073
3 changed files with 52 additions and 21 deletions
|
|
@ -501,12 +501,23 @@ string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" ARCH)
|
||||||
set(IS_X86 FALSE)
|
set(IS_X86 FALSE)
|
||||||
set(IS_ARM FALSE)
|
set(IS_ARM FALSE)
|
||||||
|
|
||||||
if(ARCH MATCHES "x86_64|amd64|i[3-6]86")
|
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||||
set(IS_X86 TRUE)
|
# Use the CMAKE_OSX_ARCHITECTURES list for universal builds
|
||||||
endif()
|
foreach(arch IN LISTS CMAKE_OSX_ARCHITECTURES)
|
||||||
|
if(arch STREQUAL "x86_64")
|
||||||
if(ARCH MATCHES "arm64|aarch64")
|
set(IS_X86 TRUE)
|
||||||
set(IS_ARM TRUE)
|
elseif(arch STREQUAL "arm64")
|
||||||
|
set(IS_ARM TRUE)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
else()
|
||||||
|
# Non-macOS detection
|
||||||
|
if(ARCH MATCHES "arm64|aarch64")
|
||||||
|
set(IS_ARM TRUE)
|
||||||
|
endif()
|
||||||
|
if(ARCH MATCHES "x86_64|amd64|i[3-6]86")
|
||||||
|
set(IS_X86 TRUE)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# always available
|
# always available
|
||||||
|
|
|
||||||
|
|
@ -9,22 +9,22 @@ set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-rpath,")
|
||||||
|
|
||||||
# minimum for multi arch build is 11.
|
# minimum for multi arch build is 11.
|
||||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "11" CACHE STRING "" FORCE)
|
set(CMAKE_OSX_DEPLOYMENT_TARGET "11" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_OSX_ARCHITECTURES "x86_64;arm64" CACHE STRING "" FORCE)
|
set(CMAKE_OSX_ARCHITECTURES "x86_64;arm64" CACHE STRING "Architectures to build" FORCE)
|
||||||
set(CMAKE_XCODE_ATTRIBUTE_MACOSX_DEPLOYMENT_TARGET[arch=arm64] "11.0" CACHE STRING "arm 64 minimum deployment target" FORCE)
|
set(CMAKE_XCODE_ATTRIBUTE_MACOSX_DEPLOYMENT_TARGET[arch=arm64] "11.0" CACHE STRING "arm 64 minimum deployment target" FORCE)
|
||||||
|
|
||||||
if(CMAKE_OSX_ARCHITECTURES MATCHES "((^|;|, )(arm64|arm64e|x86_64))+")
|
# if(CMAKE_OSX_ARCHITECTURES MATCHES "((^|;|, )(arm64|arm64e|x86_64))+")
|
||||||
set(CMAKE_C_SIZEOF_DATA_PTR 8)
|
# set(CMAKE_C_SIZEOF_DATA_PTR 8)
|
||||||
set(CMAKE_CXX_SIZEOF_DATA_PTR 8)
|
# set(CMAKE_CXX_SIZEOF_DATA_PTR 8)
|
||||||
if(CMAKE_OSX_ARCHITECTURES MATCHES "((^|;|, )(arm64|arm64e))+")
|
# if(CMAKE_OSX_ARCHITECTURES MATCHES "((^|;|, )(arm64|arm64e))+")
|
||||||
set(CMAKE_SYSTEM_PROCESSOR "aarch64")
|
# set(CMAKE_SYSTEM_PROCESSOR "aarch64")
|
||||||
else()
|
# else()
|
||||||
set(CMAKE_SYSTEM_PROCESSOR "x86_64")
|
# set(CMAKE_SYSTEM_PROCESSOR "x86_64")
|
||||||
endif()
|
# endif()
|
||||||
else()
|
# else()
|
||||||
set(CMAKE_C_SIZEOF_DATA_PTR 4)
|
# set(CMAKE_C_SIZEOF_DATA_PTR 4)
|
||||||
set(CMAKE_CXX_SIZEOF_DATA_PTR 4)
|
# set(CMAKE_CXX_SIZEOF_DATA_PTR 4)
|
||||||
set(CMAKE_SYSTEM_PROCESSOR "arm")
|
# set(CMAKE_SYSTEM_PROCESSOR "arm")
|
||||||
endif()
|
# endif()
|
||||||
|
|
||||||
# Enable codesigning with secure timestamp when not in Debug configuration (required for Notarization)
|
# Enable codesigning with secure timestamp when not in Debug configuration (required for Notarization)
|
||||||
set(CMAKE_XCODE_ATTRIBUTE_OTHER_CODE_SIGN_FLAGS[variant=Release] "--timestamp")
|
set(CMAKE_XCODE_ATTRIBUTE_OTHER_CODE_SIGN_FLAGS[variant=Release] "--timestamp")
|
||||||
|
|
|
||||||
|
|
@ -176,7 +176,27 @@ function(add_math_backend name compile_defs)
|
||||||
elseif(name STREQUAL "avx2")
|
elseif(name STREQUAL "avx2")
|
||||||
target_compile_options(math_${name} PRIVATE -mavx2 -mfma)
|
target_compile_options(math_${name} PRIVATE -mavx2 -mfma)
|
||||||
elseif(name STREQUAL "neon")
|
elseif(name STREQUAL "neon")
|
||||||
target_compile_options(math_${name} PRIVATE -march=armv8-a)
|
if(APPLE)
|
||||||
|
set_target_properties(math_${name} PROPERTIES OSX_ARCHITECTURES "arm64")
|
||||||
|
else()
|
||||||
|
target_compile_options(math_${name} PRIVATE -march=armv8-a)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
# ARM-only backend
|
||||||
|
if(name STREQUAL "neon")
|
||||||
|
set_target_properties(math_${name} PROPERTIES
|
||||||
|
OSX_ARCHITECTURES "arm64"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# x86-only backends
|
||||||
|
if(name MATCHES "sse2|sse41|avx|avx2")
|
||||||
|
set_target_properties(math_${name} PROPERTIES
|
||||||
|
OSX_ARCHITECTURES "x86_64"
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue