1. 25 Mar, 2020 2 commits
  2. 23 Mar, 2020 1 commit
  3. 20 Jan, 2020 1 commit
  4. 09 Jan, 2020 1 commit
  5. 13 Nov, 2019 1 commit
  6. 19 Dec, 2018 1 commit
  7. 11 Nov, 2018 1 commit
  8. 22 May, 2017 1 commit
  9. 17 May, 2017 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. 09 Sep, 2015 1 commit
  12. 08 Jun, 2015 1 commit
  13. 11 May, 2015 1 commit
    • Brad King's avatar
      RC: Do not override MinGW Makefiles generator preference · cf8ce7a3
      Brad King authored
      Update logic added in commit 957c2aac (RC: Simplify selection of
      resource compiler based on C/C++ toolchain, 2015-05-07) to avoid
      overriding CMAKE_GENERATOR_RC.  The MinGW and MSYS Makefiles
      generators use it to select a windres next to the compiler even
      if it is not in the PATH.
      cf8ce7a3
  14. 07 May, 2015 1 commit
    • Brad King's avatar
      RC: Simplify selection of resource compiler based on C/C++ toolchain · 957c2aac
      Brad King authored
      Revert the refactoring by commit v2.8.11~105^2~1 (Ninja: use MinGW
      generator code in EnableLanguage, 2013-03-09) and move the MinGW-
      specific logic back to the "MinGW Makefiles" generator.  Instead teach
      the platform information modules for GNU and MSVC on Windows to set the
      preferred RC compiler just before enabling the RC language.  This way
      we choose the RC compiler based on the C/C++ toolchain that is actually
      enabled.
      957c2aac
  15. 25 Feb, 2015 1 commit
    • Brad King's avatar
      RC: Enable language after C, CXX, or Fortran is enabled (#15404) · 4300de3e
      Brad King authored
      The RC language is special in that it is automatically enabled
      on Windows-based platforms when another primary language is
      enabled.  Move enablement of RC from early in the enablement
      of the other language to late.  This will allow it to use
      information detected as part of enabling C, CXX, or Fortran.
      4300de3e
  16. 18 Feb, 2015 1 commit
  17. 27 May, 2014 1 commit
    • Brad King's avatar
      GNUtoMS: Add support for VS 2013 (#14936) · 668e571d
      Brad King authored
      Add to the Platform/Windows-GNU module list of VS registry entries those
      for VS 2013.  Also add the name "vcvars64.bat" used by VS 10 and above
      for 64-bit tools.
      668e571d
  18. 15 Apr, 2014 1 commit
  19. 14 Apr, 2014 1 commit
    • Brad King's avatar
      Windows-GNU: Support duplicate object names in large archives (#14874) · 39d0ade0
      Brad King authored
      Since commit v2.6.0~388 (Added build rule variables
      CMAKE_<LANG>_ARCHIVE_..., 2008-01-29) we use separate "ar cr ..." and
      "ar r ..." steps to incrementally add a large list of object files to an
      archive.  Since the "r" command replaces existing objects of the same
      name in an archive, if multiple objects have the same file name and
      appear in separate append steps then one overwrites the other.  Instead,
      use "ar cq ..." and "ar q ..." to always append to the archive.
      
      We already remove the archive before creating it so this will not cause
      objects to be appended to existing archives on incremental rebuilds.
      39d0ade0
  20. 05 Mar, 2014 1 commit
  21. 27 Aug, 2012 1 commit
  22. 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
  23. 11 Jul, 2012 1 commit
  24. 12 Jun, 2012 1 commit
    • Stephen Kelly's avatar
      Add platform variables for position independent code flags · 31d7a0f2
      Stephen Kelly authored
      Store in new platform variables
      
        CMAKE_${lang}_COMPILE_OPTIONS_PIC
        CMAKE_${lang}_COMPILE_OPTIONS_PIE
      
      flags for position independent code generation.
      
      In almost all cases, this means duplication of the
      CMAKE_SHARED_LIBRARY_${lang}_FLAGS for the _PIC case and using the
      assumed pie equivalent for the _PIE case.  Note that the GNU compiler
      has supported -fPIE since 3.4 and that there is no -fPIC on GNU for
      Windows or Cygwin.
      
      There is a possibility that the _PIE variables are not correct.
      However, as there is no backwards compatibility to be concerned about
      (as the POSITION_INDEPENDENT_CODE property is not used anywhere yet),
      the current state suffices.
      31d7a0f2
  25. 08 Dec, 2011 1 commit
  26. 05 Dec, 2011 1 commit
    • Brad King's avatar
      Add CMAKE_GNUtoMS option to convert GNU .dll.a to MS .lib · afb00fef
      Brad King authored
      Teach the Windows-GNU.cmake platform file to look for Visual Studio
      tools matching the target ABI.  Add an extra step to the link command
      for shared libraries and executables that export symbols and on which a
      new GNUtoMS property is set (initialized by the CMAKE_GNUtoMS option).
      Tell the GNU linker to output a module definition (.def) file listing
      exported symbols in addition to the GNU-format import library (.dll.a).
      Pass the .def file to the MS "lib" tool to construct a MS-format DLL
      import library (.lib).
      
      Teach the install(TARGETS) command to install the MS import library next
      to the GNU one.  Teach the install(EXPORT) and export() command to set
      the IMPORTED_IMPLIB property pointing at the import library to use the
      import library matching the tools in the importing project.
      afb00fef
  27. 17 Mar, 2011 1 commit
    • Brad King's avatar
      Pass include directories with response files to GNU on Windows · 86cb17b1
      Brad King authored
      The GNU 4.x toolchain on MinGW (and therefore MSYS) allows compiler
      options to be passed via response files.  Use this to pass include
      directory -I options.  This allows the include file search path to be
      very long despite shell and mingw32-make command line length limits.
      86cb17b1
  28. 23 Feb, 2011 1 commit
    • Brad King's avatar
      Pass .def files directly to MinGW tools (#9997) · 76162164
      Brad King authored
      Commit 6a61a8a5 (Honor module .def files with MinGW tools, 2011-02-21)
      set CMAKE_LINK_DEF_FILE_FLAG to "-Wl," to enable passing .def files to
      the linker on MinGW.  However, older GNU tools in the MSYS shell do not
      know how to translate "-Wl,/c/..." to "c:/..." and complain that the
      file does not exist.  Instead set the flag to just "" which tells CMake
      it can pass the file through the front-end with no special flag.
      76162164
  29. 21 Feb, 2011 1 commit
    • Brad King's avatar
      Honor module .def files with MinGW tools (#9997) · 6a61a8a5
      Brad King authored
      Since commit 024d05ad (Fix use of module .def files for MS tools,
      2009-09-29) module .def files work for any platform that sets
      CMAKE_LINK_DEF_FILE_FLAG correctly.  Set it in the Windows-GNU platform
      information file to enable support with MinGW tools.  Also enable the
      test added by commit 0db2c850 (Test use of module .def files for MS
      tools, 2009-09-29) for MinGW and MSYS generators.
      6a61a8a5
  30. 23 Dec, 2010 1 commit
  31. 17 Sep, 2010 1 commit
    • Brad King's avatar
      MinGW: Support long object file lists · 5f05a3c2
      Brad King authored
      Use a combination of response files and the archiver to support long
      object file lists that do not fit in the Windows command-line length
      limit.  This can work only with GCC >= 4 because the MinGW GCC 3.x
      front-ends do not support response-file syntax.
      5f05a3c2
  32. 09 Aug, 2010 1 commit
  33. 06 Aug, 2010 1 commit
  34. 11 Mar, 2010 1 commit
  35. 05 Mar, 2010 1 commit
    • Brad King's avatar
      CMake 2.8.1-rc4 · 6dde1543
      Brad King authored
      This commit cherry-picks and squashes the following commits:
      
        46858720 "FortranCInterface: Fix PathScale detection..." (2010-02-16)
        b39fe940 "Fix problem with ExternalProject test..." (2010-02-17)
        70290e1f "Add support for QtDeclartive module" (2010-02-17)
        282ba895 "Clarify CMAKE_MODULE_PATH documentation" (2010-02-18)
        4eba05de "Suppress GNU flag -fPIC on Windows" (2010-02-19)
        57efb4a4 "BUG: We shouldn't be setting the HideWindow..." (2010-02-19)
      6dde1543
  36. 19 Feb, 2010 1 commit
    • Brad King's avatar
      Suppress GNU flag -fPIC on Windows · 4eba05de
      Brad King authored
      Commit "Modernize GNU compiler info on Windows" (2009-12-02) reorganized
      GNU flags on Windows but let -fPIC slip through for compilation of
      objects in shared libraries.  While this flag is valid on most GNU
      compiler platforms we need to suppress it in Windows-GNU.cmake just as
      we already do in CYGWIN-GNU.cmake.
      4eba05de
  37. 28 Jan, 2010 1 commit
  38. 02 Dec, 2009 1 commit
    • Brad King's avatar
      Modernize GNU compiler info on Windows · aff31479
      Brad King authored
      This moves GNU compiler info on Windows into new-style modules
      
        Platform/Windows-GNU-<lang>.cmake
      
      using language-independent helper module
      
        Platform/Windows-GNU.cmake
      
      to define macros consolidating the information.
      aff31479