Commit Graph

13 Commits

Author SHA1 Message Date
Robert Schulze
1a7727a254
Prefix overridden add_executable() command with "clickhouse_"
A simple HelloWorld program with zero includes except iostream triggers
a build of ca. 2000 source files. The reason is that ClickHouse's
top-level CMakeLists.txt overrides "add_executable()" to link all
binaries against "clickhouse_new_delete". This links against
"clickhouse_common_io", which in turn has lots of 3rd party library
dependencies ... Without linking "clickhouse_new_delete", the number of
compiled files for "HelloWorld" goes down to ca. 70.

As an example, the self-extracting-executable needs none of its current
dependencies but other programs may also benefit.

In order to restore access to the original "add_executable()", the
overriding version is now prefixed. There is precedence for a
"clickhouse_" prefix (as opposed to "ch_"), for example
"clickhouse_split_debug_symbols". In general prefixing makes sense also
because overriding CMake commands relies on undocumented behavior and is
considered not-so-great practice (*).

(*) https://crascit.com/2018/09/14/do-not-redefine-cmake-commands/
2022-07-11 19:36:18 +02:00
Alexey Milovidov
e128d89957 Remove Arcadia 2022-04-16 00:24:58 +02:00
Alexey Milovidov
394fb64a9c Better way of implementation 2020-06-14 20:42:11 +03:00
Ivan
47ad338cb2
Refactor CMake build files (#11390)
* Get rid of lib_name.cmake
* Refactor Boost and HyperScan libraries
* Refactor lz4
* Fix build with xxHash
2020-06-09 13:54:49 +03:00
Alexey Milovidov
f54435e7fd Fix clang-tidy 2020-05-18 11:08:55 +03:00
Alexey Milovidov
b0a5ce7743 Enable clang-tidy for programs and utils 2020-05-18 04:19:50 +03:00
Alexey Milovidov
a576a4fbcd Enable extra warnings for base, utils, programs 2020-05-10 01:59:34 +03:00
Ivan Lezhankin
8cb0e58bc7 Fix build for all targets 2019-09-20 21:13:51 +03:00
Vitaly Baranov
e6aebb5b13 Fix after review. 2019-07-19 12:19:47 +03:00
Vitaly Baranov
9fb3135c23 Improve utility zookeeper-adjust-block-numbers-to-parts.
Add filter on shards and tables.
Add flag --dry-run.
The utility now checks cversion before doing anything.
2019-07-19 03:39:22 +03:00
alesapin
1291ecbed7 Better logging in adjust block util 2019-04-04 22:44:04 +03:00
alesapin
43ed0a8e7f Style fix 2019-04-04 16:03:20 +03:00
alesapin
ee49252160 Add util for adjust block numbers in zookeper 2019-04-04 16:01:48 +03:00