1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
OBJS_$(d) := $(filter %.o, $(SRCS_$(d):.c=.o))
OBJS_$(d) += $(filter %.o, $(SRCS_$(d):.s=.o))
OBJS_$(d) := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(OBJS_$(d)))
DEPS_$(d) := $(OBJS_$(d):.o=.d)
# Binary building
OBJS += $(OBJS_$(d))
DEPS += $(DEPS_$(d))
LIBS_$(d) := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(LIBS_$(d)))
LIBS += $(LIBS_$(d))
BINS_$(d) := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(BINS_$(d)))
BINS += $(BINS_$(d))
# Testing infrastructure
UNIT_$(d) := $(CHECK_$(d):.c=.o)
UNIT_$(d) := $(patsubst %(SRC_DIR)/%, $(OBJ_DIR)/%, $(UNIT_$(d)))
OBJS += $(UNIT_$(d))
TEST_$(d) := $(patsubst $(SRC_DIR)/%, $(TEST_DIR)/%, $(TEST_$(d):.c=))
TEST += $(TEST_$(d))
# useful path
o := $(patsubst $(SRC_DIR)/%, $(OBJ_DIR)/%, $(d))
|