diff --git a/nemu/Makefile b/nemu/Makefile index 03c8a4e..5e9dc7c 100644 --- a/nemu/Makefile +++ b/nemu/Makefile @@ -63,10 +63,11 @@ endif .PHONY: test include $(NEMU_HOME)/tests/Makefile -all-tests: TEST_OBJS = $(filter-out $(OBJ_DIR)/src/nemu-main.o, $(OBJS)) -all-tests: CFLAGS += $(shell pkg-config --cflags check) -all-tests: LDFLAGS += $(shell pkg-config --libs check) -all-tests: $(TEST_SRCS:%.c=$(OBJ_DIR)/%) +TEST_NAMES = $(notdir $(basename $(TEST_SRCS))) +$(TEST_NAMES):: TEST_OBJS = $(filter-out $(OBJ_DIR)/src/nemu-main.o, $(OBJS)) +$(TEST_NAMES):: CFLAGS += $(shell pkg-config --cflags check) +$(TEST_NAMES):: LDFLAGS += $(shell pkg-config --libs check) +$(TEST_NAMES):: $(OBJ_DIR)/tests/% -test: all-tests +test: $(addprefix $(OBJ_DIR)/tests/, $(TEST_NAMES)) @$(OBJ_DIR)/tests/expr_test