summaryrefslogtreecommitdiffstats
path: root/Modules/FindBoost.cmake
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* FindBoost: Add support for Boost 1.61Sergei Nikulov2016-01-221-2/+2
|
* FindBoost: Add support for Boost 1.60Roger Leigh2015-12-171-1/+15
|
* FindBoost: Add imported targetsRoger Leigh2015-12-021-0/+122
| | | | | | | | | | Targets include: - Boost::boost: Target for header-only dependencies - Boost::<C>: Target for specific component dependency - Boost::diagnostic_definitions: adds BOOST_LIB_DIAGNOSTIC - Boost::disable_autolinking: adds BOOST_ALL_NO_LIB - Boost::dynamic_linking: adds BOOST_ALL_DYN_LINK
* FindBoost: Automatically add missing component dependenciesRoger Leigh2015-12-021-0/+43
| | | | | | | | | The function _Boost_MISSING_DEPENDENCIES will look at the user-supplied component list, check the dependency information for each component using _Boost_COMPONENT_DEPENDENCIES, and will add any missing dependencies to the component list. This ensures that all required components will be searched for.
* FindBoost: Embed component dependency tableRoger Leigh2015-12-021-0/+221
| | | | | | | The function _Boost_COMPONENT_DEPENDENCIES is used to query the library dependencies for a given component for a given version of Boost. This covers Boost releases from 1.33 to 1.59, using the information generated by Utilities/Scripts/BoostScanDeps.cmake.
* FindBoost: Add support for Boost 1.59Roger Leigh2015-08-141-2/+4
|
* Merge topic 'FindBoost-per-config-libraries'Brad King2015-06-021-0/+2
|\ | | | | | | | | b3df1e9f FindBoost: Fix Boost_LIBRARY_DIR_{RELEASE,DEBUG} cache entry configuration
| * FindBoost: Fix Boost_LIBRARY_DIR_{RELEASE,DEBUG} cache entry configurationBrad King2015-06-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | These cache entries introduced by commit 892b854f (FindBoost: Search for debug and release libraries separately, 2015-01-26) should be marked as advanced just as Boost_LIBRARY_DIR was. Also their _LAST values should be tracked so changes can be detected reliably. Both of these are handled by code looking in _Boost_VARS_LIB for a list of relevant variables. Fix construction of this list that was broken by the above commit. Reported-by: Sylvain Joubert <joubert.sy@gmail.com>
* | Add a 'Green Hills MULTI' generator on WindowsGeoff Viola2015-04-201-1/+4
|/ | | | | | | | | | | | Green Hills MULTI is an IDE for embedded real-time systems. The IDE's product page can be found here: http://www.ghs.com/products/MULTI_IDE.html It supports cross compiling on ARM, Intel x86, and other architectures with various operating systems. The IDE exists on Linux and Windows host systems, but CMake will currently only generate the project files on Windows host systems.
* FindBoost: Search for debug and release libraries separately (#15364)Gunther Laure2015-02-051-49/+107
| | | | | Split Boost_LIBRARY_DIR into Boost_LIBRARY_DIR_[RELEASE,DEBUG] to allow libraries to be grouped into per-config directories.