Peter Dimov
ee23552433
Issue an error if an MPI or a Python library is requested, but support is not enabled
2025-10-10 14:51:52 +03:00
Peter Dimov
e34e275cbd
Fix typo in error message, cosmetic formatting changes
2025-10-10 10:29:32 +03:00
Peter Dimov
8becaae3c8
CMAKE_MATCH_x is supported on CMake < 3.9; the CMake documentation is incorrect
2025-10-10 02:57:36 +03:00
Peter Dimov
0f810ec314
Fix link-fail under CMake < 3.12. Refs #95 .
2025-10-09 22:35:09 +03:00
Flamefire
247de87d85
Use custom property
...
Since CMake 3.11 properties starting with underscores are considered
custom properties and allowed.
2025-09-28 18:47:43 +02:00
Alexander Grund
005e32d931
Avoid installing libraries multiple times or issueing wrong message
...
Some libraries call `boost_install` themselves which adds
`INSTALL_INTERFACE` to their `INTERFACE_INCLUDE_DIRETORIES` property.
That then makes the install check in `__boost_auto_install` fail and
print a message that the library won't be installed while it will be.
Use a label to detect targets for which `boost_install` was already
called and skip the logic in `__boost_auto_install` for those.
2025-09-28 12:49:37 +02:00
Peter Dimov
3a451b2a5a
Merge pull request #86 from Flamefire/separate-test-deps
...
Don't add all libraries when BOOST_INCLUDE_LIBRARIES is set
2025-09-18 19:11:30 +03:00
Alexander Grund
052f5fcf53
Ensure compatibility with CMake < 3.20
...
CMake supports `list(REMOVE_ITEM` without any items only since 3.20
2025-09-12 17:10:31 +02:00
Alexander Grund
650a43b83a
Allow including and excluding dependencies via pragmas
...
This supports comments in CMLs like:
```
# Boost-Include: Boost::add_this
# Boost-Exclude Boost::remove_this
```
Whitespace is ignored and the colon is optional
2025-09-12 10:47:48 +02:00
Alexander Grund
44c75fbef2
Include Boost libraries on lines with trailing comment
2025-09-12 09:35:50 +02:00
Alexander Grund
8d99684e85
Add more special cases for library names
...
Also handle the prefix-case commonly
2025-09-11 19:43:23 +02:00
Alexander Grund
264a16a047
CMake: Show used CMake version in super-builds
...
In super-builds show the CMake version which is especially useful on CI to verify the used CMake and/or compare different jobs on failure.
Limited to the super build to not be too verbose when Boost is used via add_subdirectory or similar.
2025-09-11 16:10:14 +02:00
Alexander Grund
7ab2d8dbfc
Only consider test dependencies of requested libraries
...
Don't check the test/example folders for (implicit) dependencies as
BUILD_TESTING for those is disabled.
2025-09-11 16:05:48 +02:00
Alexander Grund
ca0f8e1f77
Handle Boost.ASIO
2025-09-11 16:05:48 +02:00
Alexander Grund
e9254ea803
Handle subfolders recursively
2025-09-11 16:05:48 +02:00
Alexander Grund
470c792b6d
Handle Boost.Test
2025-09-11 16:05:48 +02:00
Alexander Grund
8b60ba191a
Allow free-form Boost::foo
2025-09-11 16:05:48 +02:00
Alexander Grund
cb6a0a7d9f
Correctly handle dependencies of test dependencies
2025-09-11 16:05:48 +02:00
Alexander Grund
93f9f3f783
Don't add all libraries when BOOST_INCLUDE_LIBRARIES is set
...
Previously all libraries were added even though only a subset was selected.
This makes the configure process much longer then required or may fail
for libraries that aren't intended to be build.
Instead gather a 2nd list of dependencies determined by the test/CMakeLists.txt
when BUILD_TESTING is ON and add only those (with disabled install and tests)
2025-09-11 16:05:48 +02:00
Alexander Grund
613c0d5499
Error out if no included libraries were found
2025-09-11 12:15:31 +02:00
Peter Dimov
7f5336b3bf
Reflect changes from https://github.com/boostorg/mpi/pull/160 as suggested in #76 . Closes #76 .
2024-10-29 18:01:16 +02:00
Peter Dimov
4eeb136f14
Fix deduced architecture prefix under MinGW
2024-10-13 03:47:52 +03:00
Peter Dimov
8ba1e3f4c1
Update comment
2024-10-10 14:45:43 +03:00
zjyhjqs
113ecd751e
Add CPack support
2024-10-03 11:07:41 +08:00
Peter Dimov
bb741d09d2
Add VERBATIM to add_custom_target
2024-07-13 21:13:18 +03:00
Peter Dimov
ae2e6a6471
MSVC 19.40 is still vc143
2024-06-21 14:16:52 +03:00
Peter Dimov
5eab56dd6c
Add HINTS to the TARGET_NAME_IF_EXISTS case as well
2024-06-19 22:17:09 +03:00
Peter Dimov
98dd92e976
Merge branch 'rules_foreign_cc_interop' of https://github.com/soro/cmake into feature/pr-67
2024-06-19 22:15:13 +03:00
Soeren Roerden
1cd045fdf6
Add a hint for the stage directory to find_package in the cmake configure files, so that recursive lookup does not fail when configuring as a transitive dependency using rules_foreign_cc (bazel) cmake targets
2024-06-19 12:50:52 -04:00
Pansysk75
d62826e0f4
Rename export directory
2024-06-18 12:10:13 -05:00
Pansysk75
280b8b3ec0
Do export(...) to Boost targets
2024-06-17 13:20:51 -05:00
Peter Dimov
440dd10f57
Special-case boost_exception and boost_test_exec_monitor, because they are hardcoded as STATIC
2024-05-31 04:44:04 +03:00
Peter Dimov
02587d479e
Move the Boost_USE_STATIC_LIBS check from -config to -config-version
2024-05-28 21:55:26 +03:00
Peter Dimov
f36ef31f66
Honor Boost_USE_STATIC_LIBS in generated config files
2024-05-28 20:56:56 +03:00
Peter Dimov
5ad9418846
Add verbose output to installed config files
2024-05-28 20:23:05 +03:00
Peter Dimov
e73f78f361
Install static/shared library config files in separate directories. Refs #62 .
2024-05-28 18:27:15 +03:00
Peter Dimov
4c6884c2e2
Update description of BOOST_ENABLE_MPI to require CMake 3.10, because in 3.9 the MPI_CXX target refers to the C++ API, instead of (as in 3.10+) to the C API used from C++
2024-05-23 20:47:55 +03:00
Peter Dimov
33c036bd70
Link Boost::headers to all INTERFACE libraries when BOOST_ENABLE_COMPATIBILITY_TARGETS is ON
2024-05-14 20:01:06 +03:00
Peter Dimov
0994f04d69
Add compatibility targets to BoostRoot.cmake
2024-05-14 19:36:49 +03:00
Alexander Neumann
c2ee7bb2eb
refine arch prefix selection
2024-04-28 11:41:33 +02:00
Peter Dimov
e5b13bf36b
Merge pull request #58 from Neumann-A/optional-deps
...
Add optional deps into generated config
2024-04-24 13:23:54 +03:00
Alexander Neumann
e66171af0e
Remove extra \
2024-04-24 09:22:19 +02:00
Peter Dimov
d62cda17f7
Merge pull request #57 from Neumann-A/arch-tags
...
Add more arch tags
2024-04-20 17:17:11 +03:00
Alexander Neumann
e1d79b3e14
Do as requested
2024-04-20 12:08:48 +02:00
Alexander Neumann
09d9688e56
Introduce BOOST_ARCHITECTURE_TAG and precalculate it.
2024-04-20 11:49:27 +02:00
Alexander Neumann
8d80c613e1
Make zstd check agnostic to generator expressions and always use CONFIG mode
2024-04-19 23:41:53 +02:00
Alexander Neumann
f515d24900
Add optional deps into generated config
2024-04-19 23:29:11 +02:00
Alexander Neumann
ab16329fb5
Add more arch tags following FindBoost.cmake
2024-04-19 23:10:00 +02:00
Peter Dimov
8beeb2a656
Add support for BOOST_TEST_PREFIX to BoostTest
2023-12-22 03:47:18 +02:00
Peter Dimov
88d8b7e3cb
Add INCLUDE_DIRECTORIES support to BoostTestJamfile
2023-12-22 03:39:52 +02:00