Commit Graph

683 Commits

Author SHA1 Message Date
Azat Khuzhin
6651bc7dc8 Fix shared hermetic builds on Arch linux
On Arch linux clang uses PIE by default, and so it requires Scrt1.o:

    $ /usr/bin/clang++ --target=x86_64-linux-gnu --sysroot=/src/ch/clickhouse/cmake/linux/../../contrib/sysroot/linux-x86_64/x86_64-linux-gnu/libc --gcc-toolchain=/src/ch/clickhouse/cmake/linux/../../contrib/sysroot/linux-x86_64 --gcc-toolchain=/src/ch/clickhouse/cmake/linux/../../contrib/sysroot/linux-x86_64 -std=c++20 ... -o base/base/tests/dump_variable ...
    clang version 13.0.0
    Target: x86_64-unknown-linux-gnu
    Thread model: posix
    InstalledDir: /usr/bin
    Found candidate GCC installation: /src/ch/clickhouse/cmake/linux/../../contrib/sysroot/linux-x86_64/lib/gcc/x86_64-linux-gnu/9
    Selected GCC installation: /src/ch/clickhouse/cmake/linux/../../contrib/sysroot/linux-x86_64/lib/gcc/x86_64-linux-gnu/9
    Candidate multilib: .;@m64
    Selected multilib: .;@m64
     "/usr/bin/ld.lld" --sysroot=/src/ch/clickhouse/cmake/linux/../../contrib/sysroot/linux-x86_64/x86_64-linux-gnu/libc -pie -export-dynamic --eh-frame-hdr -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o base/base/tests/dump_variable Scrt1.o ...
             ^^^^^^^
2021-12-24 23:43:12 +03:00
Alexey Milovidov
7897d93b25 Increase stack size on Musl 2021-12-24 12:25:27 +03:00
Raúl Marín
27cda5dc61 Pass -no-pie to the linker call to disable it 2021-12-13 20:12:11 +01:00
Jakub Kuklis
162e2b334b Initial working example of Azure Blob Storage manipulation from within ClickHouse 2021-12-10 22:04:36 +01:00
Nikita Mikhaylov
80a146816c More comments and style 2021-12-06 21:34:52 +00:00
alexey-milovidov
a7de366741
Merge pull request #31957 from traceon/macos-fixes
Give some love to macOS platform
2021-11-30 04:15:32 +03:00
alexey-milovidov
336322b988
Merge pull request #31923 from ClickHouse/remove-some-trash-from-build
Remove some trash from build
2021-11-28 10:02:26 +03:00
alexey-milovidov
93ed4948b4
Merge pull request #31922 from azat/fix-debug-helpers
Fix magic_enum for debug helpers (fixes build w/ USE_DEBUG_HELPERS)
2021-11-28 08:05:55 +03:00
Alexey Milovidov
1ded1e7181 Remove some trash from build 2021-11-28 08:05:24 +03:00
Azat Khuzhin
f443dbf6e0 Enable debug helpers by default in debug builds 2021-11-28 06:54:37 +03:00
Alexey Milovidov
a96e4fe393 More reproducible builds 2021-11-27 02:24:09 +03:00
Alexey Milovidov
06c760409b Addition 2021-11-26 05:26:00 +03:00
Alexey Milovidov
b80f849b93 Reproducible builds 2021-11-26 04:55:17 +03:00
Denis Glazachev
e41ed7cc6e Fix GCC compilation in macOS 2021-11-26 02:03:04 +03:00
mergify[bot]
8611b33947
Merge branch 'master' into enable-clang-vtables-optimization 2021-11-23 10:34:23 +00:00
Alexey Milovidov
c5fcef03c3 Remove trash 2021-11-21 18:12:05 +03:00
Alexey Milovidov
d604cf5573 Remove the infamous "unbundled" build 2021-11-21 13:58:26 +03:00
zhanghuajie
860ea068f5 support compile in arm machine whith parameter "-DENABLE_TESTS=OFF" 2021-11-02 23:16:26 +08:00
Nikita Mikhaylov
aae30a9e37
Fix fuzzer build (#30344) 2021-10-26 20:30:34 +03:00
feng lv
1e3df5780c Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-10-18 07:33:11 +00:00
alexey-milovidov
e9af03ef52
Merge pull request #30248 from ClickHouse/musl-4
Preparation to build with Musl
2021-10-16 18:44:35 +03:00
Alexey Milovidov
4848a6f97f Add CMakeLists 2021-10-16 02:07:13 +03:00
Nikita Mikhaylov
e9bf496d42 Added an ability to generate data in build time 2021-10-15 14:35:50 +00:00
Nikita Mikhaylov
57a623aba0
Merge branch 'master' into codegen_select_fuzzer_v1 2021-10-13 16:01:40 +03:00
feng lv
868dbc4bad use poll replace select
fix

fix
2021-10-13 09:13:35 +00:00
Pavel Cheremushkin
7b9358a597 adding codegen fuzzer + code generation script. new contrib added: libprotobuf-mutator 2021-10-12 03:21:31 +03:00
feng lv
a57e97d2e0 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-10-11 06:09:43 +00:00
Nikolai Kochetov
b8e77a0c62 Add -fcoroutines for g++ 2021-10-08 15:06:09 +03:00
feng lv
4841b31b56 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-10-07 13:20:08 +00:00
Nikita Mikhaylov
f3c50e563e -nostdlib++ 2021-10-05 10:51:49 +00:00
feng lv
86d31445fd Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-10-05 03:58:27 +00:00
alexey-milovidov
c410107994
Update CMakeLists.txt 2021-10-04 02:34:23 +03:00
Denis Glazachev
9901549c1a
Add space 2021-10-03 20:40:19 +04:00
Denis Glazachev
ca7b69b0f3 Manipulate with -Wreserved-identifier only if HAS_RESERVED_IDENTIFIER has been detected 2021-10-03 17:42:36 +04:00
feng lv
8a4092c55b Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-10-03 10:00:16 +00:00
Azat Khuzhin
cab0551c5b Add ability to compile using newer version fo glibc w/o using new symbols
In glibc 2.32 new version of some symbols had been added [1]:

    $ nm -D clickhouse | fgrep -e @GLIBC_2.32
                     U pthread_getattr_np@GLIBC_2.32
                     U pthread_sigmask@GLIBC_2.32

  [1]: https://www.spinics.net/lists/fedora-devel/msg273044.html

Right now ubuntu 20.04 is used as official image for building
ClickHouse, however once it will be switched someone may not be happy
with that fact that he/she cannot use official binaries anymore because
they have glibc < 2.32.

To avoid this dependency, let's force previous version of those
symbols from glibc.

Note, that I've tested this by compiling with glibc 2.32 and verifying
that output ELF does not have @GLIBC_2.32 symbols and also running that
binary inside ubuntu:20.04 image (that has glibc 2.31).

v1: -Wl,--wrap
v2: -Wl,--defsym
v3: -include
v4: fix versioning for aarch64
2021-10-01 21:01:59 +03:00
feng lv
ee02e52d3d Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-09-30 16:02:31 +00:00
Azat Khuzhin
d64587ef01 Bump cmake dependency to 3.14
libxz uses if(DEFINED CACHE{}) which has been added only in 3.14.
2021-09-29 10:02:47 +03:00
mergify[bot]
f7ebe0d247
Merge branch 'master' into enable-clang-vtables-optimization 2021-09-25 01:56:16 +00:00
feng lv
dc318000e4 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into filelog-engine 2021-09-15 14:12:49 +00:00
sdk2
9117c88a92 better flag check 2021-09-15 12:26:27 +08:00
sdk2
e56ae86f0b fix clang flag use-ctor-homing 2021-09-15 11:57:27 +08:00
feng lv
c58e232385 fix conflict 2021-09-14 06:41:57 +00:00
mergify[bot]
97fbdec71c
Merge branch 'master' into fix-build-clang-13-2 2021-09-11 15:03:52 +00:00
Azat Khuzhin
4e9b2c5d69 Relax ENABLE_CHECK_HEAVY_BUILDS restrictions on systems under pressure (increase RLIMIT_CPU)
The problem was with compiling src/AggregateFunctions/AggregateFunctionQuantile.cpp
2021-09-10 21:05:41 +03:00
mergify[bot]
e3b3439535
Merge branch 'master' into fix-build-clang-13-2 2021-09-10 12:05:54 +00:00
Azat Khuzhin
1ec0295c6f Increase RLIMIT_CPU for ENABLE_CHECK_HEAVY_BUILDS to fix UBsan build
Right now CI fails to compile UBsan while trying to compile src/AggregateFunctions/CMakeFiles/clickhouse_aggregate_functions.dir/AggregateFunctionSumMap.cpp.o:

    2021-09-09 23:02:28 FAILED: src/AggregateFunctions/CMakeFiles/clickhouse_aggregate_functions.dir/AggregateFunctionSumMap.cpp.o
    2021-09-09 23:02:28 prlimit --as=10000000000 --data=5000000000 --cpu=600 /usr/bin/ccache /usr/bin/clang++-12  -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=7 -DAWS_SDK_VERSION_PATCH=231 -DBOOST_ASIO_STANDALONE=1 -DCARES_STATICLIB -DENABLE_OPENSSL_ENCRYPTION -DPOCO_ENABLE_CPP11 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -DSTD_EXCEPTION_HAS_STACK_TRACE=1 -DUNALIGNED_OK -DUSE_REPLXX=1 -DWITH_COVERAGE=0 -DWITH_GZFILEOP -DX86_64 -DZLIB_COMPAT -DZ_TLS=__thread -D__CLANG_SUPPORT_DYN_ANNOTATION__ -I../contrib/sentry-native/include -Iincludes/configs -I../base/glibc-compatibility/memcpy -I../src -Isrc -Isrc/Core/include -I../base/common/.. -Ibase/common/.. -I../contrib/cityhash102/include -I../contrib/cctz/include -Icontrib/zlib-ng -I../contrib/zlib-ng -I../base/pcg-random/. -I../contrib/aws-c-common/include -I../contrib/aws-c-event-stream/include -Icontrib/aws-s3-cmake/include -I../base/mysqlxx/.. -I../contrib/mariadb-connector-c/include -Icontrib/mariadb-connector-c/include -Icontrib/grpc/third_party/cares/cares -I../contrib/grpc/third_party/cares/cares -I../contrib/abseil-cpp -I../contrib/libpq -I../contrib/libpq/include -I../contrib/libstemmer_c/include -I../contrib/wordnet-blast -I../contrib/lemmagen-c/include -isystem ../contrib/datasketches-cpp/common/include -isystem ../contrib/datasketches-cpp/theta/include -isystem ../contrib/libcxx/include -isystem ../contrib/libcxxabi/include -isystem ../contrib/libunwind/include -isystem ../contrib/libpqxx/include -isystem ../contrib/rocksdb/include -isystem ../contrib/orc/c++/include -isystem contrib/orc/c++/include -isystem ../contrib/AMQP-CPP/include -isystem ../contrib/libuv/include -isystem ../contrib/AMQP-CPP -isystem ../contrib/s2geometry/src/s2 -isystem ../contrib/libhdfs3/include -isystem ../contrib/miniselect/include -isystem ../contrib/pdqsort -isystem ../contrib/croaring/cpp -isystem ../contrib/croaring/include -isystem ../contrib/fast_float/include -isystem ../contrib/msgpack-c/include -isystem ../contrib/aws/aws-cpp-sdk-s3/include -isystem ../contrib/aws/aws-cpp-sdk-core/include -isystem ../contrib/xz/src/liblzma/api -isystem ../contrib/zstd/lib -isystem ../contrib/re2 -isystem ../contrib/boost -isystem ../contrib/poco/Net/include -isystem ../contrib/poco/Foundation/include -isystem ../contrib/poco/NetSSL_OpenSSL/include -isystem ../contrib/poco/Crypto/include -isystem ../contrib/boringssl/include -isystem ../contrib/poco/Util/include -isystem ../contrib/poco/JSON/include -isystem ../contrib/poco/XML/include -isystem ../contrib/replxx/include -isystem ../contrib/fmtlib-cmake/../fmtlib/include -isystem ../contrib/double-conversion -isystem ../contrib/dragonbox/include -isystem contrib/re2_st -isystem ../contrib/NuRaft/include -isystem ../contrib/grpc/include -isystem ../contrib/protobuf/src -isystem src/Server/grpc_protos -isystem ../contrib/s2geometry/src -isystem ../contrib/sqlite-amalgamation -isystem ../contrib/libc-headers/x86_64-linux-gnu -isystem ../contrib/libc-headers -g -O2 -fdebug-prefix-map=/build=. -specs=/usr/share/dpkg/no-pie-compile.specs -Wdate-time  -g -fno-omit-frame-pointer -DSANITIZER -fsanitize=undefined -fno-sanitize-recover=all -fno-sanitize=float-divide-by-zero -fsanitize-blacklist=/build/tests/ubsan_suppressions.txt -fdiagnostics-color=always -Xclang -fuse-ctor-homing -fsized-deallocation  -gdwarf-aranges -pipe -mssse3 -msse4.1 -msse4.2 -mpclmul -mpopcnt -fasynchronous-unwind-tables -falign-functions=32   -Wall -Wno-unused-command-line-argument  -fdiagnostics-absolute-paths -fexperimental-new-pass-manager -Werror -Wextra -Wpedantic -Wno-vla-extension -Wno-zero-length-array -Wno-c11-extensions -Wcomma -Wconditional-uninitialized -Wcovered-switch-default -Wdeprecated -Wembedded-directive -Wempty-init-stmt -Wextra-semi-stmt -Wextra-semi -Wgnu-case-range -Winconsistent-missing-destructor-override -Wnewline-eof -Wold-style-cast -Wrange-loop-analysis -Wredundant-parens -Wreserved-id-macro -Wshadow-field -Wshadow-uncaptured-local -Wshadow -Wstring-plus-int -Wundef -Wunreachable-code-return -Wunreachable-code -Wunused-exception-parameter -Wunused-macros -Wunused-member-function -Wzero-as-null-pointer-constant -Weverything -Wno-c++98-compat-pedantic -Wno-c++98-compat -Wno-c99-extensions -Wno-conversion -Wno-ctad-maybe-unsupported -Wno-deprecated-dynamic-exception-spec -Wno-disabled-macro-expansion -Wno-documentation-unknown-command -Wno-double-promotion -Wno-exit-time-destructors -Wno-float-equal -Wno-global-constructors -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-nested-anon-types -Wno-packed -Wno-padded -Wno-return-std-move-in-c++11 -Wno-shift-sign-overflow -Wno-sign-conversion -Wno-switch-enum -Wno-undefined-func-template -Wno-unused-template -Wno-vla -Wno-weak-template-vtables -Wno-weak-vtables -O2 -g -DNDEBUG -O3  -fno-pie   -D OS_LINUX -nostdinc++ -std=gnu++2a -MD -MT src/AggregateFunctions/CMakeFiles/clickhouse_aggregate_functions.dir/AggregateFunctionSumMap.cpp.o -MF src/AggregateFunctions/CMakeFiles/clickhouse_aggregate_functions.dir/AggregateFunctionSumMap.cpp.o.d -o src/AggregateFunctions/CMakeFiles/clickhouse_aggregate_functions.dir/AggregateFunctionSumMap.cpp.o -c ../src/AggregateFunctions/AggregateFunctionSumMap.cpp

I guess the problem is CPU time, since looks like memory is fine (I
cannot reproduce it right now locally, maybe because I have clang-11).
2021-09-10 08:52:17 +03:00
Azat Khuzhin
4d82e8918b Update comments for ENABLE_CHECK_HEAVY_BUILDS 2021-09-10 08:39:56 +03:00
Nikita Mikhaylov
e575cc88fc Better 2021-09-09 21:11:07 +00:00
feng lv
40df3e6c7b reduce debug build binary size by clang optimazition 2021-09-08 19:52:49 +00:00