summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@yahooinc.com>2023-04-12 14:37:59 +0200
committerTor Egge <Tor.Egge@yahooinc.com>2023-04-12 14:37:59 +0200
commit1bdad901b2ffd1b0e5f2ce69e53fce985021b5cb (patch)
tree9cacc7e92c9b60520339dfa4fbda706395af1966
parent84bcda7387c5b69428a994f434f87f979200f734 (diff)
Handle homebrew having different install prefix on Apple silicon.
-rw-r--r--default_build_settings.cmake18
-rw-r--r--functions.cmake8
2 files changed, 17 insertions, 9 deletions
diff --git a/default_build_settings.cmake b/default_build_settings.cmake
index c82bb91accc..2785a98a396 100644
--- a/default_build_settings.cmake
+++ b/default_build_settings.cmake
@@ -4,11 +4,11 @@ include(VespaExtendedDefaultBuildSettings OPTIONAL)
function(setup_vespa_default_build_settings_darwin)
message("-- Setting up default build settings for darwin")
- set(DEFAULT_EXTRA_LINK_DIRECTORY "${VESPA_DEPS_PREFIX}/lib" "/usr/local/opt/bison/lib" "/usr/local/opt/flex/lib" "/usr/local/opt/icu4c/lib" "/usr/local/opt/openssl@1.1/lib" "/usr/local/opt/openblas/lib")
- list(APPEND DEFAULT_EXTRA_LINK_DIRECTORY "/usr/local/lib")
+ set(DEFAULT_EXTRA_LINK_DIRECTORY "${VESPA_DEPS_PREFIX}/lib" "${VESPA_HOMEBREW_PREFIX}/opt/bison/lib" "${VESPA_HOMEBREW_PREFIX}/opt/flex/lib" "${VESPA_HOMEBREW_PREFIX}/opt/icu4c/lib" "${VESPA_HOMEBREW_PREFIX}/opt/openssl@1.1/lib" "${VESPA_HOMEBREW_PREFIX}/opt/openblas/lib")
+ list(APPEND DEFAULT_EXTRA_LINK_DIRECTORY "${VESPA_HOMEBREW_PREFIX}/lib")
set(DEFAULT_EXTRA_LINK_DIRECTORY "${DEFAULT_EXTRA_LINK_DIRECTORY}" PARENT_SCOPE)
- set(DEFAULT_EXTRA_INCLUDE_DIRECTORY "${VESPA_DEPS_PREFIX}/include" "/usr/local/opt/flex/include" "/usr/local/opt/icu4c/include" "/usr/local/opt/openssl@1.1/include" "/usr/local/opt/openblas/include")
- list(APPEND DEFAULT_EXTRA_INCLUDE_DIRECTORY "/usr/local/include")
+ set(DEFAULT_EXTRA_INCLUDE_DIRECTORY "${VESPA_DEPS_PREFIX}/include" "${VESPA_HOMEBREW_PREFIX}/opt/flex/include" "${VESPA_HOMEBREW_PREFIX}/opt/icu4c/include" "${VESPA_HOMEBREW_PREFIX}/opt/openssl@1.1/include" "${VESPA_HOMEBREW_PREFIX}/opt/openblas/include")
+ list(APPEND DEFAULT_EXTRA_INCLUDE_DIRECTORY "${VESPA_HOMEBREW_PREFIX}/include")
set(DEFAULT_EXTRA_INCLUDE_DIRECTORY "${DEFAULT_EXTRA_INCLUDE_DIRECTORY}" PARENT_SCOPE)
endfunction()
@@ -84,7 +84,7 @@ endfunction()
function(vespa_use_default_cmake_prefix_path)
set(DEFAULT_CMAKE_PREFIX_PATH ${VESPA_DEPS_PREFIX})
if (APPLE)
- list(APPEND DEFAULT_CMAKE_PREFIX_PATH "/usr/local/opt/bison" "/usr/local/opt/flex" "/usr/local/opt/openssl@1.1" "/usr/local/opt/openblas" "/usr/local/opt/icu4c")
+ list(APPEND DEFAULT_CMAKE_PREFIX_PATH "${VESPA_HOMEBREW_PREFIX}/opt/bison" "${VESPA_HOMEBREW_PREFIX}/opt/flex" "${VESPA_HOMEBREW_PREFIX}/opt/openssl@1.1" "${VESPA_HOMEBREW_PREFIX}/opt/openblas" "${VESPA_HOMEBREW_PREFIX}/opt/icu4c")
endif()
message("-- DEFAULT_CMAKE_PREFIX_PATH is ${DEFAULT_CMAKE_PREFIX_PATH}")
if(NOT DEFINED CMAKE_PREFIX_PATH)
@@ -203,8 +203,8 @@ function(vespa_use_default_cxx_compiler)
unset(DEFAULT_CMAKE_CXX_COMPILER)
if(NOT DEFINED VESPA_COMPILER_VARIANT OR VESPA_COMPILER_VARIANT STREQUAL "gcc")
if(APPLE)
- set(DEFAULT_CMAKE_C_COMPILER "/usr/local/bin/gcc-12")
- set(DEFAULT_CMAKE_CXX_COMPILER "/usr/local/bin/g++-12")
+ set(DEFAULT_CMAKE_C_COMPILER "${VESPA_HOMEBREW_PREFIX}/bin/gcc-12")
+ set(DEFAULT_CMAKE_CXX_COMPILER "${VESPA_HOMEBREW_PREFIX}/bin/g++-12")
elseif(VESPA_OS_DISTRO_COMBINED STREQUAL "amzn 2")
set(DEFAULT_CMAKE_C_COMPILER "/usr/bin/gcc10-gcc")
set(DEFAULT_CMAKE_CXX_COMPILER "/usr/bin/gcc10-g++")
@@ -215,8 +215,8 @@ function(vespa_use_default_cxx_compiler)
endif()
elseif(VESPA_COMPILER_VARIANT STREQUAL "clang")
if(APPLE)
- set(DEFAULT_CMAKE_C_COMPILER, "/usr/local/opt/llvm/bin/clang")
- set(DEFAULT_CMAKE_CXX_COMPILER "/usr/local/opt/llvm/bin/clang++")
+ set(DEFAULT_CMAKE_C_COMPILER, "${VESPA_HOMEBREW_PREFIX}/opt/llvm/bin/clang")
+ set(DEFAULT_CMAKE_CXX_COMPILER "${VESPA_HOMEBREW_PREFIX}/opt/llvm/bin/clang++")
elseif(EXISTS "/usr/bin/clang" AND EXISTS "/usr/bin/clang++")
set(DEFAULT_CMAKE_C_COMPILER "/usr/bin/clang")
set(DEFAULT_CMAKE_CXX_COMPILER "/usr/bin/clang++")
diff --git a/functions.cmake b/functions.cmake
index 7fa0b0db954..7f217867314 100644
--- a/functions.cmake
+++ b/functions.cmake
@@ -746,6 +746,14 @@ function(vespa_detect_build_platform)
elseif(APPLE)
set(OS_DISTRO "darwin")
set(OS_DISTRO_VERSION ${CMAKE_SYSTEM_VERSION})
+ if(EXISTS "/opt/homebrew/bin/brew")
+ set(VESPA_HOMEBREW_PREFIX "/opt/homebrew")
+ elseif(EXISTS "/usr/local/bin/brew")
+ set(VESPA_HOMEBREW_PREFIX "/usr/local")
+ else()
+ message(FATAL_ERROR "-- Cannot determine homebrew prefix")
+ endif()
+ set(VESPA_HOMEBREW_PREFIX ${VESPA_HOMEBREW_PREFIX} PARENT_SCOPE)
endif()
if(OS_DISTRO)
set(VESPA_OS_DISTRO ${OS_DISTRO} PARENT_SCOPE)