1 # Automake file 2 3 ACLOCAL_AMFLAGS = -I m4 4 5 # Nonstandard package files for distribution 6 EXTRA_DIST = \ 7 CHANGES \ 8 CONTRIBUTORS \ 9 LICENSE \ 10 include/gtest/gtest-param-test.h.pump \ 11 include/gtest/internal/gtest-param-util-generated.h.pump \ 12 include/gtest/internal/gtest-tuple.h.pump \ 13 include/gtest/internal/gtest-type-util.h.pump \ 14 make/Makefile \ 15 scripts/fuse_gtest_files.py \ 16 scripts/gen_gtest_pred_impl.py \ 17 scripts/pump.py \ 18 scripts/test/Makefile 19 20 # gtest source files that we don't compile directly. They are 21 # #included by gtest-all.cc. 22 GTEST_SRC = \ 23 src/gtest-death-test.cc \ 24 src/gtest-filepath.cc \ 25 src/gtest-internal-inl.h \ 26 src/gtest-port.cc \ 27 src/gtest-printers.cc \ 28 src/gtest-test-part.cc \ 29 src/gtest-typed-test.cc \ 30 src/gtest.cc 31 32 EXTRA_DIST += $(GTEST_SRC) 33 34 # Sample files that we don't compile. 35 EXTRA_DIST += \ 36 samples/prime_tables.h \ 37 samples/sample2_unittest.cc \ 38 samples/sample3_unittest.cc \ 39 samples/sample4_unittest.cc \ 40 samples/sample5_unittest.cc \ 41 samples/sample6_unittest.cc \ 42 samples/sample7_unittest.cc \ 43 samples/sample8_unittest.cc \ 44 samples/sample9_unittest.cc 45 46 # C++ test files that we don't compile directly. 47 EXTRA_DIST += \ 48 test/gtest-death-test_ex_test.cc \ 49 test/gtest-death-test_test.cc \ 50 test/gtest-filepath_test.cc \ 51 test/gtest-linked_ptr_test.cc \ 52 test/gtest-listener_test.cc \ 53 test/gtest-message_test.cc \ 54 test/gtest-options_test.cc \ 55 test/gtest-param-test2_test.cc \ 56 test/gtest-param-test2_test.cc \ 57 test/gtest-param-test_test.cc \ 58 test/gtest-param-test_test.cc \ 59 test/gtest-param-test_test.h \ 60 test/gtest-port_test.cc \ 61 test/gtest_premature_exit_test.cc \ 62 test/gtest-printers_test.cc \ 63 test/gtest-test-part_test.cc \ 64 test/gtest-tuple_test.cc \ 65 test/gtest-typed-test2_test.cc \ 66 test/gtest-typed-test_test.cc \ 67 test/gtest-typed-test_test.h \ 68 test/gtest-unittest-api_test.cc \ 69 test/gtest_break_on_failure_unittest_.cc \ 70 test/gtest_catch_exceptions_test_.cc \ 71 test/gtest_color_test_.cc \ 72 test/gtest_env_var_test_.cc \ 73 test/gtest_environment_test.cc \ 74 test/gtest_filter_unittest_.cc \ 75 test/gtest_help_test_.cc \ 76 test/gtest_list_tests_unittest_.cc \ 77 test/gtest_main_unittest.cc \ 78 test/gtest_no_test_unittest.cc \ 79 test/gtest_output_test_.cc \ 80 test/gtest_pred_impl_unittest.cc \ 81 test/gtest_prod_test.cc \ 82 test/gtest_repeat_test.cc \ 83 test/gtest_shuffle_test_.cc \ 84 test/gtest_sole_header_test.cc \ 85 test/gtest_stress_test.cc \ 86 test/gtest_throw_on_failure_ex_test.cc \ 87 test/gtest_throw_on_failure_test_.cc \ 88 test/gtest_uninitialized_test_.cc \ 89 test/gtest_unittest.cc \ 90 test/gtest_unittest.cc \ 91 test/gtest_xml_outfile1_test_.cc \ 92 test/gtest_xml_outfile2_test_.cc \ 93 test/gtest_xml_output_unittest_.cc \ 94 test/production.cc \ 95 test/production.h 96 97 # Python tests that we don't run. 98 EXTRA_DIST += \ 99 test/gtest_break_on_failure_unittest.py \ 100 test/gtest_catch_exceptions_test.py \ 101 test/gtest_color_test.py \ 102 test/gtest_env_var_test.py \ 103 test/gtest_filter_unittest.py \ 104 test/gtest_help_test.py \ 105 test/gtest_list_tests_unittest.py \ 106 test/gtest_output_test.py \ 107 test/gtest_output_test_golden_lin.txt \ 108 test/gtest_shuffle_test.py \ 109 test/gtest_test_utils.py \ 110 test/gtest_throw_on_failure_test.py \ 111 test/gtest_uninitialized_test.py \ 112 test/gtest_xml_outfiles_test.py \ 113 test/gtest_xml_output_unittest.py \ 114 test/gtest_xml_test_utils.py 115 116 # CMake script 117 EXTRA_DIST += \ 118 CMakeLists.txt \ 119 cmake/internal_utils.cmake 120 121 # MSVC project files 122 EXTRA_DIST += \ 123 msvc/gtest-md.sln \ 124 msvc/gtest-md.vcproj \ 125 msvc/gtest.sln \ 126 msvc/gtest.vcproj \ 127 msvc/gtest_main-md.vcproj \ 128 msvc/gtest_main.vcproj \ 129 msvc/gtest_prod_test-md.vcproj \ 130 msvc/gtest_prod_test.vcproj \ 131 msvc/gtest_unittest-md.vcproj \ 132 msvc/gtest_unittest.vcproj 133 134 # xcode project files 135 EXTRA_DIST += \ 136 xcode/Config/DebugProject.xcconfig \ 137 xcode/Config/FrameworkTarget.xcconfig \ 138 xcode/Config/General.xcconfig \ 139 xcode/Config/ReleaseProject.xcconfig \ 140 xcode/Config/StaticLibraryTarget.xcconfig \ 141 xcode/Config/TestTarget.xcconfig \ 142 xcode/Resources/Info.plist \ 143 xcode/Scripts/runtests.sh \ 144 xcode/Scripts/versiongenerate.py \ 145 xcode/gtest.xcodeproj/project.pbxproj 146 147 # xcode sample files 148 EXTRA_DIST += \ 149 xcode/Samples/FrameworkSample/Info.plist \ 150 xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj \ 151 xcode/Samples/FrameworkSample/runtests.sh \ 152 xcode/Samples/FrameworkSample/widget.cc \ 153 xcode/Samples/FrameworkSample/widget.h \ 154 xcode/Samples/FrameworkSample/widget_test.cc 155 156 # C++Builder project files 157 EXTRA_DIST += \ 158 codegear/gtest.cbproj \ 159 codegear/gtest.groupproj \ 160 codegear/gtest_all.cc \ 161 codegear/gtest_link.cc \ 162 codegear/gtest_main.cbproj \ 163 codegear/gtest_unittest.cbproj 164 165 # Distribute and install M4 macro 166 m4datadir = $(datadir)/aclocal 167 m4data_DATA = m4/gtest.m4 168 EXTRA_DIST += $(m4data_DATA) 169 170 # We define the global AM_CPPFLAGS as everything we compile includes from these 171 # directories. 172 AM_CPPFLAGS = -I$(srcdir) -I$(srcdir)/include 173 174 # Modifies compiler and linker flags for pthreads compatibility. 175 if HAVE_PTHREADS 176 AM_CXXFLAGS = @PTHREAD_CFLAGS@ -DGTEST_HAS_PTHREAD=1 177 AM_LIBS = @PTHREAD_LIBS@ 178 else 179 AM_CXXFLAGS = -DGTEST_HAS_PTHREAD=0 180 endif 181 182 # Build rules for libraries. 183 lib_LTLIBRARIES = lib/libgtest.la lib/libgtest_main.la 184 185 lib_libgtest_la_SOURCES = src/gtest-all.cc 186 187 pkginclude_HEADERS = \ 188 include/gtest/gtest-death-test.h \ 189 include/gtest/gtest-message.h \ 190 include/gtest/gtest-param-test.h \ 191 include/gtest/gtest-printers.h \ 192 include/gtest/gtest-spi.h \ 193 include/gtest/gtest-test-part.h \ 194 include/gtest/gtest-typed-test.h \ 195 include/gtest/gtest.h \ 196 include/gtest/gtest_pred_impl.h \ 197 include/gtest/gtest_prod.h 198 199 pkginclude_internaldir = $(pkgincludedir)/internal 200 pkginclude_internal_HEADERS = \ 201 include/gtest/internal/gtest-death-test-internal.h \ 202 include/gtest/internal/gtest-filepath.h \ 203 include/gtest/internal/gtest-internal.h \ 204 include/gtest/internal/gtest-linked_ptr.h \ 205 include/gtest/internal/gtest-param-util-generated.h \ 206 include/gtest/internal/gtest-param-util.h \ 207 include/gtest/internal/gtest-port.h \ 208 include/gtest/internal/gtest-string.h \ 209 include/gtest/internal/gtest-tuple.h \ 210 include/gtest/internal/gtest-type-util.h 211 212 lib_libgtest_main_la_SOURCES = src/gtest_main.cc 213 lib_libgtest_main_la_LIBADD = lib/libgtest.la 214 215 # Bulid rules for samples and tests. Automake's naming for some of 216 # these variables isn't terribly obvious, so this is a brief 217 # reference: 218 # 219 # TESTS -- Programs run automatically by "make check" 220 # check_PROGRAMS -- Programs built by "make check" but not necessarily run 221 222 noinst_LTLIBRARIES = samples/libsamples.la 223 224 samples_libsamples_la_SOURCES = \ 225 samples/sample1.cc \ 226 samples/sample1.h \ 227 samples/sample2.cc \ 228 samples/sample2.h \ 229 samples/sample3-inl.h \ 230 samples/sample4.cc \ 231 samples/sample4.h 232 233 TESTS= 234 TESTS_ENVIRONMENT = GTEST_SOURCE_DIR="$(srcdir)/test" \ 235 GTEST_BUILD_DIR="$(top_builddir)/test" 236 check_PROGRAMS= 237 238 # A simple sample on using gtest. 239 TESTS += samples/sample1_unittest 240 check_PROGRAMS += samples/sample1_unittest 241 samples_sample1_unittest_SOURCES = samples/sample1_unittest.cc 242 samples_sample1_unittest_LDADD = lib/libgtest_main.la \ 243 lib/libgtest.la \ 244 samples/libsamples.la 245 246 # Another sample. It also verifies that libgtest works. 247 TESTS += samples/sample10_unittest 248 check_PROGRAMS += samples/sample10_unittest 249 samples_sample10_unittest_SOURCES = samples/sample10_unittest.cc 250 samples_sample10_unittest_LDADD = lib/libgtest.la 251 252 # This tests most constructs of gtest and verifies that libgtest_main 253 # and libgtest work. 254 TESTS += test/gtest_all_test 255 check_PROGRAMS += test/gtest_all_test 256 test_gtest_all_test_SOURCES = test/gtest_all_test.cc 257 test_gtest_all_test_LDADD = lib/libgtest_main.la \ 258 lib/libgtest.la 259 260 # Tests that fused gtest files compile and work. 261 FUSED_GTEST_SRC = \ 262 fused-src/gtest/gtest-all.cc \ 263 fused-src/gtest/gtest.h \ 264 fused-src/gtest/gtest_main.cc 265 266 if HAVE_PYTHON 267 TESTS += test/fused_gtest_test 268 check_PROGRAMS += test/fused_gtest_test 269 test_fused_gtest_test_SOURCES = $(FUSED_GTEST_SRC) \ 270 samples/sample1.cc samples/sample1_unittest.cc 271 test_fused_gtest_test_CPPFLAGS = -I"$(srcdir)/fused-src" 272 273 # Build rules for putting fused Google Test files into the distribution 274 # package. The user can also create those files by manually running 275 # scripts/fuse_gtest_files.py. 276 $(test_fused_gtest_test_SOURCES): fused-gtest 277 278 fused-gtest: $(pkginclude_HEADERS) $(pkginclude_internal_HEADERS) \ 279 $(GTEST_SRC) src/gtest-all.cc src/gtest_main.cc \ 280 scripts/fuse_gtest_files.py 281 mkdir -p "$(srcdir)/fused-src" 282 chmod -R u+w "$(srcdir)/fused-src" 283 rm -f "$(srcdir)/fused-src/gtest/gtest-all.cc" 284 rm -f "$(srcdir)/fused-src/gtest/gtest.h" 285 "$(srcdir)/scripts/fuse_gtest_files.py" "$(srcdir)/fused-src" 286 cp -f "$(srcdir)/src/gtest_main.cc" "$(srcdir)/fused-src/gtest/" 287 288 maintainer-clean-local: 289 rm -rf "$(srcdir)/fused-src" 290 endif 291 292 # Death tests may produce core dumps in the build directory. In case 293 # this happens, clean them to keep distcleancheck happy. 294 CLEANFILES = core 295 296 # Disables 'make install' as installing a compiled version of Google 297 # Test can lead to undefined behavior due to violation of the 298 # One-Definition Rule. 299 300 install-exec-local: 301 echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system." 302 false 303 304 install-data-local: 305 echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system." 306 false 307