Chromium Code Reviews| Index: url/BUILD.gn |
| diff --git a/url/BUILD.gn b/url/BUILD.gn |
| index 34dff8a299b813bbec4faa20814d831a109498c6..733920bf8e4fec464277f4031c75cdcd8c9ea196 100644 |
| --- a/url/BUILD.gn |
| +++ b/url/BUILD.gn |
| @@ -3,66 +3,28 @@ |
| # found in the LICENSE file. |
| import("//testing/test.gni") |
| -import("//url/config.gni") |
| -# Sets the USE_ICU_ALTERNATIVES_ON_ANDROID define based on the build flag. |
| -config("url_icu_config") { |
| - if (use_icu_alternatives_on_android) { |
| - defines = [ "USE_ICU_ALTERNATIVES_ON_ANDROID=1" ] |
| - } |
| +if (is_android) { |
| + import("//build/config/android/rules.gni") |
| } |
| +# The list of url files is kept in url_srcs.gypi. Read it. |
| +url_srcs = exec_script("//build/gypi_to_gn.py", |
|
brettw
2015/08/24 20:51:37
There's no reason to shave the file lists here. Ca
xunjieli
2015/08/26 13:58:10
Done. Good to know. thanks!
|
| + [ rebase_path("url_srcs.gypi") ], |
| + "scope", |
| + [ "url_srcs.gypi" ]) |
| + |
| component("url") { |
| if (is_win) { |
| # Don't conflict with Windows' "url.dll". |
| output_name = "url_lib" |
| } |
| - sources = [ |
| - "android/url_jni_registrar.cc", |
| - "android/url_jni_registrar.h", |
| - "gurl.cc", |
| - "gurl.h", |
| - "origin.cc", |
| - "origin.h", |
| - "scheme_host_port.cc", |
| - "scheme_host_port.h", |
| - "third_party/mozilla/url_parse.cc", |
| - "third_party/mozilla/url_parse.h", |
| - "url_canon.h", |
| - "url_canon_etc.cc", |
| - "url_canon_filesystemurl.cc", |
| - "url_canon_fileurl.cc", |
| - "url_canon_host.cc", |
| - "url_canon_icu.cc", |
| - "url_canon_icu.h", |
| - "url_canon_internal.cc", |
| - "url_canon_internal.h", |
| - "url_canon_internal_file.h", |
| - "url_canon_ip.cc", |
| - "url_canon_ip.h", |
| - "url_canon_mailtourl.cc", |
| - "url_canon_path.cc", |
| - "url_canon_pathurl.cc", |
| - "url_canon_query.cc", |
| - "url_canon_relative.cc", |
| - "url_canon_stdstring.cc", |
| - "url_canon_stdstring.h", |
| - "url_canon_stdurl.cc", |
| - "url_constants.cc", |
| - "url_constants.h", |
| - "url_export.h", |
| - "url_file.h", |
| - "url_parse_file.cc", |
| - "url_parse_internal.h", |
| - "url_util.cc", |
| - "url_util.h", |
| - ] |
| + |
| + sources = url_srcs.gurl_sources |
| defines = [ "URL_IMPLEMENTATION" ] |
| configs += [ |
| - ":url_icu_config", |
| - |
| # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
| "//build/config/compiler:no_size_t_to_int_warning", |
| ] |
| @@ -73,20 +35,42 @@ component("url") { |
| "//third_party/icu:icudata", |
| "//third_party/icu", |
| ] |
| +} |
| + |
| +if (is_android) { |
| + generate_jni("url_jni_headers") { |
| + sources = [ |
| + "android/java/src/org/chromium/url/IDNStringUtil.java", |
| + ] |
| + jni_package = "url" |
| + } |
| +} |
| + |
| +if (is_android) { |
|
brettw
2015/08/24 20:51:37
Can you combine this with the previous block?
xunjieli
2015/08/26 13:58:10
Done.
|
| + component("url_lib_use_icu_alternatives_on_android") { |
| + sources = url_srcs.gurl_sources + [ |
| + "url_canon_icu_alternatives_android.cc", |
| + "url_canon_icu_alternatives_android.h", |
| + ] |
| - if (use_icu_alternatives_on_android) { |
| sources -= [ |
| "url_canon_icu.cc", |
| "url_canon_icu.h", |
| ] |
| - deps -= [ |
| - "//third_party/icu:icudata", |
| - "//third_party/icu", |
| + defines = [ |
| + "URL_IMPLEMENTATION", |
| + "USE_ICU_ALTERNATIVES_ON_ANDROID=1", |
| + ] |
| + |
| + configs += [ |
| + # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
| + "//build/config/compiler:no_size_t_to_int_warning", |
| ] |
| - sources += [ |
| - "url_canon_icu_alternatives_android.cc", |
| - "url_canon_icu_alternatives_android.h", |
| + deps = [ |
| + "//base", |
| + "//base/third_party/dynamic_annotations", |
| + ":url_jni_headers", |
|
brettw
2015/08/24 20:51:37
This goes first.
xunjieli
2015/08/26 13:58:10
Done.
|
| ] |
| } |
| } |
| @@ -130,10 +114,5 @@ if (!is_android) { |
| "//testing/gtest", |
| "//third_party/icu:icuuc", |
| ] |
| - |
| - if (use_icu_alternatives_on_android) { |
| - sources -= [ "url_canon_icu_unittest.cc" ] |
| - deps -= [ "//third_party/icu:icuuc" ] |
| - } |
| } |
| } |