Dennis Klein
1a5c8bab88
build: Fix default for BUILD_TESTING
2021-07-04 04:01:41 +02:00
Alexey Rybalchenko
ab54668aee
set CMAKE_EXPORT_COMPILE_COMMANDS unconditionally
2021-06-15 11:54:29 +02:00
Dennis Klein
2e655823e4
CMake: Do not unconditionally override settings without good reason
...
fixes #342
2021-05-28 15:09:01 +02:00
Dennis Klein
20200f02a3
CMake: Refactor into topic-based modules
2021-05-28 10:38:14 +02:00
Christian Tacke
7616b0b0aa
CMake: Set CXX language level via target_compile_features()
...
See: https://gitlab.kitware.com/cmake/cmake/-/issues/18446
See: https://cmake.org/cmake/help/latest/manual/cmake-compile-features.7.html#requiring-language-standards
2021-05-28 10:38:14 +02:00
Dennis Klein
575054a11f
Bundle and use FairCMakeModules
2021-05-28 10:38:14 +02:00
Dennis Klein
ed78ccd29c
CMake: Remove cotire dependency
...
CMake now has native unity build support:
https://cmake.org/cmake/help/latest/variable/CMAKE_UNITY_BUILD.html
2021-05-28 10:38:14 +02:00
Dennis Klein
d15bc17b12
extern/asio: Bump and require v1.18.1
2021-05-28 10:38:14 +02:00
Dennis Klein
9724f184f4
Fallback to Boost.Filesystem on GCC 8
2021-05-07 13:13:16 +02:00
Dennis Klein
ea9aede652
Fallback to <boost/filesystem> on GCC 7
2021-04-08 16:22:47 +02:00
Christian Tacke
7edf436919
Improve PMIx Package Finding on Debian
...
Debian's libpmix-dev package installs everything below
/usr/lib/ARCH-TRIPLET/pmix2.
For some reasoning behind this,
see: https://bugs.debian.org/882033
CMake does not search there by default, so help it.
Also add myself to CONTRIBUTORS.
2020-10-08 17:27:12 +02:00
Alexey Rybalchenko
9e2a002942
Add -Og flag to Debug build
2020-06-29 14:44:49 +02:00
Alexey Rybalchenko
bdf895ae9e
Add PicoSHA2 dependency
2020-06-05 18:16:13 +02:00
Alexey Rybalchenko
0a5820c07f
Fix Typo
2020-04-06 18:42:34 +02:00
Dennis Klein
d608abf31c
Fix -Wpedantic
2020-01-27 20:50:11 +01:00
Dennis Klein
c180300303
Increase severity
...
From user feedback we learned that it is preferred to have this
condition rather fail fast than just warn.
2020-01-16 19:11:36 +01:00
Dennis Klein
71325828f6
CMake: Add option ENABLE_CCACHE
2019-11-15 14:44:56 +01:00
Dennis Klein
040931fba7
CMake: Pass multi-value argument atomically
2019-10-28 18:01:56 +01:00
Alexey Rybalchenko
ea9ad64664
CMake: Support multiple values for REQUIRES in fairmq_build_option
2019-09-30 12:18:49 +02:00
Dennis Klein
fa394194e8
CMake: Fix working directory for submodule update command
2019-09-11 15:41:43 +02:00
Dennis Klein
1055f035ff
CMake: Issue a warning if build option requirements are not met
2019-09-04 21:17:35 +02:00
Dennis Klein
75a3a80ac1
CMake: Fix submodule update command
2019-09-04 21:17:35 +02:00
Dennis Klein
f73a6d71ed
CMake: Do not use git version in install tree
2019-09-04 21:17:35 +02:00
Dennis Klein
1dec059104
SDK: Require C++14, CMake 3.11 and bundle asio 1.13.0
...
Decouple from Boost distro to be able to use
newest releases and rely on std::error_code only.
2019-09-04 21:17:35 +02:00
Dennis Klein
88ff5d8fc0
CMake: Bundle GTest
2019-09-04 21:17:35 +02:00
Dennis Klein
d6d9312e53
CMake: Add find module for asio
2019-09-04 21:17:35 +02:00
Dennis Klein
afadb2a078
Make find_package2 a bit smarter
...
The VERSION arguments now supports multiple values and picks the highest
version from the given. The COMPONENTS argument now automatically
removes duplicates.
2019-07-19 14:45:27 +02:00
Dennis Klein
4351b98d85
clang-tidy: Configure via file
2019-07-10 19:35:18 +02:00
Dennis Klein
3da5f4d5db
SDK: Add CMake skeleton
...
* New build flag BUILD_SDK
* New component "sdk"
2019-07-02 21:30:37 +02:00
Dennis Klein
b1c8264123
find_package2: Fix list sub-command REMOVE_DUPLICATES requires list to be present
...
Fixes #175
2019-06-27 14:02:15 +02:00
Dennis Klein
187a821f36
CMake: Revert VERSION option to single value arg
...
This fixes a regression introduced in 0ff8eaf
that caused other options
to be ineffective in certain cases.
Resolves #164
2019-06-26 20:42:20 +02:00
Dennis Klein
465d90924b
CMake: Implement ADD_REQUIREMENTS_OF option for find_package2
...
Resolves #142
2019-06-26 20:42:20 +02:00
Dennis Klein
3358a2ba12
Require DDS 2.4
...
* Remove obsolete FindDDS.cmake
* Adapt to new DDS version
2019-06-26 18:39:12 +02:00
Dennis Klein
479c16a8fa
CMake: Export build type and cxx flags
...
Resolve #158
2019-06-24 19:06:38 +02:00
Dennis Klein
660420e4f3
CMake: Support running static analysis
...
OFF by default (Imposes significant additional build time). Controlled
with CMake variable RUN_STATIC_ANALYSIS.
Supported analysers:
* clang-tidy
* iwyu
* cpplint
2019-06-04 12:17:37 +02:00
Dennis Klein
f8f997abe6
CMake: Set policies by version
...
This is the recommended way of dealing with policies. Also, this patch
fixes a problem with the policies being set at the wrong depth in the
policy stack.
2019-06-04 12:17:37 +02:00
Dennis Klein
54b7742d85
Drop obsolete dependency to AZMQ
2019-03-21 18:03:32 +01:00
Dennis Klein
95ec56dcf0
Fix regression in exporting required dependency components
...
Regression introduced with 0ff8eaf
2019-03-06 16:26:24 +01:00
Dennis Klein
a262d4684a
Set cmake policy CMP0074
2019-03-06 14:23:08 +01:00
Dennis Klein
da070a407e
Depend on AZMQ
2019-03-06 14:23:08 +01:00
Dennis Klein
35dd9578aa
Set C++17 when building OFI transport
...
Improve ctest definitions
2019-03-06 14:23:08 +01:00
Dennis Klein
0ff8eaf84d
Fix package dependencies
2019-03-06 14:23:08 +01:00
Dennis Klein
a670b4bbf5
Remove obsolete module
2019-03-06 14:23:08 +01:00
Dennis Klein
4d7a1c81c6
Depend on asiofi
2019-03-06 14:23:08 +01:00
Dennis Klein
1191c3cda5
Add PMIx plugin
...
Proof of concept for now.
2019-02-11 11:12:30 +01:00
Dennis Klein
1fdf510ae7
Pick correct build type in CI
2018-10-10 20:28:10 +02:00
Dennis Klein
cf9a2944c2
Introduce and export hotfix version component
...
The cmake variable PROJECT_VERSION_HOTFIX contains the hotfix version
component. 0 means no hotfix, 1 means the first hotfix, 2 the second,
and so on.
2018-09-20 18:09:07 +02:00
Dennis Klein
60f27b94b2
Support BUILD_SHARED_LIBS flag
...
https://cmake.org/cmake/help/v3.0/variable/BUILD_SHARED_LIBS.html
2018-09-19 19:09:10 +02:00
Dennis Klein
c02fbed331
Require msgpack 3.1.0
...
Since 3.1.0 msgpack ships a proper CMake package exporting a target
for the header-only C++ library. Allows us to get rid of our custom
find module.
2018-08-30 17:39:56 +02:00
Dennis Klein
76aeb2c7e6
Require nanomsg 1.1.3
...
Since 1.1.3 nanomsg ships a CMake package, so we can get rid
of our custom find module.
2018-08-30 17:39:56 +02:00