mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-24 16:42:05 +00:00
Freebsd fixes
This commit is contained in:
parent
ee8272561a
commit
c430af5fb8
@ -17,9 +17,6 @@ else ()
|
||||
message (WARNING "You are using an unsupported compiler! Compilation has only been tested with Clang 5+ and GCC 7+.")
|
||||
endif ()
|
||||
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
set (PLATFORM_EXTRA_CXX_FLAG "-DCLOCK_MONOTONIC_COARSE=CLOCK_MONOTONIC_FAST")
|
||||
endif ()
|
||||
|
||||
# Write compile_commands.json
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
|
||||
@ -51,6 +48,13 @@ if ( ( ARCH_ARM AND NOT ARCH_AARCH64 ) OR ARCH_I386)
|
||||
set (ARCH_32 1)
|
||||
message (WARNING "Support for 32bit platforms is highly experimental")
|
||||
endif ()
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
set (ARCH_FREEBSD 1)
|
||||
endif ()
|
||||
|
||||
if (ARCH_FREEBSD)
|
||||
set (PLATFORM_EXTRA_CXX_FLAG "-DCLOCK_MONOTONIC_COARSE=CLOCK_MONOTONIC_FAST")
|
||||
endif ()
|
||||
|
||||
set (COMMON_WARNING_FLAGS "${COMMON_WARNING_FLAGS} -Wall") # -Werror is also added inside directories with our own code.
|
||||
set (CXX_WARNING_FLAGS "${CXX_WARNING_FLAGS} -Wnon-virtual-dtor")
|
||||
@ -154,7 +158,7 @@ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMPILER_FLAGS} -fn
|
||||
set (CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O3 ${CMAKE_C_FLAGS_ADD}")
|
||||
set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g3 -ggdb3 -fno-inline ${CMAKE_C_FLAGS_ADD}")
|
||||
|
||||
if (MAKE_STATIC_LIBRARIES AND NOT APPLE AND NOT (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_SYSTEM MATCHES "FreeBSD"))
|
||||
if (MAKE_STATIC_LIBRARIES AND NOT APPLE AND NOT (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND ARCH_FREEBSD))
|
||||
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libgcc -static-libstdc++")
|
||||
endif ()
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (ARCH_FREEBSD)
|
||||
find_library (EXECINFO_LIBRARY execinfo)
|
||||
message (STATUS "Using execinfo: ${EXECINFO_LIBRARY}")
|
||||
else ()
|
||||
|
@ -15,7 +15,7 @@ if (USE_EMBEDDED_COMPILER)
|
||||
# llvm_map_components_to_libraries - Maps LLVM used components to required libraries.
|
||||
# Usage: llvm_map_components_to_libraries(REQUIRED_LLVM_LIBRARIES core jit interpreter native ...)
|
||||
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (ARCH_FREEBSD)
|
||||
set(LLVM_VERSION_POSTFIX "50" CACHE INTERNAL "")
|
||||
else()
|
||||
set(LLVM_VERSION_POSTFIX "-5.0" CACHE INTERNAL "")
|
||||
|
@ -13,12 +13,17 @@ endif ()
|
||||
if (NOT USE_INTERNAL_RDKAFKA_LIBRARY)
|
||||
find_library (RDKAFKA_LIB rdkafka)
|
||||
find_path (RDKAFKA_INCLUDE_DIR NAMES librdkafka/rdkafka.h PATHS ${RDKAFKA_INCLUDE_PATHS})
|
||||
find_library (SASL2_LIBRARY sasl2)
|
||||
if (USE_STATIC_LIBRARIES AND NOT ARCH_FREEBSD)
|
||||
find_library (SASL2_LIBRARY sasl2)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (RDKAFKA_LIB AND RDKAFKA_INCLUDE_DIR)
|
||||
set (USE_RDKAFKA 1)
|
||||
set (RDKAFKA_LIBRARY ${RDKAFKA_LIB} ${OPENSSL_LIBRARIES} ${SASL2_LIBRARY})
|
||||
set (RDKAFKA_LIBRARY ${RDKAFKA_LIB} ${OPENSSL_LIBRARIES})
|
||||
if (SASL2_LIBRARY)
|
||||
list (APPEND RDKAFKA_LIBRARY ${SASL2_LIBRARY})
|
||||
endif ()
|
||||
elseif (NOT MISSING_INTERNAL_RDKAFKA_LIBRARY)
|
||||
set (USE_INTERNAL_RDKAFKA_LIBRARY 1)
|
||||
set (RDKAFKA_INCLUDE_DIR "${ClickHouse_SOURCE_DIR}/contrib/librdkafka/src")
|
||||
|
@ -8,7 +8,7 @@ if (NOT ZLIB_FOUND)
|
||||
set (USE_INTERNAL_ZLIB_LIBRARY 1)
|
||||
set (ZLIB_COMPAT 1) # for zlib-ng, also enables WITH_GZFILEOP
|
||||
set (WITH_NATIVE_INSTRUCTIONS ${ARCHNATIVE})
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD" OR ARCH_I386)
|
||||
if (ARCH_FREEBSD OR ARCH_I386)
|
||||
set (WITH_OPTIM 0 CACHE INTERNAL "") # Bug in assembler
|
||||
endif ()
|
||||
if (ARCH_AARCH64)
|
||||
|
@ -80,7 +80,7 @@ list (APPEND dbms_headers
|
||||
list (APPEND dbms_sources src/TableFunctions/TableFunctionFactory.cpp)
|
||||
list (APPEND dbms_headers src/TableFunctions/ITableFunction.h src/TableFunctions/TableFunctionFactory.h)
|
||||
|
||||
if (APPLE OR CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (APPLE OR ARCH_FREEBSD)
|
||||
list(REMOVE_ITEM clickhouse_common_io_headers
|
||||
src/Common/AIO.h
|
||||
src/IO/WriteBufferAIO.h
|
||||
|
@ -63,7 +63,7 @@ add_check (hashing_read_buffer)
|
||||
add_executable (io_operators operators.cpp ${SRCS})
|
||||
target_link_libraries (io_operators clickhouse_common_io)
|
||||
|
||||
if (NOT APPLE AND NOT CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (NOT APPLE AND NOT ARCH_FREEBSD)
|
||||
add_executable(write_buffer_aio write_buffer_aio.cpp)
|
||||
target_link_libraries (write_buffer_aio clickhouse_common_io ${Boost_FILESYSTEM_LIBRARY})
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (ARCH_FREEBSD)
|
||||
set (PATH_SHARE "/usr/local/share" CACHE STRING "")
|
||||
else ()
|
||||
set (PATH_SHARE "/usr/share" CACHE STRING "")
|
||||
|
@ -1,10 +1,10 @@
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD" OR ARCH_32)
|
||||
if (ARCH_FREEBSD OR ARCH_32)
|
||||
option (USE_INTERNAL_GPERFTOOLS_LIBRARY "Set to FALSE to use system gperftools (tcmalloc) library instead of bundled" OFF)
|
||||
else ()
|
||||
option (USE_INTERNAL_GPERFTOOLS_LIBRARY "Set to FALSE to use system gperftools (tcmalloc) library instead of bundled" ${NOT_UNBUNDLED})
|
||||
endif ()
|
||||
|
||||
if (CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (ARCH_FREEBSD)
|
||||
option (ENABLE_TCMALLOC "Set to TRUE to enable tcmalloc" OFF)
|
||||
else ()
|
||||
option (ENABLE_TCMALLOC "Set to TRUE to enable tcmalloc" ON)
|
||||
@ -18,7 +18,7 @@ if (ENABLE_TCMALLOC)
|
||||
find_package (Gperftools)
|
||||
endif ()
|
||||
|
||||
if (NOT (GPERFTOOLS_FOUND AND GPERFTOOLS_INCLUDE_DIR AND GPERFTOOLS_TCMALLOC_MINIMAL) AND NOT (CMAKE_SYSTEM MATCHES "FreeBSD" OR ARCH_32))
|
||||
if (NOT (GPERFTOOLS_FOUND AND GPERFTOOLS_INCLUDE_DIR AND GPERFTOOLS_TCMALLOC_MINIMAL) AND NOT (ARCH_FREEBSD OR ARCH_32))
|
||||
set (USE_INTERNAL_GPERFTOOLS_LIBRARY 1)
|
||||
set (GPERFTOOLS_INCLUDE_DIR "${ClickHouse_SOURCE_DIR}/contrib/libtcmalloc/include")
|
||||
set (GPERFTOOLS_TCMALLOC_MINIMAL tcmalloc_minimal_internal)
|
||||
|
@ -5,7 +5,7 @@ target_link_libraries (iotest clickhouse_common_io)
|
||||
add_executable (iotest_nonblock iotest_nonblock.cpp ${SRCS})
|
||||
target_link_libraries (iotest_nonblock clickhouse_common_io)
|
||||
|
||||
if (NOT APPLE AND NOT CMAKE_SYSTEM MATCHES "FreeBSD")
|
||||
if (NOT APPLE AND NOT ARCH_FREEBSD)
|
||||
add_executable (iotest_aio iotest_aio.cpp ${SRCS})
|
||||
target_link_libraries (iotest_aio clickhouse_common_io)
|
||||
endif()
|
||||
|
Loading…
Reference in New Issue
Block a user