Commits on Feb 6, 2016
  1. [iOS] Set --auto-activate-custom-fonts for ibtool compile.

    Adds an extra flag for ibtool when compiling xib and storyboard
    Review URL: .
    Justin Cohen committed Feb 6, 2016
Commits on Feb 5, 2016
  1. [iOS] Update today_extension link flags.

    Xcode 9 sets the entrypoint for today extensions with -e _NSExtensionMain, and
    no longer needs to set pkstart, rpath or @executable_path.
    Review URL: .
    Justin Cohen committed Feb 5, 2016
  2. Add timestamp=none to codesign flags.

    Keep gyp codesign flags in line with Xcode.
    Review URL: .
    Justin Cohen committed Feb 5, 2016
  3. [iOS] Preserve global symbols when calling strip (-x) on today extens…

    Review URL: .
    Justin Cohen committed Feb 5, 2016
Commits on Feb 3, 2016
  1. Add limited support for Mac to CMake generator.

    This adds enough support for Mac to the CMake generator to build simple
    targets. This allows for use with CLion on the Mac.
    Review URL: .
    bungeman committed Feb 3, 2016
Commits on Jan 20, 2016
  1. Allow converting resource plists to binary.

    Previously only Info.plist and .strings files with convert_to_binary were
    ran thru plutil to convert to binary.  Now all plists and strings
    with convert_to_binary set are converted.
    Review URL: .
    Justin Cohen committed Jan 20, 2016
  2. Stop copying deprecated ResourceRules.plist

    It seems ResourceRules.plist is no longer necessary in codesign.
    Review URL: .
    Justin Cohen committed Jan 20, 2016
  3. GYP: Make GYP build deterministic

    Currently, the GYP build is non-deterministic: See issue 557851 for
    discussion of how this came to be.
    There's a small performance regression (19.73s to 19.98s average on my
    Review URL: .
    Patch from Zachary Forman <>.
    Zachary Forman committed with nico Jan 20, 2016
Commits on Jan 14, 2016
  1. mac ninja&make: Use xcrun instead of xcodebuild where possible.

    We used to not use xcrun because it used to not exist long ago.  Nowadays,
    xcrun should be present everywhere (Xcode 5+ I think) and it's much faster.
    Running `python -a -f ninja` on my laptop takes 5 minutes without
    this patch and 3m20s with it.
    No intended behavior change.
    Review URL: .
    nico committed Jan 14, 2016
Commits on Jan 12, 2016
  1. Switch the dependencies to their Git mirror.
    Review URL: .
    sebmarchand committed Jan 12, 2016
Commits on Jan 6, 2016
  1. Peter Kasting <>
    Review URL: .
    mark-chromium committed Jan 6, 2016
Commits on Jan 4, 2016
  1. mac: Extend libtool filter to also match fat builds.

    Now also matches lines such as
    path/to/libtool: for architecture: x86_64 file: foo.a(bar.o) has no symbols
    Review URL: .
    nico committed Jan 4, 2016
Commits on Dec 14, 2015
  1. ninja: Correctly handle copies steps in sourceless shared_library tar…

    The other generators I tested (make, xcode) all get this right already.
    Review URL: .
    nico committed Dec 14, 2015
Commits on Dec 9, 2015
  1. Make ninja work with XCTests for iOS.

    Update so XCTests are properly built by ninja, after generating
    the projects with gyp. This includes correctly handling the bundle
    settings from gyp, and then adding the correct paths to access
    Review URL: .
    Justin Cohen committed Dec 9, 2015
Commits on Dec 7, 2015
  1. Error checking to clarify SYSTEMROOT errors

    Occasionally developers hit this cryptic error:
    Exception: Environment x variable "SYSTEMROOT" required to be set to valid path
    The error message is well intentioned but inevitably misleading. The problem is
    rarely if ever caused by SYSTEMROOT not being set. In the most recent case it
    was caused by the "SetEnv.cmd && set" command failing.
    This change adds to bits of error checking - checking the error code of the
    Popen command, and ensuring that the results coming in to
    _ExtractImportantEnvironment are plausible. Both of these checks can detect this
    particular error, and one or both of them should detect future problems.
    Review URL: .
    randomascii committed Dec 7, 2015
Commits on Dec 3, 2015
  1. Derive default for ar_host from ar.

    Patch from
    Review URL: .
    sgraham committed Dec 3, 2015
Commits on Dec 1, 2015
  1. Fix CalculateGeneratorInputInfo for "xcode-ninja" generator.

    The function CalculateGeneratorInputInfo() was broken during patchset #2
    of (code setting the global
    should have been unindented).
    Fix the function to always set generator_filelist_paths whatever the
    flavour of "xcode" generator (vanilla or "ninja") is used.
    Review URL: .
    sdefresne committed Dec 1, 2015
Commits on Nov 30, 2015
  1. Generate response files out of the source tree with xcode & xcode-ninja.

    Configure generator_filelist_paths used by main gyp input parse to build
    path of "<|()" expansions file names when using "xcode" and "xcode-ninja"
    generators to be out of the source tree.
    The "xcode" generator will put the files in "xcodebuild/gypfiles" while
    the "xcode-ninja" generator will use the same algorithm to generate the
    file names as "ninja" generator (but using "gypfiles-xcode-ninja" as
    last component of the path).
    Review URL: .
    sdefresne committed Nov 30, 2015
  2. Copy files with `cp -pPRf` on OpenBSD.

    Review URL: .
    dpranke committed Nov 30, 2015
Commits on Nov 29, 2015
  1. Add support for NetBSD (OS = netbsd)

    Review URL: .
    dpranke committed Nov 29, 2015
Commits on Nov 19, 2015
  1. Remove deprecated code path from
    Review URL: .
    dpranke committed Nov 19, 2015
Commits on Nov 18, 2015
  1. Changes analyzer to include test_targets in compile_targets

    In order to run test_targets we have to make sure they are actually
    TEST=covered by tests
    Review URL: .
    Scott Violet committed Nov 18, 2015
Commits on Nov 13, 2015
  1. Fix bug in analyze were empty invalid_targets was incorrectly written

    If no targets were found analyze would incorrectly write an empty
    invalid_targets list, which causes grief in recipes
    Additionally if an empty targets list was found we triggered the new
    code path, which we shouldn't have.
    TEST=covered by tests
    Review URL: .
    Scott Violet committed Nov 13, 2015
Commits on Nov 12, 2015
  1. Changes semantics of analyzer

    Analyzer now gets two inputs:
    . test_targets: targets to search from.
    . additional_compile_targets: additional targets to search from
      for which we only care that the affected dependencies are
    For output the same names are used:
    . test_targets: any supplied test_targets that directly or indirectly
      depend upon the change files.
    . compile_targets: minimal set of targets to build. The targets
      returned here are searched from the union or the supplied
      test_targets and additional_compile_targets. The set of
      targets output here are not necessarily values in either
      the input test_targets or additional_compile_targets,
      but they will be at least dependencies of those targets.
    This brings back logic that was removed here: , with the following
    . Previously what is now output as compile_targets would implicitly
      include anything from the 'all' target. That is no longer the
      case, if you want 'all' you have to specify it.
    . There are now two sets of supplied targets. This is necessary to
      handle cases where we want to take some sort of action if a target
      directly or indirectly depends upon a change, e.g., run a test. We
      want support for targets of type none here as well as just exes.
    . Added support for 'all'.
    I forked the old logic out into its own set of functions. These will
    be removed once we update the code that consumes this.
    TEST=covered by tests
    Review URL: .
    Scott Violet committed Nov 12, 2015
Commits on Nov 9, 2015
  1. Adds back lookup of 'all' targets

    I'm going to add support for 'all'. This is a precursor to that. This
    patch effectively adds back code that was removed here: . The code isn't wired up
    yet. Will do that next.
    Review URL: .
    Scott Violet committed Nov 9, 2015
Commits on Nov 6, 2015
  1. Attempt again to upstream Xcode project version warning suppression, …

    …from 1416453003 and 1430573009, and rolled back in 1423583004.
    Review URL: .
    Patch from Alex Harper <>.
    Alex Harper committed with mark-chromium Nov 6, 2015
Commits on Nov 5, 2015

    In projects with just one CMakeLists.txt, these two variables
    are equivalent. In multiproject builds, however, CMAKE_SOURCE_DIR
    always points to the top level CMakeLists.txt while
    CMAKE_CURRENT_LIST_DIR points to the CMakeLists.txt that is currently
    being evaluated. CMAKE_CURRENT_LIST_DIR was added in cmake 2.8.3.
    The generator constructs paths relative to the generated CMakeLists.txt
    rather than to the build root. Therefore, CMAKE_CURRENT_LIST_DIR is the
    more appropriate variable.
    This change makes it possible to integrate a gyp-generated cmake
    into a multi-project build without needing to switch the entire
    build over to gyp. It also enables projects where the top level
    cmake is handwritten (and possibly responsible for running gyp
    to generate other cmake files). This makes usage in IDEs a bit
    more convenient; at the very least, it stops CLion from complaining
    that the source files don't live underneath the directory where
    CMakeLists.txt lives. This also works with KDevelop, which has had
    support for CMAKE_CURRENT_LIST_DIR since 4.1.,
    Review URL: .
    IanNiLewis committed with bungeman Nov 5, 2015
Commits on Nov 3, 2015
  1. Revert of e2e928b

    Causing failure in Chrome per
    (SetXcodeVersion doesn't exist.),
    Review URL: .
    sgraham committed Nov 3, 2015
  2. win: Fix missing loadable_module dependency in ULDI mode

    Also, add test for similar setup in non-ULDI mode for all platforms.,
    Review URL: .
    sgraham committed Nov 3, 2015
  3. Set optional LastSwiftUpdateCheck to Xcode project attributes.

    Adding this to also supress project upgrade warnings for Swift-based gyp generated project files.
    Review URL: .
    Patch from Alastair Tse <>.
    Alastair Tse committed with mark-chromium Nov 3, 2015
Commits on Nov 2, 2015
  1. Add support for kernel-extensions in GYP.

    Add a new target type for kernel extensions, along with a simple test
    and sample kext based on the Apple documentation.
    Review URL: .
    Patch from Nick Cooper <>.
    Nick Cooper committed with mark-chromium Nov 2, 2015
Commits on Oct 21, 2015
  1. Add support for Xcode LastUpgradeCheck project attributes, allowing

    suppression of Xcode project configuration warnings.
    Review URL: .
    Patch from Alex Harper <>.
    Alex Harper committed with mark-chromium Oct 21, 2015
Commits on Oct 20, 2015
  1. Change analyzer to search for build_targets from supplied targets

    Prior to this change build_targets returned targets that were children
    of the root nodes. After this change build_targets are children of the
    supplied targets.
    This change better matches how we want to use analyzer. In particular
    bots don't necessarily build all, so that returning a target that is
    normally not build results in weird behavior (bot building things it
    normally doesn't).
    TEST=covered by tests,,
    Review URL: .
    Scott Violet committed Oct 20, 2015
  2. Adding framework path mapping for 'copies' action in gyp files.

    This will set the destination to number 10 (Frameworks in Xcode UI).
    Enables 'Embedded Binaries' to be linked using a framework.
    May need to use LD_RUNPATH_SEARCH_PATHS to local framework
    Review URL: .
    Patch from tonyworks <>.
    SeawardT committed with mark-chromium Oct 20, 2015
Commits on Oct 16, 2015
  1. AIX's cp command does not support -af which is the default, so use -R…

    …Pf which achives something similar
    Review URL: .
    Patch from David Edelsohn <>.
    edelsohn committed with nico Oct 16, 2015