1. 16 Jul, 2016 1 commit
    • Gregor Jasny's avatar
      Do not report ALIASED_TARGET as always set (#15783) · ea647533
      Gregor Jasny authored
      The cmGetPropertyCommand::StoreResult expects NULL for unset
      properties. Make ALIASED_TARGET align with that expectation.
      Additional corrections to the unit tests are necessary because
      get_property removes variables for unset properties (in contrast
      to get_target_property which stores a -NOTFOUND value).
  2. 10 Mar, 2016 1 commit
  3. 08 Nov, 2015 1 commit
    • Stephen Kelly's avatar
      Alias: Fix access at generate-time (#15832) · 4ce9742a
      Stephen Kelly authored
      Commit c389f8bb (cmLocalGenerator: Port Find method away from
      GetGeneratorTarget, 2015-10-25) ported the implementation of
      FindGeneratorTargetToUse away from the FindTargetToUse method,
      but neglected to handle alias targets.
      The latter method has a parameter to determine whether to
      include alias targets in the search, but as that is only
      needed at configure time, this generate-time equivalent does
      not need the condition.
  4. 25 Apr, 2014 1 commit
  5. 04 Jan, 2014 1 commit
  6. 07 Oct, 2013 1 commit
    • Stephen Kelly's avatar
      Add the INTERFACE_LIBRARY target type. · fe732264
      Stephen Kelly authored
      This target type only contains INTERFACE_* properties, so it can be
      used as a structural node. The target-specific commands enforce
      that they may only be used with the INTERFACE keyword when used
      with INTERFACE_LIBRARY targets. The old-style target properties
      matching LINK_INTERFACE_LIBRARIES_<CONFIG> are always ignored for
      this target type.
      The name of the INTERFACE_LIBRARY must match a validity generator
      expression. The validity is similar to that of an ALIAS target,
      but with the additional restriction that it may not contain
      double colons. Double colons will carry the meaning of IMPORTED
      or ALIAS targets in CMake 2.8.13.
      An ALIAS target may be created for an INTERFACE library.
      At this point it can not be exported and does not appear in the
      buildsystem and project files are not created for them. That may
      be added as a feature in a later commit.
      The generators need some changes to handle the INTERFACE_LIBRARY
      targets returned by cmComputeLinkInterface::GetItems. The Ninja
      generator does not use that API, so it doesn't require changes
      related to that.
  7. 02 Aug, 2013 1 commit
    • Stephen Kelly's avatar
      Add the ALIAS target concept for libraries and executables. · 370bf554
      Stephen Kelly authored
      * The ALIAS name must match a validity regex.
      * Executables and libraries may be aliased.
      * An ALIAS acts immutable. It can not be used as the lhs
        of target_link_libraries or other commands.
      * An ALIAS can be used with add_custom_command, add_custom_target,
        and add_test in the same way regular targets can.
      * The target of an ALIAS can be retrieved with the ALIASED_TARGET
        target property.
      * An ALIAS does not appear in the generated buildsystem. It
        is kept separate from cmMakefile::Targets for that reason.
      * A target may have multiple aliases.
      * An ALIAS target may not itself have an alias.
      * An IMPORTED target may not have an alias.
      * An ALIAS may not be exported or imported.