url.gyp revision 010d83a9304c5a91596085d917d248abff47903a
1# Copyright 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 5{ 6 'variables': { 7 'chromium_code': 1, 8 }, 9 'includes': [ 10 'url_srcs.gypi', 11 ], 12 'targets': [ 13 { 14 # Note, this target_name cannot be 'url', because that will generate 15 # 'url.dll' for a Windows component build, and that will confuse Windows, 16 # which has a system DLL with the same name. 17 'target_name': 'url_lib', 18 'type': '<(component)', 19 'dependencies': [ 20 '../base/base.gyp:base', 21 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations', 22 '../third_party/icu/icu.gyp:icui18n', 23 '../third_party/icu/icu.gyp:icuuc', 24 ], 25 'sources': [ 26 '<@(gurl_sources)', 27 ], 28 'direct_dependent_settings': { 29 'include_dirs': [ 30 '..', 31 ], 32 }, 33 'defines': [ 34 'URL_IMPLEMENTATION', 35 ], 36 'conditions': [ 37 ['use_icu_alternatives_on_android==1', { 38 'sources!': [ 39 'url_canon_icu.cc', 40 'url_canon_icu.h', 41 ], 42 'dependencies!': [ 43 '../third_party/icu/icu.gyp:icui18n', 44 '../third_party/icu/icu.gyp:icuuc', 45 ], 46 }], 47 ['use_icu_alternatives_on_android==1 and OS=="android"', { 48 'dependencies': [ 49 'url_java', 50 'url_jni_headers', 51 ], 52 'sources': [ 53 'url_canon_icu_alternatives_android.cc', 54 'url_canon_icu_alternatives_android.h', 55 ], 56 }], 57 ], 58 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 59 'msvs_disabled_warnings': [4267, ], 60 }, 61 { 62 'target_name': 'url_unittests', 63 'type': 'executable', 64 'dependencies': [ 65 '../base/base.gyp:run_all_unittests', 66 '../testing/gtest.gyp:gtest', 67 '../third_party/icu/icu.gyp:icuuc', 68 'url_lib', 69 ], 70 'sources': [ 71 'gurl_unittest.cc', 72 'origin_unittest.cc', 73 'url_canon_icu_unittest.cc', 74 'url_canon_unittest.cc', 75 'url_parse_unittest.cc', 76 'url_test_utils.h', 77 'url_util_unittest.cc', 78 ], 79 'conditions': [ 80 ['os_posix==1 and OS!="mac" and OS!="ios" and use_allocator!="none"', 81 { 82 'dependencies': [ 83 '../base/allocator/allocator.gyp:allocator', 84 ], 85 } 86 ], 87 ['use_icu_alternatives_on_android==1', 88 { 89 'sources!': [ 90 'url_canon_icu_unittest.cc', 91 ], 92 'dependencies!': [ 93 '../third_party/icu/icu.gyp:icuuc', 94 ], 95 } 96 ], 97 ], 98 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 99 'msvs_disabled_warnings': [4267, ], 100 }, 101 ], 102 'conditions': [ 103 ['use_icu_alternatives_on_android==1 and OS=="android"', { 104 'targets': [ 105 { 106 'target_name': 'url_jni_headers', 107 'type': 'none', 108 'sources': [ 109 'android/java/src/org/chromium/url/IDNStringUtil.java' 110 ], 111 'variables': { 112 'jni_gen_package': 'url', 113 }, 114 'includes': [ '../build/jni_generator.gypi' ], 115 }, 116 { 117 'target_name': 'url_java', 118 'type': 'none', 119 'variables': { 120 'java_in_dir': '../url/android/java', 121 }, 122 'dependencies': [ 123 '../base/base.gyp:base', 124 ], 125 'includes': [ '../build/java.gypi' ], 126 }, 127 ], 128 }], 129 ], 130} 131