1. 19 Apr, 2016 1 commit
  2. 23 Mar, 2016 1 commit
  3. 15 Mar, 2016 1 commit
    • Roger Leigh's avatar
      FindBoost: Tolerate missing indirect dependencies (#16013) · e2f387fa
      Roger Leigh authored
      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.
  4. 22 Jan, 2016 1 commit
  5. 17 Dec, 2015 1 commit
  6. 02 Dec, 2015 3 commits
    • Roger Leigh's avatar
      FindBoost: Add imported targets · 3f9b081f
      Roger Leigh authored
      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
    • Roger Leigh's avatar
      FindBoost: Automatically add missing component dependencies · 01c80acd
      Roger Leigh authored
      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.
    • Roger Leigh's avatar
      FindBoost: Embed component dependency table · 5183c6e5
      Roger Leigh authored
      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.
  7. 14 Aug, 2015 1 commit
  8. 01 Jun, 2015 1 commit
  9. 20 Apr, 2015 1 commit
  10. 05 Feb, 2015 1 commit
  11. 13 Jan, 2015 1 commit
  12. 26 Oct, 2014 1 commit
  13. 06 Oct, 2014 1 commit
    • Nils Gladitz's avatar
      FindBoost: Avoid if() quoted auto-dereference · c9300464
      Nils Gladitz authored
      When testing CMAKE_CXX_COMPILER[_ID] values with if(MATCHES) or
      if(STREQUAL), do not explicitly dereference or quote the variable.
      We want if() to auto-dereference the variable and not its value.
  14. 25 Jun, 2014 1 commit
  15. 14 Apr, 2014 2 commits
  16. 25 Mar, 2014 1 commit
  17. 17 Feb, 2014 1 commit
    • Chuck Atkins's avatar
      FindBoost: Add suport for custom namespaces · 17485e37
      Chuck Atkins authored
      When building boost with an alternate namespace the libraries generated
      will have a different naming convention.  This is often done to ensure
      no symbol conflicts with external libraries built against a different
      version of boost.  If the namespace used is "myprivateboost::" instead
      of "boost::" then the libraries built will be named myprivateboost_foo
      instead of boost_foo.  Add an option to specify a custom namespace used
      to alter the library names that get searched for.
  18. 10 Feb, 2014 1 commit
    • Brad King's avatar
      FindBoost: Search next to MPI libraries for boost_mpi (#14739) · a22eeca3
      Brad King authored
      Some distributions place boost_mpi next to the MPI libraries against
      which it was built instead of next to the other Boost libraries.  If
      find_package(MPI) has already been run prior to find_package(Boost) then
      MPI_CXX_LIBRARIES or MPI_C_LIBRARIES may be set to the location of the
      MPI libraries.  Teach FindBoost.cmake to look there for boost_mpi and
      boost_mpi_python after looking next to the other Boost libraries but
      not consider the location to be Boost_LIBRARY_DIR.
  19. 08 Jan, 2014 1 commit
  20. 01 Nov, 2013 2 commits
  21. 15 Oct, 2013 1 commit
  22. 28 Jun, 2013 1 commit
  23. 20 Jun, 2013 1 commit
  24. 30 May, 2013 1 commit
    • Brad King's avatar
      FindBoost: Fix handling of \ in input paths (#14179) · 363825cd
      Brad King authored
      In commit 5b9149e0 (FindBoost: Overhaul caching and search repeat
      behavior, 2012-09-24) we refactored the internal library search to use a
      _Boost_FIND_LIBRARY macro to wrap around find_library calls.  However,
      CMake macros re-process escape sequences when evaluating calls inside
      the macro after substituting placeholders (a historical bug).  In order
      to avoid escape sequences, convert backslashes to forward slashes before
      passing arguments to the _Boost_FIND_LIBRARY macro.
  25. 07 May, 2013 1 commit
  26. 27 Sep, 2012 5 commits
    • Brad King's avatar
      FindBoost: Rewrite documentation · 04967824
      Brad King authored
      Write new documentation for this module.  Ensure that it formats
      correctly in "cmake --help-module FindBoost" output.  Show the basic
      form of calling find_package(Boost).  Document all result variables,
      input variables, and cache variables appropriately grouped together.
      Explain the search process and how it re-runs when changes are made.
      Explain the difference between finding headers/libraries versus finding
      a "Boost CMake" package configuraiton file.
      Drop the emphasis on Boost_ADDITIONAL_VERSIONS because the
      implementation should predict most future versions instead.
    • Brad King's avatar
      FindBoost: Refactor Boost_FOUND computation and version check · 4d92f6ca
      Brad King authored
      Construct an initial Boost_FOUND value immediately after searching for
      Boost_INCLUDE_DIR.  Base the result only on whether header files for the
      requested version were found.  Then after searching for component
      libraries update Boost_FOUND based on whether all requested components
      were found.
    • Brad King's avatar
      FindBoost: Construct a clean Boost_LIBRARIES value · 0100f88e
      Brad King authored
      Construct the value from scratch based on the component library list.
      Avoid accumulating values from repeated find_package(Boost) calls.
      If Boost is not found, Boost_LIBRARIES should be empty.
    • Brad King's avatar
      FindBoost: Overhaul caching and search repeat behavior · 5b9149e0
      Brad King authored
      Overhaul the implementation as follows:
      (1) Do not cache result variables such as Boost_VERSION,
      derived uniquely from other search results.  The user should not edit
      them anyway.
      (2) Add cache value Boost_LIBRARY_DIR to hold the single directory
      expected to contain all libraries.  Once one library is found, search
      only that directory for other libraries.
      (3) Use the find_library NAMES_PER_DIR option to consider all possible
      library names at the same time.
      (4) Collect all documented input and cache variables and detect when
      they have been changed by the user.  Discard prior search results that
      may have been influenced by the changes and search for them again.
      Environment variables are not expected to be persistent so use them only
      as hints and do not consider changes to them to be meaningful.
    • Brad King's avatar
      FindBoost: Use PATH_SUFFIXES to look in "Program Files" · 5ec8a69c
      Brad King authored
      The CMake find_path command looks under the proper "Program Files"
      directories on Windows with any of the provided PATH_SUFFIXES.  This is
      simpler and more robust than directly reading ENV{ProgramFiles}.  Once
      Boost_INCLUDE_DIR has been located we already look next to it for the lib
      directory anyway, so we do not need special help to find Boost libraries
      under "Program Files".
  27. 26 Sep, 2012 1 commit
  28. 25 Sep, 2012 1 commit
  29. 19 Aug, 2012 1 commit
    • Rolf Eike Beer's avatar
      read less from version headers into variables · 4be67837
      Rolf Eike Beer authored
      Instead of reading the whole file using file(READ) and later matching on the
      whole file use file(STRINGS ... REGEX) to get only those lines we are
      interested in at all. This will make the list much smaller (good for debugging)
      and also the regular expressions will need to match on much smaller strings.
      Also unset the content variables once they are not used anymore.
  30. 13 Aug, 2012 2 commits
    • Kitware Robot's avatar
      Remove CMake-language block-end command arguments · 9db31162
      Kitware Robot authored
      Ancient versions of CMake required else(), endif(), and similar block
      termination commands to have arguments matching the command starting the
      block.  This is no longer the preferred style.
      Run the following shell code:
      for c in else endif endforeach endfunction endmacro endwhile; do
          echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/'
      done >convert.sed &&
      git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
      egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
      egrep -z -v 'Tests/CMakeTests/While-Endwhile-' |
      xargs -0 sed -i -f convert.sed &&
      rm convert.sed
    • Kitware Robot's avatar
      Convert CMake-language commands to lower case · 77543bde
      Kitware Robot authored
      Ancient CMake versions required upper-case commands.  Later command
      names became case-insensitive.  Now the preferred style is lower-case.
      Run the following shell code:
      cmake --help-command-list |
      grep -v "cmake version" |
      while read c; do
          echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
      done >convert.sed &&
      git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
      egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
      xargs -0 sed -i -f convert.sed &&
      rm convert.sed
  31. 30 Jun, 2012 1 commit