mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-16 20:53:27 +00:00
52 lines
2.4 KiB
CMake
52 lines
2.4 KiB
CMake
option (USE_INTERNAL_BOOST_LIBRARY "Set to FALSE to use system boost library instead of bundled" ${NOT_UNBUNDLED})
|
|
|
|
# Test random file existing in all package variants
|
|
if (NOT EXISTS "${ClickHouse_SOURCE_DIR}/contrib/boost/libs/system/src/error_code.cpp")
|
|
if(USE_INTERNAL_BOOST_LIBRARY)
|
|
message(WARNING "submodules in contrib/boost is missing. to fix try run: \n git submodule update --init --recursive")
|
|
endif()
|
|
set (USE_INTERNAL_BOOST_LIBRARY 0)
|
|
set (MISSING_INTERNAL_BOOST_LIBRARY 1)
|
|
endif ()
|
|
|
|
if (NOT USE_INTERNAL_BOOST_LIBRARY)
|
|
set (Boost_USE_STATIC_LIBS ${USE_STATIC_LIBRARIES})
|
|
set (BOOST_ROOT "/usr/local")
|
|
find_package (Boost 1.60 COMPONENTS program_options system filesystem thread regex)
|
|
# incomplete, no include search, who use it?
|
|
if (NOT Boost_FOUND)
|
|
# # Try to find manually.
|
|
# set (BOOST_PATHS "")
|
|
# find_library (Boost_PROGRAM_OPTIONS_LIBRARY boost_program_options PATHS ${BOOST_PATHS})
|
|
# find_library (Boost_SYSTEM_LIBRARY boost_system PATHS ${BOOST_PATHS})
|
|
# find_library (Boost_FILESYSTEM_LIBRARY boost_filesystem PATHS ${BOOST_PATHS})
|
|
# maybe found but incorrect version.
|
|
set (Boost_INCLUDE_DIRS "")
|
|
set (Boost_SYSTEM_LIBRARY "")
|
|
endif ()
|
|
endif ()
|
|
|
|
if (NOT Boost_SYSTEM_LIBRARY AND NOT MISSING_INTERNAL_BOOST_LIBRARY)
|
|
set (USE_INTERNAL_BOOST_LIBRARY 1)
|
|
set (Boost_SYSTEM_LIBRARY boost_system_internal)
|
|
set (Boost_PROGRAM_OPTIONS_LIBRARY boost_program_options_internal)
|
|
set (Boost_FILESYSTEM_LIBRARY boost_filesystem_internal ${Boost_SYSTEM_LIBRARY})
|
|
set (Boost_REGEX_LIBRARY boost_regex_internal)
|
|
|
|
set (Boost_INCLUDE_DIRS)
|
|
|
|
set (BOOST_ROOT "${ClickHouse_SOURCE_DIR}/contrib/boost")
|
|
|
|
# For boost from github:
|
|
file (GLOB Boost_INCLUDE_DIRS_ "${ClickHouse_SOURCE_DIR}/contrib/boost/libs/*/include")
|
|
list (APPEND Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIRS_})
|
|
# numeric has additional level
|
|
file (GLOB Boost_INCLUDE_DIRS_ "${ClickHouse_SOURCE_DIR}/contrib/boost/libs/numeric/*/include")
|
|
list (APPEND Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIRS_})
|
|
|
|
# For packaged version:
|
|
list (APPEND Boost_INCLUDE_DIRS "${ClickHouse_SOURCE_DIR}/contrib/boost")
|
|
endif ()
|
|
|
|
message (STATUS "Using Boost: ${Boost_INCLUDE_DIRS} : ${Boost_PROGRAM_OPTIONS_LIBRARY},${Boost_SYSTEM_LIBRARY},${Boost_FILESYSTEM_LIBRARY},${Boost_REGEX_LIBRARY}")
|