Commit Graph

22 Commits

Author SHA1 Message Date
Robert Schulze
f72a337074
Remove cruft from build
No need to check compiler flags, clang >= 15 supports all of them.
2023-03-17 13:44:04 +00:00
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
Maksim Kita
1f5837359e clang-tidy check performance-noexcept-move-constructor fix 2022-03-02 18:15:27 +00:00
Alexey Milovidov
d4e496c314 Add support for PowerPC build 2021-10-12 01:47:57 +03:00
Denis Glazachev
ca7b69b0f3 Manipulate with -Wreserved-identifier only if HAS_RESERVED_IDENTIFIER has been detected 2021-10-03 17:42:36 +04:00
Alexey Milovidov
fe6b7c77c7 Rename "common" to "base" 2021-10-02 10:13:14 +03:00
Sergei Semin
2fbd460510 solve problem with memcpy-bench.cpp 2021-09-09 23:51:47 +03:00
Benjamin Naecker
57fd59b73b Adds support for building on Solaris-derived systems
This commit adds a number of changes to platform-detection and
compile-time directives required to support building ClickHouse on
Solaris-derived systems, most notably illumos.
2021-04-28 16:32:41 -07:00
feng lv
ee6d1a6feb fix build 2021-04-05 14:37:04 +00:00
Alexey Milovidov
fe371d9cfc Minor modifications 2021-03-16 01:13:27 +03:00
Alexey Milovidov
b9ae9c9cd2 Add one more variant to memcpy benchmark 2021-03-16 00:05:30 +03:00
Alexey Milovidov
c1a2745bfb Add one more variant to memcpy benchmark 2021-03-16 00:04:03 +03:00
Alexey Milovidov
9bea10d9f9 Fix style 2021-03-15 11:49:56 +03:00
Alexey Milovidov
1f6b05cd85 Add example 2021-03-15 11:18:11 +03:00
Alexey Milovidov
637f6a29a6 Add penalty 2021-03-15 11:16:15 +03:00
Alexey Milovidov
8c2d65242a Fix style 2021-03-14 23:24:22 +03:00
Alexey Milovidov
145116bfb6 Fix style 2021-03-14 23:22:12 +03:00
Alexey Milovidov
1bc21789d2 Add more variants 2021-03-14 19:52:51 +03:00
Alexey Milovidov
39dbc11a3d Fix style check 2021-03-09 03:21:38 +03:00
Alexey Milovidov
f0342eda9c Add experimental memcpy implementation 2021-03-08 13:05:18 +03:00
Alexey Milovidov
940ce5884e Add memcpy-bench tool 2021-03-08 12:04:52 +03:00
Alexey Milovidov
2c86bc4ea3 Addition to prev. revision 2021-03-08 10:00:54 +03:00