44
55TEST_MK := test/srcs.mk
66TEST_BIN := ztest
7+ TEST_SLOW_BIN := ztest-slow
78
89include $(TEST_MK )
910
@@ -16,6 +17,12 @@ TEST_CC_OBJS := $(patsubst %.cpp,$(TEST_OBJ_PATH)/%.o,\
1617 $(filter % .cpp,$(TEST_SRCS ) ) )
1718TEST_OBJS := $(TEST_C_OBJS ) $(TEST_CC_OBJS )
1819
20+ TEST_SLOW_C_OBJS := $(patsubst % .c,$(TEST_OBJ_PATH ) /% .o,\
21+ $(filter % .c,$(TEST_SLOW_SRCS ) ) )
22+ TEST_SLOW_CC_OBJS := $(patsubst % .cpp,$(TEST_OBJ_PATH ) /% .o,\
23+ $(filter % .cpp,$(TEST_SLOW_SRCS ) ) )
24+ TEST_SLOW_OBJS := $(TEST_SLOW_C_OBJS ) $(TEST_SLOW_CC_OBJS )
25+
1926TEST_DEPS += $(CONTRIB_GTEST_TARGET ) $(AVS_DEPS ) $(MENG_DEPS )
2027TEST_LIBS += $(CONTRIB_GTEST_LIBS ) $(AVS_LIBS ) $(MENG_LIBS )
2128
@@ -34,11 +41,14 @@ ifeq ($(AVS_OS),android)
3441endif
3542
3643-include $(TEST_OBJS :.o=.d)
44+ -include $(TEST_SLOW_OBJS :.o=.d)
3745
3846$(TEST_OBJS ) : $(TOOLCHAIN_MASTER ) $(TEST_DEPS )
47+ $(TEST_SLOW_OBJS ) : $(TOOLCHAIN_MASTER ) $(TEST_DEPS )
3948
4049ifeq ($(SKIP_MK_DEPS ) ,)
4150$(TEST_OBJS ) : $(TEST_MKS )
51+ $(TEST_SLOW_OBJS ) : $(TEST_MKS )
4252endif
4353
4454$(TEST_C_OBJS ) : $(TEST_OBJ_PATH ) /% .o: test/% .c
@@ -57,17 +67,38 @@ $(TEST_CC_OBJS): $(TEST_OBJ_PATH)/%.o: test/%.cpp
5767 $(TEST_CPPFLAGS ) $(TEST_CXXFLAGS ) \
5868 -c $< -o $@ $(DFLAGS )
5969
70+ $(TEST_SLOW_C_OBJS ) : $(TEST_OBJ_PATH ) /% .o: test/% .c
71+ @echo " CC $( AVS_OS) -$( AVS_ARCH) test/$* .c"
72+ @mkdir -p $(dir $@ )
73+ @$(CC ) $(CPPFLAGS ) $(CFLAGS ) \
74+ $(AVS_CPPFLAGS ) $(AVS_CFLAGS ) \
75+ $(TEST_CPPFLAGS ) $(TEST_CFLAGS ) \
76+ -c $< -o $@ $(DFLAGS )
77+
78+ $(TEST_SLOW_CC_OBJS ) : $(TEST_OBJ_PATH ) /% .o: test/% .cpp
79+ @echo " CXX $( AVS_OS) -$( AVS_ARCH) test/$* .cpp"
80+ @mkdir -p $(dir $@ )
81+ @$(CXX ) $(CPPFLAGS ) $(CXXFLAGS ) \
82+ $(AVS_CPPFLAGS ) $(AVS_CXXFLAGS ) \
83+ $(TEST_CPPFLAGS ) $(TEST_CXXFLAGS ) \
84+ -c $< -o $@ $(DFLAGS )
85+
6086$(BUILD_BIN ) /$(TEST_BIN )$(BIN_SUFFIX ) : $(TEST_OBJS ) $(AVS_STATIC ) $(MENG_STATIC )
6187 @echo " LD $@ "
6288 @mkdir -p $(BUILD_BIN )
6389 @$(CXX ) $(LFLAGS ) $(TEST_LFLAGS ) \
6490 $^ $(TEST_LIBS ) $(LIBS ) -o $@
6591
92+ $(BUILD_BIN ) /$(TEST_SLOW_BIN )$(BIN_SUFFIX ) : $(TEST_SLOW_OBJS ) $(AVS_STATIC ) $(MENG_STATIC )
93+ @echo " LD $@ "
94+ @mkdir -p $(BUILD_BIN )
95+ @$(CXX ) $(LFLAGS ) $(TEST_LFLAGS ) \
96+ $^ $(TEST_LIBS ) $(LIBS ) -o $@
6697
6798# --- Phony Targets ---
6899
69100.PHONY : test test_clean
70- test : $(BUILD_BIN ) /$(TEST_BIN )$(BIN_SUFFIX )
101+ test : $(BUILD_BIN ) /$(TEST_BIN )$(BIN_SUFFIX ) $( BUILD_BIN ) / $( TEST_SLOW_BIN )$( BIN_SUFFIX )
71102test_clean :
72- @rm -f $(BUILD_BIN ) /$(TEST_BIN )$(BIN_SUFFIX )
103+ @rm -f $(BUILD_BIN ) /$(TEST_BIN )$(BIN_SUFFIX ) $( BUILD_BIN ) / $( TEST_SLOW_BIN )$( BIN_SUFFIX )
73104
0 commit comments