[12746] | 1 | # A Makefile for fusing Google Test and building a sample test against it.
|
---|
| 2 | #
|
---|
| 3 | # SYNOPSIS:
|
---|
| 4 | #
|
---|
| 5 | # make [all] - makes everything.
|
---|
| 6 | # make TARGET - makes the given target.
|
---|
| 7 | # make check - makes everything and runs the built sample test.
|
---|
| 8 | # make clean - removes all files generated by make.
|
---|
| 9 |
|
---|
| 10 | # Points to the root of fused Google Test, relative to where this file is.
|
---|
| 11 | FUSED_GTEST_DIR = output
|
---|
| 12 |
|
---|
| 13 | # Paths to the fused gtest files.
|
---|
| 14 | FUSED_GTEST_H = $(FUSED_GTEST_DIR)/gtest/gtest.h
|
---|
| 15 | FUSED_GTEST_ALL_CC = $(FUSED_GTEST_DIR)/gtest/gtest-all.cc
|
---|
| 16 |
|
---|
| 17 | # Where to find the sample test.
|
---|
| 18 | SAMPLE_DIR = ../../samples
|
---|
| 19 |
|
---|
| 20 | # Where to find gtest_main.cc.
|
---|
| 21 | GTEST_MAIN_CC = ../../src/gtest_main.cc
|
---|
| 22 |
|
---|
| 23 | # Flags passed to the preprocessor.
|
---|
| 24 | # We have no idea here whether pthreads is available in the system, so
|
---|
| 25 | # disable its use.
|
---|
| 26 | CPPFLAGS += -I$(FUSED_GTEST_DIR) -DGTEST_HAS_PTHREAD=0
|
---|
| 27 |
|
---|
| 28 | # Flags passed to the C++ compiler.
|
---|
| 29 | CXXFLAGS += -g
|
---|
| 30 |
|
---|
| 31 | all : sample1_unittest
|
---|
| 32 |
|
---|
| 33 | check : all
|
---|
| 34 | ./sample1_unittest
|
---|
| 35 |
|
---|
| 36 | clean :
|
---|
| 37 | rm -rf $(FUSED_GTEST_DIR) sample1_unittest *.o
|
---|
| 38 |
|
---|
| 39 | $(FUSED_GTEST_H) :
|
---|
| 40 | ../fuse_gtest_files.py $(FUSED_GTEST_DIR)
|
---|
| 41 |
|
---|
| 42 | $(FUSED_GTEST_ALL_CC) :
|
---|
| 43 | ../fuse_gtest_files.py $(FUSED_GTEST_DIR)
|
---|
| 44 |
|
---|
| 45 | gtest-all.o : $(FUSED_GTEST_H) $(FUSED_GTEST_ALL_CC)
|
---|
| 46 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(FUSED_GTEST_DIR)/gtest/gtest-all.cc
|
---|
| 47 |
|
---|
| 48 | gtest_main.o : $(FUSED_GTEST_H) $(GTEST_MAIN_CC)
|
---|
| 49 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(GTEST_MAIN_CC)
|
---|
| 50 |
|
---|
| 51 | sample1.o : $(SAMPLE_DIR)/sample1.cc $(SAMPLE_DIR)/sample1.h
|
---|
| 52 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SAMPLE_DIR)/sample1.cc
|
---|
| 53 |
|
---|
| 54 | sample1_unittest.o : $(SAMPLE_DIR)/sample1_unittest.cc \
|
---|
| 55 | $(SAMPLE_DIR)/sample1.h $(FUSED_GTEST_H)
|
---|
| 56 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SAMPLE_DIR)/sample1_unittest.cc
|
---|
| 57 |
|
---|
| 58 | sample1_unittest : sample1.o sample1_unittest.o gtest-all.o gtest_main.o
|
---|
| 59 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) $^ -o $@
|
---|