Home | History | Annotate | Download | only in cpp
      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   'includes': ['libaddressinput.gypi'],
     19   'target_defaults': {
     20     'include_dirs': [
     21       'include',
     22     ],
     23   },
     24   'targets': [
     25     {
     26       'target_name': 'libaddressinput',
     27       'type': '<(component)',
     28       'sources': [
     29         '<@(libaddressinput_files)',
     30       ],
     31       'dependencies': [
     32         'grit.gyp:generated_messages',
     33         'rapidjson.gyp:rapidjson',
     34         're2.gyp:re2',
     35       ],
     36       'conditions': [
     37         ['OS == "linux" and _type == "shared_library"', {
     38           # https://code.google.com/p/gyp/issues/detail?id=374
     39           'cflags': ['-fPIC'],
     40         }],
     41       ],
     42     },
     43     {
     44       'target_name': 'unit_tests',
     45       'type': 'executable',
     46       'sources': [
     47         '<@(libaddressinput_test_files)',
     48       ],
     49       'defines': [
     50         'TEST_DATA_DIR="../testdata"',
     51       ],
     52       'include_dirs': [
     53         'src',
     54       ],
     55       'dependencies': [
     56         'libaddressinput',
     57         'gtest.gyp:main',
     58       ],
     59       'conditions': [
     60         [ 'OS == "mac"', {
     61           'postbuilds': [
     62             {
     63               # To make it possible to execute the unit tests directly from the
     64               # build directory, without first installing the library, the path
     65               # to the library is set to be relative to the unit test executable
     66               # (so that also the library will be loaded directly from the build
     67               # directory).
     68               'postbuild_name': 'Make dylib path relative to executable',
     69               'action': [
     70                 'install_name_tool',
     71                 '-change',
     72                 '/usr/local/lib/libaddressinput.dylib',
     73                 '@executable_path/libaddressinput.dylib',
     74                 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
     75               ],
     76             },
     77           ],
     78         }],
     79       ],
     80     },
     81   ],
     82 }
     83