diff options
-rw-r--r-- | cmake/macros/FindReadline.cmake | 15 | ||||
-rw-r--r-- | cmake/platform/unix/settings.cmake | 14 |
2 files changed, 25 insertions, 4 deletions
diff --git a/cmake/macros/FindReadline.cmake b/cmake/macros/FindReadline.cmake index 3942a8ba8e5..81743b27073 100644 --- a/cmake/macros/FindReadline.cmake +++ b/cmake/macros/FindReadline.cmake @@ -45,12 +45,20 @@ Hints Set ``READLINE_ROOT_DIR`` to the root directory of Readline installation. #]=======================================================================] +set(_READLINE_ROOT_HINTS + ${READLINE_ROOT_DIR} + ENV READLINE_ROOT_DIR +) + +if(HOMEBREW_PREFIX) + list(APPEND _READLINE_ROOT_HINTS "${HOMEBREW_PREFIX}/opt/readline") +endif() + find_path(READLINE_INCLUDE_DIR NAMES readline/readline.h HINTS - ${READLINE_ROOT_DIR} - ENV READLINE_ROOT_DIR + ${_READLINE_ROOT_HINTS} PATH_SUFFIXES include) @@ -58,8 +66,7 @@ find_library(READLINE_LIBRARY NAMES readline HINTS - ${READLINE_ROOT_DIR} - ENV READLINE_ROOT_DIR + ${_READLINE_ROOT_HINTS} PATH_SUFFIXES lib) diff --git a/cmake/platform/unix/settings.cmake b/cmake/platform/unix/settings.cmake index b6bef24ae96..846742906b0 100644 --- a/cmake/platform/unix/settings.cmake +++ b/cmake/platform/unix/settings.cmake @@ -31,6 +31,20 @@ else() message(STATUS "UNIX: Using default system linker") endif() +if(APPLE) + find_program(HOMEBREW_EXECUTABLE brew) + + if (HOMEBREW_EXECUTABLE) + # setup homebrew paths + message(STATUS "Homebrew found at ${HOMEBREW_EXECUTABLE}") + execute_process(COMMAND ${HOMEBREW_EXECUTABLE} config OUTPUT_VARIABLE HOMEBREW_STATUS_STR) + string(REGEX MATCH "HOMEBREW_PREFIX: ([^\n]*)" HOMEBREW_STATUS_STR ${HOMEBREW_STATUS_STR}) + set(HOMEBREW_PREFIX ${CMAKE_MATCH_1}) + message(STATUS "Homebrew installation found at ${HOMEBREW_PREFIX}") + set(CMAKE_PREFIX_PATH "${HOMEBREW_PREFIX}") + endif() +endif() + message(STATUS "UNIX: Detected compiler: ${CMAKE_C_COMPILER}") if(CMAKE_C_COMPILER MATCHES "gcc" OR CMAKE_C_COMPILER_ID STREQUAL "GNU") include(${CMAKE_SOURCE_DIR}/cmake/compiler/gcc/settings.cmake) |