Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / third_party / libaddressinput / chromium / cpp / libaddressinput.gyp
1 # Copyright (C) 2013 Google Inc.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 {
15   'variables': {
16     'component%': 'shared_library',
17   },
18   'target_defaults': {
19     'conditions': [
20       ['OS == "linux" and "<(component)" == "shared_library"', {
21         # https://code.google.com/p/gyp/issues/detail?id=374
22         'cflags': ['-fPIC'],
23       }],
24     ],
25     'include_dirs': [
26       'include',
27     ],
28   },
29   'targets': [
30     {
31       'target_name': 'libaddressinput',
32       'type': '<(component)',
33       'sources': [
34         'src/address_data.cc',
35         'src/address_field.cc',
36         'src/address_problem.cc',
37         'src/address_ui.cc',
38         'src/address_validator.cc',
39         'src/country_rules_aggregator.cc',
40         'src/fallback_data_store.cc',
41         'src/region_data_constants.cc',
42         'src/retriever.cc',
43         'src/rule.cc',
44         'src/ruleset.cc',
45         'src/time_to_string.cc',
46         'src/util/json.cc',
47         'src/util/md5.cc',
48         'src/util/string_compare.cc',
49         'src/util/string_split.cc',
50       ],
51       'defines': [
52         'VALIDATION_DATA_URL="https://i18napis.appspot.com/ssl-aggregate-address/"',
53       ],
54       'dependencies': [
55         'grit.gyp:generated_messages',
56         'rapidjson.gyp:rapidjson',
57         're2.gyp:re2',
58       ],
59     },
60     {
61       'target_name': 'unit_tests',
62       'type': 'executable',
63       'sources': [
64         'test/address_data_test.cc',
65         'test/address_ui_test.cc',
66         'test/address_validator_test.cc',
67         'test/country_rules_aggregator_test.cc',
68         'test/fake_downloader.cc',
69         'test/fake_downloader_test.cc',
70         'test/fake_storage.cc',
71         'test/fake_storage_test.cc',
72         'test/fallback_data_store_test.cc',
73         'test/region_data_constants_test.cc',
74         'test/retriever_test.cc',
75         'test/rule_test.cc',
76         'test/storage_test_runner.cc',
77         'test/time_to_string.cc',
78         'test/util/json_test.cc',
79         'test/util/md5_unittest.cc',
80         'test/util/scoped_ptr_unittest.cc',
81         'test/util/stl_util_unittest.cc',
82         'test/util/string_split_unittest.cc',
83       ],
84       'defines': [
85         'TEST_DATA_DIR="../testdata"',
86       ],
87       'include_dirs': [
88         'src',
89       ],
90       'dependencies': [
91         'libaddressinput',
92         'gtest.gyp:main',
93       ],
94       'conditions': [
95         [ 'OS == "mac"', {
96           'postbuilds': [
97             {
98               # To make it possible to execute the unit tests directly from the
99               # build directory, without first installing the library, the path
100               # to the library is set to be relative to the unit test executable
101               # (so that also the library will be loaded directly from the build
102               # directory).
103               'postbuild_name': 'Make dylib path relative to executable',
104               'action': [
105                 'install_name_tool',
106                 '-change',
107                 '/usr/local/lib/libaddressinput.dylib',
108                 '@executable_path/libaddressinput.dylib',
109                 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
110               ],
111             },
112           ],
113         }],
114       ],
115     },
116   ],
117 }