Mostly just a refactoring of build rules to support prebuilt jars.
Adds support for proguard preprocessing of both prebuilt and
non-prebuilt java libraries.
Adds definitions of all (but for android.jar) of the prebuilt jars that
we need from the sdk.
BUG=359249
Review URL: https://codereview.chromium.org/484813002
Cr-Original-Commit-Position: refs/heads/master@{#291464}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 684b22957e09c08e917a63390b04980a67da4fa1
Previously, if you specified an empty resource ID file in the grit template in the GN build, it would send "-f" with no argument to grit, and this would cause the command line parsing to get messed up and it wouldn't generate any files.
This patch just omits the "-f" argument in this case.
R=jam@chromium.org
Review URL: https://codereview.chromium.org/495183002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@291173 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This directory contains a GN build file that defines a dummy "ui"
component target that does not really do anything that matters.
ui/ targets are almost finished at this time, so there is no point in
keeping this ui/ BUILD file in build/secondary.
BUG=None
TEST=None
R=brettw@chromium.org
NOTRY=true
Review URL: https://codereview.chromium.org/451553002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@290188 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This matches the gyp build and is important for parts of the code that
guard their API with UNIT_TEST. For instance,
chrome/browser/ui/views/omnibox/omnibox_view_views.h has a GetRenderText
function guarded by #if UNIT_TEST that shadows a protected function
GetRenderText from its parent class views::Textfield, but with different
const-ness. If c/b/u/v/o/omnibox_view_views.cc is compiled with UNIT_TEST
set, it attempts to use the guarded member function instead of the base
class which fails to compile.
R=brettw@chromium.org
Review URL: https://codereview.chromium.org/464503003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@288988 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
These DEPS have not been updated for ~2 years, so there is a good chance
something will blow up. Due to interdependancy between the repos,
rolling gtest required gmock also be rolled.
This CL was originally landed as 288164 and reverted as 288239 because it allows
more aggressive LTO in MSVS. This resulted in the compiler noticing an
intentional arithmetic overflow and warning about it.
BUG=401761
Review URL: https://codereview.chromium.org/425333002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@288505 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Suspected to have broken the Chrome Win build:
c:\b\build\slave\google-chrome-rel-win\build\src\base\numerics\safe_numerics_unittest.cc(577) : error C2220: warning treated as error - no 'object' file generated
c:\b\build\slave\google-chrome-rel-win\build\src\base\numerics\safe_numerics_unittest.cc(577) : warning C4756: overflow in constant arithmetic
> Roll gtest and gmock DEPS.
>
> These DEPS have not been updated for ~2 years, so there is a good chance
> something will blow up. Due to interdependancy between the repos,
> rolling gtest required gmock also be rolled.
>
> BUG=none
>
> Review URL: https://codereview.chromium.org/425333002TBR=ncbray@chromium.org
Review URL: https://codereview.chromium.org/454823002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@288239 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
It doesn't run yet. This disables WebRTC since that's not done yet.
Libvpx isn't done either. This patch exports the disable flag for this from media to dependent targets like the GYP build does. It adds one extra check for this flag in Pepper. I assume everybody that compiles without libvpx also disables plugins so this has never come up before.
Disable some warnings in Mesa.
The resulting binary does not yet run.
R=jamesr@chromium.org
Review URL: https://codereview.chromium.org/419913003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@285962 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Pull grit 171 to get the new deps fixes required to implement this.
This removes the call to grit for querying inputs completely, and enables depfile writing to enable automatic rebuilds when things are out-of-date.
Adds a new outputs variable that bypasses querying grit for outputs. This will assert that the given files exist in grit. This version allows outputs to be empty in which case it will revert to the old dynamic behavior. I'm going to land this with just the worst cases fixed to make landing easier. Then followup with converting the rest of the grit targets and removing the dynamic option.
R=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/407653003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@284705 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This adds the missing conditions to the chrome/common GN build file (previously
only the basic files were there). Some refactoring of the GYP file to make this
possible.
Renames the enable_printing flag to printing_mode since this is an integer
tri-state.
Minor improvements to chrome/renderer
R=jamesr@chromium.org
Review URL: https://codereview.chromium.org/400243003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@284508 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The ICU update does the following among other things:
- Update EUC-JP (no more JIS X 212 round-trip coverage) per WHATWG
encoding spec.
- Add CP866
- Add far better/more extensive support for plural, format, etc
- Numerous locale data update
- Khmer/Lao line/word-breaking support
- More compact Chinese/Japanese dictionary (now a part of the upstream
instead of our local patch)
- Better plural support that we plan to use right away.
- Update icu/BUILD.gn : file list update, new defines, etc.
- Update tests
a. icu_string_conversions_unittests : drop iscii (nobody uses it) and
remove JIS X 212 code points from the round-trip test
b. l10n_util_unittests: Display names for zh-*.
c. ThaiSnippet's expected result. (due to a Unicode grapheme definition change).
d. Update Expected results in file_manager_browsertest/test_util.js
(see http://crbug.com/383930)
- Update SpellcheckerWordIterator
a. Add U+0027 back to MidNumLet
b. Add Lao and Khmer scripts to the list of scripts requiring dictionary-based
word-breaking.
- l10n_util : alias 'tl' to 'fil' (Tagalog to Filipino)
- Update IdentityInternalsSingleTokenWebUITest.verifyGetters (DateTimeFormat-Full
has 'at' before time, which is not handled by Date.parse()
- update license.py because we don't have a separate Chinese/Japanese
dictionary any more. It's now a part of ICU
Note to Sheriff :
1. 140 ~ 200 kB size increase is expected for all platforms.
This size increase was singed off by laforge@.
The expected size has to be updated with both reva/revb pointing to the
revision corresponding to this CL.
2. http://codereview.chromium.org/348913002 has to be applied before running make_expectations.py to update tools/perf_expectations/perf_expectations.json
after this CL is landed.
BUG=132145,277023,136148,360433,364072
TEST=base_unittests:*ICU*, net_unittests:*IDN*, ui_unittests:*Lang*,
browser_tests (encoding related, Iden*verifyGet*),
unit_tests:Ext*L10*, unit_tests:*Lang*, component_tests:*Snipp*,
layout tests (encoding, date/calendar, line breaking, and others),
build 'base_i18n_nacl', GN build bots.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=277111R=arv@chromium.org, brettw@chromium.org, fgorski@chromium.org, groby@chromium.org, hirono@chromium.org, tony@chromium.org, toyoshim@chromium.org
Review URL: https://codereview.chromium.org/265613002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@284167 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This adds support for android resources to gn.
Two new templates are introduced:
java_string_grd: This is like gyp's build/java_strings_grd.gypi. It runs
grit and generates Android strings.xml files and then zips them
together.
android_resources: This is the target for android resources. It is
mostly a wrapper around process_resources.py. This is *not part* of
android_library (like it is in gyp). Making these two things separate is
more like facebook's BUCK and google's internal build rules (and gyp's
java.gypi and java_apk.gypi have gotten way too big and complicated).
Changes to the actual build scripts are very minor except for the added
support for andoid_resources to write_build_config.py. Building
resources requires getting all the transitive resource dependencies, and
so this reuses the simple sorted transitive dependency thing from
write_ordered_libraries.py.
TBR=rch@chromium.org
BUG=359249
Review URL: https://codereview.chromium.org/361633002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@283293 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This uses the proto file directory for the generated files rather than the directory of the BUILD file. This makes it more natural when you have a BUILD file in a different directory than the proto files.
Fixes a search-and-replace error that accidentally changed the fallback source_prereqs code to use "inputs".
Fix ozone build.
BUG=
R=ajwong@chromium.org
Review URL: https://codereview.chromium.org/386943006
git-svn-id: http://src.chromium.org/svn/trunk/src/build@282998 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This fills out a number of ui targets and does some changes to the resources to match the GYP build. In particular, we had a number of different ui/resources targets that were depended on independently. The GYP build has only one, so I combined them into a meta "ui/resources" target.
Adds a grit repack template.
TBR=ajwong
Review URL: https://codereview.chromium.org/369603004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@281087 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
components/autofill
components/metrics
components/policy
components/variations
third_party/libphonenumber
third_party/mt19937ar
ui/gfx/ipc
These are all requried to compile chrome/browser in some form or another.
Fills out all grit_defines (also required for chrome/browser) and adds associated flags for them.
Add the ability for generated_extensions_api to not generate a bundle.
Remove mt19937ar from .gitignore (it's just checked into the tree)
R=ajwong@chromium.org
Review URL: https://codereview.chromium.org/365793002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@281057 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
These deps are some of those required to compile chrome/browser (so mostly those containing resources and protobufs that have generated headers). chrome/browser still has some dependencies left.
Add third_party libs libaddressinput and dom_distiller_js.
Add components dom_distiller and policy.
Separate the generate_library_loader into a separate .gni file.
Rename components_strings to just strings.
R=ajwong@chromium.org
Review URL: https://codereview.chromium.org/362583002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@280916 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This adds a lot of global enable flags for various features used by the browser.
It is not turned on because it does not compile yet. It needs some include directories and generated sources from dependencies that aren't done yet.
It is basically a line-by-line translation of the current chrome_browser.gypi. As such, it looks pretty ugly but I think keeping these in sync will be easiest.
I put in the obvious names of the GN deps. There are surely a bunch that exist in the GN build that aren't here yet but I'm going to save this for later passes.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/356303002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@280693 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
It's a goodness to sequester build configuration in the build/
directory. The gn secondary_source stuff was under tools/gn for
historical reasons, so move it to a more appropriate place.
BUG=None
TEST=do a gn build of base_unittests, run said unittests.
Review URL: https://codereview.chromium.org/340153004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@278355 4ff67af0-8c30-449e-8e8b-ad334ec8d88c