Remoting uses a GUID that changes over time for its main class.
midl.py currently just copies over fixed precomputed outputs.
(midl.exe is Windows-only, and we want to be able to build on non-Win).
To make things work, give midl.py a dynamic_guid arg, that, when set,
makes midl.py replace the GUID in the checked-in output with a dynamic
GUID.
The tricky bit is that the GUID also ends up in the binary .tlb file,
which is an undocumented file format. I figured out most of the file
format in https://chromium-review.googlesource.com/c/chromium/src/+/693223
(see around line 26s for an overview). For a dynamic GUID, two things
need to happen:
1. Find where the GUID of the main clas is in the .tlb file, replace it
2. There's a global hash table of all GUIDs. Recompute this hash table
after changing one of the GUIDs.
midl.py still compares the output of "copy file with replaced GUID"
with the output of running midl.exe when on Windows, which verifies
that the tlb modification does the same thing that midl.exe does.
(But the diff now needs to compare the post-copy files instead of
the checked-in files.)
TBR=sergeyu
Bug: 761839
Change-Id: I1fcc3202df3cc4f80a41087668c2c60110fa142c
Reviewed-on: https://chromium-review.googlesource.com/707197
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507860}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fc10d000f13aae3905207b94325a6ffa6b44cfe4
It looks like the original issue has been fixed some time ago and
TSAN suppression is no longer needed.
Bug: 246974
Change-Id: I0105cdbc37902b2636ad723342dbf36db507b4fc
Reviewed-on: https://chromium-review.googlesource.com/710501
Reviewed-by: Xi Cheng <chengx@chromium.org>
Commit-Queue: Stanislav Chiknavaryan <stanisc@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507821}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6692c8ac37f4f768ea7e1b118e75422ec08d629b
- BuildBootfs() now accepts a |target_cpu| parameter, and uses it to
choose the correct bootdata and kernel binaries.
- RunFuchsia() uses the |target_cpu| in the BootfsData to configure QEMU
for the correct machine, CPU-type, etc.
- GN rules are updated to propagate the |target_cpu| into the runner-
script creation, and the scripts themselves are updated to pass it on
to BuildBootfs().
ARM64 binaries are run with QEMU machine=virt, cpu=cortex-a53.
Bug: 772031
Change-Id: Icb529dda7394b3731aa888e0b092e04215fe6016
Reviewed-on: https://chromium-review.googlesource.com/710058
Commit-Queue: Wez <wez@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507808}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 143667269a9aa451cdd90e0a80d492f583a1c949
Since this is the only way it can print nothing, no information is getting lost.
This is part of a few changes to make `gclient runhooks` less noisy.
Bug: 772741
Change-Id: I9d3e22d13c909294466a609289c9e36b5f94bbe1
Reviewed-on: https://chromium-review.googlesource.com/710456
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507784}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b4ac34edef3a7552cb38c938f00eb45885047044
Update find_depot_tools to put the pinned depot_tools from the DEPS file
first on the sys.path.
If a user/bot has depot_tools on their path already (likely pointing to
a global, auto-updated-to-master version), the scripts will still want
to find the pinned version, in case APIs change.
Bug: 773182
Change-Id: I26a55a5a463462911cd3324ed8c31dc9685144c0
Reviewed-on: https://chromium-review.googlesource.com/710315
Reviewed-by: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Mike Bjorge <mbjorge@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507779}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5064a49489a271975179a5341025ec2dafc9d8fd
The script now prints nothing both when it uses a local toolchain and when it
uses a hermetic toolchain that's already up-to-date, but I argue that almost
nobody was looking at that output anyways.
This is part of a few changes to make `gclient runhooks` less noisy.
Bug: 772741
Change-Id: I4f32491894269522617cde7fd180344ae02c43bb
Reviewed-on: https://chromium-review.googlesource.com/709637
Reviewed-by: Erik Chen <erikchen@chromium.org>
Reviewed-by: Justin Cohen <justincohen@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507770}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 03dff362ace00df6ad8825d1c8baabae5af9de94
Extra (unnecessary) symbols are suspected of causing bot timeout on long
links.
Bug: 771076
Change-Id: Id7569bfd6040f2985d62cc213c0fda6a3db9477c
Reviewed-on: https://chromium-review.googlesource.com/709834
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507740}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3a5516d4a380ac1e24c405d85e3d2a91b01ca65a
This is needed for defining executable runners for testonly targets.
Change-Id: I87910a44f7a3b865a0161b54b0d35eab4c84e120
Reviewed-on: https://chromium-review.googlesource.com/706419
Commit-Queue: Scott Graham <scottmg@chromium.org>
Reviewed-by: Wez <wez@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507683}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fef5ada76d3defc4307b049d054caefe2bc87c1a
With these changes GN is happy when target_os="Fuchsia" and
is_chromecast=true. Build still fails.
TBR=scottmg@chromium.org
Bug: 772488
Change-Id: I335bc08d555b6a851f4afbd296bf05e9cdc9b4e9
Reviewed-on: https://chromium-review.googlesource.com/703876
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Luke Halliwell <halliwell@chromium.org>
Commit-Queue: Sergey Ulanov <sergeyu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507513}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6af0b54f5fa9656e42a3fcf252488a927b031ab8
Mojo generates a lot of code that is expensive to compile and
compiling them through jumbo saves roughly 80-90% of that effort,
which is 42 CPU minutes on the reference machine (surprising that
mojo code needs that long to compile).
42 CPU minutes is -7% of the current "fastest" compilation, or
-4.5% of current master use_jumbo_build=true. The wall clock effect
will be similar for a 4c/8t machine but smaller the more cores
the computer have.
This patch includes a change to jumbo.gni to handle targets
with no sources, and streamlines targets with only one file,
because both happen through the mojo template.
Bug: 771153
Change-Id: Ia11a709711600f1b6eedd098bf47c1df2239a7a5
Reviewed-on: https://chromium-review.googlesource.com/697664
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Original-Commit-Position: refs/heads/master@{#507393}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6190165700c744187b3de8082341705f2f58be5e
The effect of this change is to hide the FreeType and HarfBuzz builds
from the rest of the build except for a new component library named
'freetype_harfbuzz'. All existing users of the 'freetype' and 'harfbuzz'
targets will instead depend on the 'freetype_harfbuzz' target. The
'freetype_harfbuzz' component will depend on the appropriate source sets
or export the system packages for both FreeType and HarfBuzz.
The reason for this change is that the full FreeType and HarfBuzz
libraries we desire are circularly dependent. Before this change the
build attempted to work around this by building HarfBuzz as a static
library which also pulled in a small bootstrap FreeType static library.
However, this causes ODR violations in component build, and potentially
in the non-component build as well. Recent changes in FreeType cause
FreeType to act incorrectly in these circumstances, so these ODR issues
are preventing FreeType from rolling.
A different approach would be to
1) Compile all the sources.
2) Link the base libraries.
3) Link the complete libraries against the base libraries.
4) Create the final libraries from the complete libraries by
re-targeting the dependent library names directly.
This last step can in theory be done for ELF using a tool like
patchelf --replace-needed <other complete library path>
<other final library path>
<complete library>
that outputs to <final library path> instead of updating in place.
However, even if there were such a tool for dlls, this is something
which would be needed on any platform. As a result, this only seems
promising if all linkers supported this sort of re-writing.
BUG=chromium:768938
Change-Id: I488dc8cde8f6a8f88903d25f13ecd61fd2d74a3f
Reviewed-on: https://chromium-review.googlesource.com/696241
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Elliot Glaysher <erg@chromium.org>
Reviewed-by: Alex Clarke <alexclarke@chromium.org>
Reviewed-by: Brett Wilson <brettw@chromium.org>
Commit-Queue: Ben Wagner <bungeman@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507381}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7619f01f1fa10674df56b9921df2f94718478201
Now that Chromium has switched to using and requiring VC++ 2017 for
Windows builds it makes sense for clang-cl to simulate VC++ 2017
instead of VC++ 2015. This gets _MSC_VER to be set to 1911 and
_MSC_FULL_VER to 191100000.
Bug: 683729
Change-Id: Ie9ec7243eafe60a7579b7c55ab05716d5fe7e4ce
Reviewed-on: https://chromium-review.googlesource.com/706349
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507245}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0febf3c866810f188fb4122f0d2e3b5cfa030b94
I figured out how .tlb files look, see
https://chromium-review.googlesource.com/c/chromium/src/+/693223
(start around line 255 for an overview). This is possibly overkill
for just this issue, but it will come in handy for making
remoting's midl step with changing UUID implementable.
Bug: 756607, 761839
Change-Id: I2f2eaaaaa524569f6b014c1793109261e94c79b2
Reviewed-on: https://chromium-review.googlesource.com/705995
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507205}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3a468a2b925df77b0ae25356662bce2a4425d67d
Shows an invitation to take a survey if Chrome Home was enabled
for longer than 1 week.
Creates a generic survey controller for future surveys.
Creates a Chrome Home specific controller.
Bug: 754499
Change-Id: I53064f181fcd8832a5524eb4d7d38841531c84e7
Reviewed-on: https://chromium-review.googlesource.com/683323
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Cait Phillips <caitkp@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: Matthew Jones <mdjones@chromium.org>
Commit-Queue: Daniel Park <danielpark@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507156}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: dead4a6c01ec0850e2ea507427cf60b2ad39c93b
This roll includes:
- Redefinition of zx_handle_t from int to unsigned int, requiring fixes
to call-sites that tried to reinterpret_cast<zx_handle_t>(int).
- Move of sysroot files to per-architecture sub-directories, as part of
ARM64 bring-up.
Bug: 707030, 772031
Change-Id: If65230b296c9a07eee3460cb9abbd5e7f7beeb30
Reviewed-on: https://chromium-review.googlesource.com/703989
Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507143}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f88170e15156f33171b07465cc0b6042dd130ef4
Should no longer be used.
Bug:
Change-Id: I1360752e68c3748b1ababdc77d3cadcb17ddf142
Reviewed-on: https://chromium-review.googlesource.com/704191
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Benjamin Pastene <bpastene@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#507126}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3a199ee2ad5a214e4dccc5e6834f9e92ca72cf74
If someone has managed to get a normally filtered file into
sources we need to not accidentally remove it again. This
problem triggered in net where android targets wanted to use
Linux files.
Bug: 772146
Change-Id: Ibca410c78c5a59e9f49c1d0e302204b598df25ca
Reviewed-on: https://chromium-review.googlesource.com/703694
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Original-Commit-Position: refs/heads/master@{#507004}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 1be36b5808783c7f484b8d3bff73e04f29198509
This makes builds slightly more position-independent and
should improve goma caching. This is a reland of
r486793 now that the issues have hopefully been addressed.
R=pcc@chromium.org, thakis@chromium.org, manojgupta@chromium.org
BUG=712797
Change-Id: Ief5392b2f64b6c4bc5192f65ac2cdda65733fe9b
Reviewed-on: https://chromium-review.googlesource.com/701464
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506973}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 952c0b68c69983473ca3353d413537b15880f261
MIPS support was lacking in GN, only MIPS32 in combination with
CLANG was working properly.
This CL implements support for other flavors of MIPS, for
both CLANG and GCC compilers, in the context of V8 project that
needs it.
Bug:
Change-Id: Iaa4b4314cafe1631c40d75c151a82d52aa851131
Reviewed-on: https://chromium-review.googlesource.com/677302
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506889}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4d62f13f73427a9c9881fe3249ceeebbe2226d4b
Part of the cleanup of use_ash.
This is left over from the days when use_ash was true
for is_linux, so chromecast needed to explicitly
disable use_ash.
Bug: 673826
Change-Id: I9f2613a1e1bf636d0dc69ab1341fdfd75b279414
Reviewed-on: https://chromium-review.googlesource.com/692709
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Stephen Lanham <slan@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506878}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 1cceec1268d60f1fa986301722efcf99bb2ebb9f
This is a reland of 1dd22ad042686bbf63b2f89efb466528cc682ffe
Original change's description:
> Android: Allow per-target lint suppression configuration
>
> This change allows for Android lint suppression configurations
> to be defined on a per-target basis (assuming said target is
> "Android lint capable") rather than having one global config.
> This will allow embedders to keep upstream's lint config for
> Chromium targets (w/o patching), while using a separate config
> for the embedding application.
>
> Bug: 737897
> Change-Id: Ieccb95767e0ce541522d7a53edbe734c5bbfe6dc
> Reviewed-on: https://chromium-review.googlesource.com/698297
> Reviewed-by: Andrew Grieve <agrieve@chromium.org>
> Commit-Queue: Andrew Grieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#506393}
Bug: 737897
Change-Id: I4d1aecea7d4893f8f525d53a13b4044f27a17221
Reviewed-on: https://chromium-review.googlesource.com/701317
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506862}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 78485ef14d15b0b51d6f49d7231f44a343bd468f
This includes:
- ensuring that symlinks that CIPD creates for files currently
managed by update_third_party_deps.py get removed by that
script.
- changing switching to copy_ex in process_java_prebuilt s.t.
symlinks are correctly handled by that template.
Bug: 755920
Change-Id: I1a75ae3acd96ce827401d8d58f8f1127ad09eadb
Reviewed-on: https://chromium-review.googlesource.com/701495
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: John Budorick <jbudorick@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506821}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c74acf2507bf54f87a72e4140e4e8e994dda84cd
This provides a toolchain target for aarch64 Fuchsia and fixes a linux
assumption in the generic compiler setup. The Fuchsia SDK provides a
sysroot for aarch64 and the clang toolchain used by Chromium
understands the aarch64-fuchsia target already.
Bug: 772031
Change-Id: I6537b53d598afd2a0185870495261be8bc395c87
Reviewed-on: https://chromium-review.googlesource.com/701932
Commit-Queue: James Robinson <jamesr@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506783}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b352cae42ca9388cb9ac66818ee97005c5e204a3
Record UMA once during startup only for the browser process.
Bug: 768497
Change-Id: I24fa3eebe812ee4dc423390535e7b52ab8c6fcd1
Reviewed-on: https://chromium-review.googlesource.com/699697
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506595}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d0431dbd64a4c7f45125f9f23779cce1ec57d021
This reverts commit 1dd22ad042686bbf63b2f89efb466528cc682ffe.
Reason for revert:
Breaks when lint_suppressions_file is assigned within
//build_overrides/build.gni
Original change's description:
> Android: Allow per-target lint suppression configuration
>
> This change allows for Android lint suppression configurations
> to be defined on a per-target basis (assuming said target is
> "Android lint capable") rather than having one global config.
> This will allow embedders to keep upstream's lint config for
> Chromium targets (w/o patching), while using a separate config
> for the embedding application.
>
> Bug: 737897
> Change-Id: Ieccb95767e0ce541522d7a53edbe734c5bbfe6dc
> Reviewed-on: https://chromium-review.googlesource.com/698297
> Reviewed-by: Andrew Grieve <agrieve@chromium.org>
> Commit-Queue: Andrew Grieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#506393}
TBR=agrieve@chromium.org,justmoto@amazon.com
Change-Id: Ib15a61731179cc9ffc8d415844cfe8fbbc8e68eb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 737897
Reviewed-on: https://chromium-review.googlesource.com/701014
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506475}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2898491636d1bfc1bfddee39f07c7b8a6e1c6eb8
I've been testing the changes on net_parse_cookie_line_fuzzer,
which is a fuzz target of average size written in C++.
Improvements step by step:
0) Original configuration, Coverage + ASan:
158 MB 1,000 exec/s
1) Prohibit ASan (and other sanitizers), use only Coverage instrumentation:
132 MB same speed
The following change hasn't been applied, but let's keep it in the description FTR:
- 2) Disable sanitizer coverage (which is different from clang source-based coverage):
- 90 MB 1,088 exec/s (speed +8-10%)
3) Avoid optimize_for_fuzzing config (i.e. use -O3 instead of -O1 for coverage build):
Same size 1,773 exec/s (speed +60-65% on top of the previous change)
4) Disable coverage for libFuzzer source code:
88 MB 3,988 exec/s (speed +125% on top of previous changes)
5) Disable coverage for libc++ and libc++abi sources
(https://chromium-review.googlesource.com/#/c/chromium/buildtools/+/693570):
86 MB 4,110 exec/s (speed +3% on top of previous changes)
In total, for that particular target:
- build size reduced by ~45%
- execution speed increased by ~310%
I've also tested the changes with zlib_uncompress_fuzzer (a tiny fuzz target for C-library):
- build size reduced by ~83%
- execution speed increased by ~120%
I haven't measured impact on the other fuzz targets, so it may vary a lot,
but the result seems to be quite significant anyway.
Bug: 759794
Change-Id: Icf61c979e38d0f7849ab7281bd9e24cf2b7a7d02
Reviewed-on: https://chromium-review.googlesource.com/693564
Reviewed-by: Brett Wilson <brettw@chromium.org>
Reviewed-by: Oliver Chang <ochang@chromium.org>
Commit-Queue: Abhishek Arya <inferno@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506454}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c8fee977deb6f47aaf602813b00428adfe7baa74
We have not shipped Windows Ash for years. There is a 1:1 mapping
between USE_ASH and OS_CHROMEOS, so consolidate them.
The BUILD.gn files will be cleaned up separately.
Bug: 673826
Test: compiles, gn check on Chrome OS, Linux and Linux Ozone
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I5ebf64a133d1032f0d7864ed1a180d0f0b170da1
Reviewed-on: https://chromium-review.googlesource.com/692699
Commit-Queue: James Cook <jamescook@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506410}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f9d34d23b29effc1aacc57463cabe47f30dc08b3
LLD is not applicable when using a different compiler (GCC at least)
Bug: chromium:607968
Change-Id: I5f4f53a5c91c52cc5ff9a0b9c5f2c5043c7add46
Reviewed-on: https://chromium-review.googlesource.com/700456
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Oleh Prypin <oprypin@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506409}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7cc7a4d697d18f6d2755196f30a42131aa1616c2
This change allows for Android lint suppression configurations
to be defined on a per-target basis (assuming said target is
"Android lint capable") rather than having one global config.
This will allow embedders to keep upstream's lint config for
Chromium targets (w/o patching), while using a separate config
for the embedding application.
Bug: 737897
Change-Id: Ieccb95767e0ce541522d7a53edbe734c5bbfe6dc
Reviewed-on: https://chromium-review.googlesource.com/698297
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506393}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 1dd22ad042686bbf63b2f89efb466528cc682ffe
Previous attempt: https://chromium-review.googlesource.com/c/chromium/src/+/698292
This time, the use_lld default uses current_{os,cpu} instead of
target_{os,cpu}, which prevents it from defaulting to true when
targeting NaCl.
Bug: 607968, 682777
Change-Id: Iedf5b2f9850df249172b7b543af312318e9beae9
Reviewed-on: https://chromium-review.googlesource.com/699741
Commit-Queue: Peter Collingbourne <pcc@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506313}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5581f58e288ebc2a6963dd434335d224b8f6297f
Was broken in several ways:
1. Permissions were not being granted upon install.
2. Needed custom logic to look at instrumentation name in meta-data.
3. BootstrapApplication logic needed to use the correct component name.
This logic has always been wrong, but never an issue until now.
4. BaseChromiumAndroidJUnitRunner needs to tell the Junit TestRequestBuilder
the location of all incremental dex files. This would actually also
be an issue when using AndroidJUnitRunner directly, except that
test_runner.py passes an explicit list of classes gleaned via
proguard, so no "find all classes" logic is needed in this case.
Bug: 762024
Change-Id: Ibc3880fdff14829d74926d1c576114b8551a5c9f
Reviewed-on: https://chromium-review.googlesource.com/688715
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Yoland Yan <yolandyan@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506296}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ca127560828fdaa1f72d81d7b81c2eabe61b2cd2
This reverts commit dd160677bc6cd8a5ab468c187f61902a8fbf4b41.
Reason for revert:
Broke Linux Builder (dbg)
https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29/builds/116417
Original change's description:
> Switch to LLD as the default linker on Linux/x64.
>
> Until recently the main feature that we needed that was not fully
> implemented in LLD was --gdb-index; this feature has now been
> implemented, so we can start using LLD in more build modes than just
> official builds. LLD's implementation of --gdb-index requires all
> translation units to be compiled with -ggnu-pubnames, so this patch
> does that.
>
> Also enable --gdb-index in official builds; the corrupt debug info
> error no longer appears when using LLD.
>
> Perf numbers as follows, median of 10 runs.
>
> Release build (is_debug=false use_goma=true): gold 19.73s, lld 10.22s.
> Debug build (is_debug=true use_goma=true): gold 26.27s, lld 18.38s
>
> Bug: 607968, 682777
> Change-Id: Ia63abc15e61d77202d2ca738e6a8bdb0cfe98144
> Reviewed-on: https://chromium-review.googlesource.com/698292
> Commit-Queue: Peter Collingbourne <pcc@chromium.org>
> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
> Reviewed-by: Nico Weber <thakis@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#506224}
TBR=thakis@chromium.org,dpranke@chromium.org,pcc@chromium.org
Change-Id: Ic10bd05e43be064b66dbb6ef48063689d55dc85a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 607968, 682777
Reviewed-on: https://chromium-review.googlesource.com/699534
Reviewed-by: Peter Collingbourne <pcc@chromium.org>
Commit-Queue: Peter Collingbourne <pcc@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#506231}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6de9affa7a1bef1728d883462f44cbbae5326e6a