Skip to content
Snippets Groups Projects
  1. Jul 22, 2015
    • Brad King's avatar
      Tests: Extend BuildDepends test to cover OBJECT_DEPENDS · 783c3757
      Brad King authored
      The actual file timestamp dependency is known to not work on
      Visual Studio or Xcode generators.  Tolerate such failure for
      these generators (Tests/CustomCommand already covers using
      OBJECT_DEPENDS to pull a custom command into a target, and
      that still works with these generators).
      783c3757
  2. Jul 21, 2015
  3. Jul 18, 2015
  4. Jul 17, 2015
  5. Jul 15, 2015
  6. Jul 14, 2015
  7. Jul 12, 2015
    • Stephen Kelly's avatar
      cmState: Restore renamed commands on cleanup. · d4f032b5
      Stephen Kelly authored
      Commit v3.3.0-rc1~196^2~7 (cmake: Simplify command clean up
      loop., 2015-04-12) introduced a bug that built-in commands which
      were renamed no longer had their original name restored when
      cleanup is performed between configure runs.  Check for that
      and restore the commands with their original name.
      
      Extend the complex test for this. That test is run by ctest with
      the --build-two-config command line option.
      d4f032b5
  8. Jul 09, 2015
  9. Jul 08, 2015
  10. Jul 07, 2015
  11. Jul 06, 2015
    • Brad King's avatar
      Add rudimentary support for the Apple Swift language with Xcode · bf112531
      Brad King authored
      Allow the `Swift` language to be enabled with the Xcode generator for
      Xcode >= 6.1.  Reject it on other generators and with older Xcode
      versions.  Since Apple is the only vendor implementing the language
      right now, the compiler id can be just `Apple`.
      bf112531
    • James Johnston's avatar
      ExternalProject: Added new USES_TERMINAL options · e4947639
      James Johnston authored and Brad King's avatar Brad King committed
      Added new USES_TERMINAL option to the ExternalProject_Add_Step
      function.  This option passes USES_TERMINAL to the underlying
      add_custom_command call so that the Ninja console pool is used.
      Also, corresponding new USES_TERMINAL_<step> options were added
      to the ExternalProject_Add function.
      
      Justification: if using Ninja with a CMake superbuild, it's often
      desirable to limit the superbuild to ONE sub-Ninja process at a
      time to avoid oversubscribing the CPU.  Using the console pool also
      makes it easy to monitor the progress of the sub-Ninja process.
      
      Independent USES_TERMINAL_<step> arguments are passed to
      ExternalProject_Add instead of one USES_TERMINAL argument that
      controls everything.  Users may wish to run some steps in parallel
      but not others (e.g. parallelize configure but not build).
      e4947639
    • Stephen Kelly's avatar
      cmMakefile: Create a scoped context for parsing listfiles. · 821f91d6
      Stephen Kelly authored and Brad King's avatar Brad King committed
      Update the Syntax tests to check for updated/improved backtraces.
      821f91d6
    • Bill Hoffman's avatar
      Windows: Optionally generate DLL module definition files automatically · 8f86407c
      Bill Hoffman authored and Brad King's avatar Brad King committed
      Create target property WINDOWS_EXPORT_ALL_SYMBOLS to automatically
      generate a module definition file from MS-compatible .obj files and give
      it to the linker in order to export all symbols from the .dll part of a
      SHARED library.
      8f86407c
    • Brad King's avatar
      Fortran: Fix passing of preprocessor definitions to dependency scanner · 0a203db5
      Brad King authored
      
      In commit v3.3.0-rc1~352^2~3 (Genex: Allow COMPILE_LANGUAGE when
      processing compile definitions, 2015-03-04) the name of the variable
      used to pass preprocessor definitions to the Fortran dependency scanner
      was changed to be per-language, but the actual dependency scanning code
      was not updated accordingly.  Update the code and add a test case.
      
      Reported-by: default avatarRadovan Bast <radovan.bast@gmail.com>
      0a203db5
    • Betsy McPhail's avatar
      CTest: Show the number of tests for each label in the summary · 42747fcc
      Betsy McPhail authored and Brad King's avatar Brad King committed
      42747fcc
  12. Jun 30, 2015
    • Betsy McPhail's avatar
      ctest: Optionally avoid starting tests that may exceed a given CPU load · f62d301b
      Betsy McPhail authored and Brad King's avatar Brad King committed
      Add a TestLoad setting to CTest that can be set via a new --test-load
      command-line option, CTEST_TEST_LOAD variable, or TEST_LOAD option to
      the ctest_test command.  Teach cmCTestMultiProcessHandler to measure
      the CPU load and avoid starting tests that may take more than the
      spare load currently available.  The expression
      
       <current_load> + <test_processors> <= <max-load>
      
      must be true to start a new test.
      
      Co-Author: Zack Galbreath <zack.galbreath@kitware.com>
      f62d301b
    • Brad King's avatar
      Tests: Teach RunCMake infrastructure to optionally timeout · dffc307c
      Brad King authored
      Add a RunCMake_TEST_TIMEOUT option that tests can set to cause RunCMake
      to limit the time it waits for the child process to finish.
      dffc307c
  13. Jun 29, 2015
  14. Jun 26, 2015
    • Brad King's avatar
      VS: Add /machine: flag to Librarian tool (#11240) · 806609c7
      Brad King authored
      If a Windows resource (.rc) source file is included in a STATIC library,
      the VS "link" tool will process the compiled ".res" file and needs to know
      the target architecture.  Without it, we may get a LNK4068 warning and
      possibly a LNK1112 error.  Add /machine: to the default static library
      flags to give the link tool the information it needs.
      806609c7
  15. Jun 25, 2015
    • Brad King's avatar
      cmTarget: Fix diagnostic of target_link_libraries in wrong directory (#15626) · 30c2e1dd
      Brad King authored
      Since commit v3.3.0-rc1~62^2~5 (cmTarget: Store only cmListFileContext
      for CMP0023 handling, 2015-05-18) a call to target_link_libraries on a
      target that was defined in another (non-ancestor) directory crashes
      because no execution context is left active.  Fix this by getting the
      execution context from the actual cmMakefile where the current
      target_link_libraries call takes place.  Test this by verifying that
      such calls correctly produce an error diagnostic instead of crashing.
      30c2e1dd
  16. Jun 24, 2015
  17. Jun 22, 2015
    • Brad King's avatar
      Fix assertion failure on unmatched function or macro · 5d85fb4f
      Brad King authored
      The fix in commit v3.2.3~3^2 (Fix assertion failure on unmatched foreach
      in function, 2015-05-18) broke handling of unmatched non-loop blocks
      because it assumed all function blockers removed during error unwinding
      were for loops, essentially switching the set of mishandled cases.
      
      The purpose of the loop block push/pop operations is to define a scope
      matching the lifetime of the loop function blockers.  Since our function
      blockers already have the proper lifetime, simply move the push/pop
      operations to their constructor/destructor.
      
      Extend the RunCMake.Syntax test with a case covering this.
      5d85fb4f
  18. Jun 21, 2015
  19. Jun 19, 2015
    • Brad King's avatar
      QtAutogen: Always run autogen step even when rcc is enabled (#15608) · 0e346427
      Brad King authored
      In commit v3.2.0-rc1~480^2 (QtAutogen: Regenerate qrc files if their input
      changes, 2014-09-17) the "cmake -E cmake_autogen" rule was switched from
      always running to running as a custom command with dependencies if rcc
      is enabled.  This is not correct because automoc always needs to re-run.
      Switch back to always running the command.
      0e346427
  20. Jun 18, 2015
    • Alex Turbov's avatar
      GNUInstallDirs: Add special cases for certain prefixes · c8bd37ec
      Alex Turbov authored and Brad King's avatar Brad King committed
      Teach the module to handle SYSCONFDIR and LOCALSTATEDIR properly if
      CMAKE_INSTALL_PREFIX is set to `/` or `/usr` -- i.e. as expected by GNU
      Coding Standard (i.e. set SYSCONFDIR to `/etc` and `LOCALSTATEDIR` to
      `/var`).  Also if CMAKE_INSTALL_PREFIX is set to /opt/pkg, `SYSCONFDIR`
      must be set to `/etc/opt/pkg` and `LOCALSTATEDIR` to `/var/opt/pkg`
      according to FHS.
      c8bd37ec
    • Brad King's avatar
      GNUInstallDirs: Add test cases · 5f30f175
      Brad King authored
      
      Add a RunCMake.GNUInstallDirs test with cases covering various install
      prefixes.  Hard-code the architecture information.  Tolerate all
      platform-specific LIBDIR values.
      
      Currently the root prefix is not handled well, but verify the current
      behavior in the test anyway.  This can be addressed with a future
      change.
      
      Inspired-by: default avatarAlex Turbov <i.zaufi@gmail.com>
      5f30f175
  21. Jun 15, 2015
    • Domen Vrankar's avatar
      Tests: Move RunCMake.CPackRPM case into RunCMake.CPack_RPM test · 5f61ed99
      Domen Vrankar authored and Brad King's avatar Brad King committed
      Move PARTIALLY_RELOCATABLE_WARNING test to the new common CPack test
      script structure to have all tests in one place as well as additional
      benefit of having some more checks done during test execution.
      5f61ed99
    • Domen Vrankar's avatar
      Tests: Add RunCMake tests for CPack{Deb,RPM} · e726fc02
      Domen Vrankar authored and Brad King's avatar Brad King committed
      Add script structure for easier addition of new CPack related tests.
      e726fc02
    • Bill Hoffman's avatar
      Add options to launch the compiler through tools like ccache or distcc · 698f7597
      Bill Hoffman authored and Brad King's avatar Brad King committed
      Create a <LANG>_COMPILER_LAUNCHER target property (initialized by a
      CMAKE_<LANG>_COMPILER_LAUNCHER variable) to specify a compiler launcher
      tool.  This will supersede the CMAKE_<LANG>_COMPILER_ARG1 approach to
      using such tools.  The old approach set CMAKE_<LANG>_COMPILER to the
      launcher tool while the new approach leaves this variable set to the
      actual compiler.
      
      Implement this property for Makefile and Ninja generators.  It cannot be
      implemented for VS or Xcode generators as the IDE build tools offer no
      such hooks.
      698f7597
  22. Jun 11, 2015
    • Brad King's avatar
      cmake: Fix --build <relative-dir> for VS generators (#15609) · 90ad087a
      Brad King authored
      The VS >= 10 generators need to parse the .sln file from the build
      directory to locate targets in subdirectories.  This occurs after we
      change the working directory to the build tree.  If a relative directory
      other than "." was given then we would change to it and also refer to
      the .sln file location with it.  Fix this by converting the build tree
      to a full path always.  This will also give a more informative error
      message when the directory does not exist.
      90ad087a
Loading