1. 14 Jul, 2019 1 commit
  2. 10 Oct, 2018 1 commit
    • Kyle Edwards's avatar
      cmake_policy: Add undocumented GET_WARNING command · 0d988f98
      Kyle Edwards authored
      This command is intended for modules that issue policy warnings so
      they can get the warning string from CMake in a uniform manner,
      rather than duplicating the string. Several modules been updated
      to include an example of the usage of this new command.
      0d988f98
  3. 15 Sep, 2017 1 commit
    • Brad King's avatar
      Use C++11 override instead of CM_OVERRIDE · 0b33aee4
      Brad King authored
      We now require C++11 support including `override`.  Drop use of
      the old compatibility macro.  Convert references as follows:
      
          git grep -l CM_OVERRIDE -- '*.h' '*.hxx' '*.cxx' |
            xargs sed -i 's/CM_OVERRIDE/override/g'
      0b33aee4
  4. 26 Aug, 2017 1 commit
  5. 11 May, 2017 1 commit
  6. 08 May, 2017 1 commit
  7. 11 Apr, 2017 2 commits
    • Daniel Pfeifer's avatar
      Use quotes for non-system includes · 1d829c86
      Daniel Pfeifer authored
      Automate with:
      
      git grep -l '#include <cm_' -- Source \
        | xargs sed -i 's/#include <\(cm_.*\)>/#include "\1"/g'
      
      git grep -l '#include <cmsys/' -- Source \
        | xargs sed -i 's/#include <\(cmsys\/.*\)>/#include "\1"/g'
      
      git grep -l '#include <cm[A-Z]' -- Source \
        | xargs sed -i 's/#include <\(cm[A-Z].*\)>/#include "\1"/g'
      1d829c86
    • Daniel Pfeifer's avatar
      cmConfigure: Ensure separate include block in headers · 5afac50f
      Daniel Pfeifer authored
      Make sure that `#include <cmConfigure.h>` is followed by an empty line
      in header files.  This is necessary to make sure that changing <> to ""
      does not affect the include ordering of clang-format.
      
      Automate with:
      
      git grep -l '#include <cmConfigure.h>' | grep -v '.cxx$' \
      | xargs sed -i '/#include <cmConfigure.h>/ { N; N; s/\n\{1,2\}/\n\n/ }'
      5afac50f
  8. 26 Oct, 2016 1 commit
  9. 22 Oct, 2016 1 commit
  10. 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
  11. 27 Jun, 2016 1 commit
  12. 16 May, 2016 1 commit
    • Kitware Robot's avatar
      Revise C++ coding style using clang-format · d9fd2f54
      Kitware Robot authored
      Run the `Utilities/Scripts/clang-format.bash` script to update
      all our C++ code to a new style defined by `.clang-format`.
      Use `clang-format` version 3.8.
      
      * If you reached this commit for a line in `git blame`, re-run the blame
        operation starting at the parent of this commit to see older history
        for the content.
      
      * See the parent commit for instructions to rebase a change across this
        style transition commit.
      d9fd2f54
  13. 08 Mar, 2014 1 commit
  14. 16 Oct, 2013 1 commit
    • Brad King's avatar
      Drop builtin command documentation · e33d8d2d
      Brad King authored
      Drop all GetTerseDocumentation and GetFullDocumentation methods from
      commands.  The command documentation is now in Help/command/*.rst files.
      e33d8d2d
  15. 13 Aug, 2012 1 commit
    • Kitware Robot's avatar
      Remove trailing whitespace from most CMake and C/C++ code · 7bbaa428
      Kitware Robot authored
      Our Git commit hooks disallow modification or addition of lines with
      trailing whitespace.  Wipe out all remnants of trailing whitespace
      everywhere except third-party code.
      
      Run the following shell code:
      
      git ls-files -z -- \
       bootstrap doxygen.config '*.readme' \
       '*.c' '*.cmake' '*.cpp' '*.cxx' \
       '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \
       '*.mm' '*.pike' '*.py' '*.txt' '*.vim' |
      egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' |
      egrep -z -v '^(Modules/CPack\..*\.in)' |
      xargs -0 sed -i 's/ \+$//'
      7bbaa428
  16. 29 Feb, 2012 1 commit
  17. 04 Jan, 2011 1 commit
    • Brad King's avatar
      Allow users to specify defaults for unset policies · a364daf1
      Brad King authored
      Check CMAKE_POLICY_DEFAULT_CMP<NNNN> for a default when policy CMP<NNNN>
      would otherwise be left unset.  This allows users to set policies on the
      command line when the project does not set them.  One may do this to
      quiet warnings or test whether a project will build with new behavior
      without modifying code.  There may also be cases when users want to
      build an existing project release using new behavior for policies
      unknown to the project at the time of the release.
      a364daf1
  18. 23 Apr, 2010 1 commit
    • Brad King's avatar
      Teach CMake Policies about tweak version component · e49b6eca
      Brad King authored
      Add the [.tweak] version component throughout the policy implementation.
      Document all components for the cmake_policy(VERSION) command.  Record
      the tweak level in which each policy was introduced (0 for all current
      policies).  In generated documentation we report the tweak level only if
      it is not zero.  This preserves existing documentation.
      e49b6eca
  19. 01 Oct, 2009 1 commit
  20. 28 Sep, 2009 1 commit
    • Brad King's avatar
      Convert CMake to OSI-approved BSD License · 96afb120
      Brad King authored
      This converts the CMake license to a pure 3-clause OSI-approved BSD
      License.  We drop the previous license clause requiring modified
      versions to be plainly marked.  We also update the CMake copyright to
      cover the full development time range.
      96afb120
  21. 06 Feb, 2009 1 commit
  22. 22 Jan, 2009 3 commits
    • Brad King's avatar
      ENH: Isolate policy changes in included scripts · c332e0bf
      Brad King authored
      Isolation of policy changes inside scripts is important for protecting
      the including context.  This teaches include() and find_package() to
      imply a cmake_policy(PUSH) and cmake_policy(POP) around the scripts they
      load, with a NO_POLICY_SCOPE option to disable the behavior.  This also
      creates CMake Policy CMP0011 to provide compatibility.  See issue #8192.
      c332e0bf
    • Brad King's avatar
      ENH: Better policies for functions and macros · 3028ca75
      Brad King authored
      This teaches functions and macros to use policies recorded at creation
      time when they are invoked.  It restores the policies as a weak policy
      stack entry so that any policies set by a function escape to its caller
      as before.
      3028ca75
    • Brad King's avatar
      ENH: Improve stack discussion in cmake_policy · 18eadebc
      Brad King authored
      This re-organizes the discussion of the policy stack in documentation of
      the cmake_policy() command.  The new organization clearer and easier to
      extend with new information.
      18eadebc
  23. 18 Aug, 2008 1 commit
    • Brad King's avatar
      ENH: Add cmake_policy(GET) command mode · 7f7068e9
      Brad King authored
      It is likely that projects or CMake modules in the future will need to
      check the value of a policy setting.  For example, if we add a policy
      that affects the results of FindXYZ.cmake modules, the module code will
      need to be able to check the policy.
      7f7068e9
  24. 17 Mar, 2008 1 commit
    • Brad King's avatar
      ENH: Improve documentation of cmake_policy command. · 1c0e1702
      Brad King authored
        - Add a paragraph introducing the policy mechanism
        - Explicitly introduce the CMP<NNNN>, OLD, and NEW notation
        - Note that setting policies by CMake version is preferred
        - Fix SET signature to use CMP<NNNN> notation
        - Add more details about the policy stack
      1c0e1702
  25. 13 Mar, 2008 1 commit
  26. 07 Mar, 2008 1 commit
    • Brad King's avatar
      ENH: Improve handling of old-style compatibility. · 5233b75a
      Brad King authored
        - Remove CMP_0001 (no slash in target name) and restore
          old CMAKE_BACKWARDS_COMPATIBILITY check for it
        - Replace all checks of CMAKE_BACKWARDS_COMPATIBILITY
          with cmLocalGenerator::NeedBackwardsCompatibility calls
        - Create new CMP_0001 to determine whether or not
          CMAKE_BACKWARDS_COMPATIBILITY is used.
          (old = use, new = ignore)
        - Show CMAKE_BACKWARDS_COMPATIBILITY in cache only when
          CMP_0001 is set to OLD or WARN
        - Update documentation of cmake_policy and cmake_minimum_required
          to indicate their relationship and the 2.4 version boundary
        - When no cmake policy version is set in top level makefile
          implicitly call cmake_policy(VERSION 2.4) which restores
          CMAKE_BACKWARDS_COMPATIBILITY and other 2.4 compatibility
        - Fix tests MakeClean and Preprocess to call
          cmake_policy(VERSION 2.6) because they depend on new policies
      5233b75a
  27. 05 Mar, 2008 1 commit
  28. 29 Feb, 2008 1 commit