1. 20 Mar, 2012 1 commit
    • Brad King's avatar
      VS10: Fix external objects generated outside target (#13047) · b291d9e7
      Brad King authored
      Commit 9a6ff950 (Fix for bug where VS2010 did not use .obj files,
      2011-04-01) assumed that if an external object is GENERATED that it is
      the output of a custom command in the current target.  If it is
      generated by another target then VS will not automatically include the
      external object in the current target.  This bug was preserved by the
      refactoring in the parent commit.
      
      Instead use <None> for external objects generated by a custom command in
      the current target and <Object> for all other external objects.  Update
      the ExternalOBJ test to cover this case.
      b291d9e7
  2. 19 Mar, 2012 8 commits
    • Brad King's avatar
      Simplify cmVisualStudio10TargetGenerator source classification · 328c0f65
      Brad King authored
      Combine WriteCLSources and WriteObjSources into a single method.  Use
      the cmGeneratorTarget source classification to simplify tool selection
      for each source file.  Extend the classification to handle .idl files.
      328c0f65
    • Brad King's avatar
      Merge branch 'ninja-object-library' into object-library · 93d5509b
      Brad King authored
      * ninja-object-library: (37 commits)
        Ninja: Honor $<TARGET_OBJECTS:...> source expressions
        Build object library targets in Ninja
        Pre-compute object file names before Ninja generation
        Simplify cmNinjaTargetGenerator using cmGeneratorTarget
        Ninja: Avoid using 'this' in member initializers
        Ninja: Fix for PDB files with spaces in the path.
        Ninja: Constify use of cmCustomCommand
        Ninja: add /DEF: flag to linker call
        Ninja: Add a cache option CMAKE_ENABLE_NINJA to enable the ninja generator.
        Ninja: Add friend struct so it can access the private ConvertToNinjaPath.
        Ninja: add .def file support
        Ninja: ensure the output dir exists at compile time
        Ninja: Remove an unnecessary variable
        Ninja: Use cmSystemTools::ExpandListArgument to split compile/link commands
        Ninja: Add a missed license header
        Ninja: CMake: Adapt Ninja generator for per-target include dirs
        Ninja: windows msvc: create for each target a .pdb file
        Ninja: Import library support for Windows
        Ninja: mark the Windows specific hacks with a comment only
        Ninja: disable unfinished Windows ninja support
        ...
      93d5509b
    • Brad King's avatar
      Merge branch 'xcode-object-library' into object-library · 821037cf
      Brad King authored
      * xcode-object-library:
        Xcode: Honor $<TARGET_OBJECTS:...> source expressions
        Build object library targets in Xcode
        Pre-compute object file names before Xcode generation
        Allow txt files as ExtraSources in object library targets
        Add a default source group for object files.
        Xcode: Re-factor some existing methods into "FromPath" variants
        Xcode: Re-factor code into GetObjectsNormalDirectory method
      821037cf
    • Brad King's avatar
      eb24c99c
    • David Cole's avatar
      Xcode: Honor $<TARGET_OBJECTS:...> source expressions · 63d1be8b
      David Cole authored and Brad King's avatar Brad King committed
      Add objects from object libraries referenced using this syntax to the
      set of objects linked in a target.
      63d1be8b
    • Brad King's avatar
      020ba387
    • David Cole's avatar
      Build object library targets in Xcode · e8ea6158
      David Cole authored and Brad King's avatar Brad King committed
      Treat OBJECT libraries as STATIC libraries. The Xcode project file
      format provides no way to avoid running the libtool so hide the
      resulting .a away next to the object files as it should never be
      referenced.  The object files will be left behind for reference by other
      targets later.
      e8ea6158
    • David Cole's avatar
      Pre-compute object file names before Xcode generation · 8045e171
      David Cole authored and Brad King's avatar Brad King committed
      8045e171
  3. 16 Mar, 2012 19 commits
  4. 13 Mar, 2012 5 commits
    • Brad King's avatar
      Build object library targets in VS · 3a53005f
      Brad King authored
      Treat OBJECT libraries as STATIC libraries.  The VS project file format
      provides no way to avoid running the librarian so hide the resulting
      .lib away next to the object files as it should never be referenced.
      The object files will be left behind for reference by other targets
      later.
      3a53005f
    • Brad King's avatar
      Build object library targets in Makefiles · 3aa741ac
      Brad King authored
      Treat OBJECT libraries as STATIC libraries but leave out the archive
      step.  The object files will be left behind for reference by other
      targets later.
      3aa741ac
    • Brad King's avatar
      Add OBJECT_LIBRARY target type · b87d7a60
      Brad King authored
      This library type can compile sources to object files but does not link
      or archive them.  It will be useful to reference from executable and
      normal library targets for direct inclusion of object files in them.
      
      Diagnose and reject the following as errors:
      
      * An OBJECT library may not be referenced in target_link_libraries.
      
      * An OBJECT library may contain only compiling sources and supporting
        headers and custom commands.  Other source types that are not normally
        ignored are not allowed.
      
      * An OBJECT library may not have PRE_BUILD, PRE_LINK, or POST_BUILD
        commands.
      
      * An OBJECT library may not be installed, exported, or imported.
      
      Some of these cases may be supported in the future but are not for now.
      
      Teach the VS generator that OBJECT_LIBRARY targets are "linkable" just
      like STATIC_LIBRARY targets for the LinkLibraryDependencies behavior.
      b87d7a60
    • Brad King's avatar
      Ninja: Constify use of cmCustomCommand · ac800f49
      Brad King authored
      The generator never needs to modify custom command instances.
      ac800f49
    • Peter Kuemmel's avatar
      Ninja: add /DEF: flag to linker call · 9a0d5a82
      Peter Kuemmel authored and Brad King's avatar Brad King committed
      9a0d5a82
  5. 12 Mar, 2012 5 commits
  6. 09 Mar, 2012 2 commits