1. 06 May, 2013 3 commits
    • 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
  2. 25 Apr, 2013 1 commit
  3. 24 Apr, 2013 1 commit
  4. 23 Apr, 2013 1 commit
  5. 22 Apr, 2013 1 commit
  6. 21 Apr, 2013 1 commit
  7. 20 Apr, 2013 1 commit
  8. 19 Apr, 2013 1 commit
  9. 18 Apr, 2013 1 commit
  10. 17 Apr, 2013 4 commits
  11. 16 Apr, 2013 3 commits
  12. 15 Apr, 2013 1 commit
  13. 14 Apr, 2013 1 commit
  14. 13 Apr, 2013 1 commit
  15. 12 Apr, 2013 1 commit
  16. 11 Apr, 2013 1 commit
  17. 10 Apr, 2013 2 commits
  18. 09 Apr, 2013 1 commit
  19. 08 Apr, 2013 1 commit
  20. 07 Apr, 2013 1 commit
  21. 06 Apr, 2013 1 commit
  22. 05 Apr, 2013 1 commit
  23. 04 Apr, 2013 2 commits
  24. 03 Apr, 2013 3 commits
    • Brad King's avatar
      Merge topic 'qt4-pthread' · 00ef90ec
      Brad King authored and Kitware Robot's avatar Kitware Robot committed
      bec8e64c Qt4: Fix typo setting a variable for FindThreads.
      00ef90ec
    • Brad King's avatar
      Handle usr-move without forcing absolute paths (#14041) · 6c613b43
      Brad King authored
      In commit 0c727b90 (install(EXPORT): Force absolute paths for usr-move,
      2013-03-08) and commit d4774140 (configure_package_config_file: force
      absolute paths for usr-move, 2013-01-24) we supported Linux
      distributions implementing the "/usr move" by assuming that installation
      to (/usr)?/lib(64)? represents a non-relocatable system package.
      
      When cross-compiling one may prepare a package for installation into a
      system location on a target machine but install the package files on the
      *host* machine inside another path for use with CMAKE_FIND_ROOT_PATH.
      In this case the package development files must still be relocatable.
      
      Handle "/usr move" with a new approach that works with relocatable
      files.  Teach configure_package_config_file and install(EXPORT) to
      generate special logic in a package configuration file or targets file
      for installation under (/usr)?/lib(64)?.  Teach the file to recognize
      when it is loaded through a symlink that refers to the same realpath as
      its original install destination.  In such a case, use the original
      install prefix.  Otherwise, compute the prefix relative to the current
      file location to make it relocatable.
      6c613b43
    • Kitware Robot's avatar
      CMake Nightly Date Stamp · 99f7cc12
      Kitware Robot authored
      99f7cc12
  25. 02 Apr, 2013 4 commits
  26. 01 Apr, 2013 1 commit