1. 25 Sep, 2015 1 commit
  2. 11 Sep, 2014 1 commit
  3. 18 Aug, 2014 1 commit
    • Brad King's avatar
      Check*: Add compatibility hack for old VXL code · 4ffec8f6
      Brad King authored
      The cleanup in commit 4f2fcce4 (Check*: Allow result variables to
      contain regex special characters, 2014-07-31) broke old VXL code that
      abuses the old "if(MATCHES)" implementation by using
      
        SET( ${VARIABLE} ${VARIABLE} )
      
      to reset a check result variable.  Add a compatibility hack to the
      CheckFunctionExists, CheckIncludeFileCXX, and CheckSymbolExists modules
      to re-run their checks when the result variable is set to its own name.
      Use STREQUAL instead of MATCHES so that special characters still work.
      4ffec8f6
  4. 31 Jul, 2014 1 commit
    • Brad King's avatar
      Check*: Allow result variables to contain regex special characters (#14923) · 4f2fcce4
      Brad King authored
      Prior to the existence of the if(DEFINED) condition, many of our Check
      modules implemented the condition with a hack that takes advantage of
      the auto-dereference behavior of the if() command to detect if a
      variable is defined.  The hack has the form:
      
       if("${VAR} MATCHES "^${VAR}$")
      
      where "${VAR}" is a macro argument reference.  However, this does not
      work when the variable named in the macro argument contains characters
      that have special meaning in regular expressions, such as '+'.  Run the
      command
      
       git grep -E 'if\("\$\{.*\}" MATCHES "\^\$\{.*\}\$"\)' -- Modules/Check*
      
      to identify lines with this problem.  Use if(NOT DEFINED) instead.
      4f2fcce4
  5. 29 Mar, 2014 1 commit
  6. 13 Nov, 2013 1 commit
  7. 15 Oct, 2013 1 commit
  8. 22 Feb, 2013 1 commit
    • Stephen Kelly's avatar
      Handle targets in the LINK_LIBRARIES of try_compile. · 236133e7
      Stephen Kelly authored
      Imported targets are re-exported so that they can be used by the
      try_compile generated code with target_link_libraries.
      
      This makes the use of the cmake_expand_imported_targets macro
      obsolete. The macro is not able to expand the generator expressions
      which may appear in the IMPORTED_LINK_INTERFACE_LIBRARIES content.
      Instead it just sees them as 'not a target'.
      236133e7
  9. 29 Sep, 2012 1 commit
  10. 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
      9db31162
    • 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
      77543bde
  11. 21 Feb, 2012 1 commit
    • Alexander Neundorf's avatar
      Check*.cmake: Expand imported targets in CMAKE_REQUIRED_LIBRARIES · 35c48e12
      Alexander Neundorf authored
      Add the function cmake_expand_imported_targets() to expand imported
      targets in a list of libraries into their on-disk file names for a
      particular configuration.  Adapt the implementation from KDE's
      HANDLE_IMPORTED_TARGETS_IN_CMAKE_REQUIRED_LIBRARIES which has been in
      use for over 2 years.  Call the function from all the Check*.cmake
      macros to handle imported targets named in CMAKE_REQUIRED_LIBRARIES.
      
      Alex
      35c48e12
  12. 16 Jan, 2012 1 commit
    • Rolf Eike Beer's avatar
      CheckSymbolExists: force the compiler to keep the referenced symbol · 813eca64
      Rolf Eike Beer authored
      Otherwise the compiler may optimize out the reference to the symbol as the
      previous version was not really using this. This leads to symbols that are
      only in a header but not in the given libraries to be reported as present.
      
      This came up on the first try to fix bug 11333 as "gcc -O3" would optimize
      out the reference to pthread_create() so the correct library the symbol is in
      was not detected.
      
      The new test code was suggested by Brad King.
      813eca64
  13. 22 Aug, 2011 1 commit
    • David Cole's avatar
      CheckSymbolExists: Use IMMEDIATE flag for configure_file (#11333) · 6b3993b0
      David Cole authored
      The test "complex" sets the variable CMAKE_BACKWARDS_COMPATIBILITY
      to 1.4. When that variable is set, configure_file does not default
      to IMMEDIATE mode processing. And so, the output file likely does
      not exist yet by the time the next line in the CMakeLists.txt file
      is processed. When that next line is "try_compile" on that file,
      this is a problem.
      
      Fix the problem by explicitly using IMMEDIATE in the configure_file
      call.
      
      This problem was quite mysterious, as it only showed up on the
      "complex" test, when the previous commit introduced a CheckSymbolExists
      call into the FindThreads module. Which is not even explicitly included
      in the "complex" test... FindThreads gets included indirectly only
      as a side effect of setting CMAKE_BACKWARDS_COMPATIBILITY to 1.4 and
      even then it's included indirectly by auto-inclusion of
      CMakeBackwardCompatibilityC.cmake...
      
      Wow. Just wow.
      6b3993b0
  14. 29 Jul, 2011 1 commit
  15. 28 Jul, 2011 1 commit
  16. 08 Jul, 2011 1 commit
  17. 17 Jan, 2011 1 commit
  18. 12 Jan, 2011 1 commit
  19. 09 Aug, 2010 1 commit
  20. 01 Oct, 2009 1 commit
  21. 28 Sep, 2009 1 commit
    • Brad King's avatar
      Convert CMake non-find modules to BSD License · 3a666595
      Brad King authored
      This adds copyright/license notification blocks CMake's non-find
      modules.  Most of the modules had no notices at all.  Some had notices
      referring to the BSD license already.  This commit normalizes existing
      notices and adds missing notices.
      3a666595
  22. 14 Jun, 2006 1 commit
  23. 23 Feb, 2006 1 commit
  24. 09 Feb, 2006 2 commits
  25. 12 Jan, 2006 1 commit
  26. 15 Dec, 2005 1 commit
  27. 14 Dec, 2005 1 commit
  28. 02 Nov, 2005 1 commit
  29. 29 Jul, 2005 1 commit
  30. 17 Jul, 2003 1 commit
  31. 11 Jul, 2003 1 commit
  32. 28 Mar, 2003 1 commit
  33. 16 Mar, 2003 1 commit
  34. 28 Feb, 2003 1 commit
  35. 17 Feb, 2003 1 commit
  36. 12 Jan, 2003 1 commit