Commit Graph

494 Commits

Author SHA1 Message Date
alesapin
cbac8bd083 Fix cmake lists 2020-07-29 14:33:38 +03:00
Alexander Kuzmenkov
3e6b9f297f Some provisions for Android build 2020-07-15 14:16:00 +03:00
Azat Khuzhin
3ceefee220 Warn if jemalloc is not enabled for non-linux too
Refs: #11897 (osx)
Refs: #11774 (freebsd)
2020-07-09 10:25:42 +03:00
Azat Khuzhin
3a519fe35a Fix jemalloc enabled detection (should goes after contrib inclusion) 2020-07-09 10:25:13 +03:00
Azat Khuzhin
a645759a42 Set CMAKE_POLICY_DEFAULT_CMP0022/CMAKE_POLICY_DEFAULT_CMP0077 globally
This will fix CMAKE_POLICY_DEFAULT_CMP0077 for snappy:

    CMake Warning (dev) at contrib/snappy/CMakeLists.txt:11 (option):
      Policy CMP0077 is not set: option() honors normal variables.  Run
    "cmake
      --help-policy CMP0077" for policy details.  Use the cmake_policy
    command to
      set the policy and suppress this warning.

      For compatibility with older versions of CMake, option is clearing the
      normal variable 'BUILD_SHARED_LIBS'.
    This warning is for project developers.  Use -Wno-dev to suppress it.
2020-07-09 10:16:39 +03:00
Azat Khuzhin
a5cb0aed12
Sanitize LINK_LIBRARIES property for the directories (#12160)
When you will try to link target with the directory (that exists), cmake will
skip this without an error, only the following warning will be reported:

    target_link_libraries(main /tmp)

    WARNING: Target "main" requests linking to directory "/tmp".  Targets may link only to libraries.  CMake is dropping the item.

And there is no cmake policy that controls this.
(I guess the reason that it is allowed is because of FRAMEWORK for OSX).

So to avoid error-prone cmake rules, this can be sanitized.
There are the following ways:
- overwrite target_link_libraries()/link_libraries() and check *before*
  calling real macro, but this requires duplicate all supported syntax
  -- too complex
- overwrite target_link_libraries() and check LINK_LIBRARIES property, this
  works great
  -- but cannot be used with link_libraries()
- use BUILDSYSTEM_TARGETS property to get list of all targets and sanitize
  -- this will work.

I also tested it with the following patch:

    $ git di
    diff --git a/base/daemon/CMakeLists.txt b/base/daemon/CMakeLists.txt
    index 26d59a57e7..35e6ff6432 100644
    --- a/base/daemon/CMakeLists.txt
    +++ b/base/daemon/CMakeLists.txt
    @@ -9,4 +9,5 @@ target_link_libraries (daemon PUBLIC loggers PRIVATE clickhouse_common_io clickh

     if (USE_SENTRY)
         target_link_libraries (daemon PRIVATE ${SENTRY_LIBRARY})
    +    target_link_libraries (daemon PRIVATE /tmp)
     endif ()

And it works:

    CMake Error at cmake/sanitize_target_link_libraries.cmake:48 (message):
       daemon requested to link with directory: /tmp
    Call Stack (most recent call first):
      cmake/sanitize_target_link_libraries.cmake:55 (sanitize_link_libraries)
      CMakeLists.txt:425 (include)

Refs: #12041
2020-07-07 19:22:41 +03:00
alesapin
64583ceb22 Merge branch 'master' into add-storage-rabbitmq-read-only 2020-07-02 16:08:29 +03:00
kssenii
3d2cc9d4b2 Remove libevent library 2020-06-29 12:11:17 +00:00
alexey-milovidov
a34032cace
Merge pull request #11300 from blinkov/sentry
Opt-in support for sending crash reports
2020-06-25 17:20:50 +03:00
alesapin
3fc65b3269 Merge branch 'master' into kssenii-rabbit-mq 2020-06-24 20:14:28 +03:00
Alexey Milovidov
f206d91072 Allow ClickHouse to run on Android 2020-06-23 20:58:42 +03:00
kssenii
18820814f5 Merge 2020-06-10 23:25:33 +00:00
Ivan Blinkov
90ee4d52f4 merge master 2020-06-10 13:18:41 +03:00
Alexander Tokmakov
6bb68329f8 Merge branch 'master' into merging_external_source_cassandra 2020-06-09 19:51:14 +03:00
Ivan Blinkov
6f7064928f Merge branch 'master' of github.com:ClickHouse/ClickHouse into sentry 2020-06-09 19:07:57 +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
Alexander Tokmakov
e67837bc4a cleenup 2020-06-04 00:11:17 +03:00
Ivan Blinkov
709b4f42c8 Prototype sending crash reports on segfaults 2020-05-27 22:11:04 +03:00
Alexander Tokmakov
e6ca09e134 fix build 2020-05-22 17:19:33 +03:00
Alexander Tokmakov
31b6f5f0d2 Merge branch 'master' into merging_external_source_cassandra 2020-05-20 23:44:53 +03:00
kssenii
a055e33087 Add libevent & AMQP-CPP libraries 2020-05-20 09:08:27 +03:00
Alexander Tokmakov
175b7aedf3 Merge branch 'master' into merging_external_source_cassandra 2020-05-19 05:21:27 +03:00
Artem Zuikov
97c7447130
Bitonic sort improvements (#10934) 2020-05-19 00:41:23 +03:00
alexey-milovidov
5898f611da Merge pull request #10861 from traceon/contrib-openldap
Add OpenLDAP third-party library integration (system or contrib/build)
2020-05-15 23:13:23 +03:00
Artem Zuikov
8e8a2a17d6 build fixes 2020-05-15 03:01:31 +03:00
Ri
fc7afaa639
Bitonic sort on GPU (OpenCL) (#10232) 2020-05-15 03:01:14 +03:00
Denis Glazachev
36cb24377b Merge branch 'master' into contrib-openldap
* master: (204 commits)
  DOCS-289: randConstant (#10838)
  Update performance_comparison.md
  fix docs build
  Adjust ld+json images, remove feather icons (#10843)
  [docs] faster local/debug build (#10840)
  CLICKHOUSE-4862: some markdown fixes @ ru mergetree.md (#10835)
  CLICKHOUSE-4862: fix link (#10836)
  Some fixes at ru merge-tree-settings.md (#10837)
  Fix MSan failure in cache dictionary
  Fix double whitespace
  Additional assert in ColumnVector
  Fix paths in compiler error messages #10434
  Fix "Arcadia" build
  Fix style check in Block::sortColumns() (sigh)
  Sort iterators to avoid extra std::string creation in Block::sortColumns()
  Optimize Block::sortColumns()
  Better DNS exception message
  Fix logical error in convertFieldToType
  Make order of columns strict in Block::sortColumns()
  Add a test for INSERT into Buffer() with different order of columns (via MV)
  ...
2020-05-13 00:29:09 +04:00
Denis Glazachev
acd8cfc5d2 Added contrib/openldap submodule
Added OpenLDAP find/detection cmake scripts
Added integration for OpenLDAP Linux and Darwin x86_64 platforms (following OpenSSL integration approach)
2020-05-12 23:19:15 +04:00
Alexey Milovidov
2dd1a1d7b4 Fix paths in compiler error messages #10434 2020-05-12 05:12:08 +03:00
Alexey Milovidov
a576a4fbcd Enable extra warnings for base, utils, programs 2020-05-10 01:59:34 +03:00
Alexey Milovidov
fb32dbe6ee Enable more warnings 2020-05-10 00:44:33 +03:00
Amos Bird
e33fb54686
Fix libunwind 2020-05-09 05:44:57 +08:00
Ivan
85d783c247
Poco contrib refactoring (#10396)
* Remove config_common.h
* Refactor libcpuid contrib
* Remove support for libcpuinfo
* Define USE_CPUID in Arcadia
* Refactor Poco libraries
2020-05-08 17:11:19 +03:00
alexey-milovidov
e908d1cd01
Revert "Partial fix of clang build stack unwinding (omit-frame-pointer)" 2020-05-05 14:36:32 +03:00
alexey-milovidov
aeb5487261
Merge branch 'master' into xcode-build-fix 2020-05-03 05:03:49 +03:00
Alexey Milovidov
d8e36a0789 Added CMake option ENABLE_THINLTO #10585 2020-05-02 16:50:57 +03:00
alexey-milovidov
d763d0019b
Merge pull request #10625 from amosbird/unwind
Partial fix of clang build stack unwinding (omit-frame-pointer)
2020-05-02 16:43:04 +03:00
Amos Bird
014a1233ff
Partial fix of clang build stack unwinding 2020-05-02 18:52:29 +08:00
alexey-milovidov
ab42691b77
Update CMakeLists.txt 2020-05-01 18:41:53 +03:00
Alexey Milovidov
2c01fa1845 Cherry-pick half of #10585 2020-05-01 18:39:50 +03:00
alexey-milovidov
f11148a77c
Trigger CI 2020-05-01 16:44:49 +03:00
Denis Glazachev
66adf60e1b Proper handling of CMAKE_BUILD_TYPE vs CMAKE_BUILD_TYPE_UC 2020-04-30 18:41:22 +04:00
alexey-milovidov
d1bae54dfe
Update CMakeLists.txt 2020-04-30 15:15:30 +03:00
Amos Bird
7f5467bb98
Enable thinLTO 2020-04-30 07:00:23 +08:00
Denis Glazachev
f5600bb8ab Add comments for USE_FOLDERS and CMAKE_FOLDER 2020-04-27 22:34:36 +04:00
Denis Glazachev
59d3256ec5 Append "-Wl,-U,_inside_main" to exe linker flags instead of C/C++ compiler flags (OS_DARWIN only) 2020-04-27 21:53:15 +04:00
Denis Glazachev
bca280d571 Fix typo - do not overwrite targets using a wrong var 2020-04-27 21:51:32 +04:00
Denis Glazachev
22a00bd5a3 Enable organazing targets into folders for GUI-based IDEs
Put all targets of contrib/ into contib/ folder in GUI IDE
2020-04-27 21:50:26 +04:00
Eldar Zaitov
d7a037c26b split fuzzers and sanitizers 2020-04-25 10:12:38 +03:00
Alexey Milovidov
9af711664a Use absolute paths in compiler diagnostic messages 2020-04-22 12:14:08 +03:00