This will make the android_test bot red when apk tests fail.
The ANDROID_APK_TEST_TARGET flag is required while we transition from executable to APK tests.
- Executable tests need the DIR_CACHE override as the default path comes from the java side.
BUG=125059
Review URL: https://chromiumcodereview.appspot.com/10332230
git-svn-id: http://src.chromium.org/svn/trunk/src/build@138407 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Enable the Clang error that makes it a warning/error to derive from
base::RefCounted/RefCountedThreadSafe directly and have a public
destructor for Linux and Mac builds.
For ChromeOS builds, do not yet enable the warning, as it does not
yet build cleanly.
BUG=123295
TEST=it compiles
R=thakis
Review URL: https://chromiumcodereview.appspot.com/10414016
git-svn-id: http://src.chromium.org/svn/trunk/src/build@138031 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This way, those of us working on the proxy switch need only add:
{
'variables': {
'build_ppapi_ipc_proxy_untrusted': '1',
},
}
to "~/.gyp/include.gypi"
...and we'll be able to build our untrusted targets without editing all.gyp. For anybody who doesn't set that flag, our ppapi_proxy_untrusted.gypi file will still be parsed, but it doesn't matter if the source files build (or even exist).
BUG=116317
TEST=
Review URL: https://chromiumcodereview.appspot.com/10399068
git-svn-id: http://src.chromium.org/svn/trunk/src/build@137751 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
When enabled, this tool is built into Chrome and makes it log its routine invocations. Every time a routine is called and if it is called for the first time (per each thread), the log is updated with current time and the address of the routine. Later, such logs can be merged (across all threads), symbolized and fed into linker ('order_text_section') so it produces binary with more optimal code layout. This must make code work faster because of better CPU cache utilization.
See more technical details in tools/cygprofile/cygprofile.cc header.
Cyg prefix is taken after the callback names in gcc that we use to hook the code: __cyg_profile_func_enter and __cyg_profile_func_exit.
More info at https://sites.google.com/a/google.com/chrome-msk/dev/boot-speed-up-effort
BUG=chromium-os:20187
TEST=units, build cros with
declare -x EXTRA_BUILD_ARGS="order_profiling=1 linux_use_tcmalloc=0"
run it and check the log at /var/log/chrome/cyglog.*.
Review URL: https://chromiumcodereview.appspot.com/8770054
git-svn-id: http://src.chromium.org/svn/trunk/src/build@137391 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The problem with the current component build is that chrome.exe and setup.exe only know to look for DLLs like base.dll in the current directory (except chrome.dll for which they're hardcoded to know where to look). On an install those DLLs are in the version directory so chrome.exe and setup.exe fail to run not finding required DLLs...
To fix this we generate config files (to point in the version directory) and manifests (to list all the DLL dependencies explicitly) to be installed beside the exes.
Each DLL also has a manifest in the version directory to give it an "assemblyIdentity" (i.e. a unique name which is referred to as a dependency by each exe's manifest).
In order for external manifests to work, embedded manifests had to be disabled for component builds (otherwise Windows ignores the external one).
Since embedded manifests are disabled and the generated manifests are only generated in the archive to be extracted at install-time. This CL also adds a copy step for the usually embedded manifests to be dropped in the build directory so that chrome.exe and setup.exe are usable from there without requiring an install.
This doesn't make mini_installer.exe compatible with the component build yet (as mini_installer runs setup.exe right after extracting it and without any other DLLs/manifests beside it).
However it is now possible to use setup.exe (which takes the exact same parameters as mini_installer.exe) from the build output directory with a component build :)!!!
BUG=127233
TEST=Turn on component build with gyp config "component=shared_libary" and make sure we can install chrome with setup.exe.
Make sure we can run the installed Chrome.
Make sure we can uninstall the installed Chrome (i.e. that setup.exe in <version_dir>/Installer is able to find its DLLs).
Review URL: https://chromiumcodereview.appspot.com/9701050
git-svn-id: http://src.chromium.org/svn/trunk/src/build@137118 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Need to propagate variable android_upstream_bringup to outer variable dict to make sure the variable can be reached by condition ['android_upstream_bringup==1' even we are in downstream tree which doesn't define android_upstream_bringup=1.
Otherwise android-gyp is going to show "NameError: name 'android_upstream_bringup' is not defined while evaluating condition 'android_upstream_bringup==1' in /usr/local/google/code/chromium-android/src/build/all_android.gyp..."
BUG=None
TEST=None
Review URL: https://chromiumcodereview.appspot.com/10389062
git-svn-id: http://src.chromium.org/svn/trunk/src/build@136515 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Build media java files (we weren't).
Fix adb_install_content_shell for cases where the app was stuck.
Add upstream staging gyp var / #define.
Be more consistent about jar output files (all in lib.java).
Upstream a bunch of random files (e.g. ppapi).
Upstream a bunch of java and native code hit as part of shlib init.
Properly package jar files in content shell.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10377059
git-svn-id: http://src.chromium.org/svn/trunk/src/build@136219 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Layer's coordinate system is now in DIP.
Added support of dynamic density switching.
Removed ENABLE_DIP gyp/macro and added runtime flag "--ui-enable-dip"
BUG=105165, 114666
TEST=enabled monitor test. added new tests to compositor_unittests
Review URL: https://chromiumcodereview.appspot.com/10221028
git-svn-id: http://src.chromium.org/svn/trunk/src/build@135888 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently, the '-mfloat-abi=soft' is hard coded in the gyp file, but what we need is "-mfloat-abi=hard", since it is hard-coded, we no way to change it.
So this CL removed this hard-coded value, replaced it with variable arm_float_abi, which has a default value of 'soft'. Later in the ebuild file, we can easily override this value to be 'hard', thus make the build hardfp.
BUG=None
TEST=build manually in chromium
Review URL: http://codereview.chromium.org/10351018
git-svn-id: http://src.chromium.org/svn/trunk/src/build@135388 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This follows the same pattern for theme_resources_touch_1x as we used for ui_resources_touch. I also introduced a gyp flag for enable_touch_ui at sky's suggestion.
BUG=115234
TEST=visual, run with --touch-optimized-ui and see bigger tabstrip and toolbar assets
Review URL: https://chromiumcodereview.appspot.com/10320002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@134942 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This CL does the following:
- add a new enable_metro build flag
- if the build flag is set then add a new metro icon resource pak to chrome
- at run time if Chrome is running in metro mode AND ENABLE_METRO is set then use the metro icon resource pak
BUG=114311
TEST=
Review URL: http://codereview.chromium.org/10082020
git-svn-id: http://src.chromium.org/svn/trunk/src/build@133843 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently all 1x art files are repacked into chrome.pak files.
This is a problem on Windows where we want to choose which pak file to load based on metro and DPI scale.
As a first step this CL does the following:
- add a new enable_hidpi build flag. This allows us to test HiDPI mode on Windows Chrome.
- stop packing theme_resources_standard.pak and ui_resources_standard.pak into chrome.pak
- update the Mac and Windows installer code to package the extra pak files.
Note, I'll be updating the Linux installer script in a separate CL. I'm still looking into the ChromeOS situation.
BUG=114311
TEST=Ran on Windows, and Mac and Linux.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=132517
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=132760
Review URL: https://chromiumcodereview.appspot.com/10024050
git-svn-id: http://src.chromium.org/svn/trunk/src/build@133613 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
OFF by default; enable with a gyp var. E.g.
GYP_DEFINES="$GYP_DEFINES gtest_target_type=shared_library" android_gyp
Some useful commands:
adb uninstall org.chromium.native_test
adb install -r out/Release/base_unittests_apk/ChromeNativeTests-debug.apk
adb shell am start -n org.chromium.native_test/org.chromium.native_test.ChromeNativeTestActivity
For the moment, all apks can be built simultaneously but use the same
activity name. Thus you cannot have more than one installed at the
same time.
BUG=None
TEST=
Review URL: http://codereview.chromium.org/10051021
git-svn-id: http://src.chromium.org/svn/trunk/src/build@133053 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently all 1x art files are repacked into chrome.pak files.
This is a problem on Windows where we want to choose which pak file to load based on metro and DPI scale.
As a first step this CL does the following:
- add a new enable_hidpi build flag. This allows us to test HiDPI mode on Windows Chrome.
- stop packing theme_resources_standard.pak and ui_resources_standard.pak into chrome.pak
- update the Mac and Windows installer code to package the extra pak files.
Note, I'll be updating the Linux installer script in a separate CL. I'm still looking into the ChromeOS situation.
BUG=114311
TEST=Ran on Windows, and Mac and Linux.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=132517
Review URL: http://codereview.chromium.org/10024050TBR=sail@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10115031
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132804 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently all 1x art files are repacked into chrome.pak files.
This is a problem on Windows where we want to choose which pak file to load based on metro and DPI scale.
As a first step this CL does the following:
- add a new enable_hidpi build flag. This allows us to test HiDPI mode on Windows Chrome.
- stop packing theme_resources_standard.pak and ui_resources_standard.pak into chrome.pak
- update the Mac and Windows installer code to package the extra pak files.
Note, I'll be updating the Linux installer script in a separate CL. I'm still looking into the ChromeOS situation.
BUG=114311
TEST=Ran on Windows, and Mac and Linux.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=132517
Review URL: http://codereview.chromium.org/10024050
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132760 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently all 1x art files are repacked into chrome.pak files.
This is a problem on Windows where we want to choose which pak file to load based on metro and DPI scale.
As a first step this CL does the following:
- add a new enable_hidpi build flag. This allows us to test HiDPI mode on Windows Chrome.
- stop packing theme_resources_standard.pak and ui_resources_standard.pak into chrome.pak
- update the Mac and Windows installer code to package the extra pak files.
Note, I'll be updating the Linux installer script in a separate CL. I'm still looking into the ChromeOS situation.
BUG=114311
TEST=Ran on Windows, and Mac and Linux.
Review URL: http://codereview.chromium.org/10024050TBR=sail@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10103022
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132529 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently all 1x art files are repacked into chrome.pak files.
This is a problem on Windows where we want to choose which pak file to load based on metro and DPI scale.
As a first step this CL does the following:
- add a new enable_hidpi build flag. This allows us to test HiDPI mode on Windows Chrome.
- stop packing theme_resources_standard.pak and ui_resources_standard.pak into chrome.pak
- update the Mac and Windows installer code to package the extra pak files.
Note, I'll be updating the Linux installer script in a separate CL. I'm still looking into the ChromeOS situation.
BUG=114311
TEST=Ran on Windows, and Mac and Linux.
Review URL: http://codereview.chromium.org/10024050
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132517 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Interesting changes in this range:
* The tooling infrastructure landed. Not observable, but it makes it easier
to write clang tools.
* Honor -fno-pic, pie support
* Better diagnostics for several c++11 features
* Cross-compiler changes that hopefully make CrOs clang builds simpler
* Many LTO fixes
Also pick up a minor change to the style plugin: Instead of ignoring
problems below out/, it now ignores them below gen/ and geni/. This
should make it work better with custom build directories.
BUG=none
TEST=none
TBR=mark
Review URL: http://codereview.chromium.org/10081013
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132350 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
While we sort out the remaining linker errors, this at least ensures we
can add compliation of a bunch of chrome code for Android to gatekeeper.
This is motivated by having the android unit_tests compilation step
broken 4 out of 4 days this week.
BUG=117407
Review URL: http://codereview.chromium.org/10065018
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132154 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
When Chrome is built with -fprofile-generate in *_extra_cflags, it needs to link
against gcov. Adding -lgcov to the link line doesn't help because it occurs
before -Wl,--start-group. This flag correctly adds the required library if used
like the test case described below.
BUG=102550
TEST=GYP_DEFINES="debug_extra_cflags=-fprofile-generate libraries_for_target=-lgcov" ./build/gyp_chromium
make -j5 chrome # passes.
Review URL: http://codereview.chromium.org/10054022
git-svn-id: http://src.chromium.org/svn/trunk/src/build@132061 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This work is useful to make sure at build time that we are not accessing prefs that are not registered.
This CL addresses the prefs registered by:
BrowserInit::RegisterUserPrefs
PinnedTabCodec::RegisterUserPrefs
PluginsUI::RegisterUserPrefs
PromoResourceService::RegisterUserPrefs
Later CL:
Browser::RegisterUserPrefs
SyncPromoUI::RegisterUserPrefs
*::RegisterPrefs
BUG=120802
TEST=Compiled and made diff-ed the link error to make sure they are the same.
Review URL: http://codereview.chromium.org/9949033
git-svn-id: http://src.chromium.org/svn/trunk/src/build@131994 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Most of the included changes are minor. After this roll, we
have what went into the 1.6 release, and gmock now supports
being build as a DLL. (I want this roll for one of the minor
changes, which makes it possible to reenable
-Wnull-dereference for clang)
Turn -Wnull-dereference back on, fix one instance where a
violation snuck in.
BUG=111806
TEST=none
TBR=tony
Review URL: https://chromiumcodereview.appspot.com/9999025
git-svn-id: http://src.chromium.org/svn/trunk/src/build@131656 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This is copied from integer version, instead of using
template, to minimize conflict with m19 branch, as
using template requires updating forward declaration
of these classes in many places.
I put this behind gyp flag for now so that we can move forward without breaking non DIP build until we can get aura
working with DIP.
BUG=114664
TEST=none
Review URL: http://codereview.chromium.org/10025004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@131405 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
dlldata.c is a generated file name that a bunch of idl build rules output but most do not actually compile it AFAICT. This was causing some targets in isimpledom (that contain multiple idl files) to output to the same name (dlldata.c), so uniquize it based on InputName. For the one target that seems to actually build dlldata.c, override back to the original name to keep things the same (iaccessible2).
Review URL: http://codereview.chromium.org/10008061
git-svn-id: http://src.chromium.org/svn/trunk/src/build@131232 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
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