The change adds a ENABLE_PROTECTOR_SERVICE condition to exclude
ProtectorService and related code. I have introduced protector_utils.h which
contains methods used by keyword_table.cc to sign and verify keywords.
Note: ChromeOS also excludes protector from the tests
(chrome_tests.gypi), but disables ProtectorService using a command line
switch.
BUG=117407
TEST=
Review URL: http://codereview.chromium.org/9863047
git-svn-id: http://src.chromium.org/svn/trunk/src/build@129910 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Enable one-click signin on Linux.
Build GTK version of one-click signin dialog.
BUG=120577
TEST=On Linux, with a clean profile, sign into GMail. The one-click infobar should pop up, and clicking "OK, sync" should bring up the one-click dialog.
Review URL: https://chromiumcodereview.appspot.com/9874006
git-svn-id: http://src.chromium.org/svn/trunk/src/build@129762 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This CL conceptually does several things (most of them just one line).
1. Roll RLZ 105:118
106: Fix "expression result unused" warning caused by VERIFY() use.
107: rlz: Add an implementation of PingServer() that uses chrome's net stack.
108: Implement RlzValueStoreMac.
109: Move GetMachineId() to its own file. No intended behavior change.
110: Implement GetSystemTimeAsInt64() on mac.
111: Minor cleanups.
112: Don't pay a static initializer for expected_assertion_ when it's not used.
113: Rename rlz_lib2.cc and win/lib/rlz_lib.cc to win/lib/rlz_lib_win.cc
114: mac: Implement GetMachineId().
115: mac: Implement the locking part of ScopedRlzValueStoreLock.
116: Tweaks to make the use of chrome's net stack forceable through gyp.
117: Push RLZ_NETWORK_IMPLEMENTATION_ define to dependent targets.
118: Use base::mac::ScopedNSAutorleasePool only on mac.
2. Change rlz.cpp to use the blocking pool instead of the file thread.
3. Enable on mac.
4. Switch to chrome's network stack on windows
5. Switch RlzSendFinancialPingFunction to be an AsyncExtensionFunction
that calls SendFinancialPing on a worker thread. This is required because
extension functions run with a MessageLoop, so the MessageLoop in
SendFinancialPing in rlz would trigger an assert (and making that inner
loop nestable seems like a very bad idea). This change also removes
one instance of ScopedAllowIO and fixes a TODO.
BUG=46579
TEST=
1.) Do an official chrome build
2.) Add gratuitous logging in rlz.cc and other places and check that by default:
* The channel is reported as "stable"
* The brand code is the empty string
* This brand code counts as organic install
* RLZ exits early.
3.) Create ~/Library/Google/Google\ Chrome\ Brand.plist and add e.g. the string "BRAND" for key KSBrandID, restart chrome.
* Brand code is now "BRAND" (this depends on Chrome's Info.plist not having a KSBrandID key, which has precedence. Currently our Chromes seem to never have this key.)
* A ping is scheduled, but nothing is sent.
* Use the omnibox a little, which causes product events to be recorded.
4.) Restart chrome yet again, wait a bit.
* Logging in "SendFinancialPing()" should print:
pinging http://clients1.google.com:80/tools/pso/ping?as=chrome&brand=BRAND&pid=&hl=en&events=C1F,C1S&rep=2&rlz=C1:1C1_____enUS476,C2:1C2_____enUS476&id=0926C138C2EA77A791CB450D322D0183E5A8079300000001B5
ping completed!
TBR=sky
Review URL: https://chromiumcodereview.appspot.com/9699054
git-svn-id: http://src.chromium.org/svn/trunk/src/build@129028 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
New stuff:
* ObjC number, array, dict literals
* ASan fixes, visibility fixes (see bugs)
* (c++11: User-defined literals)
* -Wstring-plus-int
* Fix for a bug that made the last roll not work with goma
BUG=114996,112539,119119
TEST=none
Review URL: http://codereview.chromium.org/9836038
git-svn-id: http://src.chromium.org/svn/trunk/src/build@128696 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Enable one-click signin on OS X.
Build Cocoa version of one-click signin dialog.
Refactor one-click signin code to make it easier to unit test.
BUG=116685
TEST=On OSX, with a clean profile, sign into GMail. The one-click infobar should pop up, and clicking "OK, sync" should bring up the one-click dialog.
Review URL: https://chromiumcodereview.appspot.com/9753003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@128126 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This patch removes the need of exporting / setting
CROSS_C* variables when calling make for android.
Instead, set them at Makefile generation time so that gyp will
set the right compilers when calling android_gyp.
This also allows goma builds.
BUG=
TEST=builds for android.
Review URL: http://codereview.chromium.org/9693042
git-svn-id: http://src.chromium.org/svn/trunk/src/build@127667 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The optimizations may fail under certain conditions. This is the case in,
for example, WebKit WTF's Checked type, and causes test failures. As this
may affect more than just that code, disable it for the entirety of Chromium
when building for Android.
BUG=
TEST=TestWebKitAPI passes all tests.
Review URL: http://codereview.chromium.org/9704057
git-svn-id: http://src.chromium.org/svn/trunk/src/build@127262 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
depends on http://codereview.chromium.org/9466022/
depends on http://codereview.chromium.org/9465018/
BUG=110050
TEST=When the profile is not connected to a google account, each time the user
logs in to a google property an infobar will ask the user if he would like to
connect the profile to this account. If so, a dialog pops up with more
information, and allows the user to start or cancel. The user can also not
choose the default sync settings, in which case pressing start will bring
up the advanced sync dialog.
Review URL: http://codereview.chromium.org/9453035
git-svn-id: http://src.chromium.org/svn/trunk/src/build@124996 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This change allows us to tweak these options without restarting the
build masters and submit try jobs that tweak them.
It also simplifies usage of these tools, because instead of copying and
pasting a large block of gyp variables from
tools/build/scripts/masters/factor/chromium_factory.py into GYP_DEFINES
or .gyp/include.gyp, developers can simply set build_for_tool=mytool.
My plan is to change the chromium.fyi master to use build_for_tool=*
first, and revert if those bots break. If they stay green, I'll send a
change to update chromium.memory.fyi and completely remove
ChromiumFactory.MEMORY_TOOLS_GYP_DEFINES.
I intend to remove all the otherwise unused (win_)(release|debug)_*
options that we exposed later. This change is supposed to be the
simplest thing that works.
R=maruel@chromium.org,timurrrr@chromium.org
BUG=109780
TEST=built with build_for_tool=drmemory locally
Review URL: http://codereview.chromium.org/9516005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@124323 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Shadow stacks use -finstrument-functions to hook all function entry/exit.
But mmx-related functions expect to be inlined so the compiler can
compile them out into mmx instructions.
This change excludes the mmx intrinsics header file from instrumentation.
Without it, builds wil fail with errors like the following:
../../third_party/gold/gold64: obj/media/libyuv_convert.a(obj/media/base/yuv_convert.yuv_convert.o): in function media::EmptyRegisterState():yuv_convert.cc(.text._ZN5media18EmptyRegisterStateEv+0x29): error: undefined reference to '_mm_empty()'
(_mm_empty() is an mmx intrinsic function.)
Review URL: http://codereview.chromium.org/9416068
git-svn-id: http://src.chromium.org/svn/trunk/src/build@123289 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
On a Google-internal ChromeOS builder make seems to exit with a
failure code no error message I can identify.
git-svn-id: http://src.chromium.org/svn/trunk/src/build@121264 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
[This CL was backed out speculatively due to failures on the cros trunk bot. But this CL
was not the cause of that problem, so I'm un-doing the revert.]
Currently, gyp attempts to autodetect whether the linker supports
the --icf flag. It's more predictable to just require the caller
to specify whether they're using gold.
As a first demonstration of this, drop LINKER_USES_ICF code in the
Chrome build. (I'll follow up with a gyp patch to remove the
LINKER_USES_ICF stuff in gyp.)
Review URL: https://chromiumcodereview.appspot.com/9368015TBR=evan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9372012
git-svn-id: http://src.chromium.org/svn/trunk/src/build@121175 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently, gyp attempts to autodetect whether the linker supports
the --icf flag. It's more predictable to just require the caller
to specify whether they're using gold.
As a first demonstration of this, drop LINKER_USES_ICF code in the
Chrome build. (I'll follow up with a gyp patch to remove the
LINKER_USES_ICF stuff in gyp.)
Review URL: http://codereview.chromium.org/9316110
git-svn-id: http://src.chromium.org/svn/trunk/src/build@121068 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
(Reland of r120385 with newer third_party/gold.)
Rather than forcing everyone to configure their search paths etc.
we should just make this work by default. You can set
the gyp variable linux_use_gold_binary=0 to turn it off.
Review URL: https://chromiumcodereview.appspot.com/9316002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@120424 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
WebUI Task Manager does not ship on M18 on Desktop Chromes (Win/Mac/Linux) so that task manager have been disabled temporary. On Chrome OS and Aura, it is still enabled.
BUG=97429
TEST=manual on linux and aura
Review URL: http://codereview.chromium.org/9290042
git-svn-id: http://src.chromium.org/svn/trunk/src/build@119612 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This allows text drawing entirely through Skia, since RenderText ultimately uses
Skia to draw character glyphs.
This CL adds the new code, but does not yet enable it on any platforms. That
will be done in later CLs.
Note: Some functions, such as CanvasSkia::DrawStringWithHalo() and
PixelShouldGetHalo() are taken almost verbatim from the canvas_skia_win.cc
implementation.
BUG=105550
TEST=none
Review URL: http://codereview.chromium.org/9074005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@119086 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Rather than globally defining NO_HEAPCHECKER and then checking
that in build_config.h, let builds that opt in to heap checking
directly set USE_HEAPCHECKER.
Result should be equivalent builds but less stuff in the build
files.
Review URL: http://codereview.chromium.org/9146022
git-svn-id: http://src.chromium.org/svn/trunk/src/build@118823 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This replaces the aura_show_about_flag_window_mode and
chromeos_legacy_power_button GYP flags with
--aura-force-compact-window-mode and
--aura-legacy-power-button command-line switches. There is
concern that using compile-time flags to control these
features will greatly increase the workload on the Chrome OS
builders; we apparently currently share Chrome binaries
across all Chrome OS boards with the same architecture.
BUG=109209,109052,chrome-os-partner:7570
TEST=manual
Review URL: https://chromiumcodereview.appspot.com/9264025
git-svn-id: http://src.chromium.org/svn/trunk/src/build@118522 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This change toggles the build_webkit_exes_from_webkit_gyp file to 0,
so that we try to build DumpRenderTree and webkit_unit_tests from their
corresponding .gyp files (WebKitUnitTests.gyp and Tools.gyp) rather than
the old WebKit.gyp file. This breaks the circular dependencies between
the executables which depend on webkit_support, which depends on
WebKit.gyp. We now only use the 'webkit' target itself in WebKit.gyp.
R=tony@chromium.org
BUG=105826
TEST=waterfall stays green
Review URL: https://chromiumcodereview.appspot.com/8889039
git-svn-id: http://src.chromium.org/svn/trunk/src/build@118366 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
According to my testing, VS 2010 does not have problem (b) documented
at http://code.google.com/p/chromium/wiki/WindowsPrecompiledHeaders,
i.e. it rebuilds the PCH file when necessary because of
e.g. preprocessor flag changes.
Since we aren't using VS 2010 for official builds, if problem (a) (out
of memory) is encountered with VS 2010 when we make the switch to
using it for official builds, we can simply turn PCH off explicitly in
the include.gypi for the official bots.
This change has no effect on VS 2008 bots or users.
BUG=110001
Review URL: http://codereview.chromium.org/9139059
git-svn-id: http://src.chromium.org/svn/trunk/src/build@117845 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
1) Actually turn off ASLR for Debug build.
Despite the comments, this was not happening in reality
because the /dynamicbase linker flag overrode the
VCLinkerTool.RandomizedBaseAddress setting.
2) Make the ASLR setting configurable from outside
(target usage is for particular Dr. Memory builds).
TEST=Built googleurl_unittests and ensured its ALSR setting matched that requested, both for default and for custom via new gyp var
BUG=109767
Review URL: http://codereview.chromium.org/9169020TBR=bruening@chromium.org
Review URL: http://codereview.chromium.org/9194003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@117586 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
1) Actually turn off ASLR for Debug build.
Despite the comments, this was not happening in reality
because the /dynamicbase linker flag overrode the
VCLinkerTool.RandomizedBaseAddress setting.
2) Make the ASLR setting configurable from outside
(target usage is for particular Dr. Memory builds).
TEST=Built googleurl_unittests and ensured its ALSR setting matched that requested, both for default and for custom via new gyp var
BUG=109767
Review URL: http://codereview.chromium.org/9169020
git-svn-id: http://src.chromium.org/svn/trunk/src/build@117533 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Most official Chrome OS hardware reports power button
releases correctly, but on standard x86 systems, we'll always
receive a button up event just after the button down. This
change adds a chromeos_legacy_power_button gyp flag; when
set, we lock the screen or shut down immediately when the
button is pressed instead of providing interactive
animations.
BUG=109209
TEST=added tests; also did manual testing
Review URL: http://codereview.chromium.org/9110044
git-svn-id: http://src.chromium.org/svn/trunk/src/build@116993 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This fixes a regression that caused fullscreen
RenderWidgetHostViewAuras to decline the focus, resulting in
them not receiving key events.
BUG=107804
TEST=manually checked that Space and Escape now work in fullscreen YouTube videos; also added a test
Review URL: http://codereview.chromium.org/9026013
git-svn-id: http://src.chromium.org/svn/trunk/src/build@115855 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
We've been getting a bunch of extra gpu-related crashes recently, and while they don't seem to be related to swiftshader (the timing is a bit off) it's possible, so try to rule that out.
BUG=26001
TEST=
Review URL: http://codereview.chromium.org/9021039
git-svn-id: http://src.chromium.org/svn/trunk/src/build@115534 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
- "size"; optimizes for minimal code size, the default.
- "speed"; optimizes for speed over code size.
- "max"; turns on link time code generation and whole
program optimization, which is very expensive and should
be used sparingly.
Note that this change by itself lowers the optimization level to "size" for all targets. Separate changes to the V8 and WebKit repos will be needed to bring up their optimization levels to WPO.
BUG=108167
TEST=
Review URL: http://codereview.chromium.org/8983002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@115187 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Register with the component updater service if it's discovered that WebGL is blacklisted. Then register the swiftshader library with the GPU data manager.
BUG=26001
TEST=Start up chrome on a blacklisted windows machine, wait a while, and open a webgl page
Review URL: http://codereview.chromium.org/8897008
git-svn-id: http://src.chromium.org/svn/trunk/src/build@114885 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This is intended to make it easier to test Breakpad crash dumping on
the buildbots. Crash dumping will be disabled in Chromium by default
at run time unless CHROME_HEADLESS is set.
The bots set CHROME_HEADLESS, but we don't really want the bots to be
uploading crash dumps that are useless without symbols, so uploading
is disabled except for official builds and when building with
mac_breakpad_uploads=1.
This should not affect stack backtraces that occur in tests (such as
browser_tests) via StackDumpSignalHandler(). Although Breakpad would
normally take priority over this signal handler, Breakpad does not get
enabled in these test suites because is_browser is false inside
InitCrashReporter().
This change leaves the Gyp option "mac_breakpad" for enabling the
creation of Breakpad files. This remains off by default for Chromium
builds, because the symbol dumping is slow and because it has problems
in the makefile-based Mac builds.
BUG=105778
TEST=run Chromium with --crash-test and CHROME_HEADLESS=1; a *.dmp file
should appear in ~/Library/Application Support/Chromium/Crash Reports
Review URL: http://codereview.chromium.org/8824003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@114468 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The chromeos-chrome ebuild strips Chrome tests after the build, but it
can run significantly faster if we strip them during the build. This
changelist reduces the time it takes to build Chrome by allowing
developers to remove unnecessary debug symbols.
Performance comparison on z600 LOCAL_SOURCE build:
Before: 24m31s (257m04s user, 23m19s sys)
After: 20m55s (236m12s user, 22m10s sys)
Companion CL for updating Chrome OS to use strip_tests by default is here:
https://gerrit.chromium.org/gerrit/11517
BUG=chromium-os:22844
TEST=Build with and without debug symbols. Confirm speed difference.
Review URL: http://codereview.chromium.org/8526022TBR=davemoore@chromium.org
Review URL: http://codereview.chromium.org/8659015
git-svn-id: http://src.chromium.org/svn/trunk/src/build@111778 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
-- pass the -faddress-sanitizer flag to enable ASan;
-- pass the -fasan flag for backward compatibility;
-- pass the -DADDRESS_SANITIZER which soon won't be defined by ASan;
-- mark several functions missing in the 10.5 SDK as dynamic_lookup
Whitespace fix.
TBR=thakis
Review URL: http://codereview.chromium.org/8676002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@111575 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The chromeos-chrome ebuild strips Chrome tests after the build, but it
can run significantly faster if we strip them during the build. This
changelist reduces the time it takes to build Chrome by allowing
developers to remove unnecessary debug symbols.
Performance comparison on z600 LOCAL_SOURCE build:
Before: 24m31s (257m04s user, 23m19s sys)
After: 20m55s (236m12s user, 22m10s sys)
Companion CL for updating Chrome OS to use strip_tests by default is here:
https://gerrit.chromium.org/gerrit/11517
BUG=chromium-os:22844
TEST=Build with and without debug symbols. Confirm speed difference.
Review URL: http://codereview.chromium.org/8526022
git-svn-id: http://src.chromium.org/svn/trunk/src/build@110948 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This version fixes a problem with the windows incremental linking build. We can't incrementally link chrome when content is being built as a DLL because chrome links in webkit_glue and webkit_glue depends on symbols defined in content. We can remove this when we fix glue.
R=jam@chromium.org
BUG=90442, 98755.
Review URL: http://codereview.chromium.org/8570024
git-svn-id: http://src.chromium.org/svn/trunk/src/build@110360 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The os_bsd variable is only available on FreeBSD and OpenBSD.
Later on others like NetBSD and DragonflyBSD can be added.
This variable was introduced in order to have shorter
conditions in the gyp files.
BUG=
TEST=compile
Patch by Robert Nagy <robert.nagy@gmail.com>
Review URL: http://codereview.chromium.org/8567001
git-svn-id: http://src.chromium.org/svn/trunk/src/build@109929 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
For other configurations it can also be set by a command line option at run-time (also as before).
What changes is that we are removing use_only_pure_views as a separate GYP flag which we no longer really need.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8528014
git-svn-id: http://src.chromium.org/svn/trunk/src/build@109571 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This change makes it use webkit_glue::ImageDecoder instead
of gdk-pixbuf and hides various GTK+ theme-related code
behind TOOLKIT_USES_GTK ifdefs. Chrome OS is currently
loading its own icons from resources (see r86936 and
http://crosbug.com/129) instead of using IconLoader and
IconManager, so this only removes NOTIMPLEMENTED()s on
non-Chrome-OS Linux Aura builds (along with simplifying the
GTK+ version of the code).
BUG=99494
TEST=manual: download icons are still visible on a gtk+ build
Review URL: http://codereview.chromium.org/8501030
git-svn-id: http://src.chromium.org/svn/trunk/src/build@109527 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
base/base.gyp:
- exclude test/test_file_util_linux.cc on OpenBSD because of
missing fdatasync()
base/base.gypi:
- include linux_util.cc on OpenBSD too
- exclude some linux specific files from the OpenBSD build
because the openbsd implementation is different
base/file_util_posix.cc:
- Use file_util::GetTempDir directly to get the shm dir
on !linux
base/sys_info_freebsd.cc:
- return 0 and do a NOTREACHED() in case sysctlbyname() fails
base/sys_info_openbsd.cc:
- cleanup includes
- use arraysize() in the sysctl() call
- implement SysInfo::MaxSharedMemorySize()
build/common.gypi:
- -Wno-deprecated is C++ only flag so move it to cflags_cc
- Do not exclude linux specific files, dirs on OpenBSD since
90% of it is sharable
base/sys_info_linux.cc:
- DCHECK if the read string is empty
- Use base::StringToInt64() to convert the string
to an int64
- DCHECK if the returned int64 is okay for a size_t
- call NOTREACHED() and return 0 if fails
BUG=
TEST=runs on linux?
Review URL: http://codereview.chromium.org/8382001
git-svn-id: http://src.chromium.org/svn/trunk/src/build@106984 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Also, remove the Optimization hard-coded flags that turned out not to be adjustable as well.
TEST=vimdiff against ipc\ipc.vcproj of three different versions:
1) old
2) new (matches "old" except for the addition of OmitFramePointers="true" for Release x64)
3) new with `GYP_DEFINES=win_release_OmitFramePointers=0 win_release_Optimization=2`
BUG=99446,96326
Review URL: http://codereview.chromium.org/8227011
git-svn-id: http://src.chromium.org/svn/trunk/src/build@104904 4ff67af0-8c30-449e-8e8b-ad334ec8d88c