Home | History | Annotate | Download | only in gtest
      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