- Decode the result of subprocess.Popen() so that the stdout/stderr
result is str, not bytes.
- Use dict.items() instead of dict.iteritems().
- If the return of map() needs to be a list, use list comprehension.
- Use range() instead of xrange().
- Tuple parameter unpacking is removed on Python3, refactor its usage.
- struct.pack() doesn't accept str, convert arguments as bytes.
- plistlib has several API changes. Replace removed.
functions (readPlistFromString). Still have some warnings like this:
"The readPlist function is deprecated, use load() instead"
- _GetOutputNoError() in tweak_info_plist.py has no usage. Removed.
No intended behavior change.
Bug: 941669
Change-Id: Ibc204fad8b56e864a083046559133403dcf99fe3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2392289
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Commit-Queue: Robert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#805790}
GitOrigin-RevId: 1fdde535bbe5fb06abdb35a7aadf5e5903ab3913
This is apparently used by ffmpeg's robosushi tool, when doing ffmpeg
rolls -- except they currently pull the SDK off a GCS bucket instead
of using cipd like Chromium normally does nowadays. This makes it
possible to make robosushi use the more common method.
Bug: 1098899
Change-Id: I0a2aea6cd0316e536bb3501801831817a5290def
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2277455
Auto-Submit: Nico Weber <thakis@chromium.org>
Reviewed-by: Erik Chen <erikchen@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#784530}
GitOrigin-RevId: ff92a576cc4d142c37a90d3beb9997c5711ee4f1
Create new directories //build/apple, //build/config/apple and
//build/toolchain/apple to hold templates, configs and scripts
shared by Apple platforms (iOS and macOS).
This will allow to isolate platform specific templates, configs
and scripts in //build/{ios,mac}, //build/config/{ios,mac} and
//build/toolchain/{ios,mac} eventually making easier to change
one platform without breaking the other.
Move tweak_info_plist.{py,gni} to //build/apple as a first step
to ensure that it is possible to move files without breaking
the projects based on //build (webrtc, ios_internal, ...).
Bug: 635745
Change-Id: Ieb9df43fc638891f3975495f87a9612e22bc3c7e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2270464
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Reviewed-by: Mike Pinkerton <pinkerton@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#784006}
GitOrigin-RevId: b3a8c60411360e89c3a729e8aaf1ea98db661129
https://ci.chromium.org/p/chromium/builders/ci/mac-arm64/345:
ValueError: unexpected AST node: <_ast.BinOp object at 0x110000e50> BinOp(left=Num(n=12), op=Sub(), right=Name(id='beta', ctx=Load())) (inside '12-beta')
Python’s ast treats a hyphen as a token that’s the subtraction operator,
and anything that begins with a digit as a token that’s a number. So
12-beta isn’t a good name, and neither is 12_beta or xcode-12-beta. But
xcode_12_beta should be just fine.
Bug: 1098454,1098738,1099242
Change-Id: I5a675e800764ddaa8e63b32d3b16e481d10bf51e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2265141
Commit-Queue: Nico Weber <thakis@chromium.org>
Commit-Queue: Mark Mentovai <mark@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Auto-Submit: Mark Mentovai <mark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#782394}
GitOrigin-RevId: a64b3fb93de22114917f299725a8aa853180c5a2
I want to use this to make the new fyi bot use the 11 SDK.
Downstream projects will have to add
'mac_xcode_version': 'default',
to the `vars = {` section of their toplevel DEPS section to roll
in build/ with this change.
Bug: 1098738,1098454
Change-Id: I3939da4c83d733c6c08deded4520e824dbd89043
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2264867
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#782205}
GitOrigin-RevId: c30b8730c97dcf21de82d46d9c02436815503ab0
Future versions of macOS won't include Python2 and it is recommended
that we run Python3 from the terminal as Python2 is no longer supported.
- map() returns an iterator instead of a list in Python3. Using list
comprehension instead.
- New octal notation
Bug: 1068191, 942720
Change-Id: Idec9a22b81bf95fe8e026cd2157f662aab9afb47
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2231064
Commit-Queue: Roberto Moura <mouraroberto@google.com>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#776445}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d63e2795c9504823faa085516573a17580f5e6f8
Some of the additional plist needs to be generated based on some
build configuration, so add a new variable to control the list of
targets to add as dependency of the tweak_info_plist.
This variable will be overridden downstream with the list of
targets needed to generate the plist files.
Bug: 1083995
Change-Id: I73d9caad5e38e94c7c2fea43d6b59f97aec6e5dd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2207532
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Olivier Robin <olivierrobin@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#770088}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b94b4b17bb4bda405e34cfd0303426046c3a0a52
This is a reland of 4f367ede945486857ca0e4978b1e6040895c331f
Depends on https://chromium-review.googlesource.com/c/native_client/src/native_client/+/2176530
Original change's description:
> mac: Reorganize how SDK search paths are set when using hermetic Xcode.
>
> If !use_system_xcode, we use a hermetic Xcode in build/mac_files/
> (if build/mac/should_use_hermetic_xcode.py returns 1, which it
> e.g. does if FORCE_MAC_TOOLCHAIN=1 is set in the environment).
>
> That hermetic Xcode also contains a single, fixed SDK. This is the
> SDK that's also used for official, branded builds.
>
> Previously, for builds using hermetic Xcode, we used the find_sdk.py
> script used in system Xcode builds too, and passed a --verify flag
> to make sure it returns exactly what we expect.
>
> Instead, don't call find_sdk.py at all when using system Xcode.
> This allows removing lots of code, at the cost of duplicating
> two relative paths in mac_sdk.gni and find_sdk.py (...but they're
> already fixed by the hermetic Xcode bundler). This allows
> removing lots of code and one exec_script() invocation.
>
> While here, change mac_sdk_path to be a gn path instead of
> an absolute path, so that sysroot in sysroot.gni is a gn path
> on mac (when using hermetic Xcode) just like it is on linux/android/fuchsia
> builds. When it's passed as -isysroot flag in build/config/mac/BUILD.gn,
> we already call rebase_path on sysroot, so this doesn't have any
> observable behavior change.
>
> While here, remove some old Xcode 7.x era checks and workarounds.
>
> No intended behavor change.
>
> Bug: none
> Change-Id: Ibdc497d3dd6490b88283283db5842a0adb4b844a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2175199
> Reviewed-by: Mark Mentovai <mark@chromium.org>
> Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
> Commit-Queue: Nico Weber <thakis@chromium.org>
> Auto-Submit: Nico Weber <thakis@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#764790}
Bug: 1077440
Change-Id: I51b18a16168b63b72fb0274217cbb2b25b87e06f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2176831
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#764940}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7514d643e994cfdbb4f13208ab21c2c60094df74
This reverts commit 4f367ede945486857ca0e4978b1e6040895c331f.
Reason for revert: Speculative revert for fixing build failures in Mac builder: https://ci.chromium.org/p/chromium/builders/ci/Mac%20Builder/114281.
Original change's description:
> mac: Reorganize how SDK search paths are set when using hermetic Xcode.
>
> If !use_system_xcode, we use a hermetic Xcode in build/mac_files/
> (if build/mac/should_use_hermetic_xcode.py returns 1, which it
> e.g. does if FORCE_MAC_TOOLCHAIN=1 is set in the environment).
>
> That hermetic Xcode also contains a single, fixed SDK. This is the
> SDK that's also used for official, branded builds.
>
> Previously, for builds using hermetic Xcode, we used the find_sdk.py
> script used in system Xcode builds too, and passed a --verify flag
> to make sure it returns exactly what we expect.
>
> Instead, don't call find_sdk.py at all when using system Xcode.
> This allows removing lots of code, at the cost of duplicating
> two relative paths in mac_sdk.gni and find_sdk.py (...but they're
> already fixed by the hermetic Xcode bundler). This allows
> removing lots of code and one exec_script() invocation.
>
> While here, change mac_sdk_path to be a gn path instead of
> an absolute path, so that sysroot in sysroot.gni is a gn path
> on mac (when using hermetic Xcode) just like it is on linux/android/fuchsia
> builds. When it's passed as -isysroot flag in build/config/mac/BUILD.gn,
> we already call rebase_path on sysroot, so this doesn't have any
> observable behavior change.
>
> While here, remove some old Xcode 7.x era checks and workarounds.
>
> No intended behavor change.
>
> Bug: none
> Change-Id: Ibdc497d3dd6490b88283283db5842a0adb4b844a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2175199
> Reviewed-by: Mark Mentovai <mark@chromium.org>
> Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
> Commit-Queue: Nico Weber <thakis@chromium.org>
> Auto-Submit: Nico Weber <thakis@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#764790}
TBR=ellyjones@chromium.org,thakis@chromium.org,mark@chromium.org
Change-Id: I33f3cd194f3d435dc56493f64d42fbccba86677a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: none
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2176420
Reviewed-by: Adithya Srinivasan <adithyas@chromium.org>
Commit-Queue: Adithya Srinivasan <adithyas@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#764798}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 836c44b3e63dea8ac4ca64f349cfda81f27cb95a
If !use_system_xcode, we use a hermetic Xcode in build/mac_files/
(if build/mac/should_use_hermetic_xcode.py returns 1, which it
e.g. does if FORCE_MAC_TOOLCHAIN=1 is set in the environment).
That hermetic Xcode also contains a single, fixed SDK. This is the
SDK that's also used for official, branded builds.
Previously, for builds using hermetic Xcode, we used the find_sdk.py
script used in system Xcode builds too, and passed a --verify flag
to make sure it returns exactly what we expect.
Instead, don't call find_sdk.py at all when using system Xcode.
This allows removing lots of code, at the cost of duplicating
two relative paths in mac_sdk.gni and find_sdk.py (...but they're
already fixed by the hermetic Xcode bundler). This allows
removing lots of code and one exec_script() invocation.
While here, change mac_sdk_path to be a gn path instead of
an absolute path, so that sysroot in sysroot.gni is a gn path
on mac (when using hermetic Xcode) just like it is on linux/android/fuchsia
builds. When it's passed as -isysroot flag in build/config/mac/BUILD.gn,
we already call rebase_path on sysroot, so this doesn't have any
observable behavior change.
While here, remove some old Xcode 7.x era checks and workarounds.
No intended behavor change.
Bug: none
Change-Id: Ibdc497d3dd6490b88283283db5842a0adb4b844a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2175199
Reviewed-by: Mark Mentovai <mark@chromium.org>
Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Auto-Submit: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#764790}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4f367ede945486857ca0e4978b1e6040895c331f
`gn format` recently changed its formatting behavior
for deps, source, and a few other elements when they
are assigned (with =) single-element lists to be consistent
with the formatting of updates (with +=) with single-element.
Now that we've rolled in a GN binary with the change,
reformat all files so that people don't get presubmit
warnings due to this.
This CL was uploaded by git cl split.
R=rsesek@chromium.org
Bug: 1041419
Change-Id: I8f2d90b271b4be38f50d974c1f1691b628a290ff
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1997767
Auto-Submit: Nico Weber <thakis@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Commit-Queue: Robert Sesek <rsesek@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#730980}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7a4c3888c34319dd790264c98f0663d98f5e831f
Previously, Chromium used a hermetic toolchain. This was basically a full
install of Xcode, which has OS version dependencies. This CL keeps the hermetic
toolchain, since it's necessary for clang + code coverage.
Compilation of Chrome now uses a separate package of binaries from
Xcode. This consists of a whitelist of the OS-version agnostic binaries from
Xcode. These binaries do not have [relevant] OS version dependencies.
Change-Id: Ie6f30b4b6b3ccd4a7538feb73d6828cfa4a02891
Bug: 965663
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1673572
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#678463}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: bc74094853d3b50325b4ace9de80225375648bfe
This allows build scripts to directly specify the required binaries, rather than
implicitly relying on xcrun to find the binaries.
Bug: 971452
Change-Id: I02862dc39fba7ec1c7534283b0b5a5bfd5f4bbd6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1648780
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#667148}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2cdd0b376a113957abb2a19cc97e706cda37324e
This CL is not intended to introduce any functional changes.
Bug: 971452
Change-Id: I5bd1880b52063b00a8f56b8252e82bcb3ee0c77f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646546
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#666885}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4f2c06c76e055e002cfdd2990e5d3ba8c180af82
chrome_nibs.gyp went away a while ago, and gyp is no longer deps'd in.
Bug: none
Change-Id: I71d7503b0f95ff15575653da7efe35e4e62a6fcd
Reviewed-on: https://chromium-review.googlesource.com/c/1371928
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#615542}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 95b2ab89102f1b6aa1accf098304c8ef5a2d3924
This is to generate reproducible binary between commits for Linux by giving use_dummy_lastchange=true in args.gn.
This CL makes binaries independent from commit hash at least for below (time consuming) targets on Linux.
* content_unittests
* interactive_ui_tests
* content_shell (for webkit_layout_tests)
* content_browsertests
* browser_tests
If we can generate deterministic binary, test execution on build bot can be cached. And it will improve CQ cycle time.
But we don't know how often we make changes not introducing functional change in binaries.
So this CL is mainly for getting some stats from test on Linux buildbot and evaluate whether it is better to go forward or not for other platforms.
See more backgrounds here.
https://docs.google.com/document/d/16dalG0ssugZlwc7BBzUoBQUmuqM0S_gwtG2uxL0htdw/edit#
TBR: pfeldman@chromium.org
Bug: 869348
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I1b351b2135fd5e749ed575484b2182e847a420c9
Reviewed-on: https://chromium-review.googlesource.com/1151169
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
Reviewed-by: Misha Efimov <mef@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#579668}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 36541eb81aae62b267dcc88d1fdaef912450299a
The 'API' to the scripts remains the same, only the delivery mechanism changes.
This is a reland of https://crrev.com/c/887819.
BUG=797051
R=erikchen@chromium.org, justincohen@chromium.org
Change-Id: I6628170430265e54e6ed0d42509114825b85a6b8
Reviewed-on: https://chromium-review.googlesource.com/1030816
Reviewed-by: Erik Chen <erikchen@chromium.org>
Reviewed-by: Justin Cohen <justincohen@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Sergey Berezin <sergeyberezin@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#554882}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5654182dd049bb8fbddf48cf23cff461472aad19
The 'API' to the scripts remains the same, only the delivery mechanism changes.
BUG=797051
R=erikchen@chromium.org, justincohen@chromium.org
Change-Id: I8ee5486b107061f9fb6e64354463ac51de53d4cc
Reviewed-on: https://chromium-review.googlesource.com/887819
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Erik Chen <erikchen@chromium.org>
Commit-Queue: Sergey Berezin <sergeyberezin@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#553871}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 116dd7c37d473b6be5d34812035c4f14aa360efa
This patch prints a helpful error message if the Xcode license
agreement hasn’t been accepted or if the CommandLineTools are
installed separately from Xcode.
BUG=729990
Change-Id: I8d7c6550c6b144473892a8f8c491eba32cbf9e6c
Reviewed-on: https://chromium-review.googlesource.com/758651
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#515248}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 21ffa4e82be6afcb590568a651543b90eae5c6d2
This will upload crashes to staging.
Example report:
https://crash-staging.corp.google.com/browse?q=reportid=%2732b1540312c908a3%27
Adding product keys will be done in another CL.
Bug: 751134
Change-Id: I9a8446be5314be39afd2053060c30ed7a19c4b2e
Reviewed-on: https://chromium-review.googlesource.com/616565
Reviewed-by: Mark Cogan <marq@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Olivier Robin <olivierrobin@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#495951}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 96ed6102741ace7d9981a7578c0bc84d7b156b38
Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
To support machines running macOS versions < 10.12, but don't require building
targets, this CL also:
* Does not download the hermetic toolchain if the macOS version does not
support the toolchain version.
* Does not allow building targets with the default hermetic toolchain if the
macOS version does not support the toolchain version.
BUG=624049
Review-Url: https://codereview.chromium.org/2950933003
Review-Url: https://codereview.chromium.org/2950933003
Review-Url: https://codereview.chromium.org/2950933003
Review-Url: https://codereview.chromium.org/2950933003
Cr-Original-Original-Original-Commit-Position: refs/heads/master@{#481692}
Committed: 2f19b143e4
Committed: 3501279231
Committed: 87de017dbe
Cr-Original-Original-Commit-Position: refs/heads/master@{#482776}
Cr-Original-Commit-Position: refs/heads/master@{#483217}
Cr-Original-Original-Original-Original-Commit-Position: refs/heads/master@{#481225}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d5dfcdb0f4ef632fc90a53e02796f72d8d81f657
Reason for revert:
Broke try bot: mac_chromium_10.10_rel_ng
https://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_10.10_rel_ng?numbuilds=100
Original issue's description:
> mac: Roll hermetic toolchain to Xcode 8.3.2.
>
> Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
> 10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
>
> To support machines running macOS versions < 10.12, but don't require building
> targets, this CL also:
> * Does not download the hermetic toolchain if the macOS version does not
> support the toolchain version.
> * Does not allow building targets with the default hermetic toolchain if the
> macOS version does not support the toolchain version.
>
> BUG=624049
>
> Review-Url: https://codereview.chromium.org/2950933003
> Cr-Original-Original-Commit-Position: refs/heads/master@{#481225}
> Committed: 2f19b143e4
> Review-Url: https://codereview.chromium.org/2950933003
> Cr-Original-Commit-Position: refs/heads/master@{#481692}
> Committed: 3501279231
> Review-Url: https://codereview.chromium.org/2950933003
> Cr-Commit-Position: refs/heads/master@{#482776}
> Committed: 87de017dbeTBR=dpranke@chromium.org,erikchen@chromium.org
# Done partial CQ checks because original CL landed almost 1 days ago.
NOTREECHECKS=true
NOPRESUBMIT=true
NOTREECHECKS=true
BUG=624049
Review-Url: https://codereview.chromium.org/2963843002
Cr-Original-Commit-Position: refs/heads/master@{#483120}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8bf722464b7361247ffaada42c179c6912c4125d
Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
To support machines running macOS versions < 10.12, but don't require building
targets, this CL also:
* Does not download the hermetic toolchain if the macOS version does not
support the toolchain version.
* Does not allow building targets with the default hermetic toolchain if the
macOS version does not support the toolchain version.
BUG=624049
Review-Url: https://codereview.chromium.org/2950933003
Review-Url: https://codereview.chromium.org/2950933003
Review-Url: https://codereview.chromium.org/2950933003
Cr-Original-Original-Commit-Position: refs/heads/master@{#481692}
Committed: 2f19b143e4
Committed: 3501279231
Cr-Original-Commit-Position: refs/heads/master@{#482776}
Cr-Original-Original-Original-Commit-Position: refs/heads/master@{#481225}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 87de017dbe9a09bf33e34e462f8cb0a1b1dba087
Reason for revert:
Reverting. Failed to update all perf Mac Builder slaves to 10.12.
Original issue's description:
> mac: Roll hermetic toolchain to Xcode 8.3.2.
>
> Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
> 10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
>
> To support machines running macOS versions < 10.12, but don't require building
> targets, this CL also:
> * Does not download the hermetic toolchain if the macOS version does not
> support the toolchain version.
> * Does not allow building targets with the default hermetic toolchain if the
> macOS version does not support the toolchain version.
>
> BUG=624049
>
> Review-Url: https://codereview.chromium.org/2950933003
> Cr-Original-Commit-Position: refs/heads/master@{#481225}
> Committed: 2f19b143e4
> Review-Url: https://codereview.chromium.org/2950933003
> Cr-Commit-Position: refs/heads/master@{#481692}
> Committed: 3501279231TBR=dpranke@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=624049
Review-Url: https://codereview.chromium.org/2957483002
Cr-Original-Commit-Position: refs/heads/master@{#481733}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 099118540bc82d533a24e66c4778db9e2f0c6356
Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
To support machines running macOS versions < 10.12, but don't require building
targets, this CL also:
* Does not download the hermetic toolchain if the macOS version does not
support the toolchain version.
* Does not allow building targets with the default hermetic toolchain if the
macOS version does not support the toolchain version.
BUG=624049
Review-Url: https://codereview.chromium.org/2950933003
Review-Url: https://codereview.chromium.org/2950933003
Cr-Original-Commit-Position: refs/heads/master@{#481692}
Committed: 2f19b143e4
Cr-Original-Original-Commit-Position: refs/heads/master@{#481225}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 350127923178be13e901e047ea5719890e7af365
Reason for revert:
Broke mac builders on chromium.perf: https://build.chromium.org/p/chromium.perf/builders/Mac%20Builder/builds/102244
Original issue's description:
> mac: Roll hermetic toolchain to Xcode 8.3.2.
>
> Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
> 10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
>
> To support machines running macOS versions < 10.12, but don't require building
> targets, this CL also:
> * Does not download the hermetic toolchain if the macOS version does not
> support the toolchain version.
> * Does not allow building targets with the default hermetic toolchain if the
> macOS version does not support the toolchain version.
>
> BUG=624049
>
> Review-Url: https://codereview.chromium.org/2950933003
> Cr-Commit-Position: refs/heads/master@{#481225}
> Committed: 2f19b143e4TBR=dpranke@chromium.org,erikchen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=624049
Review-Url: https://codereview.chromium.org/2949043002
Cr-Original-Commit-Position: refs/heads/master@{#481241}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 81095e19266ad3da6479a5889793842fe49a437b
Xcode 8.3.2 requires macOS 10.12+. This version of Xcode 8.3.2 has both the
10.10 and 10.12 SDKs, and builds will continue to use the 10.10 SDK.
To support machines running macOS versions < 10.12, but don't require building
targets, this CL also:
* Does not download the hermetic toolchain if the macOS version does not
support the toolchain version.
* Does not allow building targets with the default hermetic toolchain if the
macOS version does not support the toolchain version.
BUG=624049
Review-Url: https://codereview.chromium.org/2950933003
Cr-Original-Commit-Position: refs/heads/master@{#481225}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2f19b143e444c920e643feda583e9ceb72d29c8e
Reason for revert:
IndexError: list index out of range
Original issue's description:
> Enable hermetic builds for iOS.
>
> BUG=669094
>
> Committed: https://crrev.com/080de20fe53a35ec6b5ce89470261157f9389db3
> Cr-Commit-Position: refs/heads/master@{#437269}
TBR=erikchen@chromium.org,kjellander@chromium.org,sdefresne@chromium.org,rsesek@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=669094
Review-Url: https://codereview.chromium.org/2552383006
Cr-Original-Commit-Position: refs/heads/master@{#437273}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 73c24cdb89cee4af2adb7021dbd05d4418525ef8
Reason for revert:
This break developer workflow for Googlers (as build/mac/should_use_hermetic_xcode.py returns 1) as the hermetic build does not contains support for iOS SDK, thus "gn gen" fails with the following error:
$ gn gen --args='target_os="ios"' out/default
ERROR at //build/config/ios/ios_sdk.gni:98:21: Script returned non-zero exit code.
_ios_sdk_result = exec_script(script_name, ios_sdk_info_args, "scope")
^----------
Current dir: /Users/sdefresne/Developer/chromium/src/out/default/
Command: python -- /Users/sdefresne/Developer/chromium/src/build/config/mac/sdk_info.py --developer_dir /Users/sdefresne/Developer/chromium/src/build/mac_files/Xcode.app iphonesimulator
Returned 1.
stderr:
xcodebuild: error: SDK "iphonesimulator" cannot be located.
xcodebuild: error: SDK "iphonesimulator" cannot be located.
xcrun: error: unable to lookup item 'Path' in SDK 'iphonesimulator'
The was not caught by the bots because they do not set FORCE_MAC_TOOLCHAIN and are not corporate machine.
Original issue's description:
> Turn on hermetic toolchain for all corp machines.
>
> BUG=659726
>
> Committed: https://crrev.com/7778e931dabc1fa85d0b77321e3fdef166e0b6a0
> Cr-Commit-Position: refs/heads/master@{#430376}
TBR=thakis@chromium.org,dpranke@chromium.org,brettw@chromium.org,justincohen@chromium.org,erikchen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=659726
Review-Url: https://codereview.chromium.org/2487643002
Cr-Original-Commit-Position: refs/heads/master@{#430553}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e62f1a5d8886fc1086a180f4da94e0a3d1ca03dc
Rename build/config/mac/gen_plist.py to build/config/mac/plist_util.py
after splitting the possible action (currently variable substitution and
plist merging).
Extend tweak_info_plist template to add another parameter info_plists
corresponding to a list of path to merge before tweaking (this allow for
adding partial plist files depending on configuration options).
Always pass the --platform variable based on the value of $current_os
to the tweak_info_plist template and make args optional.
Refactor info_plist template to use separate steps for merge and variable
substitution (as the script now implement them as two separate actions).
BUG=613543
Review-Url: https://codereview.chromium.org/2480433002
Cr-Original-Commit-Position: refs/heads/master@{#429830}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 9bb379e5fbd071abaf1359d724eb79b1ff6e7ceb
This ensures that the hermetic toolchain is only used if use_system_xcode is
false. This CL also causes two changes:
* svn is assumed to be installed on the system. It is not pulled from the
hermetic toolchain.
* mac_sdk_build was used to populate the SDK version in the Info.plist. This
was being populated with a different version than the SDK being used to build
Chrome, which is incorrect.
BUG=651267
Review-Url: https://codereview.chromium.org/2412353003
Cr-Original-Commit-Position: refs/heads/master@{#425170}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6218c34684254f1c090bf501f6c46b0a69b63ec5
If the --verify flag is passed to //build/mac/find_sdk.py and the SDK
is not installed, the script must fail with a non zero return code or
gn will consider that the script was successful and will discard its
stderr.
Fixes the following error when trying to generate official chrome
branded build with Xcode 8 (that does not ship with macOS 10.10 SDK):
ERROR at //build/config/mac/mac_sdk.gni:43:34: Array subscript out of range.
mac_sdk_version = find_sdk_lines[1]
^
You gave me 1 but I was expecting something from 0 to 1, inclusive.
BUG=634373
Review-Url: https://codereview.chromium.org/2218773004
Cr-Original-Commit-Position: refs/heads/master@{#410529}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c301ead9cb14859d0e4187a7170eeb4fd6b99aec
The current version for breakpad in crash reports is CFBundleShortVersionString
It should be long version.
BUG=626490
Review-Url: https://codereview.chromium.org/2132913003
Cr-Original-Commit-Position: refs/heads/master@{#408953}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b0959ee3fc34de2a87f0dce5fc29bddb314da576
Chrome on iOS uses different format by default for the "CFBundleVersion"
and "CFBundleShortVersionString" Info.plist values.
Change _AddVersionKeys function to take as parameter a dictionary from
Info.plist keys to version format using @MAJOR@, @MINOR@, @BUILD@ and
@PATCH@ patterns to represent the different component of the version,
and pass a different dictionary depending on the platform.
Refactor how the version is extracted using the build/util/version.py
script (it was invoked twice, but the second invocation can be removed
as the output needs to be post-processed).
BUG=502295,616750
Review-Url: https://codereview.chromium.org/2044893002
Cr-Original-Commit-Position: refs/heads/master@{#398323}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8001eee13920c32ca685f6700bbe2db77eed8046
In order to allow Chrome on iOS to use build/mac/tweak_info_plist.py,
add options required to control the format of the generated plist file
(--format), the product reported to breakpad (--platform) and a way to
override some portion of the version string (--version-overrides).
This is required to allow Chrome on iOS to migrate from it old fork of
tweak_info_plist shell script and to incorporate tweak_info_plist.py
in the GN build.
BUG=502295
Review-Url: https://codereview.chromium.org/2037043002
Cr-Original-Commit-Position: refs/heads/master@{#397745}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 77bf6652e84cfb17925382598e9e50873065b3c2