mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-21 23:21:59 +00:00
What happens if I remove these 139 lines of code?
This commit is contained in:
parent
d07f0c9e3f
commit
cfb6feffde
@ -74,17 +74,6 @@ message (STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
|
|||||||
string (TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_UC)
|
string (TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_UC)
|
||||||
|
|
||||||
option(USE_STATIC_LIBRARIES "Disable to use shared libraries" ON)
|
option(USE_STATIC_LIBRARIES "Disable to use shared libraries" ON)
|
||||||
# DEVELOPER ONLY.
|
|
||||||
# Faster linking if turned on.
|
|
||||||
option(SPLIT_SHARED_LIBRARIES "Keep all internal libraries as separate .so files" OFF)
|
|
||||||
|
|
||||||
if (USE_STATIC_LIBRARIES AND SPLIT_SHARED_LIBRARIES)
|
|
||||||
message(FATAL_ERROR "SPLIT_SHARED_LIBRARIES=1 must not be used together with USE_STATIC_LIBRARIES=1")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (NOT USE_STATIC_LIBRARIES AND SPLIT_SHARED_LIBRARIES)
|
|
||||||
set(BUILD_SHARED_LIBS 1 CACHE INTERNAL "")
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
if (USE_STATIC_LIBRARIES)
|
if (USE_STATIC_LIBRARIES)
|
||||||
list(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)
|
list(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||||
@ -171,7 +160,7 @@ option(ENABLE_TESTS "Provide unit_test_dbms target with Google.Test unit tests"
|
|||||||
option(ENABLE_EXAMPLES "Build all example programs in 'examples' subdirectories" OFF)
|
option(ENABLE_EXAMPLES "Build all example programs in 'examples' subdirectories" OFF)
|
||||||
option(ENABLE_BENCHMARKS "Build all benchmark programs in 'benchmarks' subdirectories" OFF)
|
option(ENABLE_BENCHMARKS "Build all benchmark programs in 'benchmarks' subdirectories" OFF)
|
||||||
|
|
||||||
if (OS_LINUX AND (ARCH_AMD64 OR ARCH_AARCH64) AND USE_STATIC_LIBRARIES AND NOT SPLIT_SHARED_LIBRARIES AND NOT USE_MUSL)
|
if (OS_LINUX AND (ARCH_AMD64 OR ARCH_AARCH64) AND USE_STATIC_LIBRARIES AND NOT USE_MUSL)
|
||||||
# Only for Linux, x86_64 or aarch64.
|
# Only for Linux, x86_64 or aarch64.
|
||||||
option(GLIBC_COMPATIBILITY "Enable compatibility with older glibc libraries." ON)
|
option(GLIBC_COMPATIBILITY "Enable compatibility with older glibc libraries." ON)
|
||||||
elseif(GLIBC_COMPATIBILITY)
|
elseif(GLIBC_COMPATIBILITY)
|
||||||
@ -506,8 +495,7 @@ endif ()
|
|||||||
|
|
||||||
message (STATUS
|
message (STATUS
|
||||||
"Building for: ${CMAKE_SYSTEM} ${CMAKE_SYSTEM_PROCESSOR} ${CMAKE_LIBRARY_ARCHITECTURE} ;
|
"Building for: ${CMAKE_SYSTEM} ${CMAKE_SYSTEM_PROCESSOR} ${CMAKE_LIBRARY_ARCHITECTURE} ;
|
||||||
USE_STATIC_LIBRARIES=${USE_STATIC_LIBRARIES}
|
USE_STATIC_LIBRARIES=${USE_STATIC_LIBRARIES}")
|
||||||
SPLIT_SHARED_LIBRARIES=${SPLIT_SHARED_LIBRARIES}")
|
|
||||||
|
|
||||||
include (GNUInstallDirs)
|
include (GNUInstallDirs)
|
||||||
|
|
||||||
|
@ -139,13 +139,6 @@ if(NOT OPENSSL_NO_ASM)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_SHARED_LIBS)
|
|
||||||
add_definitions(-DBORINGSSL_SHARED_LIBRARY)
|
|
||||||
# Enable position-independent code globally. This is needed because
|
|
||||||
# some library targets are OBJECT libraries.
|
|
||||||
set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(
|
set(
|
||||||
CRYPTO_ios_aarch64_SOURCES
|
CRYPTO_ios_aarch64_SOURCES
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
if (NOT OS_FREEBSD AND NOT SPLIT_SHARED_LIBRARIES AND NOT (OS_DARWIN AND COMPILER_CLANG))
|
if (NOT OS_FREEBSD AND NOT (OS_DARWIN AND COMPILER_CLANG))
|
||||||
option (ENABLE_SENTRY "Enable Sentry" ${ENABLE_LIBRARIES})
|
option (ENABLE_SENTRY "Enable Sentry" ${ENABLE_LIBRARIES})
|
||||||
else()
|
else()
|
||||||
option (ENABLE_SENTRY "Enable Sentry" OFF)
|
option (ENABLE_SENTRY "Enable Sentry" OFF)
|
||||||
@ -51,11 +51,7 @@ endif()
|
|||||||
|
|
||||||
add_library(_sentry ${SRCS})
|
add_library(_sentry ${SRCS})
|
||||||
|
|
||||||
if(BUILD_SHARED_LIBS)
|
target_compile_definitions(_sentry PUBLIC SENTRY_BUILD_STATIC)
|
||||||
target_compile_definitions(_sentry PRIVATE SENTRY_BUILD_SHARED)
|
|
||||||
else()
|
|
||||||
target_compile_definitions(_sentry PUBLIC SENTRY_BUILD_STATIC)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
target_link_libraries(_sentry PRIVATE ch_contrib::curl pthread)
|
target_link_libraries(_sentry PRIVATE ch_contrib::curl pthread)
|
||||||
target_include_directories(_sentry PUBLIC "${SRC_DIR}/include" PRIVATE "${SRC_DIR}/src")
|
target_include_directories(_sentry PUBLIC "${SRC_DIR}/include" PRIVATE "${SRC_DIR}/src")
|
||||||
|
@ -100,12 +100,11 @@ def run_docker_image_with_env(
|
|||||||
subprocess.check_call(cmd, shell=True)
|
subprocess.check_call(cmd, shell=True)
|
||||||
|
|
||||||
|
|
||||||
def is_release_build(build_type, package_type, sanitizer, shared_libraries):
|
def is_release_build(build_type, package_type, sanitizer):
|
||||||
return (
|
return (
|
||||||
build_type == ""
|
build_type == ""
|
||||||
and package_type == "deb"
|
and package_type == "deb"
|
||||||
and sanitizer == ""
|
and sanitizer == ""
|
||||||
and not shared_libraries
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -116,7 +115,6 @@ def parse_env_variables(
|
|||||||
package_type,
|
package_type,
|
||||||
cache,
|
cache,
|
||||||
distcc_hosts,
|
distcc_hosts,
|
||||||
shared_libraries,
|
|
||||||
clang_tidy,
|
clang_tidy,
|
||||||
version,
|
version,
|
||||||
author,
|
author,
|
||||||
@ -218,7 +216,7 @@ def parse_env_variables(
|
|||||||
cmake_flags.append("-DCMAKE_INSTALL_PREFIX=/usr")
|
cmake_flags.append("-DCMAKE_INSTALL_PREFIX=/usr")
|
||||||
cmake_flags.append("-DCMAKE_INSTALL_SYSCONFDIR=/etc")
|
cmake_flags.append("-DCMAKE_INSTALL_SYSCONFDIR=/etc")
|
||||||
cmake_flags.append("-DCMAKE_INSTALL_LOCALSTATEDIR=/var")
|
cmake_flags.append("-DCMAKE_INSTALL_LOCALSTATEDIR=/var")
|
||||||
if is_release_build(build_type, package_type, sanitizer, shared_libraries):
|
if is_release_build(build_type, package_type, sanitizer):
|
||||||
cmake_flags.append("-DSPLIT_DEBUG_SYMBOLS=ON")
|
cmake_flags.append("-DSPLIT_DEBUG_SYMBOLS=ON")
|
||||||
result.append("WITH_PERFORMANCE=1")
|
result.append("WITH_PERFORMANCE=1")
|
||||||
if is_cross_arm:
|
if is_cross_arm:
|
||||||
@ -231,12 +229,10 @@ def parse_env_variables(
|
|||||||
cmake_flags.append(f"-DCMAKE_C_COMPILER={cc}")
|
cmake_flags.append(f"-DCMAKE_C_COMPILER={cc}")
|
||||||
cmake_flags.append(f"-DCMAKE_CXX_COMPILER={cxx}")
|
cmake_flags.append(f"-DCMAKE_CXX_COMPILER={cxx}")
|
||||||
|
|
||||||
# Create combined output archive for shared library build and for performance tests.
|
# Create combined output archive for performance tests.
|
||||||
if package_type == "coverity":
|
if package_type == "coverity":
|
||||||
result.append("COMBINED_OUTPUT=coverity")
|
result.append("COMBINED_OUTPUT=coverity")
|
||||||
result.append('COVERITY_TOKEN="$COVERITY_TOKEN"')
|
result.append('COVERITY_TOKEN="$COVERITY_TOKEN"')
|
||||||
elif shared_libraries:
|
|
||||||
result.append("COMBINED_OUTPUT=shared_build")
|
|
||||||
|
|
||||||
if sanitizer:
|
if sanitizer:
|
||||||
result.append(f"SANITIZER={sanitizer}")
|
result.append(f"SANITIZER={sanitizer}")
|
||||||
@ -285,15 +281,6 @@ def parse_env_variables(
|
|||||||
result.append("BINARY_OUTPUT=tests")
|
result.append("BINARY_OUTPUT=tests")
|
||||||
cmake_flags.append("-DENABLE_TESTS=1")
|
cmake_flags.append("-DENABLE_TESTS=1")
|
||||||
|
|
||||||
if shared_libraries:
|
|
||||||
cmake_flags.append("-DUSE_STATIC_LIBRARIES=0 -DSPLIT_SHARED_LIBRARIES=1")
|
|
||||||
# We can't always build utils because it requires too much space, but
|
|
||||||
# we have to build them at least in some way in CI. The shared library
|
|
||||||
# build is probably the least heavy disk-wise.
|
|
||||||
cmake_flags.append("-DENABLE_UTILS=1")
|
|
||||||
# utils are not included into clickhouse-bundle, so build everything
|
|
||||||
build_target = "all"
|
|
||||||
|
|
||||||
if clang_tidy:
|
if clang_tidy:
|
||||||
cmake_flags.append("-DENABLE_CLANG_TIDY=1")
|
cmake_flags.append("-DENABLE_CLANG_TIDY=1")
|
||||||
cmake_flags.append("-DENABLE_TESTS=1")
|
cmake_flags.append("-DENABLE_TESTS=1")
|
||||||
@ -371,7 +358,6 @@ if __name__ == "__main__":
|
|||||||
default="",
|
default="",
|
||||||
)
|
)
|
||||||
|
|
||||||
parser.add_argument("--shared-libraries", action="store_true")
|
|
||||||
parser.add_argument("--clang-tidy", action="store_true")
|
parser.add_argument("--clang-tidy", action="store_true")
|
||||||
parser.add_argument("--cache", choices=("ccache", "distcc", ""), default="")
|
parser.add_argument("--cache", choices=("ccache", "distcc", ""), default="")
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
@ -424,7 +410,6 @@ if __name__ == "__main__":
|
|||||||
args.package_type,
|
args.package_type,
|
||||||
args.cache,
|
args.cache,
|
||||||
args.distcc_hosts,
|
args.distcc_hosts,
|
||||||
args.shared_libraries,
|
|
||||||
args.clang_tidy,
|
args.clang_tidy,
|
||||||
args.version,
|
args.version,
|
||||||
args.author,
|
args.author,
|
||||||
|
@ -129,7 +129,6 @@ Builds ClickHouse in various configurations for use in further steps. You have t
|
|||||||
- `clickhouse`: Main built binary.
|
- `clickhouse`: Main built binary.
|
||||||
- `clickhouse-odbc-bridge`
|
- `clickhouse-odbc-bridge`
|
||||||
- `unit_tests_dbms`: GoogleTest binary with ClickHouse unit tests.
|
- `unit_tests_dbms`: GoogleTest binary with ClickHouse unit tests.
|
||||||
- `shared_build.tgz`: build with shared libraries.
|
|
||||||
- `performance.tgz`: Special package for performance tests.
|
- `performance.tgz`: Special package for performance tests.
|
||||||
|
|
||||||
|
|
||||||
|
@ -169,12 +169,6 @@ sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)"
|
|||||||
|
|
||||||
cmake -D CMAKE_BUILD_TYPE=Debug ..
|
cmake -D CMAKE_BUILD_TYPE=Debug ..
|
||||||
|
|
||||||
В случае использования на разработческой машине старого HDD или SSD, а также при желании использовать меньше места для артефактов сборки можно использовать следующую команду:
|
|
||||||
```bash
|
|
||||||
cmake -DUSE_DEBUG_HELPERS=1 -DUSE_STATIC_LIBRARIES=0 -DSPLIT_SHARED_LIBRARIES=1 ..
|
|
||||||
```
|
|
||||||
При этом надо учесть, что получаемые в результате сборки исполнимые файлы будут динамически слинкованы с библиотеками, и поэтому фактически станут непереносимыми на другие компьютеры (либо для этого нужно будет предпринять значительно больше усилий по сравнению со статической сборкой). Плюсом же в данном случае является значительно меньшее время сборки (это проявляется не на первой сборке, а на последующих, после внесения изменений в исходный код - тратится меньшее время на линковку по сравнению со статической сборкой) и значительно меньшее использование места на жёстком диске (экономия более, чем в 3 раза по сравнению со статической сборкой). Для целей разработки, когда планируются только отладочные запуски на том же компьютере, где осуществлялась сборка, это может быть наиболее удобным вариантом.
|
|
||||||
|
|
||||||
Вы можете изменить вариант сборки, выполнив новую команду в директории build.
|
Вы можете изменить вариант сборки, выполнив новую команду в директории build.
|
||||||
|
|
||||||
Запустите ninja для сборки:
|
Запустите ninja для сборки:
|
||||||
|
@ -96,7 +96,6 @@ git push
|
|||||||
- `clickhouse`: Main built binary.
|
- `clickhouse`: Main built binary.
|
||||||
- `clickhouse-odbc-bridge`
|
- `clickhouse-odbc-bridge`
|
||||||
- `unit_tests_dbms`: 带有 ClickHouse 单元测试的 GoogleTest 二进制文件.
|
- `unit_tests_dbms`: 带有 ClickHouse 单元测试的 GoogleTest 二进制文件.
|
||||||
- `shared_build.tgz`: 使用共享库构建.
|
|
||||||
- `performance.tgz`: 用于性能测试的特殊包.
|
- `performance.tgz`: 用于性能测试的特殊包.
|
||||||
|
|
||||||
## 特殊构建检查 {#special-buildcheck}
|
## 特殊构建检查 {#special-buildcheck}
|
||||||
|
@ -167,7 +167,7 @@ else()
|
|||||||
message(STATUS "ClickHouse keeper-converter mode: OFF")
|
message(STATUS "ClickHouse keeper-converter mode: OFF")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT (USE_STATIC_LIBRARIES OR SPLIT_SHARED_LIBRARIES))
|
if(NOT USE_STATIC_LIBRARIES)
|
||||||
set(CLICKHOUSE_ONE_SHARED ON)
|
set(CLICKHOUSE_ONE_SHARED ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -313,12 +313,6 @@ endif()
|
|||||||
|
|
||||||
clickhouse_add_executable (clickhouse main.cpp)
|
clickhouse_add_executable (clickhouse main.cpp)
|
||||||
|
|
||||||
if (NOT USE_STATIC_LIBRARIES AND SPLIT_SHARED_LIBRARIES)
|
|
||||||
# Shared split (dev) build: In CI, the server is run with custom LD_LIBRARY_PATH. This makes the harmful env check re-execute the
|
|
||||||
# process in a clean environment but as in CI the containing directory is not included in DT_RUNPATH/DT_RPATH, the server won't come up.
|
|
||||||
target_compile_definitions(clickhouse PRIVATE DISABLE_HARMFUL_ENV_VAR_CHECK)
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
# A library that prevent usage of several functions from libc.
|
# A library that prevent usage of several functions from libc.
|
||||||
if (ARCH_AMD64 AND OS_LINUX AND NOT OS_ANDROID)
|
if (ARCH_AMD64 AND OS_LINUX AND NOT OS_ANDROID)
|
||||||
set (HARMFUL_LIB harmful)
|
set (HARMFUL_LIB harmful)
|
||||||
|
@ -345,7 +345,7 @@ struct Checker
|
|||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
#if !defined(DISABLE_HARMFUL_ENV_VAR_CHECK) && !defined(USE_MUSL)
|
#if !defined(USE_MUSL)
|
||||||
/// NOTE: We will migrate to full static linking or our own dynamic loader to make this code obsolete.
|
/// NOTE: We will migrate to full static linking or our own dynamic loader to make this code obsolete.
|
||||||
void checkHarmfulEnvironmentVariables(char ** argv)
|
void checkHarmfulEnvironmentVariables(char ** argv)
|
||||||
{
|
{
|
||||||
@ -457,7 +457,7 @@ int main(int argc_, char ** argv_)
|
|||||||
/// Note: we forbid dlopen in our code.
|
/// Note: we forbid dlopen in our code.
|
||||||
updatePHDRCache();
|
updatePHDRCache();
|
||||||
|
|
||||||
#if !defined(DISABLE_HARMFUL_ENV_VAR_CHECK) && !defined(USE_MUSL)
|
#if !defined(USE_MUSL)
|
||||||
checkHarmfulEnvironmentVariables(argv_);
|
checkHarmfulEnvironmentVariables(argv_);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -35,15 +35,7 @@ add_custom_command(OUTPUT ${ffi_binding_final_path}
|
|||||||
DEPENDS cargo-build__ch_rust_skim_rust)
|
DEPENDS cargo-build__ch_rust_skim_rust)
|
||||||
|
|
||||||
add_library(_ch_rust_skim_ffi ${ffi_binding_final_path})
|
add_library(_ch_rust_skim_ffi ${ffi_binding_final_path})
|
||||||
if (USE_STATIC_LIBRARIES OR NOT SPLIT_SHARED_LIBRARIES)
|
|
||||||
# static
|
|
||||||
else()
|
|
||||||
if (OS_DARWIN)
|
|
||||||
target_link_libraries(_ch_rust_skim_ffi PRIVATE -Wl,-undefined,dynamic_lookup)
|
|
||||||
else()
|
|
||||||
target_link_libraries(_ch_rust_skim_ffi PRIVATE -Wl,--unresolved-symbols=ignore-all)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
# cxx bridge compiles such bindings
|
# cxx bridge compiles such bindings
|
||||||
set_target_properties(_ch_rust_skim_ffi PROPERTIES COMPILE_FLAGS "${CXXBRIDGE_CXXFLAGS}")
|
set_target_properties(_ch_rust_skim_ffi PROPERTIES COMPILE_FLAGS "${CXXBRIDGE_CXXFLAGS}")
|
||||||
|
|
||||||
|
@ -200,10 +200,6 @@ endif ()
|
|||||||
|
|
||||||
add_library(clickhouse_common_io ${clickhouse_common_io_headers} ${clickhouse_common_io_sources})
|
add_library(clickhouse_common_io ${clickhouse_common_io_headers} ${clickhouse_common_io_sources})
|
||||||
|
|
||||||
if (SPLIT_SHARED_LIBRARIES)
|
|
||||||
target_compile_definitions(clickhouse_common_io PRIVATE SPLIT_SHARED_LIBRARIES)
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
add_library (clickhouse_malloc OBJECT Common/malloc.cpp)
|
add_library (clickhouse_malloc OBJECT Common/malloc.cpp)
|
||||||
set_source_files_properties(Common/malloc.cpp PROPERTIES COMPILE_FLAGS "-fno-builtin")
|
set_source_files_properties(Common/malloc.cpp PROPERTIES COMPILE_FLAGS "-fno-builtin")
|
||||||
|
|
||||||
@ -227,18 +223,7 @@ add_subdirectory(Common/Config)
|
|||||||
|
|
||||||
set (all_modules)
|
set (all_modules)
|
||||||
macro(add_object_library name common_path)
|
macro(add_object_library name common_path)
|
||||||
if (USE_STATIC_LIBRARIES OR NOT SPLIT_SHARED_LIBRARIES)
|
add_headers_and_sources(dbms ${common_path})
|
||||||
add_headers_and_sources(dbms ${common_path})
|
|
||||||
else ()
|
|
||||||
list (APPEND all_modules ${name})
|
|
||||||
add_headers_and_sources(${name} ${common_path})
|
|
||||||
add_library(${name} SHARED ${${name}_sources} ${${name}_headers})
|
|
||||||
if (OS_DARWIN)
|
|
||||||
target_link_libraries (${name} PRIVATE -Wl,-undefined,dynamic_lookup)
|
|
||||||
else()
|
|
||||||
target_link_libraries (${name} PRIVATE -Wl,--unresolved-symbols=ignore-all)
|
|
||||||
endif()
|
|
||||||
endif ()
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
add_object_library(clickhouse_access Access)
|
add_object_library(clickhouse_access Access)
|
||||||
@ -297,28 +282,12 @@ if (TARGET ch_contrib::nuraft)
|
|||||||
add_object_library(clickhouse_coordination Coordination)
|
add_object_library(clickhouse_coordination Coordination)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (USE_STATIC_LIBRARIES OR NOT SPLIT_SHARED_LIBRARIES)
|
add_library (dbms STATIC ${dbms_headers} ${dbms_sources})
|
||||||
add_library (dbms STATIC ${dbms_headers} ${dbms_sources})
|
target_link_libraries (dbms PRIVATE ch_contrib::libdivide)
|
||||||
target_link_libraries (dbms PRIVATE ch_contrib::libdivide)
|
if (TARGET ch_contrib::jemalloc)
|
||||||
if (TARGET ch_contrib::jemalloc)
|
target_link_libraries (dbms PRIVATE ch_contrib::jemalloc)
|
||||||
target_link_libraries (dbms PRIVATE ch_contrib::jemalloc)
|
endif()
|
||||||
endif()
|
set (all_modules dbms)
|
||||||
set (all_modules dbms)
|
|
||||||
else()
|
|
||||||
add_library (dbms SHARED ${dbms_headers} ${dbms_sources})
|
|
||||||
target_link_libraries (dbms PUBLIC ${all_modules})
|
|
||||||
target_link_libraries (clickhouse_interpreters PRIVATE ch_contrib::libdivide)
|
|
||||||
if (TARGET ch_contrib::jemalloc)
|
|
||||||
target_link_libraries (clickhouse_interpreters PRIVATE ch_contrib::jemalloc)
|
|
||||||
endif()
|
|
||||||
list (APPEND all_modules dbms)
|
|
||||||
# force all split libs to be linked
|
|
||||||
if (OS_DARWIN)
|
|
||||||
set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-undefined,error")
|
|
||||||
else()
|
|
||||||
set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-as-needed")
|
|
||||||
endif()
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
macro (dbms_target_include_directories)
|
macro (dbms_target_include_directories)
|
||||||
foreach (module ${all_modules})
|
foreach (module ${all_modules})
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#include "remapExecutable.h"
|
#include "remapExecutable.h"
|
||||||
|
|
||||||
#if defined(OS_LINUX) && defined(__amd64__) && defined(__SSE2__) && !defined(SANITIZER) && defined(NDEBUG) && !defined(SPLIT_SHARED_LIBRARIES)
|
#if defined(OS_LINUX) && defined(__amd64__) && defined(__SSE2__) && !defined(SANITIZER) && defined(NDEBUG)
|
||||||
|
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
@ -112,12 +112,7 @@ endif ()
|
|||||||
|
|
||||||
target_link_libraries(clickhouse_functions_obj PUBLIC ${PUBLIC_LIBS} PRIVATE ${PRIVATE_LIBS})
|
target_link_libraries(clickhouse_functions_obj PUBLIC ${PUBLIC_LIBS} PRIVATE ${PRIVATE_LIBS})
|
||||||
|
|
||||||
if (USE_STATIC_LIBRARIES OR NOT SPLIT_SHARED_LIBRARIES)
|
# Used to forward the linking information to the final binaries such as clickhouse / unit_tests_dbms,
|
||||||
# Used to forward the linking information to the final binaries such as clickhouse / unit_tests_dbms,
|
# since such information are lost after we convert to OBJECT target
|
||||||
# since such information are lost after we convert to OBJECT target
|
add_library(clickhouse_functions INTERFACE)
|
||||||
add_library(clickhouse_functions INTERFACE)
|
target_link_libraries(clickhouse_functions INTERFACE ${OBJECT_LIBS} ${PUBLIC_LIBS} ${PRIVATE_LIBS})
|
||||||
target_link_libraries(clickhouse_functions INTERFACE ${OBJECT_LIBS} ${PUBLIC_LIBS} ${PRIVATE_LIBS})
|
|
||||||
else()
|
|
||||||
add_library(clickhouse_functions SHARED ${OBJECT_LIBS})
|
|
||||||
target_link_libraries(clickhouse_functions PUBLIC ${PUBLIC_LIBS} PRIVATE ${PRIVATE_LIBS})
|
|
||||||
endif ()
|
|
||||||
|
@ -38,8 +38,6 @@ BUILD_LOG_NAME = "build_log.log"
|
|||||||
def _can_export_binaries(build_config: BuildConfig) -> bool:
|
def _can_export_binaries(build_config: BuildConfig) -> bool:
|
||||||
if build_config["package_type"] != "deb":
|
if build_config["package_type"] != "deb":
|
||||||
return False
|
return False
|
||||||
if build_config["libraries"] == "shared":
|
|
||||||
return False
|
|
||||||
if build_config["sanitizer"] != "":
|
if build_config["sanitizer"] != "":
|
||||||
return True
|
return True
|
||||||
if build_config["build_type"] != "":
|
if build_config["build_type"] != "":
|
||||||
@ -68,8 +66,6 @@ def get_packager_cmd(
|
|||||||
cmd += f" --build-type={build_config['build_type']}"
|
cmd += f" --build-type={build_config['build_type']}"
|
||||||
if build_config["sanitizer"]:
|
if build_config["sanitizer"]:
|
||||||
cmd += f" --sanitizer={build_config['sanitizer']}"
|
cmd += f" --sanitizer={build_config['sanitizer']}"
|
||||||
if build_config["libraries"] == "shared":
|
|
||||||
cmd += " --shared-libraries"
|
|
||||||
if build_config["tidy"] == "enable":
|
if build_config["tidy"] == "enable":
|
||||||
cmd += " --clang-tidy"
|
cmd += " --clang-tidy"
|
||||||
|
|
||||||
|
@ -126,12 +126,6 @@ def download_all_deb_packages(check_name, reports_path, result_path):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def download_shared_build(check_name, reports_path, result_path):
|
|
||||||
download_builds_filter(
|
|
||||||
check_name, reports_path, result_path, lambda x: x.endswith("shared_build.tgz")
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def download_unit_tests(check_name, reports_path, result_path):
|
def download_unit_tests(check_name, reports_path, result_path):
|
||||||
download_builds_filter(
|
download_builds_filter(
|
||||||
check_name, reports_path, result_path, lambda x: x.endswith("unit_tests_dbms")
|
check_name, reports_path, result_path, lambda x: x.endswith("unit_tests_dbms")
|
||||||
|
@ -103,15 +103,6 @@ CI_CONFIG = {
|
|||||||
"tidy": "enable",
|
"tidy": "enable",
|
||||||
"with_coverage": False,
|
"with_coverage": False,
|
||||||
},
|
},
|
||||||
"binary_shared": {
|
|
||||||
"compiler": "clang-15",
|
|
||||||
"build_type": "",
|
|
||||||
"sanitizer": "",
|
|
||||||
"package_type": "binary",
|
|
||||||
"libraries": "shared",
|
|
||||||
"tidy": "disable",
|
|
||||||
"with_coverage": False,
|
|
||||||
},
|
|
||||||
"binary_darwin": {
|
"binary_darwin": {
|
||||||
"compiler": "clang-15-darwin",
|
"compiler": "clang-15-darwin",
|
||||||
"build_type": "",
|
"build_type": "",
|
||||||
@ -196,7 +187,6 @@ CI_CONFIG = {
|
|||||||
],
|
],
|
||||||
"ClickHouse special build check": [
|
"ClickHouse special build check": [
|
||||||
"binary_tidy",
|
"binary_tidy",
|
||||||
"binary_shared",
|
|
||||||
"binary_darwin",
|
"binary_darwin",
|
||||||
"binary_aarch64",
|
"binary_aarch64",
|
||||||
"binary_aarch64_v80compat",
|
"binary_aarch64_v80compat",
|
||||||
|
Loading…
Reference in New Issue
Block a user