1. 27 Sep, 2016 1 commit
    • Brad King's avatar
      Simplify CMake per-source license notices · 86578ecc
      Brad King authored
      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.
      86578ecc
  2. 27 Jul, 2016 1 commit
    • Daniel Pfeifer's avatar
      Use string(APPEND) in Modules · 5d0d980d
      Daniel Pfeifer authored
      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'
      5d0d980d
  3. 19 May, 2015 2 commits
    • Brad King's avatar
      CheckTypeSize: Do not use cmake_policy(VERSION) · a4596f20
      Brad King authored
      Do not force a specific policy version in the module because it prevents
      projects from setting newer policies to NEW.  In particular, projects
      may want to set CMP0056 to NEW to affect any try_compile calls in this
      module.
      
      Use of this was added in commit v2.8.2~539 (New CheckTypeSize for OS X
      Universal Binaries, 2009-12-17) and updated in commit v3.1.0-rc1~511^2~1
      (Do not change minimum required version in modules, 2014-05-07).  The
      history does not clearly explain why a specific policy version was
      introduced.  If specific policies need to be NEW then we can add
      explicit settings for them.
      a4596f20
    • Rolf Eike Beer's avatar
      CheckTypeSize: Avoid if() auto-dereferene in quoted arguments (#15571) · 6784f0a6
      Rolf Eike Beer authored
      Exposed by a CMP0054 warning.  Set CMP0054 to NEW since no code in this
      module depends on the old behavior.
      6784f0a6
  4. 11 Sep, 2014 1 commit
  5. 19 May, 2014 1 commit
    • Daniele E. Domenichelli's avatar
      Do not change minimum required version in modules · 81a3f228
      Daniele E. Domenichelli authored
      Some modules change CMake minimum required version when they are
      included. For example:
      
        cmake_minimum_required(VERSION 2.8.12)
        message("${CMAKE_MINIMUM_REQUIRED_VERSION}")
        include(CheckTypeSize)
        message("${CMAKE_MINIMUM_REQUIRED_VERSION}")
      
      will produce the following output:
      
        2.8.12
        2.6
      
      This patch ensures that when you include a CMake module the minimum
      required version and the policies set are left unchanged.
      
      Fixes Issue #14864
      81a3f228
  6. 14 Apr, 2014 1 commit
  7. 29 Mar, 2014 1 commit
  8. 15 Mar, 2014 1 commit
  9. 10 Jan, 2014 1 commit
  10. 21 Oct, 2013 1 commit
    • Daniele E. Domenichelli's avatar
      CheckTypeSize: Add support for C++ · 07a2342f
      Daniele E. Domenichelli authored
      Previously if headers required to check the size of a type can be
      compiled with C++ compiler only, the check would fail because the C
      compiler fails.  As a consequence, HAVE_${VARIABLE} would be set to
      false, and ${VARIABLE} will be empty.
      
      Teach CHECK_TYPE_SIZE to accept a new optional argument LANGUAGE
      that allows one to explicitly set the compiler to use.  The new
      signature is therefore:
      
         CHECK_TYPE_SIZE(TYPE VARIABLE [BUILTIN_TYPES_ONLY]
                                       [LANGUAGE <language>])
      07a2342f
  11. 15 Oct, 2013 1 commit
  12. 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
  13. 14 Aug, 2012 1 commit
  14. 13 Aug, 2012 1 commit
    • 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
  15. 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
  16. 09 Aug, 2010 1 commit
  17. 28 Jan, 2010 1 commit
  18. 17 Dec, 2009 1 commit
    • Brad King's avatar
      New CheckTypeSize for OS X Universal Binaries · c9b726c3
      Brad King authored
      We re-implement this module to support architecture-dependent type
      sizes.  In the mixed-size case we generate C preprocessor code to select
      the detected type size for each architecture.
      c9b726c3
  19. 01 Oct, 2009 1 commit
  20. 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
  21. 25 Apr, 2008 2 commits
  22. 10 Aug, 2007 1 commit
    • Alexander Neundorf's avatar
      · 578841cc
      Alexander Neundorf authored
      STYLE: remove unused CheckTypeSize.c.in
      ENH: change test for endianess from TRY_RUN() to TRY_COMPILE() by testing
      the binary image of a 16bit integer array, tested on Linux x86, Intel Mac
      and Sun (big endian)
      
      Alex
      578841cc
  23. 07 Jun, 2007 1 commit
    • Alexander Neundorf's avatar
      · b956fc24
      Alexander Neundorf authored
      STYLE: remove out commented code
      
      Alex
      b956fc24
  24. 04 Jun, 2007 1 commit
  25. 24 May, 2007 2 commits
    • Alexander Neundorf's avatar
      · c9aecb91
      Alexander Neundorf authored
      STYLE: remove debug output, fix indentation
      the tests run again successfully, but since CheckTypeSize will switch to a
      TRY_COMPILE soon I will look at it again after this change
      
      Alex
      c9aecb91
    • Alexander Neundorf's avatar
      · 504ea6df
      Alexander Neundorf authored
      COMP: try to fix the test failures on dash2
      
      Alex
      504ea6df
  26. 17 May, 2007 2 commits
    • Brad King's avatar
      58debfd6
    • Alexander Neundorf's avatar
      · 61d3444f
      Alexander Neundorf authored
      ENH: merge CMake-CrossCompileBasic to HEAD
      -add a RESULT_VARIABLE to INCLUDE()
      -add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
      -have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
      -use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
      run the executables if they have a different suffix because they are
      probably crosscompiled, but nevertheless it should be able to find them
      -make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
      -support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
      -move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
      -add support for stripping during install in cmake_install.cmake
      -split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
      -remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
      -create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
      -add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
      list of directories which will be prepended to all search directories, right
      now as a cmake variable, turning it into a global cmake property may need
      some more work
      -remove cmTestTestHandler::TryExecutable(), it's unused
      -split cmFileCommand::HandleInstall() into slightly smaller functions
      
      Alex
      61d3444f
  27. 14 Jun, 2006 1 commit
  28. 14 Feb, 2006 1 commit
  29. 22 Jan, 2006 1 commit
  30. 13 Jan, 2006 1 commit
  31. 12 Jan, 2006 2 commits
  32. 15 Dec, 2005 1 commit
  33. 14 Dec, 2005 1 commit
  34. 29 Jul, 2005 1 commit
  35. 05 Oct, 2004 1 commit