113481Sgiacomo.travaglini@arm.com# A Makefile for fusing Google Test and building a sample test against it. 213481Sgiacomo.travaglini@arm.com# 313481Sgiacomo.travaglini@arm.com# SYNOPSIS: 413481Sgiacomo.travaglini@arm.com# 513481Sgiacomo.travaglini@arm.com# make [all] - makes everything. 613481Sgiacomo.travaglini@arm.com# make TARGET - makes the given target. 713481Sgiacomo.travaglini@arm.com# make check - makes everything and runs the built sample test. 813481Sgiacomo.travaglini@arm.com# make clean - removes all files generated by make. 913481Sgiacomo.travaglini@arm.com 1013481Sgiacomo.travaglini@arm.com# Points to the root of fused Google Test, relative to where this file is. 1113481Sgiacomo.travaglini@arm.comFUSED_GTEST_DIR = output 1213481Sgiacomo.travaglini@arm.com 1313481Sgiacomo.travaglini@arm.com# Paths to the fused gtest files. 1413481Sgiacomo.travaglini@arm.comFUSED_GTEST_H = $(FUSED_GTEST_DIR)/gtest/gtest.h 1513481Sgiacomo.travaglini@arm.comFUSED_GTEST_ALL_CC = $(FUSED_GTEST_DIR)/gtest/gtest-all.cc 1613481Sgiacomo.travaglini@arm.com 1713481Sgiacomo.travaglini@arm.com# Where to find the sample test. 1813481Sgiacomo.travaglini@arm.comSAMPLE_DIR = ../../samples 1913481Sgiacomo.travaglini@arm.com 2013481Sgiacomo.travaglini@arm.com# Where to find gtest_main.cc. 2113481Sgiacomo.travaglini@arm.comGTEST_MAIN_CC = ../../src/gtest_main.cc 2213481Sgiacomo.travaglini@arm.com 2313481Sgiacomo.travaglini@arm.com# Flags passed to the preprocessor. 2413481Sgiacomo.travaglini@arm.com# We have no idea here whether pthreads is available in the system, so 2513481Sgiacomo.travaglini@arm.com# disable its use. 2613481Sgiacomo.travaglini@arm.comCPPFLAGS += -I$(FUSED_GTEST_DIR) -DGTEST_HAS_PTHREAD=0 2713481Sgiacomo.travaglini@arm.com 2813481Sgiacomo.travaglini@arm.com# Flags passed to the C++ compiler. 2913481Sgiacomo.travaglini@arm.comCXXFLAGS += -g 3013481Sgiacomo.travaglini@arm.com 3113481Sgiacomo.travaglini@arm.comall : sample1_unittest 3213481Sgiacomo.travaglini@arm.com 3313481Sgiacomo.travaglini@arm.comcheck : all 3413481Sgiacomo.travaglini@arm.com ./sample1_unittest 3513481Sgiacomo.travaglini@arm.com 3613481Sgiacomo.travaglini@arm.comclean : 3713481Sgiacomo.travaglini@arm.com rm -rf $(FUSED_GTEST_DIR) sample1_unittest *.o 3813481Sgiacomo.travaglini@arm.com 3913481Sgiacomo.travaglini@arm.com$(FUSED_GTEST_H) : 4013481Sgiacomo.travaglini@arm.com ../fuse_gtest_files.py $(FUSED_GTEST_DIR) 4113481Sgiacomo.travaglini@arm.com 4213481Sgiacomo.travaglini@arm.com$(FUSED_GTEST_ALL_CC) : 4313481Sgiacomo.travaglini@arm.com ../fuse_gtest_files.py $(FUSED_GTEST_DIR) 4413481Sgiacomo.travaglini@arm.com 4513481Sgiacomo.travaglini@arm.comgtest-all.o : $(FUSED_GTEST_H) $(FUSED_GTEST_ALL_CC) 4613481Sgiacomo.travaglini@arm.com $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(FUSED_GTEST_DIR)/gtest/gtest-all.cc 4713481Sgiacomo.travaglini@arm.com 4813481Sgiacomo.travaglini@arm.comgtest_main.o : $(FUSED_GTEST_H) $(GTEST_MAIN_CC) 4913481Sgiacomo.travaglini@arm.com $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(GTEST_MAIN_CC) 5013481Sgiacomo.travaglini@arm.com 5113481Sgiacomo.travaglini@arm.comsample1.o : $(SAMPLE_DIR)/sample1.cc $(SAMPLE_DIR)/sample1.h 5213481Sgiacomo.travaglini@arm.com $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SAMPLE_DIR)/sample1.cc 5313481Sgiacomo.travaglini@arm.com 5413481Sgiacomo.travaglini@arm.comsample1_unittest.o : $(SAMPLE_DIR)/sample1_unittest.cc \ 5513481Sgiacomo.travaglini@arm.com $(SAMPLE_DIR)/sample1.h $(FUSED_GTEST_H) 5613481Sgiacomo.travaglini@arm.com $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SAMPLE_DIR)/sample1_unittest.cc 5713481Sgiacomo.travaglini@arm.com 5813481Sgiacomo.travaglini@arm.comsample1_unittest : sample1.o sample1_unittest.o gtest-all.o gtest_main.o 5913481Sgiacomo.travaglini@arm.com $(CXX) $(CPPFLAGS) $(CXXFLAGS) $^ -o $@ 60