58 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			58 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| 
								 | 
							
								# A Makefile for fusing Google Test and building a sample test against it.
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# SYNOPSIS:
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								#   make [all]  - makes everything.
							 | 
						||
| 
								 | 
							
								#   make TARGET - makes the given target.
							 | 
						||
| 
								 | 
							
								#   make check  - makes everything and runs the built sample test.
							 | 
						||
| 
								 | 
							
								#   make clean  - removes all files generated by make.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Points to the root of fused Google Test, relative to where this file is.
							 | 
						||
| 
								 | 
							
								FUSED_GTEST_DIR = output
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Paths to the fused gtest files.
							 | 
						||
| 
								 | 
							
								FUSED_GTEST_H = $(FUSED_GTEST_DIR)/gtest/gtest.h
							 | 
						||
| 
								 | 
							
								FUSED_GTEST_ALL_CC = $(FUSED_GTEST_DIR)/gtest/gtest-all.cc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Where to find the sample test.
							 | 
						||
| 
								 | 
							
								SAMPLE_DIR = ../../samples
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Where to find gtest_main.cc.
							 | 
						||
| 
								 | 
							
								GTEST_MAIN_CC = ../../src/gtest_main.cc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Flags passed to the preprocessor.
							 | 
						||
| 
								 | 
							
								CPPFLAGS += -I$(FUSED_GTEST_DIR)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Flags passed to the C++ compiler.
							 | 
						||
| 
								 | 
							
								CXXFLAGS += -g
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								all : sample1_unittest
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								check : all
							 | 
						||
| 
								 | 
							
									./sample1_unittest
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								clean :
							 | 
						||
| 
								 | 
							
									rm -rf $(FUSED_GTEST_DIR) sample1_unittest *.o
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$(FUSED_GTEST_H) :
							 | 
						||
| 
								 | 
							
									../fuse_gtest_files.py $(FUSED_GTEST_DIR)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$(FUSED_GTEST_ALL_CC) :
							 | 
						||
| 
								 | 
							
									../fuse_gtest_files.py $(FUSED_GTEST_DIR)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								gtest-all.o : $(FUSED_GTEST_H) $(FUSED_GTEST_ALL_CC)
							 | 
						||
| 
								 | 
							
									$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(FUSED_GTEST_DIR)/gtest/gtest-all.cc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								gtest_main.o : $(FUSED_GTEST_H) $(GTEST_MAIN_CC)
							 | 
						||
| 
								 | 
							
									$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(GTEST_MAIN_CC)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								sample1.o : $(SAMPLE_DIR)/sample1.cc $(SAMPLE_DIR)/sample1.h
							 | 
						||
| 
								 | 
							
									$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SAMPLE_DIR)/sample1.cc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								sample1_unittest.o : $(SAMPLE_DIR)/sample1_unittest.cc \
							 | 
						||
| 
								 | 
							
								                     $(SAMPLE_DIR)/sample1.h $(FUSED_GTEST_H)
							 | 
						||
| 
								 | 
							
									$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SAMPLE_DIR)/sample1_unittest.cc
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								sample1_unittest : sample1.o sample1_unittest.o gtest-all.o gtest_main.o
							 | 
						||
| 
								 | 
							
									$(CXX) $(CPPFLAGS) $(CXXFLAGS) $^ -o $@
							 |