diff options
Diffstat (limited to 'chromium/url/BUILD.gn')
-rw-r--r-- | chromium/url/BUILD.gn | 134 |
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", + ] + } + } +} |