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

2013 Коммитов

Автор SHA1 Сообщение Дата
torne 09733f0b66 android_webview: support building a stub WebView.
Allwo building a WebView APK which doesn't contain any code or assets,
and no resources other than the icon. This APK has a special manifest
tag which will direct the system to provide the missing files from
another "donor" package at runtime that has compatible code (this will
be Monochrome).

To enable this to work, a new APK variable is defined called
"generate_buildconfig_java" so that the BuildConfig.java file can be
omitted from this APK (leaving the generated classes.dex containing
nothing but the AAPT-generated R class for the single icon resource).
The runtime doesn't like having multiple APKs in the classpath which
define the same classes, so we need to omit this BuildConfig to avoid
clashing with Monochrome's.

BUG=664456

Review-Url: https://codereview.chromium.org/2634563002
Cr-Original-Commit-Position: refs/heads/master@{#453911}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cbafd406aff624f7191f76d64e3c0fcb66b60653
2017-03-01 12:01:39 +00:00
aizatsky d25400d942 Switching libfuzzer to trace-pc-guard instrumentation.
This reverts commit 23d6de2177b812285946bce6f459815799d825c5.

BUG=651540,687570

Review-Url: https://codereview.chromium.org/2721593003
Cr-Original-Commit-Position: refs/heads/master@{#453396}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fd938bac4105603ff6a997d5de3cabe39d8869c0
2017-02-27 23:49:52 +00:00
Gordana.Cmiljanovic b8f5c70b06 [MIPS64] Start using Clang IAS for mips64 Android
MIPS64 requires IAS to be explicitly set.

Few important mips64 related changes were missing in Clang.
With Clang roll to r295762 they are included and
clang does not crash anymore.

Now that build is ok we can switch to IAS as well.

BUG=None.
TEST=gn gen out-gn/mips64-clang --args="is_debug=false target_os=\"android\" target_cpu=\"mips64el\" is_clang=true mips_use_msa=false"
     ninja -C out-gn/mips64-clang system_webview_apk

Review-Url: https://codereview.chromium.org/2720833002
Cr-Original-Commit-Position: refs/heads/master@{#453252}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 55850d4e8fca1b77851f90956fe3dd995b01afc0
2017-02-27 17:57:21 +00:00
vmpstr 8e4b7805cd build: Enable auto raw pointer deduction check on linux.
This patch enables the auto raw pointer deduction on linux. The plan
is to also enable this on all the remaining platforms shortly.

R=thakis@chromium.org, danakj@chromium.org
BUG=554600
CQ_INCLUDE_TRYBOTS=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

Review-Url: https://codereview.chromium.org/2697873004
Cr-Original-Commit-Position: refs/heads/master@{#452973}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c2a957c63637a55bb157b2cb24d2f3b5fce206d9
2017-02-24 22:54:43 +00:00
vmpstr d2440392e9 Revert of build: Enable auto raw pointer deduction check on linux. (patchset #2 id:20001 of https://codereview.chromium.org/2697873004/ )
Reason for revert:
Build failure as a result of the flag. I will fix up and reland.

Original issue's description:
> build: Enable auto raw pointer deduction check on linux.
>
> This patch enables the auto raw pointer deduction on linux. The plan
> is to also enable this on all the remaining platforms shortly.
>
> R=thakis@chromium.org, danakj@chromium.org
> BUG=554600
> CQ_INCLUDE_TRYBOTS=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
>
> Review-Url: https://codereview.chromium.org/2697873004
> Cr-Commit-Position: refs/heads/master@{#452880}
> Committed: 4075255b12

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

Review-Url: https://codereview.chromium.org/2713993003
Cr-Original-Commit-Position: refs/heads/master@{#452892}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5187e38a974a9346dd330efc5802888d9b0d1f21
2017-02-24 19:06:55 +00:00
thakis 1123f68274 Roll clang 289944:295762.
Ran `tools/clang/scripts/upload_revision.py 295762`.

Review-Url: https://codereview.chromium.org/2708203002
Cr-Original-Commit-Position: refs/heads/master@{#452889}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c702a811babe12110a84d644ee81b6d99b2f4716
2017-02-24 19:00:01 +00:00
vmpstr daa594bf29 build: Enable auto raw pointer deduction check on linux.
This patch enables the auto raw pointer deduction on linux. The plan
is to also enable this on all the remaining platforms shortly.

R=thakis@chromium.org, danakj@chromium.org
BUG=554600
CQ_INCLUDE_TRYBOTS=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

Review-Url: https://codereview.chromium.org/2697873004
Cr-Original-Commit-Position: refs/heads/master@{#452880}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4075255b128597153622d38d72286ff223d64f33
2017-02-24 18:40:57 +00:00
mmoroz eefc9cc748 Use -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION for libFuzzer and AFL.
R=kcc@chromium.org, ochang@chromium.org
BUG=695292,694495

Review-Url: https://codereview.chromium.org/2711753005
Cr-Original-Commit-Position: refs/heads/master@{#452783}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0ec18db7916d7549ee8fe61bb6063ca8922ed86e
2017-02-24 09:55:20 +00:00
thomasanderson f739e744e7 Add GLIB_VERSION_MAX_ALLOWED to build flags
Release builds with the Jessie sysroot currently have a dependency on
libglib2.0-0 (>= 2.41.1).  However, the version of libglib packaged
with Trusty is only 2.40.  This means users won't be able to install a
debian package on Trusty compiled with the Jessie sysroot.

This CL sets GLIB_VERSION_MAX_ALLOWED to 2.32, because that is the
version that ships with Wheezy.  We can't use a later minimum glib
version because we still build with the Wheezy sysroot, and macro
versions later than GLIB_VERSION_2_32 are not defined.  Keeping it at
2.32 is not harmful.

R=dpranke@chromium.org,thestig@chromium.org

Review-Url: https://codereview.chromium.org/2707203007
Cr-Original-Commit-Position: refs/heads/master@{#452749}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d92ddb31281a028252ed844d200fc58a0efec783
2017-02-24 04:10:33 +00:00
prasadv 3cbac77568 Revert of Fix repeated "-Wunknown-pragmas -Wno-error=unknown-pragmas". (patchset #2 id:40001 of https://codereview.chromium.org/2717493002/ )
Reason for revert:
Looks like this CL is breaking Android Compile on chromium.perf.
https://bugs.chromium.org/p/chromium/issues/detail?id=695534

Original issue's description:
> Fix repeated "-Wunknown-pragmas -Wno-error=unknown-pragmas".
>
> As gn only deduplicate the configs but not the configs' flags, the
> flags "-Wunknown-pragmas -Wno-error=unknown-pragmas" where repeated
> for each dependent target using the "grit" template. Instead add a
> single config adding those flag and reference it from the "grit"
> template to avoid the duplicates.
>
> BUG=None
>
> Review-Url: https://codereview.chromium.org/2717493002
> Cr-Commit-Position: refs/heads/master@{#452543}
> Committed: f673f4c59c

TBR=lizeb@chromium.org,scottmg@chromium.org,sdefresne@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=None

Review-Url: https://codereview.chromium.org/2708923007
Cr-Original-Commit-Position: refs/heads/master@{#452595}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b6c06ef04f90d35dcbdd08c083befa94152c1320
2017-02-23 19:56:50 +00:00
sdefresne 1ec8f3937c Fix repeated "-Wunknown-pragmas -Wno-error=unknown-pragmas".
As gn only deduplicate the configs but not the configs' flags, the
flags "-Wunknown-pragmas -Wno-error=unknown-pragmas" where repeated
for each dependent target using the "grit" template. Instead add a
single config adding those flag and reference it from the "grit"
template to avoid the duplicates.

BUG=None

Review-Url: https://codereview.chromium.org/2717493002
Cr-Original-Commit-Position: refs/heads/master@{#452543}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f673f4c59c985aa8ddfab2b3821c42af25d915e4
2017-02-23 17:48:59 +00:00
sdefresne 2122d3e732 Respect ios_automatically_manage_certs when building EG tests.
When the ios_automatically_manage_certs variable is set to true,
restrict the number of different Bundle Identifiers are used by
the build (as they are currently limited to 10 free certs per day).

BUG=613543

Review-Url: https://codereview.chromium.org/2709223002
Cr-Original-Commit-Position: refs/heads/master@{#452529}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: eb7eea750b9604ca75254a775f9d381514966196
2017-02-23 17:15:57 +00:00
treib b2274b43be Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2709333002/ )
Reason for revert:
This seems to have broken various tests on a Linux bot: https://uberchromegw.corp.google.com/i/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29%2832%29

e.g.: https://chromium-swarm.appspot.com/task?id=3480d58abbe19910&refresh=10&show_raw=1

Relevant line from the output:
../../out/Debug/chrome: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory

Original issue's description:
> Reland of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2711753004/ )
>
> Reason for revert:
> The -Wsentinel error should be fixed by https://codereview.chromium.org/2707313002/
>
> Original issue's description:
> > Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2670623002/ )
> >
> > Reason for revert:
> > Broke the build:
> > https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/63779
> >
> > [3232/5256] CXX obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> > FAILED: obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> > /b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o.d -DLIBGTKUI_IMPLEMENTATION -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_GCONF -DUSE_CUPS -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DTOOLKIT_VIEWS=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_DIRECTWRITE_GASP_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DBORINGSSL_SHARED_LIBRARY -DUSING_V8_SHARED -I../.. -Igen -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gconf/2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/dbus-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/dbus-1.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebp -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/unix-print -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Igen/chrome -Igen/chrome -Igen/chrome -Igen/chrome -Igen/components -Igen/components -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nss -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -Igen/ui/resources -Igen/ui/resources -Igen/ui/views/resources -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -m32 -msse2 -mfpmath=sse -mmmx -momit-leaf-frame-pointer -pthread -mstack-alignment=16 -mstackrealign -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-block-capture-autoreleasing -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf --sysroot=../../build/linux/debian_wheezy_i386-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-unused-function -Wno-unused-local-typedef -Wno-header-guard -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -fno-exceptions -c ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc -o obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> > ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc:542:74: error: missing sentinel in function call [-Werror,-Wsentinel]
> >     gtk_style_context_get(context, state, "min-height", &min_height, NULL);
> >                                                                          ^
> >                                                                          , nullptr
> > ../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/gtk/gtkstylecontext.h:736:6: note: function has been explicitly marked sentinel here
> > void gtk_style_context_get          (GtkStyleContext *context,
> >      ^
> > 1 error generated.
> >
> > Original issue's description:
> > > Linux UI: Switch to the Gtk3 theme
> > >
> > > Sets "use_gtk3 = true" by default.
> > >
> > > BUG=79722
> > > TBR=dpranke@chromium.org
> > >
> > > Review-Url: https://codereview.chromium.org/2670623002
> > > Cr-Commit-Position: refs/heads/master@{#452118}
> > > Committed: 872a494bba
> >
> > TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=79722
> >
> > Review-Url: https://codereview.chromium.org/2711753004
> > Cr-Commit-Position: refs/heads/master@{#452149}
> > Committed: 4ebd84e40a
>
> TBR=erg@chromium.org,mmoss@chromium.org,fgorski@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=79722
>
> Review-Url: https://codereview.chromium.org/2709333002
> Cr-Commit-Position: refs/heads/master@{#452208}
> Committed: d6f69d9b55

TBR=erg@chromium.org,mmoss@chromium.org,fgorski@chromium.org,qiankun.miao@intel.com,thomasanderson@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

Review-Url: https://codereview.chromium.org/2713513006
Cr-Original-Commit-Position: refs/heads/master@{#452468}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b298b9de02d88e38719642806407be6abb630f04
2017-02-23 12:12:54 +00:00
thomasanderson f9c3b7386c Reland of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2711753004/ )
Reason for revert:
The -Wsentinel error should be fixed by https://codereview.chromium.org/2707313002/

Original issue's description:
> Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2670623002/ )
>
> Reason for revert:
> Broke the build:
> https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/63779
>
> [3232/5256] CXX obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> FAILED: obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> /b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o.d -DLIBGTKUI_IMPLEMENTATION -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_GCONF -DUSE_CUPS -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DTOOLKIT_VIEWS=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_DIRECTWRITE_GASP_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DBORINGSSL_SHARED_LIBRARY -DUSING_V8_SHARED -I../.. -Igen -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gconf/2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/dbus-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/dbus-1.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebp -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/unix-print -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Igen/chrome -Igen/chrome -Igen/chrome -Igen/chrome -Igen/components -Igen/components -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nss -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -Igen/ui/resources -Igen/ui/resources -Igen/ui/views/resources -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -m32 -msse2 -mfpmath=sse -mmmx -momit-leaf-frame-pointer -pthread -mstack-alignment=16 -mstackrealign -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-block-capture-autoreleasing -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf --sysroot=../../build/linux/debian_wheezy_i386-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-unused-function -Wno-unused-local-typedef -Wno-header-guard -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -fno-exceptions -c ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc -o obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
> ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc:542:74: error: missing sentinel in function call [-Werror,-Wsentinel]
>     gtk_style_context_get(context, state, "min-height", &min_height, NULL);
>                                                                          ^
>                                                                          , nullptr
> ../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/gtk/gtkstylecontext.h:736:6: note: function has been explicitly marked sentinel here
> void gtk_style_context_get          (GtkStyleContext *context,
>      ^
> 1 error generated.
>
> Original issue's description:
> > Linux UI: Switch to the Gtk3 theme
> >
> > Sets "use_gtk3 = true" by default.
> >
> > BUG=79722
> > TBR=dpranke@chromium.org
> >
> > Review-Url: https://codereview.chromium.org/2670623002
> > Cr-Commit-Position: refs/heads/master@{#452118}
> > Committed: 872a494bba
>
> TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=79722
>
> Review-Url: https://codereview.chromium.org/2711753004
> Cr-Commit-Position: refs/heads/master@{#452149}
> Committed: 4ebd84e40a

TBR=erg@chromium.org,mmoss@chromium.org,fgorski@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

Review-Url: https://codereview.chromium.org/2709333002
Cr-Original-Commit-Position: refs/heads/master@{#452208}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d6f69d9b551e64dae8d9fca247116de7827c2a76
2017-02-22 21:26:43 +00:00
brucedawson 30f886f83d Allow using goma on Windows with symbol_level == 2
Relanding with fix for amd64-generic Trusty build failure. Previous
version was crrev.com/2661023010.

Traditionally goma for Chrome has been less useful on Windows than on
other platforms because it was incompatible with full debug information.
Building with goma requires using /Z7 instead of /Zi, and this causes
the linker's memory usage and runtime to blow up as all of the debug
information is merged.

However, /debug:fastlink makes this work. Because it doesn't merge all
of the debug information it makes goma and /Z7 practical. Full release
component builds can be done in less than fifteen minutes, with
incremental builds taking just a few seconds. Without goma a full
release component build of Chrome can easily take 40+ minutes, even on a
Z840.

Goma's speedup comes from massively parallelizing the compile phase,
however even with /debug:fastlink the linking phases are longer with the
/Z7 switch that is required by goma. A /debug:fastlink of chrome.dll in
a component build goes from ~32 seconds to ~110 seconds on a Z620 when
/Z7 (goma) is selected. This penalty will be reduced by VC++ 2017 which
claims 30% speed improvements on /debug:fastlink.

So, if you frequently need to do full relinks then goma may still be a
bad choice. However for most scenarios this change should make goma a
good choice for component builds of Chrome, even with full debug
information enabled. To make use of this ability you need to explicitly
specify the switches below - symbol_level will otherwise default to 1
when use_goma == true.

    use_goma = true
    is_win_fastlink = true
    symbol_level = 2

In addition, these two settings are strongly recommended if you want the
fastest possible builds:

    is_component_build = true
    target_cpu="x86" - to ensure incremental linking always works

The fastlink PDBs work well for most scenarios but there are a few
scenarios where they do not work:
- Copying PDBs to another machine (fails due to references to the .obj
files)
- Reporting on all symbols/globals with SymbolSort or windbg's "x"
command or similar will report nothing
- ETW tracing fails
- VS heap profiling fails

Ideally mspdbcmf.exe would let us create "normal" PDBs when needed but
in practice this appears to be unusable with /Z7 created PDBs.

BUG=630074,688203

Review-Url: https://codereview.chromium.org/2702203004
Cr-Original-Commit-Position: refs/heads/master@{#452171}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 77bdd81b8517ef0166ba14549545fa1f27d9bfec
2017-02-22 19:57:29 +00:00
fgorski bb7a77bf33 Revert of Linux UI: Switch to the Gtk3 theme (patchset #1 id:1 of https://codereview.chromium.org/2670623002/ )
Reason for revert:
Broke the build:
https://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/63779

[3232/5256] CXX obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
FAILED: obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
/b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o.d -DLIBGTKUI_IMPLEMENTATION -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DUSE_GCONF -DUSE_CUPS -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DTOOLKIT_VIEWS=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_DIRECTWRITE_GASP_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DBORINGSSL_SHARED_LIBRARY -DUSING_V8_SHARED -I../.. -Igen -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gconf/2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/dbus-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/dbus-1.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebp -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/unix-print -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/atk-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/cairo -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gdk-pixbuf-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pango-1.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/gio-unix-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/freetype2 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_wheezy_i386-sysroot/usr/lib/i386-linux-gnu/glib-2.0/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/pixman-1 -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/libpng12 -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -Igen/chrome -Igen/chrome -Igen/chrome -Igen/chrome -Igen/components -Igen/components -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/mesa/src/include -I../../third_party/libwebm/source -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/boringssl/src/include -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nss -I../../build/linux/debian_wheezy_i386-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -Igen/ui/resources -Igen/ui/resources -Igen/ui/views/resources -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -m32 -msse2 -mfpmath=sse -mmmx -momit-leaf-frame-pointer -pthread -mstack-alignment=16 -mstackrealign -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-block-capture-autoreleasing -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf --sysroot=../../build/linux/debian_wheezy_i386-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wno-unused-function -Wno-unused-local-typedef -Wno-header-guard -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -fno-exceptions -c ../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc -o obj/chrome/browser/ui/libgtkui/libgtk3ui/native_theme_gtk3.o
../../chrome/browser/ui/libgtkui/native_theme_gtk3.cc:542:74: error: missing sentinel in function call [-Werror,-Wsentinel]
    gtk_style_context_get(context, state, "min-height", &min_height, NULL);
                                                                         ^
                                                                         , nullptr
../../build/linux/debian_wheezy_i386-sysroot/usr/include/gtk-3.0/gtk/gtkstylecontext.h:736:6: note: function has been explicitly marked sentinel here
void gtk_style_context_get          (GtkStyleContext *context,
     ^
1 error generated.

Original issue's description:
> Linux UI: Switch to the Gtk3 theme
>
> Sets "use_gtk3 = true" by default.
>
> BUG=79722
> TBR=dpranke@chromium.org
>
> Review-Url: https://codereview.chromium.org/2670623002
> Cr-Commit-Position: refs/heads/master@{#452118}
> Committed: 872a494bba

TBR=erg@chromium.org,mmoss@chromium.org,thomasanderson@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=79722

Review-Url: https://codereview.chromium.org/2711753004
Cr-Original-Commit-Position: refs/heads/master@{#452149}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4ebd84e40a1c791117a8d3f7b85c13cfdf816864
2017-02-22 18:54:37 +00:00
thomasanderson d3b0d40ae1 Linux UI: Switch to the Gtk3 theme
Sets "use_gtk3 = true" by default.

BUG=79722
TBR=dpranke@chromium.org

Review-Url: https://codereview.chromium.org/2670623002
Cr-Original-Commit-Position: refs/heads/master@{#452118}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 872a494bba52e597388aec738d9d681183a3d47b
2017-02-22 17:49:37 +00:00
olivierrobin 04f3802a94 Merge Arrays in plist_util.py
The plist templates can have different values for the same key.
If the value is a list (plist array), merge should be the concatenation.
Don't compute union as as list can contain dicts.

BUG=692552

Review-Url: https://codereview.chromium.org/2715543002
Cr-Original-Commit-Position: refs/heads/master@{#452083}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0cf3dac55d77555df465f3809e8f8636efef303d
2017-02-22 16:43:01 +00:00
jochen dda9979a24 Move stripping of debug symbols on linux behind a flag
BUG=603286
R=brettw@chromium.org

Review-Url: https://codereview.chromium.org/2690943007
Cr-Original-Commit-Position: refs/heads/master@{#451971}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: bf73428a02025c24fb2377b234eff6ca80bfbc32
2017-02-22 10:14:05 +00:00
ymzhang 28f9559990 [DirectoryOwnership] Add TEAM/COMPONENT into OWNERS files.
We are adding COMPONENT/TEAM information into OWNERS file. Please help us to
verify the added TEAM/COMPONENT or suggest the correct TEAM/COMPONENT in your
OWNERS files. Thanks.

Proposal to add TEAM/COMPONENT information into OWNERS files
http://bit.ly/add-team-component-proposal
Proposal about how to get suggested component for directory.
http://bit.ly/directory-mapping-proposal
TEAM-COMPONENT mapping
http://bit.ly/component-team-mapping

Additional Information:
Component lists
https://bugs.chromium.org/p/chromium/adminComponents

BUG=679905

Review-Url: https://codereview.chromium.org/2707163003
Cr-Original-Commit-Position: refs/heads/master@{#451895}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e63ee2d8631859f96c552a203469b13a3fcceaee
2017-02-22 05:57:37 +00:00
thakis 989998ee11 win: Don't pass /guard:cf to lld for now
It doesn't understand the flag yet.

BUG=693709
NOTRY=true

Review-Url: https://codereview.chromium.org/2702583004
Cr-Original-Commit-Position: refs/heads/master@{#451867}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 390d2eb8431b01a37bd96831ab8ee210fd73bdcb
2017-02-22 01:18:31 +00:00
etienneb fbe2ae32dc Fix removal of unreferenced ASAN API functions
When a DLL is instrumented with ASAN, there is some thunks introduced
that dynamically resolved the function through the imports table and
redirect the call from the DLL to the main executable.

Unfortunately, unreferenced functions recently got removed by the
linker.

Without this fix this function is not part of the final executable:
  __asan_locate_address

  % dumpbin D:\src\chromium\src\out\ninja64\initialexe\chrome.exe /exports | grep asan_l

This is making chrome to crash on startup when loading chrome_elf.dll.
ASAN is failing to hook on a function and call abort, which is also
failing because ASAN is still in the "tls-initialisation" phase.

R=ochang@chromium.org, rnk@chromium.org, thakis@chromium.org, chrisha@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2710573003
Cr-Original-Commit-Position: refs/heads/master@{#451836}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 803397e04777bc734a9c028813351c2e5079faf1
2017-02-21 21:27:35 +00:00
agrieve 467b707bfe Plumb bootclasspath GN -> Android Studio
This fixes most compile issues with android_webview. There is still an
issue with a missing R.java though (updated comment in code about this).

BUG=620034

Review-Url: https://codereview.chromium.org/2699963002
Cr-Original-Commit-Position: refs/heads/master@{#451217}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a1c2f35132f2a07e14c64b633485195a705f848e
2017-02-17 04:44:48 +00:00
pennymac 1ecc6e71ab [Windows MSVC CFG] Turning on linker CFG for all. Disabling CFG compile.
This enables support for CFG that is already compiled into Microsoft
system DLLs - in any of our processes.

Also disabling compilation of CFG with MSVC compiler.  Preparing for
clang CFI instead.

TEST=CFGSupportTests.MsIndirectFailure in sbox_integration_tests suite.
BUG=584575
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win10_chromium_x64_rel_ng
TBR=thestig or jochen (chrome\BUILD.gn)

Review-Url: https://codereview.chromium.org/2693193005
Cr-Original-Commit-Position: refs/heads/master@{#451116}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f160102d25fb949a3ed24478268b8835cc086477
2017-02-16 22:21:15 +00:00
paulmiller 598c4a1c3a WebView: prepare to depend on individual GMS services
Remove GMS from upstream WebView (it's only needed downstream) and
create a google_play_services_package variable with the upstream GMS
location, so it can be overridden downstream.

BUG=662166

Review-Url: https://codereview.chromium.org/2697543004
Cr-Original-Commit-Position: refs/heads/master@{#450780}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 635a45202f8cdaef30cfa4c5d4b602660e81395e
2017-02-15 19:50:15 +00:00
agrieve f4deb43b48 Reland of Android: Use linker script to hide all non-JNI symbols
The linker script is applied to all shared_library() targets by default,
just like the hide_jni one was (but not loadable_module() targets).

This reduces the size of libchrome.so by 220kb.

Reverted in:
https://codereview.chromium.org/2685933002/

Reason for reland:
Tested webkit_tests now pass locally. Issue was that libosmesa.so
had its symbols hidden.

BUG=448386
TBR=brettw

Review-Url: https://codereview.chromium.org/2699473002
Cr-Original-Commit-Position: refs/heads/master@{#450734}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e61084f2f942e6203a98bb4f7e505f9d7b679604
2017-02-15 17:20:56 +00:00
danakj f90e950a28 Make comment about symbol_level=2 explicit that it slows compile
As seen in this thread, symbol_level=2 doesn't make a big runtime
change but is avoided to make the build faster.

https://groups.google.com/a/chromium.org/d/topic/chromium-dev/AZZ04wssLoY/discussion

R=thakis@chromium.org

Review-Url: https://codereview.chromium.org/2690143005
Cr-Original-Commit-Position: refs/heads/master@{#450604}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f167e0d77f11f8f1770607d39bd9205dfd1403bb
2017-02-15 06:45:08 +00:00
agrieve 13190454b2 Android: Delete proguard_preprocess logic
There are no longer any uses of it, and there shouldn't need to be now
that multidex works fine.

BUG=none

Review-Url: https://codereview.chromium.org/2678073002
Cr-Original-Commit-Position: refs/heads/master@{#450369}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 18375370aff250f59f5ef624ecf686d860377ece
2017-02-14 15:54:16 +00:00
erikchen a5d37780d4 mac: Turn on allocator shim.
Prior to this CL, all Malloc Zone functions were rerouted through a light-weight
shim that kills the process [in oom_killer_malloc] on failure. This CL instead
reroutes the functions to the allocator shim, which is cross-platform, and has
the same effect on failure. The allocator shim also provides the ability to
track all allocations.

BUG=677302

Review-Url: https://codereview.chromium.org/2673173002
Cr-Original-Commit-Position: refs/heads/master@{#450302}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ab510e5f21028950cec63965e024a40bd1ccba66
2017-02-14 09:24:08 +00:00
wez 3e5cfce8cf Enable string pooling in the no_optimize configuration, under Windows.
This matches the default behaviour, even in Debug builds, of GCC & Clang.

AllocationContextTracker::PseudoStackFrame actually relies on string
pooling to allow it to compare trace event category and name strings by
address rather than strcmp().

BUG=686208

Review-Url: https://codereview.chromium.org/2689793003
Cr-Original-Commit-Position: refs/heads/master@{#449874}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 772ff4cd3df488b794fa66e8ed9d2951543a11ee
2017-02-11 19:39:31 +00:00
thakis 0d29448d5b clang: Disable -Wblock-capture-autoreleasing
This warning has existed for a while but used to be off-by-default.
Upstream made it on-by-default recently, which breaks the compile step
of the iOS ToT bot.

BUG=691120
TBR=hans

Review-Url: https://codereview.chromium.org/2682943010
Cr-Original-Commit-Position: refs/heads/master@{#449837}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 48130024a853818d09b132c10dfca934a14e7da6
2017-02-11 02:33:14 +00:00
thakis 871cf88844 Address comment from https://codereview.chromium.org/2685033002/
BUG=648948,68525
TBR=torne

Review-Url: https://codereview.chromium.org/2682173006
Cr-Original-Commit-Position: refs/heads/master@{#449679}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f54eb60f2783c67c77808d7e0aa3e9d39f8c600a
2017-02-10 19:03:51 +00:00
dpranke 9d467bba90 Add a build arg to control whether to use a jessie sysroot.
We're working on a class of changes in the Linux desktop UI
that won't work on Precise; they need newer Linux versions
that basically amount to needing to link against the Debian
Jessie sysroot instead of the Debian Wheezy sysroot. Previously
we were working around this by checking whether we were building
with ozone + use_kbdcommon, but that caused a dependency inversion
by making //build depend on //ui.

This changes adds a dedicated GN build arg, use_jessie_sysroot,
that we'll explicitly set instead, and that way we can avoid
the dependency inversion.

R=thomasanderson@chromium.org, tonikitoo@igalia.com
BUG=564904

Review-Url: https://codereview.chromium.org/2687203002
Cr-Original-Commit-Position: refs/heads/master@{#449505}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 657454d7091e2d6108703305a6ba1d4904df98a0
2017-02-10 01:27:18 +00:00
thakis dd795a26b9 android: Default symbol_level to 1 in 32-bit builds for clang too
clang finally hit the same file size wall that gcc hit a while ago.

(Locally, building lib_android_webview_unittests__library.so goes
from 6.5min to 3.8min on my linux box and file size of the .so goes
from over 4.1GB to 320MB -- at the cost of no detailed debug info
of coarse. Feels like investigating fission or similar would probably
be beneficial for the android build.)

BUG=648948,685259

Review-Url: https://codereview.chromium.org/2685033002
Cr-Original-Commit-Position: refs/heads/master@{#449314}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7be003ae95486a55fc2a9ef5fb34e26f702fc241
2017-02-09 16:43:41 +00:00
slan e62b61f097 [Chromecast] Add /system/chrome to the rpath for component builds.
We recently hit a corner case on the component build from the following
dependency structure:
  /chrome/crash_uploader ("//chromecast/crash:crash_uploader") ->
  /chrome/lib/libcast_reboot_1.0.so ("//chromecast/system/reboot") ->
  /chrome/libnet.so ("//net")

In libcast_reboot_1.0.so's RPATH, $ORIGIN resolves to /chrome/lib,
meaning that it never searches /chrome/ for libnet.so, causing it to
crash. Explicitly adding the location of component libs to the RPATH
solves this issue.

Note: The RPATH will not be changed in production builds, which do not
use the component build.

BUG=

Change-Id: I0646a063ad787d3fe846fd0755f7f84a4cb6033b
Review-Url: https://codereview.chromium.org/2686903002
Cr-Original-Commit-Position: refs/heads/master@{#449130}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3301fc1e1974b51ccb59f24519de0dcde34b9333
2017-02-08 23:14:04 +00:00
gab 47c2ad4968 Revert of Android: Use linker script to hide all non-JNI symbols (patchset #1 id:1 of https://codereview.chromium.org/2683013002/ )
Reason for revert:
This was the actual culprit, will re-land v8 rolls.

Original issue's description:
> Reland of Android: Use linker script to hide all non-JNI symbols (patchset #1 id:1 of https://codereview.chromium.org/2685933002/ )
>
> Reason for revert:
> Revert fixed WebKit Android (Nexus4) but... I also reverted https://codereview.chromium.org/2680943003 in parallel as EST sheriff... so now we don't know which one fixed it... tentatively relanding this one to see..!
>
> Original issue's description:
> > Revert of Android: Use linker script to hide all non-JNI symbols (patchset #4 id:60001 of https://codereview.chromium.org/2633593004/ )
> >
> > Reason for revert:
> > Speculative revert, potential culprit for webkit_tests crashing on "WebKit Android (Nexus4)".
> >
> > Stack traces show not much else than JNI managed->native transitions and syscalls.
> >
> > Original issue's description:
> > > Android: Use linker script to hide all non-JNI symbols
> > >
> > > The linker script is applied to all shared_library() targets by default,
> > > just like the hide_jni one was.
> > >
> > > This reduces the size of libchrome.so by 220kb.
> > >
> > > BUG=448386
> > > CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester
> > >
> > > Review-Url: https://codereview.chromium.org/2633593004
> > > Cr-Commit-Position: refs/heads/master@{#448988}
> > > Committed: 6888d5002b
> >
> > TBR=torne@chromium.org,digit@chromium.org,brettw@chromium.org,agrieve@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=448386
> >
> > Review-Url: https://codereview.chromium.org/2685933002
> > Cr-Commit-Position: refs/heads/master@{#449028}
> > Committed: de69a7c823
>
> TBR=torne@chromium.org,digit@chromium.org,brettw@chromium.org,agrieve@chromium.org,engedy@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=448386
>
> Review-Url: https://codereview.chromium.org/2683013002
> Cr-Commit-Position: refs/heads/master@{#449057}
> Committed: 59e1841b41

TBR=torne@chromium.org,digit@chromium.org,brettw@chromium.org,agrieve@chromium.org,engedy@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=448386

Review-Url: https://codereview.chromium.org/2684123002
Cr-Original-Commit-Position: refs/heads/master@{#449096}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c41fe7af125cf8b4ff24fd4b6b292213da99eda7
2017-02-08 21:23:52 +00:00
gab a515cc5c2f Reland of Android: Use linker script to hide all non-JNI symbols (patchset #1 id:1 of https://codereview.chromium.org/2685933002/ )
Reason for revert:
Revert fixed WebKit Android (Nexus4) but... I also reverted https://codereview.chromium.org/2680943003 in parallel as EST sheriff... so now we don't know which one fixed it... tentatively relanding this one to see..!

Original issue's description:
> Revert of Android: Use linker script to hide all non-JNI symbols (patchset #4 id:60001 of https://codereview.chromium.org/2633593004/ )
>
> Reason for revert:
> Speculative revert, potential culprit for webkit_tests crashing on "WebKit Android (Nexus4)".
>
> Stack traces show not much else than JNI managed->native transitions and syscalls.
>
> Original issue's description:
> > Android: Use linker script to hide all non-JNI symbols
> >
> > The linker script is applied to all shared_library() targets by default,
> > just like the hide_jni one was.
> >
> > This reduces the size of libchrome.so by 220kb.
> >
> > BUG=448386
> > CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester
> >
> > Review-Url: https://codereview.chromium.org/2633593004
> > Cr-Commit-Position: refs/heads/master@{#448988}
> > Committed: 6888d5002b
>
> TBR=torne@chromium.org,digit@chromium.org,brettw@chromium.org,agrieve@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=448386
>
> Review-Url: https://codereview.chromium.org/2685933002
> Cr-Commit-Position: refs/heads/master@{#449028}
> Committed: de69a7c823

TBR=torne@chromium.org,digit@chromium.org,brettw@chromium.org,agrieve@chromium.org,engedy@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=448386

Review-Url: https://codereview.chromium.org/2683013002
Cr-Original-Commit-Position: refs/heads/master@{#449057}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 59e1841b41f8902a0f300eb8cc412a73725013ed
2017-02-08 19:15:29 +00:00
engedy fda35d5fa1 Revert of Android: Use linker script to hide all non-JNI symbols (patchset #4 id:60001 of https://codereview.chromium.org/2633593004/ )
Reason for revert:
Speculative revert, potential culprit for webkit_tests crashing on "WebKit Android (Nexus4)".

Stack traces show not much else than JNI managed->native transitions and syscalls.

Original issue's description:
> Android: Use linker script to hide all non-JNI symbols
>
> The linker script is applied to all shared_library() targets by default,
> just like the hide_jni one was.
>
> This reduces the size of libchrome.so by 220kb.
>
> BUG=448386
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester
>
> Review-Url: https://codereview.chromium.org/2633593004
> Cr-Commit-Position: refs/heads/master@{#448988}
> Committed: 6888d5002b

TBR=torne@chromium.org,digit@chromium.org,brettw@chromium.org,agrieve@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=448386

Review-Url: https://codereview.chromium.org/2685933002
Cr-Original-Commit-Position: refs/heads/master@{#449028}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: de69a7c823b439d35e7ee716a1da25e05a871efe
2017-02-08 17:45:39 +00:00
agrieve 3e0ff06c86 Android: Use linker script to hide all non-JNI symbols
The linker script is applied to all shared_library() targets by default,
just like the hide_jni one was.

This reduces the size of libchrome.so by 220kb.

BUG=448386
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester

Review-Url: https://codereview.chromium.org/2633593004
Cr-Original-Commit-Position: refs/heads/master@{#448988}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6888d5002b2eabe4fac226f0e5124fbd62bdd215
2017-02-08 14:35:48 +00:00
zienag 7968040976 Add quotes to CR_CLANG_REVISION define
clang_revision variable may has format, that represents arithmetical
expression. For example – 284979-2.
Althought it is stated that this define should not be used in code,
it is unsafe. It can be made as string, so it will perfectly do it's
job and be much more safe.

R=brettw@chromium.org, dpranke@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2674983002
Cr-Original-Commit-Position: refs/heads/master@{#448520}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3331c473d65bc3331cf14e9797b102fdbbf013ea
2017-02-07 02:33:12 +00:00
tonikitoo b1b83849f4 linux headless trybots keep failing to run gn
Tie the debian/jessie usage to use_xkbcommon rather
than use_ozone for now.

This is more conservative and avoids problems for ozone/headless
and other bots.

BUG=687725

Review-Url: https://codereview.chromium.org/2676643004
Cr-Original-Commit-Position: refs/heads/master@{#448468}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ef8c544029d9e7201b3d24e87af90a97702ed5b4
2017-02-07 00:41:02 +00:00
ochang f27455662e Revert of Use trace-pc-guard for libFuzzer. (patchset #1 id:1 of https://codereview.chromium.org/2672853002/ )
Reason for revert:
Still borked on bots.

Original issue's description:
> Reland of Use trace-pc-guard for libFuzzer. (patchset #1 id:1 of https://codereview.chromium.org/2668093004/ )
>
> Reason for revert:
> Got upgraded builders.
>
> Original issue's description:
> > Revert of Use trace-pc-guard for libFuzzer. (patchset #1 id:1 of https://codereview.chromium.org/2665243002/ )
> >
> > Reason for revert:
> > causing build failures: https://crbug.com/687570
> >
> > Original issue's description:
> > > Use trace-pc-guard for libFuzzer.
> > >
> > > BUG=651540
> > >
> > > Review-Url: https://codereview.chromium.org/2665243002
> > > Cr-Commit-Position: refs/heads/master@{#447392}
> > > Committed: 002dca9ca5
> >
> > TBR=inferno@chromium.org,kcc@chromium.org,aizatsky@chromium.org,mmoroz@chromium.org,dpranke@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=651540
> >
> > Review-Url: https://codereview.chromium.org/2668093004
> > Cr-Commit-Position: refs/heads/master@{#447552}
> > Committed: 23d6de2177
>
> TBR=inferno@chromium.org,kcc@chromium.org,aizatsky@chromium.org,mmoroz@chromium.org,dpranke@chromium.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=651540
>
> Review-Url: https://codereview.chromium.org/2672853002
> Cr-Commit-Position: refs/heads/master@{#447825}
> Committed: 28fbc2f083

TBR=inferno@chromium.org,kcc@chromium.org,aizatsky@chromium.org,mmoroz@chromium.org,dpranke@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=651540

Review-Url: https://codereview.chromium.org/2675983002
Cr-Original-Commit-Position: refs/heads/master@{#448011}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f7d20bd4cc3f16bf13dfe2cc5e11c4df2ad45937
2017-02-03 17:03:08 +00:00
hans d4321a92c6 Turn off LTO again for Official Win/Clang LLD builds
We're not working on this config at the moment, so having a red buildbot
testing it is just waste of cycles.

BUG=688123, 598772

Review-Url: https://codereview.chromium.org/2677593002
Cr-Original-Commit-Position: refs/heads/master@{#447910}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3ba9c67e210df1f039f93548c1ad5bb2dfe3a945
2017-02-03 03:43:23 +00:00
xdai 76ea4436e7 Revert of Allow using goma on Windows with symbol_level == 2 (patchset #2 id:20001 of https://codereview.chromium.org/2661023010/ )
Reason for revert:
It broke amd64-generic Trusty informational build at generate_build_files:
ERROR at //build/config/compiler/compiler.gni:115:3: Assertion failed.
  assert(is_win_fastlink || !use_goma,
  ^-----
Goma builds that use symbol_level 2 must use is_win_fastlink.
See //BUILD.gn:11:1: whence it was imported.
import("//build/config/compiler/compiler.gni")
^--------------------------------------------
GN gen failed: 1
step returned non-zero exit code: 1
@@@STEP_FAILURE@@@

See crbug.com/688203 for more info.

Original issue's description:
> Allow using goma on Windows with symbol_level == 2
>
> Traditionally goma for Chrome has been less useful on Windows than on
> other platforms because it was incompatible with full debug information.
> Building with goma requires using /Z7 instead of /Zi, and this causes
> the linker's memory usage and runtime to blow up as all of the debug
> information is merged.
>
> However, /debug:fastlink makes this work. Because it doesn't merge all
> of the debug information it makes goma and /Z7 practical. Full release
> component builds can be done in less than fifteen minutes, with
> incremental builds taking just a few seconds. Without goma a full
> release component build of Chrome can easily take 40+ minutes, even on a
> Z840.
>
> Goma's speedup comes from massively parallelizing the compile phase,
> however even with /debug:fastlink the linking phases are longer with the
> /Z7 switch that is required by goma. A /debug:fastlink of chrome.dll in
> a component build goes from ~32 seconds to ~110 seconds on a Z620 when
> /Z7 (goma) is selected. This penalty will be reduced by VC++ 2017 which
> claims 30% speed improvements on /debug:fastlink.
>
> So, if you frequently need to do full relinks then goma may still be a
> bad choice. However for most scenarios this change should make goma a
> good choice for component builds of Chrome, even with full debug
> information enabled. To make use of this ability you need to explicitly
> specify the switches below - symbol_level will otherwise default to 1
> when use_goma == true.
>
>     use_goma = true
>     is_win_fastlink = true
>     symbol_level = 2
>
> The fastlink PDBs work well for most scenarios but there are a few
> scenarios (rare for most people) where they do not work:
> - Copying PDBs to another machine (fails due to references to the .obj
> files)
> - Reporting on all symbols/globals with SymbolSort or similar fails
> - ETW tracing fails
> - VS heap profiling fails
> Ideally mspdbcmf.exe would let us create "normal" PDBs when needed but
> in practice this appears to be unusable with /Z7 created PDBs.
>
> R=scottmg@chromium.org
>
> Review-Url: https://codereview.chromium.org/2661023010
> Cr-Commit-Position: refs/heads/master@{#447892}
> Committed: 4a3cadb2d9

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

Review-Url: https://codereview.chromium.org/2669373002
Cr-Original-Commit-Position: refs/heads/master@{#447895}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 169e1ad7aeb6cf86dda8912fbf7e2ef3e2321344
2017-02-03 01:10:28 +00:00
brucedawson b1ef26408c Allow using goma on Windows with symbol_level == 2
Traditionally goma for Chrome has been less useful on Windows than on
other platforms because it was incompatible with full debug information.
Building with goma requires using /Z7 instead of /Zi, and this causes
the linker's memory usage and runtime to blow up as all of the debug
information is merged.

However, /debug:fastlink makes this work. Because it doesn't merge all
of the debug information it makes goma and /Z7 practical. Full release
component builds can be done in less than fifteen minutes, with
incremental builds taking just a few seconds. Without goma a full
release component build of Chrome can easily take 40+ minutes, even on a
Z840.

Goma's speedup comes from massively parallelizing the compile phase,
however even with /debug:fastlink the linking phases are longer with the
/Z7 switch that is required by goma. A /debug:fastlink of chrome.dll in
a component build goes from ~32 seconds to ~110 seconds on a Z620 when
/Z7 (goma) is selected. This penalty will be reduced by VC++ 2017 which
claims 30% speed improvements on /debug:fastlink.

So, if you frequently need to do full relinks then goma may still be a
bad choice. However for most scenarios this change should make goma a
good choice for component builds of Chrome, even with full debug
information enabled. To make use of this ability you need to explicitly
specify the switches below - symbol_level will otherwise default to 1
when use_goma == true.

    use_goma = true
    is_win_fastlink = true
    symbol_level = 2

The fastlink PDBs work well for most scenarios but there are a few
scenarios (rare for most people) where they do not work:
- Copying PDBs to another machine (fails due to references to the .obj
files)
- Reporting on all symbols/globals with SymbolSort or similar fails
- ETW tracing fails
- VS heap profiling fails
Ideally mspdbcmf.exe would let us create "normal" PDBs when needed but
in practice this appears to be unusable with /Z7 created PDBs.

R=scottmg@chromium.org

Review-Url: https://codereview.chromium.org/2661023010
Cr-Original-Commit-Position: refs/heads/master@{#447892}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4a3cadb2d998fb8f477d0ebc7ff13619b123a805
2017-02-03 00:08:19 +00:00
ochang 3627c69fb9 Reland of Use trace-pc-guard for libFuzzer. (patchset #1 id:1 of https://codereview.chromium.org/2668093004/ )
Reason for revert:
Got upgraded builders.

Original issue's description:
> Revert of Use trace-pc-guard for libFuzzer. (patchset #1 id:1 of https://codereview.chromium.org/2665243002/ )
>
> Reason for revert:
> causing build failures: https://crbug.com/687570
>
> Original issue's description:
> > Use trace-pc-guard for libFuzzer.
> >
> > BUG=651540
> >
> > Review-Url: https://codereview.chromium.org/2665243002
> > Cr-Commit-Position: refs/heads/master@{#447392}
> > Committed: 002dca9ca5
>
> TBR=inferno@chromium.org,kcc@chromium.org,aizatsky@chromium.org,mmoroz@chromium.org,dpranke@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=651540
>
> Review-Url: https://codereview.chromium.org/2668093004
> Cr-Commit-Position: refs/heads/master@{#447552}
> Committed: 23d6de2177

TBR=inferno@chromium.org,kcc@chromium.org,aizatsky@chromium.org,mmoroz@chromium.org,dpranke@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=651540

Review-Url: https://codereview.chromium.org/2672853002
Cr-Original-Commit-Position: refs/heads/master@{#447825}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 28fbc2f08338a66ed15e96fd2841c66cbbda212f
2017-02-02 20:02:15 +00:00
etienneb 5b8bb0f213 Assert when building Asan on windows in debug mode
R=ochang@chromium.org, rnk@chromium.org, chrisha@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2675753002
Cr-Original-Commit-Position: refs/heads/master@{#447803}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5e86b62256b5d7cdc7a10f57c06a1b040e2bbede
2017-02-02 18:37:59 +00:00
yyanagisawa 4797b486a5 Make __DATE__, __TIME__ and __TIMESTAMP__ to evaluate to an empty string.
If __DATE__, __TIME__ or __TIMESTAMP__ used in code, current date or
time will be filled.  Such a value may change compile by compile, and
breaks deterministic build.

BUG=314403

Review-Url: https://codereview.chromium.org/2664743002
Cr-Original-Commit-Position: refs/heads/master@{#447769}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5eded4b55c92335c96702d53aa319a360c86f556
2017-02-02 15:14:11 +00:00
erikchen 7bd8751882 Hook up allocator shim on mac.
This CL should have no behavioral effect, since the relevant code is not enabled
yet.

allocator_shim_override_mac_symbols.h intercepts heap allocations using the
newly introduced APIs in allocator_interception_mac.h and redirects them to the
allocator shim. This eventually forwards to AllocatorDispatch::default_dispatch,
which in turns calls the original malloc zone functions..

BUG=665567

Review-Url: https://codereview.chromium.org/2658723007
Cr-Original-Commit-Position: refs/heads/master@{#447705}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0d0395aeb25b9ab1422ab547f976d049a14e192f
2017-02-02 06:16:29 +00:00
aizatsky 7a418db114 creating build/config/sanitizer/OWNERS file
Adding ochang@ to the file.
sanitizer & libfuzzer build configuration is very interconnected
and often needs to change in sync.

BUG=

Review-Url: https://codereview.chromium.org/2664403005
Cr-Original-Commit-Position: refs/heads/master@{#447685}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5b2d8899ed66b788a1811b15163dd37bc178f5ca
2017-02-02 02:00:05 +00:00