Always set *error when CreateDirectoryAndGetError fails.
[chromium-blink-merge.git] / url / url.gyp
blob5066899a4e192e486760a9f42ce952ccbde73158
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.
6   'variables': {
7     'chromium_code': 1,
8   },
9   'targets': [
10     {
11       # Note, this target_name cannot be 'url', because that will generate
12       # 'url.dll' for a Windows component build, and that will confuse Windows,
13       # which has a system DLL with the same name.
14       'target_name': 'url_lib',
15       'type': '<(component)',
16       'dependencies': [
17         '../base/base.gyp:base',
18         '../third_party/icu/icu.gyp:icudata',
19         '../third_party/icu/icu.gyp:icui18n',
20         '../third_party/icu/icu.gyp:icuuc',
21       ],
22       'sources': [
23         'gurl.cc',
24         'gurl.h',
25         'url_canon.h',
26         'url_canon_etc.cc',
27         'url_canon_filesystemurl.cc',
28         'url_canon_fileurl.cc',
29         'url_canon_host.cc',
30         'url_canon_icu.cc',
31         'url_canon_icu.h',
32         'url_canon_internal.cc',
33         'url_canon_internal.h',
34         'url_canon_internal_file.h',
35         'url_canon_ip.cc',
36         'url_canon_ip.h',
37         'url_canon_mailtourl.cc',
38         'url_canon_path.cc',
39         'url_canon_pathurl.cc',
40         'url_canon_query.cc',
41         'url_canon_relative.cc',
42         'url_canon_stdstring.h',
43         'url_canon_stdurl.cc',
44         'url_file.h',
45         'url_parse.cc',
46         'url_parse.h',
47         'url_parse_file.cc',
48         'url_parse_internal.h',
49         'url_util.cc',
50         'url_util.h',
51       ],
52       'direct_dependent_settings': {
53         'include_dirs': [
54           '..',
55         ],
56       },
57       'defines': [
58         'URL_IMPLEMENTATION',
59       ],
60       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
61       'msvs_disabled_warnings': [4267, ],
62     },
63     {
64       'target_name': 'url_unittests',
65       'type': 'executable',
66       'dependencies': [
67         '../base/base.gyp:base_i18n',
68         '../base/base.gyp:run_all_unittests',
69         '../testing/gtest.gyp:gtest',
70         '../third_party/icu/icu.gyp:icuuc',
71         'url_lib',
72       ],
73       'sources': [
74         'gurl_unittest.cc',
75         'url_canon_unittest.cc',
76         'url_parse_unittest.cc',
77         'url_test_utils.h',
78         'url_util_unittest.cc',
79       ],
80       'conditions': [
81         ['os_posix==1 and OS!="mac" and OS!="ios"',
82           {
83             'conditions': [
84               ['linux_use_tcmalloc==1',
85                 {
86                   'dependencies': [
87                     '../base/allocator/allocator.gyp:allocator',
88                   ],
89                 }
90               ],
91             ],
92           }
93         ],
94       ],
95       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
96       'msvs_disabled_warnings': [4267, ],
97     },
98     {
99        # url_unittests was formerly named googleurl_unittests. While the build
100        # bots are being switched to use the new name we need to support both
101        # executables.
102        # TODO(tfarina): Remove this target when build bots are building and
103        # running url_unittests. crbug.com/229660
104       'target_name': 'googleurl_unittests',
105       'type': 'none',
106       'dependencies': [
107         'url_unittests',
108       ],
109       'conditions': [
110         ['OS != "ios"',
111           {
112             'actions': [
113               {
114                 'message': 'TEMPORARY: Copying url_unittests to googleurl_unittests',
115                 'action_name': 'copy_url_unittests',
116                 'variables': {
117                   'source_file': '<(PRODUCT_DIR)/url_unittests<(EXECUTABLE_SUFFIX)',
118                   'dest_file': '<(PRODUCT_DIR)/googleurl_unittests<(EXECUTABLE_SUFFIX)',
119                 },
120                 'inputs': [
121                   '../build/cp.py',
122                   '<(source_file)',
123                 ],
124                 'outputs': [
125                   '<(dest_file)',
126                 ],
127                 'action': [
128                   'python', '../build/cp.py', '<(source_file)', '<(dest_file)',
129                 ],
130               },
131             ],
132           }, {  # else OS == "ios"
133             'actions': [
134               {
135                 'message': 'TEMPORARY: Copying url_unittests to googleurl_unittests',
136                 'action_name': 'copy_url_unittests',
137                 'variables': {
138                   'source_file': '<(PRODUCT_DIR)/url_unittests.app/',
139                   'dest_file': '<(PRODUCT_DIR)/googleurl_unittests.app',
140                 },
141                 'inputs': [
142                   '../build/cp.py',
143                   '<(source_file)',
144                 ],
145                 'outputs': [
146                   '<(dest_file)',
147                 ],
148                 'action': [
149                   'cp', '-R', '<(source_file)', '<(dest_file)',
150                 ],
151               },
152             ],
153           }
154         ]
155       ],
156     },
157   ],