Граф коммитов

10669 Коммитов

Автор SHA1 Сообщение Дата
svaldez 61b515655e Switching iOS to use BoringSSL
This switches use_openssl on for iOS.

BUG=591545

Review URL: https://codereview.chromium.org/1872813002

Cr-Original-Commit-Position: refs/heads/master@{#387011}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 88283eca96ddc06440a778132f969a3e8360dbbf
2016-04-13 17:14:49 +00:00
maniscalco edd2bc64af Update blimp build bot args match build/args/blimp_engine.gn
Reorder args so it's easier to spot differences.

Remove gyp_defines because blimp is not designed to build with gyp.

BUG=602696

Committed: https://crrev.com/55bf089c901fb38204b642edc847b6259697ee9e
Cr-Commit-Position: refs/heads/master@{#386760}

Review URL: https://codereview.chromium.org/1878273003

Cr-Original-Commit-Position: refs/heads/master@{#387010}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: aa26b499f5f41c9e62414496df5c4430f9b579cd
2016-04-13 17:09:42 +00:00
rsesek 5e4ffad0fb Delete build/mac/change_mach_o_flags.py and friends.
This was only used to mark executable as non-PIE. After the non-PIE Chromium
helper was removed, the last remaining use was for Valgrind. But Valgrind
support was also recently removed, so this can go away entirely.

change_mach_o_flags.py did explicitly set the MH_NO_HEAP_EXECUTION flag on
executables, but this is not necessary on x86_64 where the architecture default
is to not have an executable heap.

BUG=520680

Review URL: https://codereview.chromium.org/1885593003

Cr-Original-Commit-Position: refs/heads/master@{#387007}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 806f385a1f9c2814de91bd1a98a50e74c4fa9a81
2016-04-13 16:47:26 +00:00
sdefresne c4dee2af5e Revert of Work around a bug where create_bundle() is ignoring data_deps() in iOS GN build. (patchset #1 id:1 of https://codereview.chromium.org/1845753002/ )
Reason for revert:
gn binary as been fixed and create_bundle now causes its data_deps to be built, reverting this temporary change.

Original issue's description:
> Work around a bug where create_bundle() is ignoring data_deps() in iOS GN build.
>
> It looks like create_bundle() is not checking for data_deps when it
> generates its ninja rules, and as a result we don't build iossim
> when we build base_unittests.app. By shifting the data_dep to the
> underlying executable target, this works around the issue, but we
> should probably fix the GN code generator for create_bundle() instead.
>
> R=sdefresne@chromium.org
> BUG=599203
>
> Committed: https://crrev.com/cd03fa72212077a789679a77992529c3aa6c08fe
> Cr-Commit-Position: refs/heads/master@{#384141}

TBR=dpranke@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=599203

Review URL: https://codereview.chromium.org/1883843002

Cr-Original-Commit-Position: refs/heads/master@{#386994}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d76422e697ad4de2edac5b23f12da1ee5e9dcd56
2016-04-13 15:16:34 +00:00
fsamuel 8da94025e2 Move LatencyInfo to ui/latency_info
Components such as cc/ and gpu/ that depend on ui::LatencyInfo
should not pull in all of ui/events.

This CL pulls ui::LatencyInfo into a separate component to
simplify this dependency. cc/ and gpu/ no longer depend on
ui/events.

BUG=601871
TBR=jam@chromium.org for top level BUILD.gn and build/all.gyp
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Committed: https://crrev.com/168cca4ea0abb22aa05575ec94c35d429dc08993
Cr-Commit-Position: refs/heads/master@{#386889}

Review URL: https://codereview.chromium.org/1871233002

Cr-Original-Commit-Position: refs/heads/master@{#386992}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7cc1dcccd28336397a468d1d5caa3be92675b456
2016-04-13 15:14:43 +00:00
manzagop 9f73de0bb6 Capture a report on failed browser rendez-vous.
Overview:
Browser process hangs are believed to be responsible for a large fraction of browser unclean shutdowns. This patch is to get visibility into the problem on windows using the Kasko reporter.

Note:
This functionality is hidden behind buildflags, and only triggers for users with stats collection consent on canary/unspecified channels. At this time, it is only considered for one-off releases.

Details:
- Use of the Kasko reporter is required for its ability to capture reports from other processes.
- Pulls out Kasko reporting code to kasko_utils
- Invoke Kasko on failed rendez-vous.
- Hidden behind build flags (kasko and kasko-rdv-capture).

BUG=478209

Review URL: https://codereview.chromium.org/1844023002

Cr-Original-Commit-Position: refs/heads/master@{#386983}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f071e88974318cec29c02bd5b92fe61868da8569
2016-04-13 14:37:17 +00:00
Nico Weber 31466d3b44 clang/win: Disable incremental linking.
MSVC 2015's linker regressed incremental linking with clang, so turn it off
for now.

Going forward, hopefully we can get that fixed, or we can switch to
linking with lld.

BUG=595702
TBR=dpranke

Review URL: https://codereview.chromium.org/1884973002 .

Cr-Original-Commit-Position: refs/heads/master@{#386978}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 9f230704fde72e9ae4a7a023b6e6c3d8666e920f
2016-04-13 13:41:14 +00:00
dgn e388e917d3 [gmscore] Allow specifying resource files to whitelist for preprocess
BUG=599954

Review URL: https://codereview.chromium.org/1849403003

Cr-Original-Commit-Position: refs/heads/master@{#386970}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 577d5e394ee173323c0df50d451e379e76e37b6a
2016-04-13 12:13:25 +00:00
sdefresne caad3ed01a [iOS/GN] Convert //ios/third_party/ochamcrest to build a framework.
Add support for copying public headers to the ios_framework_bundle
template and use this to implement the //ios/third_party/ochamcrest
target.

Add a set_defaults for ios_framework_bundle and mac_framework_bundle
to build/config/BUILDCONFIG.gn so that overriding "configs" works as
expected.

BUG=599322

Review URL: https://codereview.chromium.org/1879493002

Cr-Original-Commit-Position: refs/heads/master@{#386957}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8fab21c694073ca4db23495b715770385c597e1a
2016-04-13 10:15:21 +00:00
mmoroz 7cb527934d [libfuzzer] Add -fsanitize=shift for is_ubsan_security flag.
R=aizatsky@chromium.org, dpranke@chromium.org, ochang@chromium.org
BUG=539572

Review URL: https://codereview.chromium.org/1881773003

Cr-Original-Commit-Position: refs/heads/master@{#386950}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: edf1be7455469553ff6e6c002d261e831da54099
2016-04-13 09:46:35 +00:00
sdefresne 96bad49eeb Revert "[iOS] Defaults to use system libjpeg on iOS."
Fix the configuration of libjpeg_turbo to build on iOS by using the
same settings as Mac. This is not used by Chrome on iOS AFAIK, but
appears to be used by WebRTC.

BUG=602682

Review URL: https://codereview.chromium.org/1886443002

Cr-Original-Commit-Position: refs/heads/master@{#386941}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cb3f4114b1b74302570e17e09b59b097d6ee406b
2016-04-13 09:07:22 +00:00
vabr ce48f32a3e Revert of Move LatencyInfo to ui/latency_info (patchset #14 id:260001 of https://codereview.chromium.org/1871233002/ )
Reason for revert:
Highly suspected of breaking Win GN build. More details in http://crbug.com/601871#c2.

Today's sheriff

Original issue's description:
> Move LatencyInfo to ui/latency_info
>
> Components such as cc/ and gpu/ that depend on ui::LatencyInfo
> should not pull in all of ui/events.
>
> This CL pulls ui::LatencyInfo into a separate component to
> simplify this dependency. cc/ and gpu/ no longer depend on
> ui/events.
>
> BUG=601871
> TBR=jam@chromium.org for top level BUILD.gn and build/all.gyp
> CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
>
> Committed: https://crrev.com/168cca4ea0abb22aa05575ec94c35d429dc08993
> Cr-Commit-Position: refs/heads/master@{#386889}

TBR=tdresser@chromium.org,sky@chromium.org,piman@chromium.org,dcheng@chromium.org,jam@chromium.org,fsamuel@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=601871

Review URL: https://codereview.chromium.org/1883763002

Cr-Original-Commit-Position: refs/heads/master@{#386930}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ab57159df92cf956577149ce8d5c482e4c53a01b
2016-04-13 07:30:21 +00:00
ben 30f9d47d65 Move //mojo/services tracing & catalog to //services.
TBR=jam@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1878893002

Cr-Original-Commit-Position: refs/heads/master@{#386921}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7095d1a47fe3897b1a7f9d43a25f05cb1af3ea8b
2016-04-13 06:16:23 +00:00
nednguyen aa8f13d798 Revert of Update blimp build bot args match build/args/blimp_engine.gn (patchset #4 id:60001 of https://codereview.chromium.org/1878273003/ )
Reason for revert:
Speculative revert: this breaks page_cycler.intl_hi_ru and page_cycler.intl_es_fr_pt-BR benchmarks

Original issue's description:
> Update blimp build bot args match build/args/blimp_engine.gn
>
> Reorder args so it's easier to spot differences.
>
> Remove gyp_defines because blimp is not designed to build with gyp.
>
> BUG=602696
>
> Committed: https://crrev.com/55bf089c901fb38204b642edc847b6259697ee9e
> Cr-Commit-Position: refs/heads/master@{#386760}

TBR=dpranke@chromium.org,maniscalco@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=602696

Review URL: https://codereview.chromium.org/1881343002

Cr-Original-Commit-Position: refs/heads/master@{#386912}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 76edf5cc66829c9a2aed30dab102de2cc16da1c7
2016-04-13 04:07:34 +00:00
fsamuel 1b9f9aabbe Move LatencyInfo to ui/latency_info
Components such as cc/ and gpu/ that depend on ui::LatencyInfo
should not pull in all of ui/events.

This CL pulls ui::LatencyInfo into a separate component to
simplify this dependency. cc/ and gpu/ no longer depend on
ui/events.

BUG=601871
TBR=jam@chromium.org for top level BUILD.gn and build/all.gyp
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1871233002

Cr-Original-Commit-Position: refs/heads/master@{#386889}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 168cca4ea0abb22aa05575ec94c35d429dc08993
2016-04-13 01:41:22 +00:00
thakis 59ba47df12 Port use_lld flag from gyp to gn.
BUG=498033

Review URL: https://codereview.chromium.org/1880873004

Cr-Original-Commit-Position: refs/heads/master@{#386876}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 52d5c52fa34e5d312e2622b7799111bb63781403
2016-04-13 00:31:31 +00:00
agrieve cbedd34f34 Fix GN deps needed by third_party/WebKit/Tools/Scripts/run-webkit-tests
BUG=587083
TBR=mkwst

Review URL: https://codereview.chromium.org/1882533004

Cr-Original-Commit-Position: refs/heads/master@{#386870}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 993374cf1ac90ef6fbb188017ea2fb445cf0eb09
2016-04-13 00:07:09 +00:00
rsesek 37dfe0c295 Rework build/mac/tweak_info_plist.py to not rely on environment variables.
Instead, pass the --plist to tweak on the command line. This way the
script can be used in both GYP and GN builds.

There is one behavior change: previously passing --keystone=1 would only
insert the Keystone keys if env['CONFIGURATION']=='Release' and after this
change, the keys will be added regardless of the build configuration if the
flag is passed.

BUG=297668

Review URL: https://codereview.chromium.org/1881053002

Cr-Original-Commit-Position: refs/heads/master@{#386854}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: adf34911dcb45fab4d7e13c4d7ef43e3dea840eb
2016-04-12 23:21:23 +00:00
bcf d67f5f53a3 Add GN arg to optimize for size
BUG=internal b/27889508

Review URL: https://codereview.chromium.org/1881193002

Cr-Original-Commit-Position: refs/heads/master@{#386826}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3bca76f6d2a14ba232c08fa133d0186679a3f78e
2016-04-12 22:07:52 +00:00
svaldez ddc85424d8 Fixing BoringSSL on iOS
This adds the final changes to cert_verify_proc_ios and various tests
in order to prepare for the switchover from NSS to BoringSSL on iOS.

BUG=591545

Review URL: https://codereview.chromium.org/1871043003

Cr-Original-Commit-Position: refs/heads/master@{#386819}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b7f886b3d364497ff0422e9808d8ad04ffcb5c4d
2016-04-12 21:58:43 +00:00
vmpstr 816e79b3fe Revert of build: Enable complex class copy ctor check by default. (patchset #4 id:60001 of https://codereview.chromium.org/1826693002/ )
Reason for revert:
This breaks win_clang

Original issue's description:
> build: Enable complex class copy ctor check by default.
>
> This patch ensures that our FindBadConstructs plugin starts detecting
> when a complex class requires an out of line copy constructor.
>
> R=thakis@chromium.org, dcheng@chromium.org
> BUG=436357
>
> Committed: https://crrev.com/319a17cb9761369818c8d8405da8d65c0a8bbc22
> Cr-Commit-Position: refs/heads/master@{#386787}

TBR=jochen@chromium.org,dcheng@chromium.org,thakis@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=436357

Review URL: https://codereview.chromium.org/1880243002

Cr-Original-Commit-Position: refs/heads/master@{#386794}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6a8849450d8ba833451921eee4adb2b1a1f4d84b
2016-04-12 20:29:03 +00:00
vmpstr 7792e13f1b build: Enable complex class copy ctor check by default.
This patch ensures that our FindBadConstructs plugin starts detecting
when a complex class requires an out of line copy constructor.

R=thakis@chromium.org, dcheng@chromium.org
BUG=436357

Review URL: https://codereview.chromium.org/1826693002

Cr-Original-Commit-Position: refs/heads/master@{#386787}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 319a17cb9761369818c8d8405da8d65c0a8bbc22
2016-04-12 20:02:56 +00:00
forney c2d01052b5 ozone/platform/wayland: Implement SurfaceOzoneEGL
BUG=578890

Review URL: https://codereview.chromium.org/1704243003

Cr-Original-Commit-Position: refs/heads/master@{#386765}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: bc96672e1982f3a86e4058a2f3f8609b9bc592c8
2016-04-12 19:40:49 +00:00
maniscalco 0cf2c93f1c Update blimp build bot args match build/args/blimp_engine.gn
Reorder args so it's easier to spot differences.

Remove gyp_defines because blimp is not designed to build with gyp.

BUG=602696

Review URL: https://codereview.chromium.org/1878273003

Cr-Original-Commit-Position: refs/heads/master@{#386760}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 55bf089c901fb38204b642edc847b6259697ee9e
2016-04-12 19:36:58 +00:00
bpastene 63e73b31ce Add a content setting property to disable first-use popups.
For reference:
http://developer.android.com/reference/android/provider/Settings.Secure.html#SKIP_FIRST_USE_HINTS

BUG=

Review URL: https://codereview.chromium.org/1869383004

Cr-Original-Commit-Position: refs/heads/master@{#386713}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b6b66cba1eb7a6a66165f7e6ad8aa4d30c060436
2016-04-12 16:48:54 +00:00
agrieve f09b32b5c7 Fix instrumentation test proguard parser when gmscore has annotations
Most output with annotations look like:
    Class member attributes (count = 2):
    - Deprecated attribute
    - Runtime visible annotations attribute:
      - Annotation [Ljava/lang/Deprecated;]:
  - Method:       <init>(Ljava/security/cert/X509Certificate;)V

But it was choking when it hit:
    Class member attributes (count = 2):
    - Runtime invisible annotations attribute:
      - Annotation [Landroid/support/annotation/Nullable;]:
    - Signature attribute:
      - Utf8 [()Ljava/util/List<Ljava/lang/String;>;]

The code was treating - Utf8 as an annotation-related line.

BUG=525035

Review URL: https://codereview.chromium.org/1869083002

Cr-Original-Commit-Position: refs/heads/master@{#386706}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 44a0b274c777c0a6aee6f5ba722c435e71d54273
2016-04-12 16:22:49 +00:00
agrieve cacb1789de Allow Android test wrapper scripts to specify their timeouts in GN/GYP
The aim here is to make local runs use the same timeout as bots.

BUG=599919

Review URL: https://codereview.chromium.org/1874393002

Cr-Original-Commit-Position: refs/heads/master@{#386696}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3ac557f0d4da0c7fff4b554413bc784c1c63a260
2016-04-12 15:53:07 +00:00
rsesek 5e05c1d213 [Mac/GN] Use the right output name for Mac frameworks.
This uses the new output_prefix_override flag to not prefix framework
shared libraries with "lib" and overrides the output_extension to be
empty.

BUG=297668

Review URL: https://codereview.chromium.org/1871143002

Cr-Original-Commit-Position: refs/heads/master@{#386692}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c7905381e103462334ea24c20f1de670d89bd1ec
2016-04-12 15:29:32 +00:00
agrieve 727d0e9313 Stop including android lint results in runtime_deps
BUG=593416

Review URL: https://codereview.chromium.org/1876823003

Cr-Original-Commit-Position: refs/heads/master@{#386679}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 9b7e031dd50a0381dc25d5c487b8631f886bf079
2016-04-12 14:24:30 +00:00
sdefresne 7f882d6196 [iOS/OSX] Refactor mac_framework so that it can be shared with iOS.
Extract commonalities to framework_bundle and rename mac_framework to
mac_framework_bundle for consistency & introduce ios_framework_bundle.

Rename app template from build/config/ios/rules.gni to ios_app_bundle
for consistency.

BUG=None

Review URL: https://codereview.chromium.org/1871413002

Cr-Original-Commit-Position: refs/heads/master@{#386673}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 1a969442c07ee8642074b4f204cdfb4c9e630995
2016-04-12 13:54:58 +00:00
kylechar d30a692c4b Only compile ozone_platform_headless for headless.gn.
Ensure that ozone_platform_headless is the only ozone platform compiled
in the sample headless configuration. Other ozone platforms are included
by default and aren't necessarily desired.

BUG=none

Review URL: https://codereview.chromium.org/1876273002

Cr-Original-Commit-Position: refs/heads/master@{#386672}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7dfdf188b6c9bfc4e208949a1be8af557c0264b0
2016-04-12 13:48:20 +00:00
sdefresne 54fce8bc3b [GN] Fix -g flags to be consistent between gyp & gn on iOS.
The gyp build uses -gdwarf-2 debug level so change GN to also use
that level instead of -g2 when targetting iOS.

BUG=None

Review URL: https://codereview.chromium.org/1873133002

Cr-Original-Commit-Position: refs/heads/master@{#386656}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fa0530bfbfe97a969c23a00cb56d4f8d409c5eb9
2016-04-12 12:08:07 +00:00
kjellander 6396c6e12c Revert of [Devil] Replace generated Devil config with jinja template. (patchset #8 id:140001 of https://codereview.chromium.org/1812383003/ )
Reason for revert:
I believe this change breaks content_browsertests on every Android tester in chromium.android.

Examples:

https://build.chromium.org/p/chromium.android/builders/Lollipop%20Phone%20Tester/builds/4031
https://build.chromium.org/p/chromium.android/builders/Marshmallow%2064%20bit%20Tester/builds/1457
https://build.chromium.org/p/chromium.android/builders/KitKat%20Tablet%20Tester/builds/3759

Original issue's description:
> [Devil] Replace generated Devil config with jinja template.
>
> This change will hopefully allow us to configure devil more based
> on the build config. For example, it will let us use the same
> android_sdk_tools to run tests that we use to build with.
>
> BUG=
>
> Committed: https://crrev.com/c2aa4243a9e00a2d0e254d9f6f73b41c00cb644d
> Cr-Commit-Position: refs/heads/master@{#386461}

TBR=droger@chromium.org,jbudorick@chromium.org,mikecase@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.chromium.org/1885503002

Cr-Original-Commit-Position: refs/heads/master@{#386648}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d408713145a9b75e155e1bf106105803ad40b1bd
2016-04-12 11:00:20 +00:00
pcc a3d5e7e0a3 Use correct target for app_list_shower_unittests.
Follow-up to https://codereview.chromium.org/1875743002. Should fix
ClangToTLinux bot.

BUG=557408
R=hans@chromium.org,thakis@chromium.org

Review URL: https://codereview.chromium.org/1881553003

Cr-Original-Commit-Position: refs/heads/master@{#386501}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3f57662c89f0ab2cabd4840bff52b6376faf5555
2016-04-11 22:38:32 +00:00
brucedawson 8b2c02d30e Fix C4334 (32-bit shift converted to 64-bit) warnings
VS 2015's warning about 32-bit shifts that are then assigned to a
64-bit target fires more frequently than in VS 2013. This type of
code triggers it:

  int64_t size = 1 << shift_amount;

Because the '1' being shifted is a 32-bit int the result of the shift
will be a 32-bit result, so assigning it to a 64-bit variable is just
misleading and can lead to undefined behavior and lost bits.

During the port to VS 2015 this warning was globally suppressed. This
removes that global suppression.

There were ~nine C4334 warnings in Chromium with most of them being in
external repos such as pdfium, skia, webrtc, and angle. The external
repos have all been fixed. This fixes the Chromium repo warnings and
enables C4334 in gn builds.

In these cases the code that triggers it was assigning to a size_t
so it only showed up on 64-bit builds. In some cases there was already a
cast but it was after the shift, which is not as good as before the
shift. In one case the 32-bit constant was completely superfluous.

The Chromium specific warnings were:
 net\base\mime_sniffer_perftest.cc(93)
 third_party\webkit\source\platform\heap\heappage.cpp(738)
 net\spdy\hpack\hpack_huffman_table.cc(172)
 media\filters\vp8_parser.cc(157)
   warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits

BUG=593448

Review URL: https://codereview.chromium.org/1858423002

Cr-Original-Commit-Position: refs/heads/master@{#386480}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c8615da7ebb48668de21b3e23edec64c1685ffbb
2016-04-11 21:39:30 +00:00
maniscalco 7f63069e73 Update blimp_engine.gn to use headless ozone platform
Disable ozone auto platform selection for blimp engine builds.  Ensure
blimp does not have a dependency on X11.

BUG=602312

Review URL: https://codereview.chromium.org/1881493003

Cr-Original-Commit-Position: refs/heads/master@{#386469}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 83282ff073fe045d06df62468e9683db17f18e8c
2016-04-11 21:05:37 +00:00
mikecase a39a81386a [Devil] Replace generated Devil config with jinja template.
This change will hopefully allow us to configure devil more based
on the build config. For example, it will let us use the same
android_sdk_tools to run tests that we use to build with.

BUG=

Review URL: https://codereview.chromium.org/1812383003

Cr-Original-Commit-Position: refs/heads/master@{#386461}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c2aa4243a9e00a2d0e254d9f6f73b41c00cb644d
2016-04-11 20:28:16 +00:00
primiano 5ac728f6a3 Reland of Enable allocator shim for Android (crrev.com/1875043003)
Reason for reland:
The original CL was reverted by crrev.com/1881523003 because it broke
clang builds. This CL contains the fix for clang (see diff between
patch-set 1 and 2).
The culprit of the fix is that LLVM libc++ uses _NOEXCEPT instead
of glibc's __THROW. The absence of it was causing errors like the
following:

../../base/allocator/allocator_shim_override_cpp_symbols.h:20:25: error: function previously declared with an explicit exception specification redeclared with an implicit exception specification [-Werror,-Wimplicit-exception-spec-mismatch]
SHIM_ALWAYS_EXPORT void operator delete(void* p) __THROW

Original issue's description:
> Enable allocator shim for Android
>
> This is a follow-up to crrev.com/1719433002, which introduced the
> shim for Android, and enables it by default by setting
> use_experimental_allocator_shim=true for Android.
>
> Build/Perf sheriffs heads up
> ----------------------------
> If you see any build error or crash related with __wrap_malloc,
> __wrap_free, __real_malloc, __real_free, etc this CL is to blame.
>
> Performance considerations
> ------------------------
> Binary size diff (GN, arm, static, official build): 24k
>
> I did a mixture of local and trybots run to estimate the perf impact
> of this change. Didn't get any conclusive data, everything I tried
> seems in the same ballpark, below noise levels. More in details:
>
> cc_perftests.PrepareTiles on a Nexus 4.
> Rationale of the choice: in a previous CL (crbug.com/593344), this
> benchmark revealed the presence of two mfences in the malloc path.
> Results: https://goo.gl/8VC3Jp in the same ballpark.
>
> page-cycler on Nexus 9 via trybots:
> Results: http://goo.gl/J3i50a seems to suggest that this CL improves
> both warm and cold times in most cases. I doubt it, more likely it's
> noise.
>
> All the other perf trybots failed. The perf waterfall seems to be in a
> bad state in these days.
>
> BUG=550886,598075
> TEST=base_unittests --gtest_filter=AllocatorShimTest.*
> TBR=thakis@chromium.org
>
> Committed: https://crrev.com/ebb95496c73dc0d5ce83968ac619921f154305f7
> Cr-Commit-Position: refs/heads/master@{#386386}

BUG=550886,598075
CC=dalecurtis@chromium.org

Review URL: https://codereview.chromium.org/1875173002

Cr-Original-Commit-Position: refs/heads/master@{#386444}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 88bf797383cd290d9bd23db0045c5fb23e010beb
2016-04-11 19:51:08 +00:00
tsniatowski 13a3732841 Use clang "--target=x" on android to help icecc
Icecc is confused by the two-argument "-target x" form, and decides to compile
everything locally. --target=x makes it happy.

Review URL: https://codereview.chromium.org/1871813003

Cr-Original-Commit-Position: refs/heads/master@{#386419}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e4199397e4c6f32cf6a561e33581d59b5a7a0e9e
2016-04-11 18:26:51 +00:00
thakis cb91682c2c Revert of Enable allocator shim for Android (patchset #2 id:20001 of https://codereview.chromium.org/1875043003/ )
Reason for revert:
Looks like this breaks android clang builds.

Original issue's description:
> Enable allocator shim for Android
>
> This is a follow-up to crrev.com/1719433002, which introduced the
> shim for Android, and enables it by default by setting
> use_experimental_allocator_shim=true for Android.
>
> Build/Perf sheriffs heads up
> ----------------------------
> If you see any build error or crash related with __wrap_malloc,
> __wrap_free, __real_malloc, __real_free, etc this CL is to blame.
>
> Performance considerations
> ------------------------
> Binary size diff (GN, arm, static, official build): 24k
>
> I did a mixture of local and trybots run to estimate the perf impact
> of this change. Didn't get any conclusive data, everything I tried
> seems in the same ballpark, below noise levels. More in details:
>
> cc_perftests.PrepareTiles on a Nexus 4.
> Rationale of the choice: in a previous CL (crbug.com/593344), this
> benchmark revealed the presence of two mfences in the malloc path.
> Results: https://goo.gl/8VC3Jp in the same ballpark.
>
> page-cycler on Nexus 9 via trybots:
> Results: http://goo.gl/J3i50a seems to suggest that this CL improves
> both warm and cold times in most cases. I doubt it, more likely it's
> noise.
>
> All the other perf trybots failed. The perf waterfall seems to be in a
> bad state in these days.
>
> BUG=550886,598075
> TEST=base_unittests --gtest_filter=AllocatorShimTest.*
> TBR=thakis@chromium.org
>
> Committed: https://crrev.com/ebb95496c73dc0d5ce83968ac619921f154305f7
> Cr-Commit-Position: refs/heads/master@{#386386}

TBR=dalecurtis@chromium.org,primiano@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=550886,598075

Review URL: https://codereview.chromium.org/1881523003

Cr-Original-Commit-Position: refs/heads/master@{#386408}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6fdf2cfe0228e221c2cd738edabf3514459d6a89
2016-04-11 18:14:58 +00:00
primiano 0c4bfda95e Enable allocator shim for Android
This is a follow-up to crrev.com/1719433002, which introduced the
shim for Android, and enables it by default by setting
use_experimental_allocator_shim=true for Android.

Build/Perf sheriffs heads up
----------------------------
If you see any build error or crash related with __wrap_malloc,
__wrap_free, __real_malloc, __real_free, etc this CL is to blame.

Performance considerations
------------------------
Binary size diff (GN, arm, static, official build): 24k

I did a mixture of local and trybots run to estimate the perf impact
of this change. Didn't get any conclusive data, everything I tried
seems in the same ballpark, below noise levels. More in details:

cc_perftests.PrepareTiles on a Nexus 4.
Rationale of the choice: in a previous CL (crbug.com/593344), this
benchmark revealed the presence of two mfences in the malloc path.
Results: https://goo.gl/8VC3Jp in the same ballpark.

page-cycler on Nexus 9 via trybots:
Results: http://goo.gl/J3i50a seems to suggest that this CL improves
both warm and cold times in most cases. I doubt it, more likely it's
noise.

All the other perf trybots failed. The perf waterfall seems to be in a
bad state in these days.

BUG=550886,598075
TEST=base_unittests --gtest_filter=AllocatorShimTest.*
TBR=thakis@chromium.org

Review URL: https://codereview.chromium.org/1875043003

Cr-Original-Commit-Position: refs/heads/master@{#386386}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ebb95496c73dc0d5ce83968ac619921f154305f7
2016-04-11 15:10:55 +00:00
primiano df8ab267f6 Introduce allocator shim for Android
This is a follow-up to the work of crrev.com/1675143004 and ports the
shim layer to Android.
Conversely to Linux, on Android symbol interposition is not possible.
This is because Android processes are fork-ed from the Android zygote,
which pre-loads libc.so, and later native code gets dlopen-ed.
Therefore a different approach is used on Android, that is:
 - All linker units that depend on //base:allocator (via //base)
   get the --Wl,-wrap,malloc (& friends) linker flag.
 - Such linker flags causes all symbol references to malloc to be
   rewritten as references to __wrap_malloc.
- The __wrap_malloc & friends symbols are defined by
  allocator_shim_override_linker_wrapped_symbols.h. These symbols
  route the malloc calls inside the shim layer.
 - The shim layer ultimately dispatches the calls to the __real_malloc
   symbol.
 - The special __real_malloc symbols are resolved by the linker (as a
   result of -wrap) against what would have been the original "malloc"
   symbol.

In summary, this entire trickery is transparent to the dynamic loader,
which still sees undefined symbol references to malloc & friend symbols.
Those symbols will be resolved against libc.so (or whatever other weird
choice the Android OEM made) as usual.

An alternative approach would have been just redefining the malloc symbols
and use dlsym() to do the routing to bionic. This has the following
disadvantages:
 - More risky, as Chrome for Android has insane layers of complexity around
   loading (crazylinker pre M, relies on a special flavour of dlopen on M+).
 - Won't be possible to support component builds, as all components
   % libbase.so would resolve malloc against libc.so (unless violating ODR
   and redefining malloc & friends in every component, which smells bad++).

All this trickery is a noop when use_experimental_allocator_shim=false.
This CL does NOT enable the shim by default on Android. This will happen
separately in crrev.com/1875043003

Motivations of this work
------------------------
 - This allows the memory-infra heap-profiler to work on Android
   (design doc: https://goo.gl/UPfbF4).
 - This enables security checks (suicide on malloc()==null via
   the std::new_handler) on Android.
 - This fixes by accident crbug.com/598075 (Some Android device vendor
   forgot to implement posix_memalign on J, as mandated by the NDK,
   causing chrome to crash on startup).

Performance considerations
------------------------
Binary size diff (GN, arm, static, official build): 24k

I did a mixture of local and trybots run to estimate the perf impact
of this change. Didn't get any conclusive data, everything I tried
seems in the same ballpark, below noise levels. More in details:

cc_perftests.PrepareTiles on a Nexus 4.
Rationale of the choice: in a previous CL (crbug.com/593344), this
benchmark revealed the presence of two mfences in the malloc path.
Results: https://goo.gl/8VC3Jp in the same ballpark.

page-cycler on Nexus 9 via trybots:
Results: http://goo.gl/J3i50a seems to suggest that this CL improves
both warm and cold times in most cases. I doubt it, more likely it's
noise.

All the other perf trybots failed. The perf waterfall seems to be in a
bad state in these days.

BUG=550886,598075
TEST=base_unittests --gtest_filter=AllocatorShimTest.*

Review URL: https://codereview.chromium.org/1719433002

Cr-Original-Commit-Position: refs/heads/master@{#386382}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 40b65c66b855b58cb2fda9228b7626f2904581a5
2016-04-11 14:49:11 +00:00
sdefresne f0483d7646 Add sdefresne & rsesek as OWNERS of build/config/{ios,mac}.
BUG=297668

Review URL: https://codereview.chromium.org/1868243002

Cr-Original-Commit-Position: refs/heads/master@{#386298}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 527fd5a724861e4c55a3033de27b441999df0ae4
2016-04-09 16:38:59 +00:00
kbr 722b3e00ce Remove stray references to crash_service.
Stop bundling it in the installer (FILES.cfg). Remove the references
to the crash_service target from the perf builders' targets. (Issue
601762)

It's necessary to proceed with the removal of the start_crash_service
step on the bots, because putting it back now breaks the GPU bots
(Issue 601839).

The BUILD.gn removals are proactive, and not actually used yet.

BUG=601762, 601839

Review URL: https://codereview.chromium.org/1875613004

Cr-Original-Commit-Position: refs/heads/master@{#386239}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4cc1754d4ddb33f39dd9fe9cc9518f78bd840091
2016-04-08 23:16:45 +00:00
cwallez 714785a005 Build app_list_shower only if use_aura=1
This was being build on non-Android platforms and broke the Mac build.
Guard the build with use_aura=1 in Gyp, like it is in GN.

BUG=601932
TBR=thakis@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/1875833002

Cr-Original-Commit-Position: refs/heads/master@{#386214}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 736ad8abed54d7393cf672f4dbc2eea26e08bdcf
2016-04-08 21:56:53 +00:00
mostynb 3a02a8f74d remove klundberg from build/android/OWNERS
Requested over in https://codereview.chromium.org/1875663002/

TBR=mikecase@chromium.org

Review URL: https://codereview.chromium.org/1872043002

Cr-Original-Commit-Position: refs/heads/master@{#386206}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 60f71e0827f10e232dae9a2c71ed682c7c7e5deb
2016-04-08 21:28:49 +00:00
mostynb e7957ef5cd support adding symlinks to zip files
Add symlinks as symlinks to zip files, not their target
in place of the symlink.

Review URL: https://codereview.chromium.org/1875663002

Cr-Original-Commit-Position: refs/heads/master@{#386199}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a7da5525463f06dd692dfc4740b4aeb6ffc6f681
2016-04-08 21:09:48 +00:00
sdefresne 7becd5c6e5 [iOS/OSX] Remove unused GN templates and helper scripts.
BUG=297668

Review URL: https://codereview.chromium.org/1871063002

Cr-Original-Commit-Position: refs/heads/master@{#386191}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e55c3133a80f3f4b3540af8a17f0173ea93f9328
2016-04-08 20:56:47 +00:00
mlopatkin 5adfde60fa Properly set up classpath for Android Lint (and fix its stderr filter)
Lint's stderr filter actually was dropping all output of the tool
instead of just single 'Picking up _JAVA_OPTIONS' line. Fixing this
revealed a lot of internal lint errors.

Most of them were CRC errors from interface JARs, so I switched back to
use normal JARs.

Others were internal errors of InvalidPackageName check which was trying
to check Android SDK classes, because these classes were added to
classpath as a jar. It turns out that Lint treats SDK jar differently but
only if it is properly specified. The only way to tell Lint which SDK
jar to use is to create project.properties file (like in old Ant-based
build). So lint.py now accepts SDK version as a command-line argument
and creates dummy project.properties in temporary folder.

BUG=599052

Review URL: https://codereview.chromium.org/1870073002

Cr-Original-Commit-Position: refs/heads/master@{#386188}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ef5e20f9fe84651ca03fb53ed15910121cedfc0a
2016-04-08 20:28:07 +00:00
hans a80ef5506c Fix isolate_tests after https://codereview.chromium.org/1830293002
BUG=557408

Review URL: https://codereview.chromium.org/1875743002

Cr-Original-Commit-Position: refs/heads/master@{#386127}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: bb7e857fc6e81c40b2b76a90e03d553eb9e682ed
2016-04-08 18:12:38 +00:00