[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 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 |
| 3 | # found in the LICENSE file. |
| 4 | |
qsr | fb5251d1 | 2015-01-21 15:57:22 | [diff] [blame^] | 5 | import("//testing/test.gni") |
[email protected] | 85191ed | 2014-05-15 00:41:49 | [diff] [blame] | 6 | import("//url/config.gni") |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 7 | |
| 8 | # Sets the USE_ICU_ALTERNATIVES_ON_ANDROID define based on the build flag. |
| 9 | config("url_icu_config") { |
| 10 | if (use_icu_alternatives_on_android) { |
| 11 | defines = [ "USE_ICU_ALTERNATIVES_ON_ANDROID=1" ] |
| 12 | } |
| 13 | } |
| 14 | |
[email protected] | b5c19e3 | 2013-09-10 23:01:25 | [diff] [blame] | 15 | component("url") { |
[email protected] | b5c19e3 | 2013-09-10 23:01:25 | [diff] [blame] | 16 | if (is_win) { |
| 17 | # Don't conflict with Windows' "url.dll". |
| 18 | output_name = "url_lib" |
| 19 | } |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 20 | sources = [ |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 21 | "android/url_jni_registrar.cc", |
| 22 | "android/url_jni_registrar.h", |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 23 | "gurl.cc", |
| 24 | "gurl.h", |
[email protected] | 8a3f824 | 2014-06-05 18:05:12 | [diff] [blame] | 25 | "origin.cc", |
| 26 | "origin.h", |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 27 | "third_party/mozilla/url_parse.cc", |
| 28 | "third_party/mozilla/url_parse.h", |
| 29 | "url_canon.h", |
| 30 | "url_canon_etc.cc", |
| 31 | "url_canon_filesystemurl.cc", |
| 32 | "url_canon_fileurl.cc", |
| 33 | "url_canon_host.cc", |
| 34 | "url_canon_icu.cc", |
| 35 | "url_canon_icu.h", |
| 36 | "url_canon_internal.cc", |
| 37 | "url_canon_internal.h", |
| 38 | "url_canon_internal_file.h", |
| 39 | "url_canon_ip.cc", |
| 40 | "url_canon_ip.h", |
| 41 | "url_canon_mailtourl.cc", |
| 42 | "url_canon_path.cc", |
| 43 | "url_canon_pathurl.cc", |
| 44 | "url_canon_query.cc", |
| 45 | "url_canon_relative.cc", |
[email protected] | 5483752 | 2013-12-21 17:56:38 | [diff] [blame] | 46 | "url_canon_stdstring.cc", |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 47 | "url_canon_stdstring.h", |
| 48 | "url_canon_stdurl.cc", |
[email protected] | e8ca69c | 2014-05-07 15:31:19 | [diff] [blame] | 49 | "url_constants.cc", |
| 50 | "url_constants.h", |
[email protected] | fa8d1b6 | 2014-01-05 22:49:50 | [diff] [blame] | 51 | "url_export.h", |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 52 | "url_file.h", |
| 53 | "url_parse_file.cc", |
| 54 | "url_parse_internal.h", |
| 55 | "url_util.cc", |
| 56 | "url_util.h", |
| 57 | ] |
| 58 | |
| 59 | defines = [ "URL_IMPLEMENTATION" ] |
| 60 | |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 61 | configs += [ ":url_icu_config" ] |
| 62 | |
[email protected] | aa981566 | 2014-06-13 16:29:01 | [diff] [blame] | 63 | if (is_win) { |
scottmg | 34fb7e5 | 2014-12-03 23:27:24 | [diff] [blame] | 64 | cflags = [ "/wd4267" ] # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
[email protected] | aa981566 | 2014-06-13 16:29:01 | [diff] [blame] | 65 | } |
[email protected] | fa8d1b6 | 2014-01-05 22:49:50 | [diff] [blame] | 66 | |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 67 | deps = [ |
| 68 | "//base", |
[email protected] | 109875f | 2014-06-05 05:53:14 | [diff] [blame] | 69 | "//base/third_party/dynamic_annotations", |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 70 | "//third_party/icu:icudata", |
[email protected] | cc7ec69 | 2014-04-08 17:20:38 | [diff] [blame] | 71 | "//third_party/icu", |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 72 | ] |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 73 | |
| 74 | if (use_icu_alternatives_on_android) { |
| 75 | sources -= [ |
| 76 | "url_canon_icu.cc", |
| 77 | "url_canon_icu.h", |
| 78 | ] |
| 79 | deps -= [ |
| 80 | "//third_party/icu:icudata", |
| 81 | "//third_party/icu", |
| 82 | ] |
| 83 | |
| 84 | sources += [ |
| 85 | "url_canon_icu_alternatives_android.cc", |
| 86 | "url_canon_icu_alternatives_android.h", |
| 87 | ] |
| 88 | } |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 89 | } |
| 90 | |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 91 | # TODO(dpranke): crbug.com/360936. Get this to build and run on Android. |
| 92 | if (!is_android) { |
| 93 | test("url_unittests") { |
| 94 | sources = [ |
| 95 | "gurl_unittest.cc", |
[email protected] | 8a3f824 | 2014-06-05 18:05:12 | [diff] [blame] | 96 | "origin_unittest.cc", |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 97 | "url_canon_icu_unittest.cc", |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 98 | "url_canon_unittest.cc", |
| 99 | "url_parse_unittest.cc", |
| 100 | "url_test_utils.h", |
| 101 | "url_util_unittest.cc", |
| 102 | ] |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 103 | |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 104 | #if (is_posix && !is_mac && !is_ios) { |
[email protected] | 2fa89ef | 2014-05-07 18:45:59 | [diff] [blame] | 105 | # if (use_allocator!="none") { |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 106 | # deps += "//base/allocator" |
| 107 | # } |
| 108 | #} |
[email protected] | fa8d1b6 | 2014-01-05 22:49:50 | [diff] [blame] | 109 | |
[email protected] | aa981566 | 2014-06-13 16:29:01 | [diff] [blame] | 110 | if (is_win) { |
| 111 | cflags = [ |
| 112 | # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
| 113 | "/wd4267", |
| 114 | ] |
| 115 | } |
[email protected] | fa8d1b6 | 2014-01-05 22:49:50 | [diff] [blame] | 116 | |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 117 | deps = [ |
| 118 | ":url", |
jamesr | 297949a | 2014-11-30 18:46:24 | [diff] [blame] | 119 | "//base", |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 120 | "//base/test:run_all_unittests", |
| 121 | "//testing/gtest", |
| 122 | "//third_party/icu:icuuc", |
| 123 | ] |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 124 | |
| 125 | if (use_icu_alternatives_on_android) { |
scottmg | 34fb7e5 | 2014-12-03 23:27:24 | [diff] [blame] | 126 | sources -= [ "url_canon_icu_unittest.cc" ] |
| 127 | deps -= [ "//third_party/icu:icuuc" ] |
[email protected] | 847aaab8 | 2014-05-07 14:05:46 | [diff] [blame] | 128 | } |
[email protected] | 5a8d516 | 2014-04-12 01:19:16 | [diff] [blame] | 129 | } |
[email protected] | c6f27f2 | 2013-08-21 21:44:59 | [diff] [blame] | 130 | } |