1# Automake file 2 3# TODO(chandlerc@google.com): automate the generation of *.h from *.h.pump. 4 5# Nonstandard package files for distribution 6EXTRA_DIST = \ 7 CHANGES \ 8 CONTRIBUTORS \ 9 include/gtest/gtest-param-test.h.pump \ 10 include/gtest/internal/gtest-tuple.h.pump \ 11 include/gtest/internal/gtest-type-util.h.pump \ 12 include/gtest/internal/gtest-param-util-generated.h.pump \ 13 make/Makefile \ 14 scons/SConscript \ 15 scons/SConstruct \ 16 scons/SConstruct.common \ 17 scripts/fuse_gtest_files.py \ 18 scripts/gen_gtest_pred_impl.py \ 19 scripts/test/Makefile \ 20 test/gtest_all_test.cc 21 22# MSVC project files 23EXTRA_DIST += \ 24 msvc/gtest-md.sln \ 25 msvc/gtest.sln \ 26 msvc/gtest-md.vcproj \ 27 msvc/gtest.vcproj \ 28 msvc/gtest_main-md.vcproj \ 29 msvc/gtest_main.vcproj \ 30 msvc/gtest_prod_test-md.vcproj \ 31 msvc/gtest_prod_test.vcproj \ 32 msvc/gtest_unittest-md.vcproj \ 33 msvc/gtest_unittest.vcproj 34 35# xcode project files 36EXTRA_DIST += \ 37 xcode/Config/DebugProject.xcconfig \ 38 xcode/Config/FrameworkTarget.xcconfig \ 39 xcode/Config/General.xcconfig \ 40 xcode/Config/ReleaseProject.xcconfig \ 41 xcode/Config/StaticLibraryTarget.xcconfig \ 42 xcode/Config/TestTarget.xcconfig \ 43 xcode/Resources/Info.plist \ 44 xcode/Scripts/versiongenerate.py \ 45 xcode/Scripts/runtests.sh \ 46 xcode/gtest.xcodeproj/project.pbxproj 47 48# xcode sample files 49EXTRA_DIST += \ 50 xcode/Samples/FrameworkSample/Info.plist \ 51 xcode/Samples/FrameworkSample/widget_test.cc \ 52 xcode/Samples/FrameworkSample/widget.cc \ 53 xcode/Samples/FrameworkSample/widget.h \ 54 xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj 55 56# C++Builder project files 57EXTRA_DIST += \ 58 codegear/gtest_all.cc \ 59 codegear/gtest_link.cc \ 60 codegear/gtest.cbproj \ 61 codegear/gtest_main.cbproj \ 62 codegear/gtest_unittest.cbproj \ 63 codegear/gtest.groupproj 64 65# TODO(wan@google.com): integrate scripts/gen_gtest_pred_impl.py into 66# the build system such that a user can specify the maximum predicate 67# arity here and have the script automatically generate the 68# corresponding .h and .cc files. 69 70# Scripts and utilities 71bin_SCRIPTS = scripts/gtest-config 72CLEANFILES = $(bin_SCRIPTS) 73 74# Distribute and install M4 macro 75m4datadir = $(datadir)/aclocal 76m4data_DATA = m4/gtest.m4 77EXTRA_DIST += $(m4data_DATA) 78 79# We define the global AM_CPPFLAGS as everything we compile includes from these 80# directories. 81AM_CPPFLAGS = -I$(srcdir) -I$(srcdir)/include 82 83# Build rules for libraries. 84lib_LTLIBRARIES = lib/libgtest.la lib/libgtest_main.la 85 86lib_libgtest_la_SOURCES = src/gtest.cc \ 87 src/gtest-death-test.cc \ 88 src/gtest-filepath.cc \ 89 src/gtest-internal-inl.h \ 90 src/gtest-port.cc \ 91 src/gtest-test-part.cc \ 92 src/gtest-typed-test.cc 93 94pkginclude_HEADERS = include/gtest/gtest.h \ 95 include/gtest/gtest-death-test.h \ 96 include/gtest/gtest-message.h \ 97 include/gtest/gtest-param-test.h \ 98 include/gtest/gtest_pred_impl.h \ 99 include/gtest/gtest_prod.h \ 100 include/gtest/gtest-spi.h \ 101 include/gtest/gtest-test-part.h \ 102 include/gtest/gtest-typed-test.h 103 104pkginclude_internaldir = $(pkgincludedir)/internal 105pkginclude_internal_HEADERS = \ 106 include/gtest/internal/gtest-death-test-internal.h \ 107 include/gtest/internal/gtest-filepath.h \ 108 include/gtest/internal/gtest-internal.h \ 109 include/gtest/internal/gtest-linked_ptr.h \ 110 include/gtest/internal/gtest-param-util-generated.h \ 111 include/gtest/internal/gtest-param-util.h \ 112 include/gtest/internal/gtest-port.h \ 113 include/gtest/internal/gtest-string.h \ 114 include/gtest/internal/gtest-tuple.h \ 115 include/gtest/internal/gtest-type-util.h 116 117lib_libgtest_main_la_SOURCES = src/gtest_main.cc 118lib_libgtest_main_la_LIBADD = lib/libgtest.la 119 120# Bulid rules for samples and tests. Automake's naming for some of 121# these variables isn't terribly obvious, so this is a brief 122# reference: 123# 124# TESTS -- Programs run automatically by "make check" 125# check_PROGRAMS -- Programs built by "make check" but not necessarily run 126 127noinst_LTLIBRARIES = samples/libsamples.la 128 129samples_libsamples_la_SOURCES = samples/sample1.cc \ 130 samples/sample1.h \ 131 samples/sample2.cc \ 132 samples/sample2.h \ 133 samples/sample3-inl.h \ 134 samples/sample4.cc \ 135 samples/sample4.h 136 137TESTS= 138TESTS_ENVIRONMENT = GTEST_SOURCE_DIR="$(srcdir)/test" \ 139 GTEST_BUILD_DIR="$(top_builddir)/test" 140check_PROGRAMS= 141 142TESTS += samples/sample1_unittest 143check_PROGRAMS += samples/sample1_unittest 144samples_sample1_unittest_SOURCES = samples/sample1_unittest.cc 145samples_sample1_unittest_LDADD = lib/libgtest_main.la \ 146 samples/libsamples.la 147 148TESTS += samples/sample2_unittest 149check_PROGRAMS += samples/sample2_unittest 150samples_sample2_unittest_SOURCES = samples/sample2_unittest.cc 151samples_sample2_unittest_LDADD = lib/libgtest_main.la \ 152 samples/libsamples.la 153 154TESTS += samples/sample3_unittest 155check_PROGRAMS += samples/sample3_unittest 156samples_sample3_unittest_SOURCES = samples/sample3_unittest.cc 157samples_sample3_unittest_LDADD = lib/libgtest_main.la \ 158 samples/libsamples.la 159 160TESTS += samples/sample4_unittest 161check_PROGRAMS += samples/sample4_unittest 162samples_sample4_unittest_SOURCES = samples/sample4_unittest.cc 163samples_sample4_unittest_LDADD = lib/libgtest_main.la \ 164 samples/libsamples.la 165 166TESTS += samples/sample5_unittest 167check_PROGRAMS += samples/sample5_unittest 168samples_sample5_unittest_SOURCES = samples/sample5_unittest.cc 169samples_sample5_unittest_LDADD = lib/libgtest_main.la \ 170 samples/libsamples.la 171 172TESTS += samples/sample6_unittest 173check_PROGRAMS += samples/sample6_unittest 174samples_sample6_unittest_SOURCES = samples/prime_tables.h \ 175 samples/sample6_unittest.cc 176samples_sample6_unittest_LDADD = lib/libgtest_main.la 177 178TESTS += samples/sample7_unittest 179check_PROGRAMS += samples/sample7_unittest 180samples_sample7_unittest_SOURCES = samples/prime_tables.h \ 181 samples/sample7_unittest.cc 182samples_sample7_unittest_LDADD = lib/libgtest_main.la 183 184TESTS += samples/sample8_unittest 185check_PROGRAMS += samples/sample8_unittest 186samples_sample8_unittest_SOURCES = samples/prime_tables.h \ 187 samples/sample8_unittest.cc 188samples_sample8_unittest_LDADD = lib/libgtest_main.la 189 190TESTS += samples/sample9_unittest 191check_PROGRAMS += samples/sample9_unittest 192samples_sample9_unittest_SOURCES = samples/sample9_unittest.cc 193samples_sample9_unittest_LDADD = lib/libgtest.la 194 195TESTS += samples/sample10_unittest 196check_PROGRAMS += samples/sample10_unittest 197samples_sample10_unittest_SOURCES = samples/sample10_unittest.cc 198samples_sample10_unittest_LDADD = lib/libgtest.la 199 200TESTS += test/gtest-death-test_test 201check_PROGRAMS += test/gtest-death-test_test 202test_gtest_death_test_test_SOURCES = test/gtest-death-test_test.cc 203test_gtest_death_test_test_CXXFLAGS = $(AM_CXXFLAGS) $(PTHREAD_CFLAGS) 204test_gtest_death_test_test_LDADD = $(PTHREAD_LIBS) $(PTHREAD_CFLAGS) \ 205 lib/libgtest_main.la 206 207TESTS += test/gtest_environment_test 208check_PROGRAMS += test/gtest_environment_test 209test_gtest_environment_test_SOURCES = test/gtest_environment_test.cc 210test_gtest_environment_test_LDADD = lib/libgtest.la 211 212TESTS += test/gtest-filepath_test 213check_PROGRAMS += test/gtest-filepath_test 214test_gtest_filepath_test_SOURCES = test/gtest-filepath_test.cc 215test_gtest_filepath_test_LDADD = lib/libgtest_main.la 216 217TESTS += test/gtest-linked_ptr_test 218check_PROGRAMS += test/gtest-linked_ptr_test 219test_gtest_linked_ptr_test_SOURCES = test/gtest-linked_ptr_test.cc 220test_gtest_linked_ptr_test_LDADD = lib/libgtest_main.la 221 222TESTS += test/gtest_main_unittest 223check_PROGRAMS += test/gtest_main_unittest 224test_gtest_main_unittest_SOURCES = test/gtest_main_unittest.cc 225test_gtest_main_unittest_LDADD = lib/libgtest_main.la 226 227TESTS += test/gtest-message_test 228check_PROGRAMS += test/gtest-message_test 229test_gtest_message_test_SOURCES = test/gtest-message_test.cc 230test_gtest_message_test_LDADD = lib/libgtest_main.la 231 232TESTS += test/gtest_no_test_unittest 233check_PROGRAMS += test/gtest_no_test_unittest 234test_gtest_no_test_unittest_SOURCES = test/gtest_no_test_unittest.cc 235test_gtest_no_test_unittest_LDADD = lib/libgtest.la 236 237TESTS += test/gtest-options_test 238check_PROGRAMS += test/gtest-options_test 239test_gtest_options_test_SOURCES = test/gtest-options_test.cc 240test_gtest_options_test_LDADD = lib/libgtest_main.la 241 242TESTS += test/gtest-param-test_test 243check_PROGRAMS += test/gtest-param-test_test 244test_gtest_param_test_test_SOURCES = test/gtest-param-test_test.cc \ 245 test/gtest-param-test2_test.cc \ 246 test/gtest-param-test_test.h 247test_gtest_param_test_test_LDADD = lib/libgtest.la 248 249TESTS += test/gtest-port_test 250check_PROGRAMS += test/gtest-port_test 251test_gtest_port_test_SOURCES = test/gtest-port_test.cc 252test_gtest_port_test_LDADD = lib/libgtest_main.la 253 254TESTS += test/gtest_pred_impl_unittest 255check_PROGRAMS += test/gtest_pred_impl_unittest 256test_gtest_pred_impl_unittest_SOURCES = test/gtest_pred_impl_unittest.cc 257test_gtest_pred_impl_unittest_LDADD = lib/libgtest_main.la 258 259TESTS += test/gtest_prod_test 260check_PROGRAMS += test/gtest_prod_test 261test_gtest_prod_test_SOURCES = test/gtest_prod_test.cc \ 262 test/production.cc \ 263 test/production.h 264test_gtest_prod_test_LDADD = lib/libgtest_main.la 265 266TESTS += test/gtest_repeat_test 267check_PROGRAMS += test/gtest_repeat_test 268test_gtest_repeat_test_SOURCES = test/gtest_repeat_test.cc 269test_gtest_repeat_test_LDADD = lib/libgtest.la 270 271TESTS += test/gtest_sole_header_test 272check_PROGRAMS += test/gtest_sole_header_test 273test_gtest_sole_header_test_SOURCES = test/gtest_sole_header_test.cc 274test_gtest_sole_header_test_LDADD = lib/libgtest_main.la 275 276TESTS += test/gtest_stress_test 277check_PROGRAMS += test/gtest_stress_test 278test_gtest_stress_test_SOURCES = test/gtest_stress_test.cc 279test_gtest_stress_test_LDADD = lib/libgtest.la 280 281TESTS += test/gtest-test-part_test 282check_PROGRAMS += test/gtest-test-part_test 283test_gtest_test_part_test_SOURCES = test/gtest-test-part_test.cc 284test_gtest_test_part_test_LDADD = lib/libgtest_main.la 285 286TESTS += test/gtest_throw_on_failure_ex_test 287check_PROGRAMS += test/gtest_throw_on_failure_ex_test 288test_gtest_throw_on_failure_ex_test_SOURCES = \ 289 test/gtest_throw_on_failure_ex_test.cc \ 290 src/gtest-all.cc 291test_gtest_throw_on_failure_ex_test_CXXFLAGS = $(AM_CXXFLAGS) -fexceptions 292 293TESTS += test/gtest-typed-test_test 294check_PROGRAMS += test/gtest-typed-test_test 295test_gtest_typed_test_test_SOURCES = test/gtest-typed-test_test.cc \ 296 test/gtest-typed-test2_test.cc \ 297 test/gtest-typed-test_test.h 298test_gtest_typed_test_test_LDADD = lib/libgtest_main.la 299 300TESTS += test/gtest_unittest 301check_PROGRAMS += test/gtest_unittest 302test_gtest_unittest_SOURCES = test/gtest_unittest.cc 303test_gtest_unittest_LDADD = lib/libgtest_main.la 304 305TESTS += test/gtest-unittest-api_test 306check_PROGRAMS += test/gtest-unittest-api_test 307test_gtest_unittest_api_test_SOURCES = test/gtest-unittest-api_test.cc 308test_gtest_unittest_api_test_LDADD = lib/libgtest_main.la 309 310TESTS += test/gtest-listener_test 311check_PROGRAMS += test/gtest-listener_test 312test_gtest_listener_test_SOURCES = test/gtest-listener_test.cc 313test_gtest_listener_test_LDADD = lib/libgtest_main.la 314 315# Verifies that Google Test works when RTTI is disabled. 316TESTS += test/gtest_no_rtti_test 317check_PROGRAMS += test/gtest_no_rtti_test 318test_gtest_no_rtti_test_SOURCES = test/gtest_unittest.cc \ 319 src/gtest-all.cc \ 320 src/gtest_main.cc 321test_gtest_no_rtti_test_CXXFLAGS = $(AM_CXXFLAGS) -fno-rtti -DGTEST_HAS_RTTI=0 322 323# Verifies that Google Test's own TR1 tuple implementation works. 324TESTS += test/gtest-tuple_test 325check_PROGRAMS += test/gtest-tuple_test 326test_gtest_tuple_test_SOURCES = test/gtest-tuple_test.cc \ 327 src/gtest-all.cc \ 328 src/gtest_main.cc 329test_gtest_tuple_test_CXXFLAGS = $(AM_CXXFLAGS) -DGTEST_USE_OWN_TR1_TUPLE=1 330 331# Verifies that Google Test's features that use its own TR1 tuple work. 332TESTS += test/gtest_use_own_tuple_test 333check_PROGRAMS += test/gtest_use_own_tuple_test 334test_gtest_use_own_tuple_test_SOURCES = test/gtest-param-test_test.cc \ 335 test/gtest-param-test2_test.cc \ 336 src/gtest-all.cc 337test_gtest_use_own_tuple_test_CXXFLAGS = \ 338 $(AM_CXXFLAGS) -DGTEST_USE_OWN_TR1_TUPLE=1 339 340# The following tests depend on the presence of a Python installation and are 341# keyed off of it. TODO(chandlerc@google.com): While we currently only attempt 342# to build and execute these tests if Autoconf has found Python v2.4 on the 343# system, we don't use the PYTHON variable it specified as the valid 344# interpreter. The problem is that TESTS_ENVIRONMENT is a global variable, and 345# thus we cannot distinguish between C++ unit tests and Python unit tests. 346if HAVE_PYTHON 347check_SCRIPTS = 348 349# These two Python modules are used by multiple Python tests below. 350check_SCRIPTS += test/gtest_test_utils.py \ 351 test/gtest_xml_test_utils.py 352 353check_PROGRAMS += test/gtest_break_on_failure_unittest_ 354test_gtest_break_on_failure_unittest__SOURCES = \ 355 test/gtest_break_on_failure_unittest_.cc 356test_gtest_break_on_failure_unittest__LDADD = lib/libgtest.la 357check_SCRIPTS += test/gtest_break_on_failure_unittest.py 358TESTS += test/gtest_break_on_failure_unittest.py 359 360check_PROGRAMS += test/gtest_color_test_ 361test_gtest_color_test__SOURCES = test/gtest_color_test_.cc 362test_gtest_color_test__LDADD = lib/libgtest.la 363check_SCRIPTS += test/gtest_color_test.py 364TESTS += test/gtest_color_test.py 365 366check_PROGRAMS += test/gtest_env_var_test_ 367test_gtest_env_var_test__SOURCES = test/gtest_env_var_test_.cc 368test_gtest_env_var_test__LDADD = lib/libgtest.la 369check_SCRIPTS += test/gtest_env_var_test.py 370TESTS += test/gtest_env_var_test.py 371 372check_PROGRAMS += test/gtest_filter_unittest_ 373test_gtest_filter_unittest__SOURCES = test/gtest_filter_unittest_.cc 374test_gtest_filter_unittest__LDADD = lib/libgtest.la 375check_SCRIPTS += test/gtest_filter_unittest.py 376TESTS += test/gtest_filter_unittest.py 377 378check_PROGRAMS += test/gtest_help_test_ 379test_gtest_help_test__SOURCES = test/gtest_help_test_.cc 380test_gtest_help_test__LDADD = lib/libgtest_main.la 381check_SCRIPTS += test/gtest_help_test.py 382TESTS += test/gtest_help_test.py 383 384check_PROGRAMS += test/gtest_list_tests_unittest_ 385test_gtest_list_tests_unittest__SOURCES = test/gtest_list_tests_unittest_.cc 386test_gtest_list_tests_unittest__LDADD = lib/libgtest.la 387check_SCRIPTS += test/gtest_list_tests_unittest.py 388TESTS += test/gtest_list_tests_unittest.py 389 390check_PROGRAMS += test/gtest_output_test_ 391test_gtest_output_test__SOURCES = test/gtest_output_test_.cc 392test_gtest_output_test__LDADD = lib/libgtest.la 393check_SCRIPTS += test/gtest_output_test.py 394EXTRA_DIST += test/gtest_output_test_golden_lin.txt \ 395 test/gtest_output_test_golden_win.txt 396TESTS += test/gtest_output_test.py 397 398check_PROGRAMS += test/gtest_shuffle_test_ 399test_gtest_shuffle_test__SOURCES = test/gtest_shuffle_test_.cc 400test_gtest_shuffle_test__LDADD = lib/libgtest.la 401check_SCRIPTS += test/gtest_shuffle_test.py 402TESTS += test/gtest_shuffle_test.py 403 404check_PROGRAMS += test/gtest_throw_on_failure_test_ 405test_gtest_throw_on_failure_test__SOURCES = \ 406 test/gtest_throw_on_failure_test_.cc \ 407 src/gtest-all.cc 408test_gtest_throw_on_failure_test__CXXFLAGS = $(AM_CXXFLAGS) -fno-exceptions 409check_SCRIPTS += test/gtest_throw_on_failure_test.py 410TESTS += test/gtest_throw_on_failure_test.py 411 412check_PROGRAMS += test/gtest_uninitialized_test_ 413test_gtest_uninitialized_test__SOURCES = test/gtest_uninitialized_test_.cc 414test_gtest_uninitialized_test__LDADD = lib/libgtest.la 415check_SCRIPTS += test/gtest_uninitialized_test.py 416TESTS += test/gtest_uninitialized_test.py 417 418check_PROGRAMS += test/gtest_xml_outfile1_test_ 419test_gtest_xml_outfile1_test__SOURCES = test/gtest_xml_outfile1_test_.cc 420test_gtest_xml_outfile1_test__LDADD = lib/libgtest_main.la 421check_PROGRAMS += test/gtest_xml_outfile2_test_ 422test_gtest_xml_outfile2_test__SOURCES = test/gtest_xml_outfile2_test_.cc 423test_gtest_xml_outfile2_test__LDADD = lib/libgtest_main.la 424check_SCRIPTS += test/gtest_xml_outfiles_test.py 425TESTS += test/gtest_xml_outfiles_test.py 426 427check_PROGRAMS += test/gtest_xml_output_unittest_ 428test_gtest_xml_output_unittest__SOURCES = test/gtest_xml_output_unittest_.cc 429test_gtest_xml_output_unittest__LDADD = lib/libgtest.la 430check_SCRIPTS += test/gtest_xml_output_unittest.py 431TESTS += test/gtest_xml_output_unittest.py 432 433# TODO(wan@google.com): make the build script compile and run the 434# negative-compilation tests. (The test/gtest_nc* files are unfinished 435# implementation of tests for verifying that certain kinds of misuse 436# of Google Test don't compile.) 437EXTRA_DIST += $(check_SCRIPTS) \ 438 test/gtest_nc.cc \ 439 test/gtest_nc_test.py 440 441endif 442