summaryrefslogtreecommitdiffstats
path: root/Modules/FindBoost.cmake
Commit message (Collapse)AuthorAgeFilesLines
* FindBoost: Improve messages when a Boost CMake package is foundBrad King2017-09-291-3/+2
| | | | | | Add a test for this case to verify the messages. This test will also be valuable to cover this code path in which we've had several regressions recently.
* FindBoost: Simplify search in listsAlex Turbov2017-09-181-5/+9
| | | | | | | | | | | | | | | | Instead of `list(FIND...)` and then checking result for `-1` (found/not-found), nowadays `if` command has the `IN_LIST` test for that. This change was originally made by commit v3.9.0-rc1~41^2 (FindBoost: Simplify search in lists, 2017-04-23) but then had to be reverted by commit v3.9.2~3^2 (FindBoost: Revert "Simplify search in lists.", 2017-09-05) due to problems related to using `find_dependency`. Those problems were addressed by commit 3080a0a611 (FindBoost: Improve behavior when thread dependency is missing, 2017-09-15), so now we can restore the original change. Issue: #17252
* FindBoost: Improve behavior when thread dependency is missingBrad King2017-09-151-4/+14
| | | | | | | | | | The `find_dependency` macro is not meant for use in find modules and `return()`s from the caller when the package is not found. Avoid using it in FindBoost. Instead use plain `find_package` for the Threads package and manually forward the `QUIET` argument. When the Threads package is missing then treat the Boost `thread` component as missing. Issue: #17257
* Merge topic 'boost-1.65.1'Brad King2017-09-081-1/+1
|\ | | | | | | | | | | | | dbba53a5 FindBoost: Add version 1.65.1 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1241
| * FindBoost: Add version 1.65.1Roger Leigh2017-09-061-1/+1
| |
* | Merge topic 'FindBoost-limit-configs'Brad King2017-09-071-16/+32
|\ \ | |/ |/| | | | | | | | | e6159e18 FindBoost: Add option to prevent finding DEBUG/RELEASE Boost-libs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1216
| * FindBoost: Add option to prevent finding DEBUG/RELEASE Boost-libsDeniz Bahadir2017-09-061-16/+32
| | | | | | | | | | | | | | | | | | | | With the use of options `Boost_USE_DEBUG_LIBS` and `Boost_USE_RELEASE_LIBS` it is now possible to skip searching for either DEBUG or RELEASE Boost libraries. This is useful if Boost is installed on the system in multiple directories but only one of them should be used which only contains e.g. the RELEASE libraries. Without this change the DEBUG libraries might be found in the other directory which might not be desired at all.
* | Merge topic 'FindBoost-fix-policy-scope'Brad King2017-09-061-9/+5
|\ \ | |/ |/| | | | | | | | | ade45fa3 FindBoost: Revert "Simplify search in lists." Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1238
| * FindBoost: Revert "Simplify search in lists."Brad King2017-09-051-9/+5
| | | | | | | | | | | | | | | | | | | | Revert commit v3.9.0-rc1~41^2 (FindBoost: Simplify search in lists, 2017-04-23). It regressed the module by exposing issue #17257, but the fix for that issue is not suitable for inclusion in a patch release. It is simplest to revert the commit until the larger problem can be addressed. Fixes: #17252
* | FindBoost: Add Boost 1.65 dependenciesRoger Leigh2017-08-221-3/+27
|/
* FindBoost: pop policy stack before returningCristian Adam2017-07-261-0/+2
| | | | | CMake would give a fatal error if the policy stack was cleaned up upon exiting the module.
* FindBoost: Simplify search in lists.Alex Turbov2017-05-261-6/+10
| | | | | | Instead of `list(FIND...)` and then checking result for `-1` (found/not-found), nowadays `if` command has the `IN_LIST` test for that.
* Boost Fiber actually require at least C++11.Alex Turbov2017-04-231-0/+34
| | | | | | | Some boost libraries may require particular set of compler features. The very first one was `boost::fiber` introduced in Boost 1.62. One can check required compiler features of it in `${Boost_ROOT}/libs/fiber/build/Jamfile.v2`.
* Merge topic 'FindBoost-fix-backslash-tolerance'Brad King2017-04-201-2/+3
|\ | | | | | | | | | | | | 2516bccd FindBoost: Restore tolerance of backslashes in paths Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !721
| * FindBoost: Restore tolerance of backslashes in pathsAlex Turbov2017-04-191-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.8.0-rc1~136^2 (FindBoost: Search official location of prebuilt binaries on Windows, 2016-12-21) we pass input paths through `_Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS` in more places than before. This broke tolerance of backslashes in paths provided by the user due to the macro argument re-parsing. Turn `_Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS` into a function instead of macro to avoid re-parsing of macro arguments. Fixes: #16816
* | FindBoost: Fix release name candidate list constructionyume todo2017-04-061-1/+1
| | | | | | | | | | | | | | | | Changes in commit 3ca6f70f (FindBoost: Allow testing for multiple compiler suffixes, 2017-03-28) accidentally left a `set()` instead of a `list(APPEND)` while constructing `_boost_RELEASE_NAMES`. Fix the logic to match what was done for `_boost_DEBUG_NAMES`. Otherwise we drop some of the candidate names.
* | Merge topic 'FindBoost-vs-toolset-fallback'Brad King2017-04-041-13/+41
|\ \ | |/ |/| | | | | | | | | | | 862482df FindBoost: Support prebuilt Windows binaries from SourceForge 3ca6f70f FindBoost: Allow testing for multiple compiler suffixes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !639
| * FindBoost: Support prebuilt Windows binaries from SourceForgeRoger Leigh2017-03-291-1/+11
| | | | | | | | | | This are searched for in the default installed location C:/local/boost_${ver}
| * FindBoost: Allow testing for multiple compiler suffixesRoger Leigh2017-03-291-12/+30
| | | | | | | | | | | | | | | | This is to permit VS2017 to make use of the vc141 suffix or fall back to the compatible vc140 to use Boost libraries built with VS2015. Fixes: #16631
| * Merge topic 'avoid-MSVC-per-version-vars'Brad King2017-03-231-1/+1
| |\ | | | | | | | | | | | | | | | | | | | | | | | | 9ab966a7 FindRuby: Use `MSVC_VERSION` instead of `MSVC##` 69b9fde1 FindGTK2: Use `MSVC_VERSION` instead of `MSVC##` 3fe31822 FindBoost: Avoid mentioning discouraged `MSVC##`` variable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !610
* | | FindBoost: Update 1.64 dependencies using 1.64 beta1Roger Leigh2017-03-301-0/+1
| | |
* | | Merge branch 'avoid-MSVC-per-version-vars' into releaseBrad King2017-03-231-1/+1
|\ \ \ | |/ / |/| / | |/
| * FindBoost: Avoid mentioning discouraged `MSVC##`` variableBrad King2017-03-231-1/+1
| |
* | FindBoost: Update support for 1.64Mateusz Łoskot2017-03-221-1/+1
| | | | | | | | | | Update the Boost library name mangling used for VS 2017 to match a change made to Boost upstream (vc1410 => vc141).
* | FindBoost: Add support for 1.64Mateusz Łoskot2017-03-201-3/+3
|/ | | | | | Update the module to enable finding components of Boost 1.64 (beta) from the upcoming release. Also update the Boost library name mangling used for VS 2017 to match a change made to Boost upstream (vc150 => vc1410).
* FindBoost: unset cache variables if the lib dir changesYves Frederix2017-01-301-1/+1
| | | | | | | | This fixes a regression introduced by commit v3.3.0-rc1~5^2~2 (FindBoost: Search for debug and release libraries separately, 2015-01-26). The `_Boost_CHANGE_LIBDIR` variable was split into `_Boost_CHANGE_LIBDIR_{DEBUG,RELEASE}` but one usage site was not updated.
* Merge topic 'FindBoost-1.63'Brad King2017-01-111-1/+16
|\ | | | | | | | | a9b93501 FindBoost: Add support for 1.63
| * FindBoost: Add support for 1.63Roger Leigh2017-01-101-1/+16
| |
* | FindBoost: Search official location of prebuilt binaries on WindowsAlex Turbov2017-01-101-10/+12
| | | | | | | | | | | | Make it possible to find Boost in the default install path (`c:\boost`) of an official prebuilt binaries installation even when `BOOST_ROOT` has not been specified.
* | Merge topic 'FindBoost-vs15'Brad King2016-12-091-2/+6
|\ \ | |/ | | | | | | c3b6b5ba FindBoost: Add support for VS 2017
| * FindBoost: Add support for VS 2017Vic Luo2016-12-081-2/+6
| |
* | FindBoost: Simplify library dir detection with cascading if/elseif/elseAlex Turbov2016-10-131-6/+4
| |
* | FindBoost: Minor style updatesAlex Turbov2016-10-131-2/+2
| |
* | FindBoost: Use list(INSERT) to simplify suffix list generationAlex Turbov2016-10-131-1/+1
| |
* | FindBoost: Use string(APPEND) in more casesAlex Turbov2016-10-131-4/+4
|/
* FindBoost: Add 1.62 and 1.62.0 as supported versionsRoger Leigh2016-10-031-1/+1
|
* Simplify CMake per-source license noticesBrad King2016-09-271-20/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.
* FindBoost: update to 1.62Tatsuyuki Ishi2016-09-251-0/+16
|
* Use string(APPEND) in ModulesDaniel Pfeifer2016-07-271-24/+24
| | | | | | | Automate with: find Modules -type f -print0 | xargs -0 perl -i -0pe \ 's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
* FindBoost: Add check headers for `zlib` and `bzip2`Alex Turbov2016-07-051-0/+4
| | | | | | | | | | | | | The official Windows builds of Boost have internal implementations for `zlib` and `bzip2` libraries used by Boost::iostreams library, e.g. * boost_bzip2-vc140-mt-1_59.lib * boost_zlib-vc140-mt-1_59.lib Add check headers for these so that users can specify them as components without any warnings. Reviewed-by: Roger Leigh <rleigh@dundee.ac.uk>
* FindBoost: Make imported targets fall back to `Release`Andreas Weis2016-06-201-7/+7
| | | | | | | | FindBoost only detects Debug and Release configurations. All other configurations will fall back to the configuration listed as the first entry in `IMPORTED_CONFIGURATIONS`. Switch the order so that `Release` is listed first, as this is a better fallback than `Debug` for the `RelWithDebInfo` and `MinSizeRel` configurations. See issue #16091.
* FindBoost: Search in official Windows prebuilt binary library directoryAlex Turbov2016-06-031-0/+34
| | | | | | | Avoid the need to specify `BOOST_LIBRARYDIR` along with `BOOST_ROOT` when using prebuilt binaries such as these: https://sourceforge.net/projects/boost/files/boost-binaries/
* FindBoost: Test `CMAKE_CXX_COMPILER_{ID,VERSION}` instead of `MSVC*`Alex Turbov2016-06-031-19/+22
|
* Merge topic 'boost-component-headers'Brad King2016-05-161-4/+84
|\ | | | | | | | | c2e8d515 FindBoost: Add checks for component-specific headers
| * FindBoost: Add checks for component-specific headersRoger Leigh2016-05-161-4/+84
| | | | | | | | | | | | | | | | | | | | This supplements the existing library checks, to cater for the possibility that the libraries are present but the headers are not. This can happen when the Boost collections is split up into multiple packages and not all are installed, and will avoid the checks silently passing when the build would subsequently fail.
* | FindBoost: Update dependencies for Boost 1.61Roger Leigh2016-05-131-1/+15
|/
* FindBoost: Fix Boost_NO_SYSTEM_PATHS to not consider environment (#15702)Brad King2016-05-021-2/+2
| | | | | | Previously we added only NO_CMAKE_SYSTEM_PATH to find command calls. Add NO_SYSTEM_ENVIRONMENT_PATH too so that paths found from system environment variables are not considered either.
* FindBoost: Define Boost::boost for all boost versionsRoger Leigh2016-04-191-2/+2
|
* FindBoost: Add support for IBM XL compilerErik Zenker2016-03-231-0/+2
|
* FindBoost: Tolerate missing indirect dependencies (#16013)Roger Leigh2016-03-151-2/+12
| | | | | | | | | Depending upon the configuration, certain components may or may not be installed, for example Boost.Regex, but other components may still have header dependencies upon these components which will obviously fail to work. Since we can't make a sensible determination with the hardcoded dependency information, we choose to interpret these dependencies less strictly.