summaryrefslogtreecommitdiffstats
path: root/url
diff options
context:
space:
mode:
authorxunjieli <xunjieli@chromium.org>2015-08-27 09:02:40 -0700
committerCommit bot <commit-bot@chromium.org>2015-08-27 16:03:29 +0000
commit4c8c6921ca6739d16f6551635328faf164848f9d (patch)
tree51ea5484c287ad9ef8b8be1bb276598ed021fc0d /url
parent79fd7e76137d63daca9da5a674cac12ecb306848 (diff)
downloadchromium_src-4c8c6921ca6739d16f6551635328faf164848f9d.zip
chromium_src-4c8c6921ca6739d16f6551635328faf164848f9d.tar.gz
chromium_src-4c8c6921ca6739d16f6551635328faf164848f9d.tar.bz2
Make separate net and url GN targets with and without ICU
The net and url GYP files were modified in crrev.com/933293003 so Cronet could be built side-by-side with Chrome. However GN files are not modified. This CL keeps the GN files in sync with the GYP files. BUG=522096 Review URL: https://codereview.chromium.org/1287893005 Cr-Commit-Position: refs/heads/master@{#345891}
Diffstat (limited to 'url')
-rw-r--r--url/BUILD.gn137
-rw-r--r--url/config.gni8
2 files changed, 73 insertions, 72 deletions
diff --git a/url/BUILD.gn b/url/BUILD.gn
index 34dff8a..84c2714 100644
--- a/url/BUILD.gn
+++ b/url/BUILD.gn
@@ -3,66 +3,64 @@
# 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")
}
+# Shared sources between url and url_lib_use_icu_alternatives_on_android.
+url_shared_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_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",
+]
+
component("url") {
+ sources = url_shared_sources + [
+ "url_canon_icu.cc",
+ "url_canon_icu.h",
+ ]
+
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",
- ]
-
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 +71,36 @@ 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"
+ }
+
+ component("url_lib_use_icu_alternatives_on_android") {
+ sources = url_shared_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",
+ defines = [
+ "URL_IMPLEMENTATION",
+ "USE_ICU_ALTERNATIVES_ON_ANDROID=1",
]
- deps -= [
- "//third_party/icu:icudata",
- "//third_party/icu",
+
+ 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 = [
+ ":url_jni_headers",
+ "//base",
+ "//base/third_party/dynamic_annotations",
]
}
}
@@ -130,10 +144,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" ]
- }
}
}
diff --git a/url/config.gni b/url/config.gni
deleted file mode 100644
index 42d335f..0000000
--- a/url/config.gni
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2014 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-declare_args() {
- # Switches to using platform functions instead of ICU on Android.
- use_icu_alternatives_on_android = false
-}