summaryrefslogtreecommitdiffstats
path: root/chromium/url/BUILD.gn
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/url/BUILD.gn')
-rw-r--r--chromium/url/BUILD.gn134
1 files changed, 134 insertions, 0 deletions
diff --git a/chromium/url/BUILD.gn b/chromium/url/BUILD.gn
new file mode 100644
index 00000000000..ec15c438d98
--- /dev/null
+++ b/chromium/url/BUILD.gn
@@ -0,0 +1,134 @@
+# Copyright (c) 2013 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.
+
+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" ]
+ }
+}
+
+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",
+ "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" ]
+
+ if (is_win) {
+ cflags = [
+ "/wd4267", # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
+ ]
+ }
+
+ deps = [
+ "//base",
+ "//base/third_party/dynamic_annotations",
+ "//third_party/icu:icudata",
+ "//third_party/icu",
+ ]
+
+ if (use_icu_alternatives_on_android) {
+ sources -= [
+ "url_canon_icu.cc",
+ "url_canon_icu.h",
+ ]
+ deps -= [
+ "//third_party/icu:icudata",
+ "//third_party/icu",
+ ]
+
+ sources += [
+ "url_canon_icu_alternatives_android.cc",
+ "url_canon_icu_alternatives_android.h",
+ ]
+ }
+}
+
+# TODO(dpranke): crbug.com/360936. Get this to build and run on Android.
+if (!is_android) {
+ test("url_unittests") {
+ sources = [
+ "gurl_unittest.cc",
+ "origin_unittest.cc",
+ "url_canon_icu_unittest.cc",
+ "url_canon_unittest.cc",
+ "url_parse_unittest.cc",
+ "url_test_utils.h",
+ "url_util_unittest.cc",
+ ]
+
+ #if (is_posix && !is_mac && !is_ios) {
+ # if (use_allocator!="none") {
+ # deps += "//base/allocator"
+ # }
+ #}
+
+ if (is_win) {
+ cflags = [
+ # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
+ "/wd4267",
+ ]
+ }
+
+ deps = [
+ ":url",
+ "//base/test:run_all_unittests",
+ "//testing/gtest",
+ "//third_party/icu:icuuc",
+ ]
+
+ if (use_icu_alternatives_on_android) {
+ sources -= [
+ "url_canon_icu_unittest.cc",
+ ]
+ deps -= [
+ "//third_party/icu:icuuc",
+ ]
+ }
+ }
+}