1. 11 Jul, 2018 1 commit
  2. 02 Jul, 2018 1 commit
  3. 27 Jun, 2018 1 commit
  4. 06 Jun, 2018 1 commit
    • Marc Chevrier's avatar
      LINK_OPTIONS: Add new family of properties · c1f5a44b
      Marc Chevrier authored
      This family enable to manage link flags
      Three new properties:
      * directory property: LINK_OPTIONS
      * target properties: LINK_OPTIONS and INTERFACE_LINK_OPTIONS
      Two new commands
      * add_link_options(): to populate directory property
      * target_link_options(): to populate target properties
      Fixes: #16543
  5. 01 Jun, 2018 1 commit
    • Kitware Robot's avatar
      Revise C++ coding style using clang-format-6.0 · d7204e64
      Kitware Robot authored and Brad King's avatar Brad King committed
      Run the `clang-format.bash` script to update all our C and C++ code to a
      new style defined by `.clang-format`.  Use `clang-format` version 6.0.
      * 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.
  6. 05 Apr, 2018 3 commits
  7. 12 Mar, 2018 1 commit
    • Brad King's avatar
      Genex: Fix COMPILE_LANGUAGE in SYSTEM include directories · 2deb9b7f
      Brad King authored
      When evaluating `INTERFACE_SYSTEM_INCLUDE_DIRECTORIES`, or evaluating
      `INTERFACE_INCLUDE_DIRECTORIES` on an imported target, thread the
      compile language through to the generator expression evaluator so
      that it can support `$<COMPILE_LANGUAGE:...>`.
      Fixes: #17811
  8. 30 Aug, 2017 1 commit
  9. 26 Aug, 2017 1 commit
  10. 24 Aug, 2017 1 commit
  11. 10 Aug, 2017 1 commit
    • Sebastian Holtermann's avatar
      Autogen: Clear sources meta data cache · 952fc65d
      Sebastian Holtermann authored
      Adds cmGeneratorTarget::clearSourcesCache() which clears the cache
      of precomputed sources lists and object names. The cache gets
      recomputed on demand.
      Clearing the cache is necessary in case an OBJECT library
      gets a source added after a target (ORIGIN) that includes it
      computed it's external sources cache.
      This may happen in AUTOMOC when ORIGIN is processed before the
      OBJECT library which gets a mocs_compilation.cpp file added.
      Closes #17152
      Closes #17139
      Closes #17085
      Closes #15967
  12. 14 Jul, 2017 1 commit
    • Brad King's avatar
      Diagnose object library self-reference · d89e10cd
      Brad King authored
      The code
          add_library(A OBJECT a.c)
          target_sources(A PRIVATE $<TARGET_OBJECTS:A>)
      used to crash CMake via infinite recursion while evaluating the
      generator expression.  Then the change in commit v3.9.0-rc1~266^2~1
      (cmGeneratorTarget: Replace source classifier implementation,
      2017-04-07) avoided the infinite recursion because GetKindedSources now
      creates a map entry and initializes it once.  If it is called again on
      the same target during that initialization, the partially computed
      results are returned.  This is still wrong but does not crash.
      Detect and diagnose this case instead.
      Co-Author: Ben Boeckel <ben.boeckel@kitware.com>
      Fixes: #16578
  13. 14 Jun, 2017 1 commit
    • Brad King's avatar
      IPO: Consider support for each language separately · ba247cca
      Brad King authored
      We only define `INTERPROCEDURAL_OPTIMIZATION` behavior for C, CXX, and
      Fortran languages.  Do not try to enable support for other languages.
      Furthermore, each language builds with a different compiler, so check
      for support by CMake and the compiler for each language independently.
      Fixes: #16944
  14. 01 May, 2017 1 commit
    • Brad King's avatar
      Features: Refactor <LANG>_STANDARD update · b115bc49
      Brad King authored
      In order to support generator expressions in target COMPILE_FEATURES
      we apply them at generate time.  Move this step to the beginning of
      generation instead of doing it on demand while collecting flags.
      This avoids repeating the process unnecessarily, and will then allow
      `cmLocalGenerator::AddCompilerRequirementFlag` to be used any time
      during generation.
  15. 24 Apr, 2017 1 commit
  16. 21 Apr, 2017 1 commit
  17. 20 Apr, 2017 2 commits
  18. 18 Apr, 2017 2 commits
  19. 17 Apr, 2017 1 commit
  20. 13 Apr, 2017 2 commits
    • Brad King's avatar
      cmGeneratorTarget: Drop obj libs from GetConfigCommonSourceFiles · ca697bfc
      Brad King authored
      Call sites such as those in the VS global generator that are used only
      to reject per-config sources will now allow per-config object library
      objects.  The corresponding generators have already been taught to deal
      with per-config object library files.  Remaining call sites do not need
      object library files anyway.
      This will later allow `$<TARGET_OBJECTS:...>` generator expressions to
      evaluate to values that vary by configuration (e.g. because each
      configuration has its own object files).
    • Brad King's avatar
      cmGeneratorTarget: Add method to collect all sources for all configs · 40aa6c05
      Brad King authored
      Multi-config generators like VS and Xcode need to loop over all the
      source files first and then handle per-config information within
      each one.  Teach cmGeneratorTarget to provide such a view.
  21. 12 Apr, 2017 1 commit
  22. 11 Apr, 2017 2 commits
  23. 07 Apr, 2017 1 commit
  24. 30 Mar, 2017 5 commits
  25. 22 Mar, 2017 1 commit
  26. 21 Mar, 2017 1 commit
    • Brad King's avatar
      Support WINDOWS_EXPORT_ALL_SYMBOLS with `.def` files · 075f6454
      Brad King authored
      The `WINDOWS_EXPORT_ALL_SYMBOLS` target property exports all symbols
      found in object files explicitly given to the linker.  However, the
      linker may also find additional symbols in dependencies and copy them
      into the linked binary (e.g. from `msvcrt.lib`).  Provide a way to
      export an explicit list of such symbols by adding a `.def` file as a
      source file.
      Fixes: #16473
  27. 09 Mar, 2017 3 commits
  28. 27 Feb, 2017 1 commit