Makefile.am 9.5 KB

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