Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(82)

Side by Side Diff: url/BUILD.gn

Issue 1287893005: Reland: Make separate net and url GN targets with and without ICU (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« net/BUILD.gn ('K') | « net/BUILD.gn ('k') | url/config.gni » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//testing/test.gni") 5 import("//testing/test.gni")
6 import("//url/config.gni")
7 6
8 # Sets the USE_ICU_ALTERNATIVES_ON_ANDROID define based on the build flag. 7 if (is_android) {
9 config("url_icu_config") { 8 import("//build/config/android/rules.gni")
10 if (use_icu_alternatives_on_android) {
11 defines = [ "USE_ICU_ALTERNATIVES_ON_ANDROID=1" ]
12 }
13 } 9 }
14 10
11 # The list of url files is kept in url_srcs.gypi. Read it.
12 url_srcs = exec_script("//build/gypi_to_gn.py",
13 [ rebase_path("url_srcs.gypi") ],
14 "scope",
15 [ "url_srcs.gypi" ])
16
15 component("url") { 17 component("url") {
16 if (is_win) { 18 if (is_win) {
17 # Don't conflict with Windows' "url.dll". 19 # Don't conflict with Windows' "url.dll".
18 output_name = "url_lib" 20 output_name = "url_lib"
19 } 21 }
20 sources = [ 22
21 "android/url_jni_registrar.cc", 23 sources = url_srcs.gurl_sources
22 "android/url_jni_registrar.h",
23 "gurl.cc",
24 "gurl.h",
25 "origin.cc",
26 "origin.h",
27 "scheme_host_port.cc",
28 "scheme_host_port.h",
29 "third_party/mozilla/url_parse.cc",
30 "third_party/mozilla/url_parse.h",
31 "url_canon.h",
32 "url_canon_etc.cc",
33 "url_canon_filesystemurl.cc",
34 "url_canon_fileurl.cc",
35 "url_canon_host.cc",
36 "url_canon_icu.cc",
37 "url_canon_icu.h",
38 "url_canon_internal.cc",
39 "url_canon_internal.h",
40 "url_canon_internal_file.h",
41 "url_canon_ip.cc",
42 "url_canon_ip.h",
43 "url_canon_mailtourl.cc",
44 "url_canon_path.cc",
45 "url_canon_pathurl.cc",
46 "url_canon_query.cc",
47 "url_canon_relative.cc",
48 "url_canon_stdstring.cc",
49 "url_canon_stdstring.h",
50 "url_canon_stdurl.cc",
51 "url_constants.cc",
52 "url_constants.h",
53 "url_export.h",
54 "url_file.h",
55 "url_parse_file.cc",
56 "url_parse_internal.h",
57 "url_util.cc",
58 "url_util.h",
59 ]
60 24
61 defines = [ "URL_IMPLEMENTATION" ] 25 defines = [ "URL_IMPLEMENTATION" ]
62 26
63 configs += [ 27 configs += [
64 ":url_icu_config",
65
66 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 28 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
67 "//build/config/compiler:no_size_t_to_int_warning", 29 "//build/config/compiler:no_size_t_to_int_warning",
68 ] 30 ]
69 31
70 deps = [ 32 deps = [
71 "//base", 33 "//base",
72 "//base/third_party/dynamic_annotations", 34 "//base/third_party/dynamic_annotations",
73 "//third_party/icu:icudata", 35 "//third_party/icu:icudata",
74 "//third_party/icu", 36 "//third_party/icu",
75 ] 37 ]
38 }
76 39
77 if (use_icu_alternatives_on_android) { 40 if (is_android) {
41 generate_jni("url_jni_headers") {
42 sources = [
43 "android/java/src/org/chromium/url/IDNStringUtil.java",
44 ]
45 jni_package = "url"
46 }
47 }
48
49 if (is_android) {
50 component("url_lib_use_icu_alternatives_on_android") {
51 sources = url_srcs.gurl_sources + [
52 "url_canon_icu_alternatives_android.cc",
53 "url_canon_icu_alternatives_android.h",
54 ]
55
78 sources -= [ 56 sources -= [
79 "url_canon_icu.cc", 57 "url_canon_icu.cc",
80 "url_canon_icu.h", 58 "url_canon_icu.h",
81 ] 59 ]
82 deps -= [ 60 defines = [
83 "//third_party/icu:icudata", 61 "URL_IMPLEMENTATION",
84 "//third_party/icu", 62 "USE_ICU_ALTERNATIVES_ON_ANDROID=1",
85 ] 63 ]
86 64
87 sources += [ 65 configs += [
88 "url_canon_icu_alternatives_android.cc", 66 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
89 "url_canon_icu_alternatives_android.h", 67 "//build/config/compiler:no_size_t_to_int_warning",
68 ]
69
70 deps = [
71 "//base",
72 "//base/third_party/dynamic_annotations",
73 ":url_jni_headers",
90 ] 74 ]
91 } 75 }
92 } 76 }
93 77
94 # TODO(dpranke): crbug.com/360936. Get this to build and run on Android. 78 # TODO(dpranke): crbug.com/360936. Get this to build and run on Android.
95 if (!is_android) { 79 if (!is_android) {
96 # TODO(GYP): Delete this after we've converted everything to GN. 80 # TODO(GYP): Delete this after we've converted everything to GN.
97 # The _run targets exist only for compatibility w/ GYP. 81 # The _run targets exist only for compatibility w/ GYP.
98 group("url_unittests_run") { 82 group("url_unittests_run") {
99 testonly = true 83 testonly = true
(...skipping 23 matching lines...) Expand all
123 # } 107 # }
124 #} 108 #}
125 109
126 deps = [ 110 deps = [
127 ":url", 111 ":url",
128 "//base", 112 "//base",
129 "//base/test:run_all_unittests", 113 "//base/test:run_all_unittests",
130 "//testing/gtest", 114 "//testing/gtest",
131 "//third_party/icu:icuuc", 115 "//third_party/icu:icuuc",
132 ] 116 ]
133
134 if (use_icu_alternatives_on_android) {
135 sources -= [ "url_canon_icu_unittest.cc" ]
136 deps -= [ "//third_party/icu:icuuc" ]
137 }
138 } 117 }
139 } 118 }
OLDNEW
« net/BUILD.gn ('K') | « net/BUILD.gn ('k') | url/config.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698