mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-25 00:52:02 +00:00
cd5c0fc9ac
* libcxxabi uses exception handling library as public * Don't set -stdlib for internal libc++ - it poisons the checks. * Enable capnproto in unbundled build back
42 lines
1.6 KiB
CMake
42 lines
1.6 KiB
CMake
set(LIBCXXABI_SOURCE_DIR ${ClickHouse_SOURCE_DIR}/contrib/libcxxabi)
|
|
|
|
set(SRCS
|
|
${LIBCXXABI_SOURCE_DIR}/src/stdlib_stdexcept.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_virtual.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_thread_atexit.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/fallback_malloc.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_guard.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_default_handlers.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_personality.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/stdlib_exception.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/abort_message.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_demangle.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_unexpected.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_exception.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_handlers.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_exception_storage.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/private_typeinfo.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/stdlib_typeinfo.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_aux_runtime.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/cxa_vector.cpp
|
|
${LIBCXXABI_SOURCE_DIR}/src/stdlib_new_delete.cpp
|
|
)
|
|
|
|
add_library(cxxabi ${SRCS})
|
|
|
|
target_include_directories(cxxabi SYSTEM BEFORE
|
|
PUBLIC $<BUILD_INTERFACE:${LIBCXXABI_SOURCE_DIR}/include>
|
|
PRIVATE $<BUILD_INTERFACE:${LIBCXXABI_SOURCE_DIR}/../libcxx/include>
|
|
)
|
|
target_compile_definitions(cxxabi PRIVATE -D_LIBCPP_BUILDING_LIBRARY)
|
|
target_compile_options(cxxabi PRIVATE -nostdinc++ -fno-sanitize=undefined -Wno-macro-redefined) # If we don't disable UBSan, infinite recursion happens in dynamic_cast.
|
|
target_link_libraries(cxxabi PUBLIC ${EXCEPTION_HANDLING_LIBRARY})
|
|
|
|
install(
|
|
TARGETS cxxabi
|
|
EXPORT global
|
|
ARCHIVE DESTINATION lib
|
|
RUNTIME DESTINATION lib
|
|
LIBRARY DESTINATION lib
|
|
)
|