52 lines
1.3 KiB
Text
52 lines
1.3 KiB
Text
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
|
|
|