This adds ppapi-related targets except the tests to the GN build.
Did some minor tweaks to the .gypi ppapi lists. Some files were duplicated between the trusted and common lists which causes errors in GN (it doesn't uniquify the lists like GYP). Common is used in every place trusted is, so I just removed the duplicates from the trusted list.
Fixed some warnings in skia and tcmalloc. Added the ability to undefine NOMINMAX on Windows.
Fixed some src/ui Windows compilation issues.
BUG=
R=scottmg@chromium.org
Review URL: https://codereview.chromium.org/305513003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@273016 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The adb_profile_chrome tool has grown quite a bit since its inception,
so now seems to be a good time to split it into smaller modules and add
some rudimentary tests.
BUG=375754
TEST=build/android/chrome_profiler/run_tests
NOTRY=true
Review URL: https://codereview.chromium.org/290013006
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272946 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Reason for revert:
Suspected for android compile failure on waterfall starting
http://build.chromium.org/p/chromium/builders/Android/builds/24321
Errors are pretty obscure. Things like
BUILD FAILED
/b/build/slave/Android/build/src/build/android/ant/apk-obfuscate.xml:161: /b/build/slave/Android/build/src/out/Release/multiple_proguards_test_apk/proguard.txt (No such file or directory)
at proguard.ant.ConfigurationTask.addText(ConfigurationTask.java:315)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
FAILED: cd ../../build/android/tests/multiple_proguards; /*snip*/ build/android/ant/apk-obfuscate.xml
Traceback (most recent call last):
File "../../../../build/android/gyp/ant.py", line 34, in main
stdout = build_utils.CheckOutput(['ant'] + verbose_args)
File "/b/build/slave/Android/build/src/build/android/gyp/util/build_utils.py", line 113, in CheckOutput
raise CalledProcessError(cwd, args, stdout + stderr)
Original issue's description:
> Remove apk-codegen.xml
>
> process_resources.py already implements almost everything from
> apk-codegen.xml so just use that instead.
>
> BUG=359249,375324,375431
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=272783TBR=yfriedman@chromium.org,cjhopman@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=359249,375324,375431
Review URL: https://codereview.chromium.org/301543002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272795 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
We already have a variable for tracking the system libdir name in the
gyp files, so let's use that instead of hardcoding the logic based on
the arch.
BUG=chromium:219015
TEST=`cbuildbot amd64-generic-tot-chrome-pfq-informational` works
Review URL: https://codereview.chromium.org/244593002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272792 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This is the GN version of build/java_cpp_template.gypi.
It defines a template that wraps an action_foreach that generates .java
files using the host C preprocessor.
The major difference in the GN version is that it takes all the
generated java files and zips them together in a single .srcjar. When
such a target is included in the srcjar_deps of a java library, the
.java files in the .srcjar will be treated much like files listed in
that libraries java_sources (particularly they will be compiled and
included in the .jar/.dex).
Depends on https://crrev.com/264773014/
BUG=359249
Review URL: https://codereview.chromium.org/264923007
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272775 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Turn on ENABLE_NEW_GAMEPAD_API flag so that the new gamepad code is used.
Also remove the old code on Chromium side. The ENABLE_NEW_GAMEPAD_API is only
needed until the Blink side #ifdefs are removed.
BUG=344556
Review URL: https://codereview.chromium.org/289423004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272723 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
bb_device_steps.py's RunTestSuites took only one options
argument that will be applied for all the running test suites.
Add another suites_options argument so that the caller can
specify options on certain test suites.
BUG=368034
Review URL: https://codereview.chromium.org/297833002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272657 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The refactoring in the final patchset landed as r269766 got the
condition backwards (the pre-refactoring version worked), so we were
accidentally excluding flag only on *target* builds, instead of host
builds as intended (the target compiler supports this flag). Fix it.
BUG=321833
R=primiano@chromium.org
Review URL: https://codereview.chromium.org/296273002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272511 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Previously we would not define it in component builds because it didn't work with old versions of MSVC. These days it should work.
The macro is extra important for Clang, which doesn't currently support exceptions on Windows.
BUG=82385
Review URL: https://codereview.chromium.org/287193012
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272478 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This flag defaults to true for official builds and false for unofficial builds. If the flag is false, Chromium will connect to sandbox wallet servers.
Net effect: instead of being controller by Chrome vs. Chromium, the default is controlled by Official vs. Unofficial buildtype.
BUG=334088
Review URL: https://codereview.chromium.org/288003004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272348 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Otherwise, if .landmines exists, and isn't clobbered by the clobber in
compile.py, every build will cause a clobber until .landmines is removed.
Trying to fix http://crbug.com/375459 brought this up. In that case
compile.py wasn't removing .landmines, which is necessary in the case
of a landmines change on two subsequent builds. If .landmines isn't
maintained, then there's nothing to diff against on the second build
and so a clobber won't be correctly triggered.
R=iannucci@chromium.org,kbr@chromium.org
BUG=376359
Review URL: https://codereview.chromium.org/293983017
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272341 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The binary_size tool suit includes tools that are useful when trying
to reduce binary size of a program, and chromium related programs
in particular.
This commit (mostly written by andrewhayden@chromium.org for
Android but ported to generic Linux by bratell@opera.com) adds
a graphical HTML based output for run_binary_size_analysis.py.
In the generated web page it is possible to dynamically and
graphically browse the binary and each part of the source tree
is given a size that reflects its contribution to the binary size.
The run_binary_size_analysis tool is run on compiled binaries
with symbols and uses nm and addr2line to map parts of the
binary to source code. Since addr2line is slow the operation to map
binary symbols to source files takes a while but the output is
well worth it when shrinking programs. See its usage information
for details about how to run it.
This commit also includes the tool explain_binary_size_delta.py
(textual output) which can be used to understand why a binary
changed size and in what way. See its usage information for
details about how to run it.
There are many further improvements possible to to do on these tools.
Search the bug database for Label:Tools-BinarySize for suggestions.
BUG=339059
R=primiano@chromium.org,andrewhayden@chromium.org
Review URL: https://codereview.chromium.org/258633003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272255 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This adds tools and gyp targets to build ChromeVox directly from its original
source in the Chromium repository instead of using precompiled obfuscated
JavaScript binaries. In addition, this adds infrastructure to run
ChromeVox 'unbundled' inside of a chromeos build.
Note that this is still experimental and not enabled by default. Also, the
manifest to run ChromeVox unbundled is not provided yet.
BUG=371692
R=dtseng@chromium.org,dmazzoni@chromium.org
Review URL: https://codereview.chromium.org/299703003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272146 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently, .isolate file list is hard-coded in
build/android/pylib/gtest/setup.py so for downstream to
provide .isolate file, we need to modify the upstream setup.py
file. So add --isolate-file-path option so that downstream
can provide their own .isolate file if they want.
BUG=368034
Review URL: https://codereview.chromium.org/294033003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272137 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
It was reverted in r270600 because it broke compilation:
lib/libgfx.so:error: undefined reference to 'XCreateRegion'
lib/libgfx.so:error: undefined reference to 'XUnionRectWithRegion'
lib/libgfx.so:error: undefined reference to 'XPolygonRegion'
Original description:
This requires to major changes:
1- It requires the introduction of GfxTestSuite to allow us to
initialize the ResourceBundle which is required for some of these tests
to pass.
2- It requires to split gfx_unittests target out of gfx.gyp, into
gfx_tests.gyp. This is necessary because otherwise a circular dependency
between ui_base.gyp and gfx.gyp would arise.
The circular dependency is the form of:
gfx.gyp -> ui_base.gyp -> gfx.gyp
And is created because gfx_unittests now requires ResourceBundle to link
which is in ui_base target.
BUG=331829
TEST=ui_unittests,gfx_unittests
R=sadrul@chromium.org, danakj@chromium.orgTBR=ben@chromium.org
Review URL: https://codereview.chromium.org/291753002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272088 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Aside from accepting the new lsb distro name that only
changes needed were to the arm cross compile packages
list. This was reduced a minimal set. Also gcc-multilib
in Trust conflicts with the arm cross compiler so we
use gcc-4.8-multilib here instead.
NOTRY=true
Review URL: https://codereview.chromium.org/294663013
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272035 4ff67af0-8c30-449e-8e8b-ad334ec8d88c