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
build/android/system.gyp has an extra level of abstraction for openssl
which is currently not really doing anything since we don't yet support
using the system openssl on android. Remove it for now, because this
stops there from being two targets called "ssl" (this one and the one
for linux) - solving some problems with the android build backend for
gyp.
Review URL: https://chromiumcodereview.appspot.com/10332106
git-svn-id: http://src.chromium.org/svn/trunk/src/build@137379 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
The 'Test Finished' step was introduced in r130823 to absorb the
non-zero exit status which we'd get if any of the test suites in
the batch would fail.
Since the run_tests.py script will print a STEP_FAILURE annotation
for every suite the exit status is redundant and therefore should
be removed.
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/10382100
git-svn-id: http://src.chromium.org/svn/trunk/src/build@136302 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
The test server based tests are because test server spawner is not enabled
on Chromium Android. Once the net upstreaming is done, test server spawner
can be enabled and those tests should pass on Chromium Android.
BUG=None.
TEST=Make Chromium Linux Android bot green.
TBR=jrg, yfriedman
Review URL: https://chromiumcodereview.appspot.com/10381069
git-svn-id: http://src.chromium.org/svn/trunk/src/build@135996 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