1. 18 Feb, 2013 3 commits
    • Brad King's avatar
      Tests/RunCMake: Allow tests to control build tree behavior · c307e1c9
      Brad King authored
      Teach the run_cmake to allow tests to set a custom test build directory.
      Also add an option to skip removing the build directory.
    • Brad King's avatar
    • Brad King's avatar
      Delete entire CMakeFiles directory when deleting CMakeCache.txt (#13756) · 1df09e57
      Brad King authored
      Since commit e015df7d (...delete CMakeFiles directory when cache is
      deleted, 2006-02-20) we deleted the files in the CMakeFiles directory
      when deleting CMakeCache.txt in order to reset the build tree to a fresh
      state.  This allowed commit fd33bf93 (fix for bug 6102, allow users to
      change the compiler, 2007-12-13) to delete CMakeCache.txt when the user
      changes the compiler and CMakeFiles/CMake<lang>Compiler.cmake and other
      platform information files would go with it to allow a fresh start.
      Then commit 7195aca5 (Make platform information files specific to the
      CMake version, 2012-08-24) moved the platform information files to a
      subdirectory e.g. CMakeFiles/<version>/CMake<lang>Compiler.cmake where
      <version> is the current CMake version.  This causes the compiler change
      logic to fail to remove all old compiler information.  Then on the next
      configuration CMake<lang>Compiler.cmake would set CMAKE_<lang>_COMPILER
      back to the old value and re-trigger the compiler change logic.  This
      causes an infinite loop of cache deletion and compiler reset.
      Fix this simply by teaching cmCacheManager::DeleteCache to remove the
      entire CMakeFiles directory recursively whenever it removes an existing
      CMakeCache.txt.  This fully resets the build tree to configure with a
      fresh compiler.
  2. 08 Feb, 2013 8 commits
  3. 07 Feb, 2013 13 commits
    • Brad King's avatar
      MSVC: Fix CMAKE_CL_64 in CXX-only projects (#13896) · fe664b5d
      Brad King authored
      When CXX is enabled without C then MSVC_CXX_ARCHITECTURE_ID is set
      instead but not MSVC_C_ARCHITECTURE_ID.  Test both.
    • Brad King's avatar
      Tests: Add generator toolset support · 56ca8d4e
      Brad King authored
      Propagate CMAKE_GENERATOR_TOOLSET through the test hierarchy so that all
      tests can build with the selected generator toolset, if any.
    • Brad King's avatar
      Tests: Consolidate ctest --build-and-test generator options · f36c665d
      Brad King authored
      All ctest --build-and-test invocations require the options
        --build-generator ${CMAKE_GENERATOR}
        --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
      to be passed and have consistent values, except for a few special cases.
      Collect the generator options in a variable instead of repeating the
      options everywhere explicitly.
    • Brad King's avatar
      Merge branch 'master' into generator-toolset · c0debb1f
      Brad King authored
      We need the latest Tests/CMakeLists.txt so we can refactor all tests.
    • Brad King's avatar
      ExternalProject: Propagate the generator toolset · daae0d2f
      Brad King authored
      When the CMAKE_GENERATOR option is given to ExternalProject_Add, look
      also for option CMAKE_GENERATOR_TOOLSET to select the value of the cmake
      "-T" command-line flag.  When no CMAKE_GENERATOR option is given
      explicitly then use the current project's CMAKE_GENERATOR_TOOLSET (since
      we already use its CMAKE_GENERATOR).
    • Brad King's avatar
      CTest: Add options to set generator toolset · e3841cf4
      Brad King authored
      The ctest_configure command already reads the CTEST_CMAKE_GENERATOR
      variable to get the value for the cmake -G option.  Read new variable
      The "ctest --build-and-test" mode already has "--build-generator" to
      specify the -G option to CMake.  Add a "--build-generator-toolset" option
      to specify the -T value.
    • Brad King's avatar
      Xcode: Implement generator toolset selection (#9831, #13802) · f980a804
      Brad King authored
      Implement generator toolset selection (cmake -T) for Xcode > 2.0 by
      adding the GCC_VERSION build setting to project files.
    • Brad King's avatar
      VS: Implement generator toolset selection (#10722, #13774) · 650c6471
      Brad King authored
      Implement generator toolset selection (cmake -T) for VS >= 10 by setting
      the PlatformToolset.  Extend the RunCMake.GeneratorToolset test case to
      verify CMAKE_GENERATOR_TOOLSET when the generator supports -T.
      Since commit 485a940e (VS: Simplify MSVC version reporting, 2012-08-23)
      all MSVC version information is detected during the compiler id step
      from the actual compiler invoked by generated build systems rather than
      hard-coded in VS generators.  Therefore we can set the PlatformToolset
      in VS >= 10 project files and support toolsets from other VS versions.
    • Brad King's avatar
      CMake: Add -T option to choose a generator toolset · 4fd53429
      Brad King authored
      Reject the option by default.  It will be implemented on a per-generator
      basis.  Pass the setting into try_compile project generation.  Add cache
      entry CMAKE_GENERATOR_TOOLSET and associated variable documentation to
      hold the value persistently.
      Add a RunCMake.GeneratorToolset test to cover basic "-T" option cases.
      Verify that CMAKE_GENERATOR_TOOLSET is empty without -T, that -T is
      rejected when the generator doesn't support it, and that two -T options
      are always rejected.
    • Brad King's avatar
      Fail early if no current working directory exists · a943b5c4
      Brad King authored
      Remove the old "nocwd" behavior that attempts to provide the "--help"
      output when no working directory is available.  The long help output
      scrolls the real error message out of typical terminal sizes.  Also
      execute as little code as possible when no working directory exists.
    • Brad King's avatar
    • Kitware Robot's avatar
      KWSys 2013-02-05 (5c34ed2e) · 9d66f743
      Kitware Robot authored
      Extract upstream KWSys using the following shell commands.
      $ git archive --prefix=upstream-kwsys/ 5c34ed2e | tar x
      $ git shortlog --no-merges --abbrev=8 --format='%h %s' 5b0d1bd9..5c34ed2e
      Brad King (1):
            5c34ed2e SystemTools: Do not abort with no current directory
      Change-Id: Id054017eac2bf10c71ca721df48298cdff2bea82
    • Kitware Robot's avatar
      CMake Nightly Date Stamp · bc75f4c4
      Kitware Robot authored
  4. 06 Feb, 2013 3 commits
  5. 05 Feb, 2013 12 commits
  6. 04 Feb, 2013 1 commit
    • Patrick Gansterer's avatar
      Ninja: Avoid LNK1170 linker error · a55d5ca4
      Patrick Gansterer authored
      link.exe has problems with very very long lines in rsp files too.
      Use $in_newline instead of $in variable for rspcontent which
      separates the arguments with a newline instead of a simple space
      and was specially made for this purpose.