From 05a6df43d6b05b2c6e52eeaafd1fed65ad460c20 Mon Sep 17 00:00:00 2001 From: Vladyslav Usenko Date: Sun, 21 Nov 2021 18:27:34 +0100 Subject: [PATCH] Fixes for arm64 --- CMakeLists.txt | 9 ++++++++- thirdparty/CMakeLists.txt | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 79b1c1b..a7eb330 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -75,6 +75,13 @@ if(NOT CXX_MARCH) set(CXX_MARCH native) endif() +IF(NOT APPLE OR NOT CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64") + set(BASALT_MARCH_FLAGS "-march=${CXX_MARCH}") +ELSE() + message(STATUS "Running on Apple ${CMAKE_SYSTEM_PROCESSOR}. Disabled -march flag.") +ENDIF() + + set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) @@ -239,7 +246,7 @@ endif() # setup combined compiler flags -set(CMAKE_CXX_FLAGS "${BASALT_CXX_FLAGS} -march=${CXX_MARCH} ${BASALT_PASSED_CXX_FLAGS}") +set(CMAKE_CXX_FLAGS "${BASALT_CXX_FLAGS} ${BASALT_MARCH_FLAGS} ${BASALT_PASSED_CXX_FLAGS}") set(EIGEN_INCLUDE_DIR_HINTS ${EIGEN_ROOT}) diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt index 7cf75c2..d7b7161 100644 --- a/thirdparty/CMakeLists.txt +++ b/thirdparty/CMakeLists.txt @@ -50,7 +50,7 @@ set_target_properties(opengv PROPERTIES # fix opengv: compile options (CMAKE_CXX_FLAGS is overwritten by Opengv) target_compile_options(opengv PRIVATE -Wno-unused-private-field - -march=${CXX_MARCH} + ${BASALT_MARCH_FLAGS} ${BASALT_PASSED_CXX_FLAGS}) # TODO: enable once mpark issue is fixed upstream pangolin @@ -69,7 +69,7 @@ endif() # fix pangolin: macOS >= 10.14 Mojave if(APPLE AND CMAKE_SYSTEM_VERSION VERSION_GREATER_EQUAL 18.0.0) - target_compile_options(pangolin PRIVATE "-Wno-deprecated-declarations") + target_compile_options(pangolin PRIVATE "-Wno-deprecated-declarations" "-Wno-deprecated-copy") endif() # fix pangolin: clang