1# Copyright 2014 PDFium 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# Original code from V8, original license was: 6# Copyright 2014 the V8 project authors. All rights reserved. 7# Use of this source code is governed by a BSD-style license that can be 8# found in the LICENSE file. 9# 10# This file is used only by the standalone PDFium build. Under a chromium 11# checkout, the src/testing/gtest.gyp file is used instead. 12{ 13 'targets': [ 14 { 15 'target_name': 'gtest', 16 'toolsets': ['host', 'target'], 17 'type': 'static_library', 18 'sources': [ 19 'gtest/include/gtest/gtest-death-test.h', 20 'gtest/include/gtest/gtest-message.h', 21 'gtest/include/gtest/gtest-param-test.h', 22 'gtest/include/gtest/gtest-printers.h', 23 'gtest/include/gtest/gtest-spi.h', 24 'gtest/include/gtest/gtest-test-part.h', 25 'gtest/include/gtest/gtest-typed-test.h', 26 'gtest/include/gtest/gtest.h', 27 'gtest/include/gtest/gtest_pred_impl.h', 28 'gtest/include/gtest/internal/gtest-death-test-internal.h', 29 'gtest/include/gtest/internal/gtest-filepath.h', 30 'gtest/include/gtest/internal/gtest-internal.h', 31 'gtest/include/gtest/internal/gtest-linked_ptr.h', 32 'gtest/include/gtest/internal/gtest-param-util-generated.h', 33 'gtest/include/gtest/internal/gtest-param-util.h', 34 'gtest/include/gtest/internal/gtest-port.h', 35 'gtest/include/gtest/internal/gtest-string.h', 36 'gtest/include/gtest/internal/gtest-tuple.h', 37 'gtest/include/gtest/internal/gtest-type-util.h', 38 'gtest/src/gtest-all.cc', 39 'gtest/src/gtest-death-test.cc', 40 'gtest/src/gtest-filepath.cc', 41 'gtest/src/gtest-internal-inl.h', 42 'gtest/src/gtest-port.cc', 43 'gtest/src/gtest-printers.cc', 44 'gtest/src/gtest-test-part.cc', 45 'gtest/src/gtest-typed-test.cc', 46 'gtest/src/gtest.cc', 47 ], 48 'sources!': [ 49 'gtest/src/gtest-all.cc', # Not needed by our build. 50 ], 51 'include_dirs': [ 52 'gtest', 53 'gtest/include', 54 ], 55 'dependencies': [ 56 'gtest_prod', 57 ], 58 'defines': [ 59 # In order to allow regex matches in gtest to be shared between Windows 60 # and other systems, we tell gtest to always use it's internal engine. 61 'GTEST_HAS_POSIX_RE=0', 62 # Unit tests don't require C++11, yet. 63 'GTEST_LANG_CXX11=0', 64 ], 65 'all_dependent_settings': { 66 'defines': [ 67 'GTEST_HAS_POSIX_RE=0', 68 'GTEST_LANG_CXX11=0', 69 ], 70 }, 71 'conditions': [ 72 ['os_posix == 1', { 73 'defines': [ 74 # gtest isn't able to figure out when RTTI is disabled for gcc 75 # versions older than 4.3.2, and assumes it's enabled. Our Mac 76 # and Linux builds disable RTTI, and cannot guarantee that the 77 # compiler will be 4.3.2. or newer. The Mac, for example, uses 78 # 4.2.1 as that is the latest available on that platform. gtest 79 # must be instructed that RTTI is disabled here, and for any 80 # direct dependents that might include gtest headers. 81 'GTEST_HAS_RTTI=0', 82 ], 83 'direct_dependent_settings': { 84 'defines': [ 85 'GTEST_HAS_RTTI=0', 86 ], 87 }, 88 }], 89 ['OS=="android"', { 90 'defines': [ 91 'GTEST_HAS_CLONE=0', 92 ], 93 'direct_dependent_settings': { 94 'defines': [ 95 'GTEST_HAS_CLONE=0', 96 ], 97 }, 98 }], 99 ['OS=="android"', { 100 # We want gtest features that use tr1::tuple, but we currently 101 # don't support the variadic templates used by libstdc++'s 102 # implementation. gtest supports this scenario by providing its 103 # own implementation but we must opt in to it. 104 'defines': [ 105 'GTEST_USE_OWN_TR1_TUPLE=1', 106 # GTEST_USE_OWN_TR1_TUPLE only works if GTEST_HAS_TR1_TUPLE is set. 107 # gtest r625 made it so that GTEST_HAS_TR1_TUPLE is set to 0 108 # automatically on android, so it has to be set explicitly here. 109 'GTEST_HAS_TR1_TUPLE=1', 110 ], 111 'direct_dependent_settings': { 112 'defines': [ 113 'GTEST_USE_OWN_TR1_TUPLE=1', 114 'GTEST_HAS_TR1_TUPLE=1', 115 ], 116 }, 117 }], 118 ], 119 'direct_dependent_settings': { 120 'defines': [ 121 'UNIT_TEST', 122 ], 123 'include_dirs': [ 124 'gtest/include', # So that gtest headers can find themselves. 125 ], 126 'target_conditions': [ 127 ['_type=="executable"', { 128 'test': 1, 129 'conditions': [ 130 ['OS=="mac"', { 131 'run_as': { 132 'action????': ['${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}'], 133 }, 134 }], 135 ['OS=="win"', { 136 'run_as': { 137 'action????': ['$(TargetPath)', '--gtest_print_time'], 138 }, 139 }], 140 ], 141 }], 142 ], 143 'msvs_disabled_warnings': [4800], 144 }, 145 }, 146 { 147 'target_name': 'gtest_main', 148 'type': 'static_library', 149 'dependencies': [ 150 'gtest', 151 ], 152 'sources': [ 153 'gtest/src/gtest_main.cc', 154 ], 155 }, 156 { 157 'target_name': 'gtest_prod', 158 'toolsets': ['host', 'target'], 159 'type': 'none', 160 'sources': [ 161 'gtest/include/gtest/gtest_prod.h', 162 ], 163 }, 164 ], 165} 166