Makefile.am revision 13481
113481Sgiacomo.travaglini@arm.com# Automake file 213481Sgiacomo.travaglini@arm.com 313481Sgiacomo.travaglini@arm.com# Nonstandard package files for distribution. 413481Sgiacomo.travaglini@arm.comEXTRA_DIST = LICENSE 513481Sgiacomo.travaglini@arm.com 613481Sgiacomo.travaglini@arm.com# We may need to build our internally packaged gtest. If so, it will be 713481Sgiacomo.travaglini@arm.com# included in the 'subdirs' variable. 813481Sgiacomo.travaglini@arm.comSUBDIRS = $(subdirs) 913481Sgiacomo.travaglini@arm.com 1013481Sgiacomo.travaglini@arm.com# This is generated by the configure script, so clean it for distribution. 1113481Sgiacomo.travaglini@arm.comDISTCLEANFILES = scripts/gmock-config 1213481Sgiacomo.travaglini@arm.com 1313481Sgiacomo.travaglini@arm.com# We define the global AM_CPPFLAGS as everything we compile includes from these 1413481Sgiacomo.travaglini@arm.com# directories. 1513481Sgiacomo.travaglini@arm.comAM_CPPFLAGS = $(GTEST_CPPFLAGS) -I$(srcdir)/include 1613481Sgiacomo.travaglini@arm.com 1713481Sgiacomo.travaglini@arm.com# Modifies compiler and linker flags for pthreads compatibility. 1813481Sgiacomo.travaglini@arm.comif HAVE_PTHREADS 1913481Sgiacomo.travaglini@arm.com AM_CXXFLAGS = @PTHREAD_CFLAGS@ -DGTEST_HAS_PTHREAD=1 2013481Sgiacomo.travaglini@arm.com AM_LIBS = @PTHREAD_LIBS@ 2113481Sgiacomo.travaglini@arm.comendif 2213481Sgiacomo.travaglini@arm.com 2313481Sgiacomo.travaglini@arm.com# Build rules for libraries. 2413481Sgiacomo.travaglini@arm.comlib_LTLIBRARIES = lib/libgmock.la lib/libgmock_main.la 2513481Sgiacomo.travaglini@arm.com 2613481Sgiacomo.travaglini@arm.comlib_libgmock_la_SOURCES = src/gmock-all.cc 2713481Sgiacomo.travaglini@arm.com 2813481Sgiacomo.travaglini@arm.compkginclude_HEADERS = \ 2913481Sgiacomo.travaglini@arm.com include/gmock/gmock-actions.h \ 3013481Sgiacomo.travaglini@arm.com include/gmock/gmock-cardinalities.h \ 3113481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-actions.h \ 3213481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-function-mockers.h \ 3313481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-matchers.h \ 3413481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-nice-strict.h \ 3513481Sgiacomo.travaglini@arm.com include/gmock/gmock-matchers.h \ 3613481Sgiacomo.travaglini@arm.com include/gmock/gmock-more-actions.h \ 3713481Sgiacomo.travaglini@arm.com include/gmock/gmock-more-matchers.h \ 3813481Sgiacomo.travaglini@arm.com include/gmock/gmock-spec-builders.h \ 3913481Sgiacomo.travaglini@arm.com include/gmock/gmock.h 4013481Sgiacomo.travaglini@arm.com 4113481Sgiacomo.travaglini@arm.compkginclude_internaldir = $(pkgincludedir)/internal 4213481Sgiacomo.travaglini@arm.compkginclude_internal_HEADERS = \ 4313481Sgiacomo.travaglini@arm.com include/gmock/internal/gmock-generated-internal-utils.h \ 4413481Sgiacomo.travaglini@arm.com include/gmock/internal/gmock-internal-utils.h \ 4513481Sgiacomo.travaglini@arm.com include/gmock/internal/gmock-port.h \ 4613481Sgiacomo.travaglini@arm.com include/gmock/internal/custom/gmock-generated-actions.h \ 4713481Sgiacomo.travaglini@arm.com include/gmock/internal/custom/gmock-matchers.h \ 4813481Sgiacomo.travaglini@arm.com include/gmock/internal/custom/gmock-port.h 4913481Sgiacomo.travaglini@arm.com 5013481Sgiacomo.travaglini@arm.comlib_libgmock_main_la_SOURCES = src/gmock_main.cc 5113481Sgiacomo.travaglini@arm.comlib_libgmock_main_la_LIBADD = lib/libgmock.la 5213481Sgiacomo.travaglini@arm.com 5313481Sgiacomo.travaglini@arm.com# Build rules for tests. Automake's naming for some of these variables isn't 5413481Sgiacomo.travaglini@arm.com# terribly obvious, so this is a brief reference: 5513481Sgiacomo.travaglini@arm.com# 5613481Sgiacomo.travaglini@arm.com# TESTS -- Programs run automatically by "make check" 5713481Sgiacomo.travaglini@arm.com# check_PROGRAMS -- Programs built by "make check" but not necessarily run 5813481Sgiacomo.travaglini@arm.com 5913481Sgiacomo.travaglini@arm.comTESTS= 6013481Sgiacomo.travaglini@arm.comcheck_PROGRAMS= 6113481Sgiacomo.travaglini@arm.comAM_LDFLAGS = $(GTEST_LDFLAGS) 6213481Sgiacomo.travaglini@arm.com 6313481Sgiacomo.travaglini@arm.com# This exercises all major components of Google Mock. It also 6413481Sgiacomo.travaglini@arm.com# verifies that libgmock works. 6513481Sgiacomo.travaglini@arm.comTESTS += test/gmock-spec-builders_test 6613481Sgiacomo.travaglini@arm.comcheck_PROGRAMS += test/gmock-spec-builders_test 6713481Sgiacomo.travaglini@arm.comtest_gmock_spec_builders_test_SOURCES = test/gmock-spec-builders_test.cc 6813481Sgiacomo.travaglini@arm.comtest_gmock_spec_builders_test_LDADD = $(GTEST_LIBS) lib/libgmock.la 6913481Sgiacomo.travaglini@arm.com 7013481Sgiacomo.travaglini@arm.com# This tests using Google Mock in multiple translation units. It also 7113481Sgiacomo.travaglini@arm.com# verifies that libgmock_main and libgmock work. 7213481Sgiacomo.travaglini@arm.comTESTS += test/gmock_link_test 7313481Sgiacomo.travaglini@arm.comcheck_PROGRAMS += test/gmock_link_test 7413481Sgiacomo.travaglini@arm.comtest_gmock_link_test_SOURCES = \ 7513481Sgiacomo.travaglini@arm.com test/gmock_link2_test.cc \ 7613481Sgiacomo.travaglini@arm.com test/gmock_link_test.cc \ 7713481Sgiacomo.travaglini@arm.com test/gmock_link_test.h 7813481Sgiacomo.travaglini@arm.comtest_gmock_link_test_LDADD = $(GTEST_LIBS) lib/libgmock_main.la lib/libgmock.la 7913481Sgiacomo.travaglini@arm.com 8013481Sgiacomo.travaglini@arm.comif HAVE_PYTHON 8113481Sgiacomo.travaglini@arm.com # Tests that fused gmock files compile and work. 8213481Sgiacomo.travaglini@arm.com TESTS += test/gmock_fused_test 8313481Sgiacomo.travaglini@arm.com check_PROGRAMS += test/gmock_fused_test 8413481Sgiacomo.travaglini@arm.com test_gmock_fused_test_SOURCES = \ 8513481Sgiacomo.travaglini@arm.com fused-src/gmock-gtest-all.cc \ 8613481Sgiacomo.travaglini@arm.com fused-src/gmock/gmock.h \ 8713481Sgiacomo.travaglini@arm.com fused-src/gmock_main.cc \ 8813481Sgiacomo.travaglini@arm.com fused-src/gtest/gtest.h \ 8913481Sgiacomo.travaglini@arm.com test/gmock_test.cc 9013481Sgiacomo.travaglini@arm.com test_gmock_fused_test_CPPFLAGS = -I"$(srcdir)/fused-src" 9113481Sgiacomo.travaglini@arm.comendif 9213481Sgiacomo.travaglini@arm.com 9313481Sgiacomo.travaglini@arm.com# Google Mock source files that we don't compile directly. 9413481Sgiacomo.travaglini@arm.comGMOCK_SOURCE_INGLUDES = \ 9513481Sgiacomo.travaglini@arm.com src/gmock-cardinalities.cc \ 9613481Sgiacomo.travaglini@arm.com src/gmock-internal-utils.cc \ 9713481Sgiacomo.travaglini@arm.com src/gmock-matchers.cc \ 9813481Sgiacomo.travaglini@arm.com src/gmock-spec-builders.cc \ 9913481Sgiacomo.travaglini@arm.com src/gmock.cc 10013481Sgiacomo.travaglini@arm.com 10113481Sgiacomo.travaglini@arm.comEXTRA_DIST += $(GMOCK_SOURCE_INGLUDES) 10213481Sgiacomo.travaglini@arm.com 10313481Sgiacomo.travaglini@arm.com# C++ tests that we don't compile using autotools. 10413481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 10513481Sgiacomo.travaglini@arm.com test/gmock-actions_test.cc \ 10613481Sgiacomo.travaglini@arm.com test/gmock_all_test.cc \ 10713481Sgiacomo.travaglini@arm.com test/gmock-cardinalities_test.cc \ 10813481Sgiacomo.travaglini@arm.com test/gmock_ex_test.cc \ 10913481Sgiacomo.travaglini@arm.com test/gmock-generated-actions_test.cc \ 11013481Sgiacomo.travaglini@arm.com test/gmock-generated-function-mockers_test.cc \ 11113481Sgiacomo.travaglini@arm.com test/gmock-generated-internal-utils_test.cc \ 11213481Sgiacomo.travaglini@arm.com test/gmock-generated-matchers_test.cc \ 11313481Sgiacomo.travaglini@arm.com test/gmock-internal-utils_test.cc \ 11413481Sgiacomo.travaglini@arm.com test/gmock-matchers_test.cc \ 11513481Sgiacomo.travaglini@arm.com test/gmock-more-actions_test.cc \ 11613481Sgiacomo.travaglini@arm.com test/gmock-nice-strict_test.cc \ 11713481Sgiacomo.travaglini@arm.com test/gmock-port_test.cc \ 11813481Sgiacomo.travaglini@arm.com test/gmock_stress_test.cc 11913481Sgiacomo.travaglini@arm.com 12013481Sgiacomo.travaglini@arm.com# Python tests, which we don't run using autotools. 12113481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 12213481Sgiacomo.travaglini@arm.com test/gmock_leak_test.py \ 12313481Sgiacomo.travaglini@arm.com test/gmock_leak_test_.cc \ 12413481Sgiacomo.travaglini@arm.com test/gmock_output_test.py \ 12513481Sgiacomo.travaglini@arm.com test/gmock_output_test_.cc \ 12613481Sgiacomo.travaglini@arm.com test/gmock_output_test_golden.txt \ 12713481Sgiacomo.travaglini@arm.com test/gmock_test_utils.py 12813481Sgiacomo.travaglini@arm.com 12913481Sgiacomo.travaglini@arm.com# Nonstandard package files for distribution. 13013481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 13113481Sgiacomo.travaglini@arm.com CHANGES \ 13213481Sgiacomo.travaglini@arm.com CONTRIBUTORS \ 13313481Sgiacomo.travaglini@arm.com make/Makefile 13413481Sgiacomo.travaglini@arm.com 13513481Sgiacomo.travaglini@arm.com# Pump scripts for generating Google Mock headers. 13613481Sgiacomo.travaglini@arm.com# TODO(chandlerc@google.com): automate the generation of *.h from *.h.pump. 13713481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 13813481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-actions.h.pump \ 13913481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-function-mockers.h.pump \ 14013481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-matchers.h.pump \ 14113481Sgiacomo.travaglini@arm.com include/gmock/gmock-generated-nice-strict.h.pump \ 14213481Sgiacomo.travaglini@arm.com include/gmock/internal/gmock-generated-internal-utils.h.pump \ 14313481Sgiacomo.travaglini@arm.com include/gmock/internal/custom/gmock-generated-actions.h.pump 14413481Sgiacomo.travaglini@arm.com 14513481Sgiacomo.travaglini@arm.com# Script for fusing Google Mock and Google Test source files. 14613481Sgiacomo.travaglini@arm.comEXTRA_DIST += scripts/fuse_gmock_files.py 14713481Sgiacomo.travaglini@arm.com 14813481Sgiacomo.travaglini@arm.com# The Google Mock Generator tool from the cppclean project. 14913481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 15013481Sgiacomo.travaglini@arm.com scripts/generator/LICENSE \ 15113481Sgiacomo.travaglini@arm.com scripts/generator/README \ 15213481Sgiacomo.travaglini@arm.com scripts/generator/README.cppclean \ 15313481Sgiacomo.travaglini@arm.com scripts/generator/cpp/__init__.py \ 15413481Sgiacomo.travaglini@arm.com scripts/generator/cpp/ast.py \ 15513481Sgiacomo.travaglini@arm.com scripts/generator/cpp/gmock_class.py \ 15613481Sgiacomo.travaglini@arm.com scripts/generator/cpp/keywords.py \ 15713481Sgiacomo.travaglini@arm.com scripts/generator/cpp/tokenize.py \ 15813481Sgiacomo.travaglini@arm.com scripts/generator/cpp/utils.py \ 15913481Sgiacomo.travaglini@arm.com scripts/generator/gmock_gen.py 16013481Sgiacomo.travaglini@arm.com 16113481Sgiacomo.travaglini@arm.com# Script for diagnosing compiler errors in programs that use Google 16213481Sgiacomo.travaglini@arm.com# Mock. 16313481Sgiacomo.travaglini@arm.comEXTRA_DIST += scripts/gmock_doctor.py 16413481Sgiacomo.travaglini@arm.com 16513481Sgiacomo.travaglini@arm.com# CMake scripts. 16613481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 16713481Sgiacomo.travaglini@arm.com CMakeLists.txt 16813481Sgiacomo.travaglini@arm.com 16913481Sgiacomo.travaglini@arm.com# Microsoft Visual Studio 2005 projects. 17013481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 17113481Sgiacomo.travaglini@arm.com msvc/2005/gmock.sln \ 17213481Sgiacomo.travaglini@arm.com msvc/2005/gmock.vcproj \ 17313481Sgiacomo.travaglini@arm.com msvc/2005/gmock_config.vsprops \ 17413481Sgiacomo.travaglini@arm.com msvc/2005/gmock_main.vcproj \ 17513481Sgiacomo.travaglini@arm.com msvc/2005/gmock_test.vcproj 17613481Sgiacomo.travaglini@arm.com 17713481Sgiacomo.travaglini@arm.com# Microsoft Visual Studio 2010 projects. 17813481Sgiacomo.travaglini@arm.comEXTRA_DIST += \ 17913481Sgiacomo.travaglini@arm.com msvc/2010/gmock.sln \ 18013481Sgiacomo.travaglini@arm.com msvc/2010/gmock.vcxproj \ 18113481Sgiacomo.travaglini@arm.com msvc/2010/gmock_config.props \ 18213481Sgiacomo.travaglini@arm.com msvc/2010/gmock_main.vcxproj \ 18313481Sgiacomo.travaglini@arm.com msvc/2010/gmock_test.vcxproj 18413481Sgiacomo.travaglini@arm.com 18513481Sgiacomo.travaglini@arm.comif HAVE_PYTHON 18613481Sgiacomo.travaglini@arm.com# gmock_test.cc does not really depend on files generated by the 18713481Sgiacomo.travaglini@arm.com# fused-gmock-internal rule. However, gmock_test.o does, and it is 18813481Sgiacomo.travaglini@arm.com# important to include test/gmock_test.cc as part of this rule in order to 18913481Sgiacomo.travaglini@arm.com# prevent compiling gmock_test.o until all dependent files have been 19013481Sgiacomo.travaglini@arm.com# generated. 19113481Sgiacomo.travaglini@arm.com$(test_gmock_fused_test_SOURCES): fused-gmock-internal 19213481Sgiacomo.travaglini@arm.com 19313481Sgiacomo.travaglini@arm.com# TODO(vladl@google.com): Find a way to add Google Tests's sources here. 19413481Sgiacomo.travaglini@arm.comfused-gmock-internal: $(pkginclude_HEADERS) $(pkginclude_internal_HEADERS) \ 19513481Sgiacomo.travaglini@arm.com $(lib_libgmock_la_SOURCES) $(GMOCK_SOURCE_INGLUDES) \ 19613481Sgiacomo.travaglini@arm.com $(lib_libgmock_main_la_SOURCES) \ 19713481Sgiacomo.travaglini@arm.com scripts/fuse_gmock_files.py 19813481Sgiacomo.travaglini@arm.com mkdir -p "$(srcdir)/fused-src" 19913481Sgiacomo.travaglini@arm.com chmod -R u+w "$(srcdir)/fused-src" 20013481Sgiacomo.travaglini@arm.com rm -f "$(srcdir)/fused-src/gtest/gtest.h" 20113481Sgiacomo.travaglini@arm.com rm -f "$(srcdir)/fused-src/gmock/gmock.h" 20213481Sgiacomo.travaglini@arm.com rm -f "$(srcdir)/fused-src/gmock-gtest-all.cc" 20313481Sgiacomo.travaglini@arm.com "$(srcdir)/scripts/fuse_gmock_files.py" "$(srcdir)/fused-src" 20413481Sgiacomo.travaglini@arm.com cp -f "$(srcdir)/src/gmock_main.cc" "$(srcdir)/fused-src" 20513481Sgiacomo.travaglini@arm.com 20613481Sgiacomo.travaglini@arm.commaintainer-clean-local: 20713481Sgiacomo.travaglini@arm.com rm -rf "$(srcdir)/fused-src" 20813481Sgiacomo.travaglini@arm.comendif 20913481Sgiacomo.travaglini@arm.com 21013481Sgiacomo.travaglini@arm.com# Death tests may produce core dumps in the build directory. In case 21113481Sgiacomo.travaglini@arm.com# this happens, clean them to keep distcleancheck happy. 21213481Sgiacomo.travaglini@arm.comCLEANFILES = core 21313481Sgiacomo.travaglini@arm.com 21413481Sgiacomo.travaglini@arm.com# Disables 'make install' as installing a compiled version of Google 21513481Sgiacomo.travaglini@arm.com# Mock can lead to undefined behavior due to violation of the 21613481Sgiacomo.travaglini@arm.com# One-Definition Rule. 21713481Sgiacomo.travaglini@arm.com 21813481Sgiacomo.travaglini@arm.cominstall-exec-local: 21913481Sgiacomo.travaglini@arm.com echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Mock into your build system." 22013481Sgiacomo.travaglini@arm.com false 22113481Sgiacomo.travaglini@arm.com 22213481Sgiacomo.travaglini@arm.cominstall-data-local: 22313481Sgiacomo.travaglini@arm.com echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Mock into your build system." 22413481Sgiacomo.travaglini@arm.com false 225