Commit Graph

95 Commits

Author SHA1 Message Date
Dennis Klein
cda7282422 feat!: Remove deprecated components sdk, sdk_commands, dds_plugin
BREAKING CHANGE: Components have been moved to ODC project, see
https://github.com/FairRootGroup/FairMQ/discussions/392 for details.
2022-08-11 15:30:25 +02:00
Dennis Klein
b7474ae138 build: Deprecate components dds_plugin, sdk, sdk_commands 2022-03-21 18:22:07 +01:00
Dennis Klein
0bf765e6ba build: Improve summary output 2021-09-07 20:53:16 +02:00
Dennis Klein
24fbf94946 build: Use fairmq-tidy on our own codebase when RUN_FAIRMQ_TIDY=ON 2021-09-07 20:53:16 +02:00
Dennis Klein
d392f60c09 build: Have color output depend on a common switch DISABLE_COLOR 2021-09-07 20:53:16 +02:00
Dennis Klein
dff2b4b7d1 feat(tidy): Add new FairMQTidy.cmake module 2021-09-07 20:53:16 +02:00
Dennis Klein
db727092c5 feat(tidy): Add new fairmq-tidy tool 2021-09-07 20:53:16 +02:00
Dennis Klein
170557ace9 build: Revert removal of asio find module
Explicitely prefer config mode search over find module for asio.
2021-07-16 18:10:59 +02:00
Dennis Klein
0c4921d650 feat: Drop public bundled dependency to asio 2021-07-16 12:31:17 +02:00
Dennis Klein
1007de8e49 feat(ofi): Require asiofi 0.5
* Modernize some ofi transport code along the way
  * Replace Boost.Container with `<memory_resource>`
  * Introduce namespaced headers
    * `<fairmq/Channel.h>`
    * `<fairmq/Message.h>`
    * `<fairmq/Poller.h>`
    * `<fairmq/Socket.h>`
    * `<fairmq/TransportFactory.h>`
    * `<fairmq/UnmanagedRegion.h>`
* Compile-firewall Boost.Process in `shmem::Manager` because it conflicts
with standalone asio
2021-07-16 12:31:17 +02:00
Dennis Klein
9585c20b7f feat: Drop public dependency to Boost.Asio and use standalone asio 2021-07-16 12:31:17 +02:00
Dennis Klein
38f9870893 ci: Run additional checks 2021-07-07 14:43:32 +02:00
Dennis Klein
1df338b262 feat: Require DDS 3.5.13.7 2021-07-07 14:43:32 +02:00
Dennis Klein
0046bb38aa build: Simplify sanitizer flags 2021-07-07 14:43:32 +02:00
Dennis Klein
a18ce7a435 build: Fix the list append 2021-07-07 14:43:32 +02:00
Dennis Klein
f413aa1979 build: Fix default for BUILD_TESTING 2021-07-07 14:43:32 +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