blob: 64d778b84fed16c413678080c758875803b8b2d9 [file] [log] [blame]
ifndef MAKEFILE_GTEST_INCLUDED
MAKEFILE_GTEST_INCLUDED := 1
.PHONY: gtest.lib snappy.clean
include build/common.inc
ifeq ($(filter emscripten%,$(SYSTEM)),)
#
# googletest + googlemock
#
all:: gtest.lib
clean:: gtest.clean
GTEST.SRCS += src/googletest/src/gtest-all.cc
GTEST.SRCS += src/googlemock/src/gmock-all.cc
GTEST.SRCS.NAMES := $(notdir $(GTEST.SRCS))
GTEST.OBJS := $(addprefix tmp/$(SYSTEM)/gtest/static/,$(GTEST.SRCS.NAMES))
GTEST.OBJS := $(GTEST.OBJS:.cc=.o)
GTEST.DEPS := $(GTEST.OBJS:.o=.d)
GTEST.CFLAGS := -Isrc/googletest/include -Isrc/googletest -Isrc/googlemock/include -Isrc/googlemock
GTEST.STATIC := libgtestlib.a
-include $(GTEST.DEPS)
gtest.lib: lib/$(SYSTEM)/$(GTEST.STATIC)
gtest.clean:
$(RM) -r tmp/$(SYSTEM)/gtest/static
$(RM) -r lib/$(SYSTEM)/$(GTEST.STATIC)
tmp/$(SYSTEM)/gtest/static/gtest-all.o: src/googletest/src/gtest-all.cc
@mkdir -p $(dir $@)
$(LOG_CXX)$(CCACHE) $(CC) $(GTEST.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $<
tmp/$(SYSTEM)/gtest/static/gmock-all.o: src/googlemock/src/gmock-all.cc
@mkdir -p $(dir $@)
$(LOG_CXX)$(CCACHE) $(CC) $(GTEST.CFLAGS) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $<
lib/$(SYSTEM)/$(GTEST.STATIC): $(GTEST.OBJS)
@mkdir -p $(dir $@)
$(LOG_AR)$(CCACHE) $(AR) cr $@ $(GTEST.OBJS)
ifneq ($(RANLIB),)
$(LOG_RANLIB)$(RANLIB) $@
endif
endif
endif