1. 18 Jul, 2014 1 commit
  2. 17 Jul, 2014 5 commits
  3. 16 Jul, 2014 17 commits
    • Brad King's avatar
      10c5c82c
    • Brad King's avatar
      cmTarget: Cache compatible interface property sets · c45dd669
      Brad King authored
      Replace isLinkDependentProperty with a CompatibleInterfaces structure
      that records all the compatible interface properties in a set for each
      type.  This avoids repeatedly traversing the link implementation closure
      and asking every target for its compatible interface properties.
      c45dd669
    • Brad King's avatar
      cmTarget: Refactor GetLinkImplementationClosure internals · 89095514
      Brad King authored
      Store the 'Done' flag directly in each map entry instead of using a
      separate map.
      89095514
    • Brad King's avatar
      Genex: Adjust code layout slightly · 9d72df45
      Brad King authored
      9d72df45
    • Brad King's avatar
      Genex: Refactor empty element strip · d5f0743d
      Brad King authored
      In cmGeneratorExpressionEvaluator, teach getLinkedTargetsContent to call
      cmGeneratorExpression::StripEmptyListElements to transform its return
      value so that callers do not have to do so.
      d5f0743d
    • Brad King's avatar
      Genex: Avoid repeated search of transitive property whitelist · 60bafeb6
      Brad King authored
      In cmGeneratorExpressionEvaluator, avoid searching through the list of
      transitive interface property names repeatedly during evaluation of
      TargetPropertyNode.  Simply record the results of the first search for
      later re-use.
      60bafeb6
    • Brad King's avatar
      Genex: Simplify TARGET_PROPERTY transitive lookup · 8cb91054
      Brad King authored
      In cmGeneratorExpressionEvaluator, make getLinkedTargetsContent a
      template so it can traverse over either the Libraries in a cmTarget
      LinkImplementationLibraries or a cmTarget LinkInterfaceLibraries.  This
      also avoids creating a separate vector<cmTarget*>.
      8cb91054
    • Brad King's avatar
      cmTarget: Drop GetTransitivePropertyTargets method · 0a8fbac1
      Brad King authored
      Inline the implementation at the only remaining call site.
      0a8fbac1
    • Brad King's avatar
      Refactor system include annotation propagation · fb3518dc
      Brad King authored
      Since commit v3.0.0-rc1~174^2~1 (cmTarget: Fix system include annotation
      propagation, 2014-01-01) the cmGeneratorTarget::IsSystemIncludeDirectory
      method needs to collect all targets that might provide
      INTERFACE_(|SYSTEM)_INCLUDE_DIRECTORIES for the current target.  We now
      have cmTarget::GetLinkImplementationClosure to provide this, so use it.
      fb3518dc
    • Brad King's avatar
      cmTarget: Make GetLink*Libraries methods safer to use · 535fd6ce
      Brad King authored
      Split the library lists out of LinkImplementation and LinkInterface into
      LinkImplementationLibraries and LinkInterfaceLibraries parent classes,
      respectively.  Return these from GetLinkImplementationLibraries and
      GetLinkInterfaceLibraries, respectively, so that callers cannot access
      parts of the structures that have not been populated.
      535fd6ce
    • Brad King's avatar
      Honor $<LINK_ONLY> when checking interface properties · 6e7e881c
      Brad King authored
      Callers of cmTarget::GetLinkImplementationClosure are interested in the
      set of targets whose interface properties propagate to the current
      target.  This excludes targets guarded by $<LINK_ONLY>.
      
      Teach the CompatibleInterface test to cover suppression of interface
      compatibility tests with $<LINK_ONLY>.  Although this is not recommended
      in practice, it is a way of covering the above behavior.
      6e7e881c
    • Brad King's avatar
      Make $<LINK_ONLY> available to projects (#14751) · 0400cd5d
      Brad King authored
      Previously this generator expression was used internally by the
      target_link_libraries command to honor private linking requirements of
      static libraries in their INTERFACE_LINK_LIBRARIES.  Remove the check
      that limits $<LINK_ONLY> to this use case to make it available for
      project code to use too.
      0400cd5d
    • Brad King's avatar
      Merge topic 'refactor-link-internals' · a0dc1354
      Brad King authored
      1ca0c0e9 cmTarget: Refactor internal imported LinkInterface map
      102eea60 cmTarget: Simplify internal ComputeLinkInterfaceLibraries method
      b0f57408 cmTarget: Move ComputeLinkInterfaceLibraries to internals
      c69e8a55 cmTarget: Refactor internal LinkInterface map
      4db3990e cmTarget: Drop 'head' argument from processSources
      4b8130b8 cmTarget: Drop 'head' argument from GetSourceFiles
      4c763dd1 cmTarget: Drop 'head' argument from GetLanguages
      190cabe7 cmTarget: Drop 'head' argument from ComputeLinkImplementationLanguages
      a0dc1354
    • Brad King's avatar
      Merge topic 'thread-sanitizer' · 66e88af6
      Brad King authored
      1e005ead CTest: Fix MemoryCheckType from 'ctest -T MemCheck'
      44726714 ctest_memcheck: Add support for memory and leak sanitizer.
      66e88af6
    • Bill Hoffman's avatar
      CTest: Fix MemoryCheckType from 'ctest -T MemCheck' · 1e005ead
      Bill Hoffman authored
      Before this commit, you would have to run ctest -S mode to get
      MemoryCheckType to work. This is because CMAKE_COMMAND was not set.
      The fix is to use cmSystemTools::GetCMakeCommand instead.
      1e005ead
    • Bill Hoffman's avatar
      ctest_memcheck: Add support for memory and leak sanitizer. · 44726714
      Bill Hoffman authored
      This adds support for memory and leak sanitizers.  This is built into
      clang and gcc 4.8 and new compilers. It is activated with a -f switch
      during compile.
      44726714
    • Kitware Robot's avatar
      CMake Nightly Date Stamp · 3dce6aa3
      Kitware Robot authored
      3dce6aa3
  4. 15 Jul, 2014 8 commits
  5. 14 Jul, 2014 9 commits