1. 30 May, 2013 3 commits
    • Stephen Kelly's avatar
      GenexEval: Fix evaluation of INCLUDE_DIRECTORIES target property. · 3aa9ce44
      Stephen Kelly authored
      This property should come from the content of the property itself,
      plus the INTERFACE_INCLUDE_DIRECTORIES of the link *implementation*.
      
      In contrast, when the INTERFACE_INCLUDE_DIRECTORIES is evaluated for
      a target, the INTERFACE_INCLUDE_DIRECTORIES of the link *interface*
      is used.
      
      Similar logic applies for the COMPILE_DEFINITIONS target properties.
      
      If the propertyName is already an INTERFACE_ variant of the property,
      ie, the expression is similar to
      
       $<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES>
      
      then the INTERFACE_INCLUDE_DIRECTORIES of the link *interface* of foo
      is used.
      
      However, if the propertyName is not an INTERFACE_ variant, and the
      interfacePropertyName is, ie, the expression is similar to:
      
       $<TARGET_PROPERTY:foo,INCLUDE_DIRECTORIES>
      
      then the INTERFACE_INCLUDE_DIRECTORIES of the link *implementation*
      of foo is used.
      3aa9ce44
    • Stephen Kelly's avatar
      GenexEval: Extract a getLinkedTargetsContent from TargetPropertyNode. · 0b39fefe
      Stephen Kelly authored
      This will be used to process transitive components of properties
      which depend on linked targets. Currently only the link interface
      of the target can be used as the source of the linked targets, but
      in the next commit it will be possible to use the link implementation
      as the source of link targets.
      
      This commit does not change the semantics of the code.
      0b39fefe
    • Stephen Kelly's avatar
  2. 15 May, 2013 1 commit
  3. 14 May, 2013 1 commit
  4. 13 May, 2013 1 commit
  5. 12 May, 2013 1 commit
  6. 11 May, 2013 1 commit
  7. 10 May, 2013 1 commit
  8. 09 May, 2013 1 commit
  9. 08 May, 2013 1 commit
  10. 07 May, 2013 1 commit
  11. 06 May, 2013 6 commits
    • Brad King's avatar
      Merge topic 'doc-tll-usage-requirements' · 6c6bfe15
      Brad King authored and Kitware Robot's avatar Kitware Robot committed
      2618e025 target_link_libraries: Update usage requirements documentation
      6c6bfe15
    • Brad King's avatar
      Merge topic 'fix-per-config-tll-include-dirs' · 0483bf80
      Brad King authored and Kitware Robot's avatar Kitware Robot committed
      dea1df4e Memoize usage requirement include directories in a config-specific map
      26dba6a1 Fix include dir propagation from conditionally linked targets
      b8259c3d Centralize maintenance of usage requirement include directories
      0483bf80
    • Stephen Kelly's avatar
      Memoize usage requirement include directories in a config-specific map · dea1df4e
      Stephen Kelly authored and Brad King's avatar Brad King committed
      Commit 42ebb188 (Memoize includes and defines from interface libraries.,
      2013-02-22) introduced caching of the includes.  Fix the memoization to
      be configuration-specific so that we do not accumulate entries across
      multiple evaluations in a multi-config generator.
      dea1df4e
    • Stephen Kelly's avatar
      Fix include dir propagation from conditionally linked targets · 26dba6a1
      Stephen Kelly authored and Brad King's avatar Brad King committed
      Generator expressions, including configuration-specific expressions may
      be used as link libraries of targets.  The old-style keywords of
      target_link_libraries are handled in terms of new generator expressions.
      However, the generator expressions expect target names to be valid
      against a regular expression, whereas target_link_libraries does not
      require validation.  In generator expression constructed without any
      action from the user we need to ensure that only valid expressions are
      generated.  Ensure that strings which are not valid target names are not
      used in generator expressions which validate the argument.
      
      Code like
      
       target_link_libraries(B debug A)
      
      generates usage requirement references such as "$<$<CONFIG:DEBUG>:A>".
      When cmTarget::GetIncludeDirectories uses such references it generates
      expressions like:
      
       $<TARGET_PROPERTY:$<$<CONFIG:DEBUG>:A>,INTERFACE_INCLUDE_DIRECTORIES>
      
      When the conditions are false such references evaluate as an empty
      string and the expression fails with an error such as:
      
       $<TARGET_PROPERTY:tgt,prop> expression requires a non-empty target name.
      
      Fix this by teaching cmTarget::GetIncludeDirectories to wrap the above
      expression inside a conditional:
      
       $<$<BOOL:$<$<CONFIG:DEBUG>:A>>:...>
      
      so that $<TARGET_PROPERTY:...> will not be evaluated with an empty
      target.
      26dba6a1
    • Stephen Kelly's avatar
      Centralize maintenance of usage requirement include directories · b8259c3d
      Stephen Kelly authored and Brad King's avatar Brad King committed
      Maintain a target's internal list of usage requirement include
      directories whenever the LINK_LIBRARIES property is set by either
      target_link_libraries or set_property.
      b8259c3d
    • Kitware Robot's avatar
      CMake Nightly Date Stamp · b85f691d
      Kitware Robot authored
      b85f691d
  12. 05 May, 2013 1 commit
  13. 04 May, 2013 1 commit
  14. 03 May, 2013 1 commit
  15. 02 May, 2013 1 commit
  16. 01 May, 2013 1 commit
  17. 30 Apr, 2013 2 commits
  18. 29 Apr, 2013 1 commit
  19. 28 Apr, 2013 1 commit
  20. 27 Apr, 2013 1 commit
  21. 26 Apr, 2013 1 commit
  22. 25 Apr, 2013 1 commit
  23. 24 Apr, 2013 1 commit
  24. 23 Apr, 2013 1 commit
  25. 22 Apr, 2013 1 commit
  26. 21 Apr, 2013 1 commit
  27. 20 Apr, 2013 1 commit
  28. 19 Apr, 2013 1 commit
  29. 18 Apr, 2013 1 commit
  30. 17 Apr, 2013 3 commits