1. 09 Oct, 2013 4 commits
  2. 08 Oct, 2013 25 commits
  3. 07 Oct, 2013 11 commits
    • Daniele E. Domenichelli's avatar
      FindGTK2: Search for modules quietly when needed · 1bbc7662
      Daniele E. Domenichelli authored and Brad King's avatar Brad King committed
      1bbc7662
    • Daniele E. Domenichelli's avatar
      FindGTK2: Find freetype quietly · d9eb2776
      Daniele E. Domenichelli authored and Brad King's avatar Brad King committed
      d9eb2776
    • Daniele E. Domenichelli's avatar
      FindGTK2: Mark GTK_*_INCLUDE_DIR as advanced · 675a4d38
      Daniele E. Domenichelli authored and Brad King's avatar Brad King committed
      675a4d38
    • Brad King's avatar
      Set policy CMP0025 to NEW while building CMake itself · 1763c31c
      Brad King authored
      CMake is aware of the policy's NEW behavior and the AppleClang compiler
      id.  Set the policy to NEW explicitly to avoid the warning and get the
      NEW behavior.
      
      Also teach the RunCMake test infrastructure to build tests with
      -DCMAKE_POLICY_DEFAULT_CMP0025=NEW to avoid the policy warning
      in test output that must match specific regular expressions.
      1763c31c
    • Brad King's avatar
      Add policy CMP0025 for Apple Clang compiler id compatibility · aa53ee57
      Brad King authored
      The parent commit introduced a separate "AppleClang" compiler id for
      Apple's Clang distribution.  Add a policy in order to support projects
      that expect this compiler's id to be just "Clang".  When the policy is
      OLD or not set, map AppleClang back to Clang.  Continue to use the
      AppleClang id internally while enabling the language, but set the
      CMAKE_<LANG>_COMPILER_ID after project() or enable_language() to the
      compatible value for use by project code.
      aa53ee57
    • Brad King's avatar
      Clang: Add separate "AppleClang" compiler id · ab658624
      Brad King authored
      Apple distributes their own Clang build with their own version numbers
      that differ from upstream Clang.  Use the __apple_build_version__ symbol
      to identify the Apple Clang compiler and report the Apple Build Version
      as the fourth version component in CMAKE_<LANG>_COMPILER_VERSION.  Add
      Compiler/AppleClang-<lang> and Platform/Darwin-AppleClang-<lang> modules
      that simply include the upstream equivalents.
      
      Fix comparisons of CMAKE_<LANG>_COMPILER_ID to Clang in CMake's own
      source and tests to account for AppleClang.
      ab658624
    • Stephen Kelly's avatar
      install: Teach EXPORT option to handle INTERFACE_LIBRARY targets · ce0c303d
      Stephen Kelly authored and Brad King's avatar Brad King committed
      ce0c303d
    • Stephen Kelly's avatar
      export: Add support for INTERFACE_LIBRARY targets · 435c9128
      Stephen Kelly authored and Brad King's avatar Brad King committed
      435c9128
    • Stephen Kelly's avatar
      export: Add policy CMP0024 to disallow include() of export files · 904ff9fe
      Stephen Kelly authored and Brad King's avatar Brad King committed
      Currently, export() is executed at configure-time.
      
      One problem with this is that certain exported properties like
      the link interface may not be complete at the point the export() is
      encountered leading to an incorrect or incomplete exported
      representation. Additionally, the generated IMPORTED_LOCATION
      property may even be incorrect if commands following the export()
      have an effect on it.
      
      Another problem is that it requires the C++ implementation of cmake
      to be capable of computing the exported information at configure time.
      This is a limitation on the cleanup and maintenance of the code. At
      some point in the future, this limitation will be dropped and more
      implementation will be moved from cmTarget to cmGeneratorTarget.
      904ff9fe
    • Stephen Kelly's avatar
      Add the INTERFACE_LIBRARY target type. · fe732264
      Stephen Kelly authored and Brad King's avatar Brad King committed
      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.
      fe732264
    • Brad King's avatar
      Merge topic 'split-cmake-E' · 1d9af198
      Brad King authored and Kitware Robot's avatar Kitware Robot committed
      c04995b4 cmake: Split -E command implementation into separate source file
      1d9af198