From cb26f1af8b6025d0e0a148e2661aa5bd057d6947 Mon Sep 17 00:00:00 2001 From: Matteo Ceruti Date: Thu, 31 Aug 2023 18:17:33 +0200 Subject: Allow arm64 build ion macOS by using toolchain file apple.cmake and exporting an EVN-Variable OTR_OSX_ARCH=arm64 I build with after cloning the repo cd opentrack export OTR_OSX_ARCH=arm64 ; cmake --toolchain ./cmake/apple.cmake -S . -B build cd build make install --- cmake/apple.cmake | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'cmake') diff --git a/cmake/apple.cmake b/cmake/apple.cmake index f6b83382..64e4d628 100644 --- a/cmake/apple.cmake +++ b/cmake/apple.cmake @@ -1,12 +1,19 @@ set(CMAKE_BUILD_TYPE_INIT RELEASE) -set(CMAKE_CXX_FLAGS "-arch x86_64 -stdlib=libc++" CACHE STRING "" FORCE) -set(CMAKE_C_FLAGS "-arch x86_64" CACHE STRING "" FORCE) +if("$ENV{OTR_OSX_ARCH}" STREQUAL "arm64") + set(CMAKE_OSX_ARCHITECTURES "arm64" CACHE STRING "" FORCE) + set(opentrack-intel FALSE) +else() + set(CMAKE_OSX_ARCHITECTURES "x86_64" CACHE STRING "" FORCE) + set(opentrack-intel TRUE) +endif() + +set(CMAKE_CXX_FLAGS "-stdlib=libc++" CACHE STRING "" FORCE) set(CMAKE_C_FLAGS_RELEASE "-ffast-math -O3 -flto -g" CACHE STRING "" FORCE) set(CMAKE_CXX_FLAGS_RELEASE " ${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "" FORCE) -set(cmake-link-common "-stdlib=libc++ -arch x86_64") +set(cmake-link-common "-stdlib=libc++") set(CMAKE_EXE_LINKER_FLAGS "${cmake-link-common} -Wl,-stack_size,0x4000000" CACHE STRING "" FORCE) set(CMAKE_SHARED_LINKER_FLAGS ${cmake-link-common} CACHE STRING "" FORCE) set(CMAKE_MODULE_LINKER_FLAGS ${cmake-link-common} CACHE STRING "" FORCE) -- cgit v1.2.3