SYS := $(OBJ_DIR)/sys/sys.a SYS_SRCS := $(sort $(wildcard $(SYS_DIR)/src/*.c)) SYS_OBJS := $(filter %.o, $(SYS_SRCS:.c=.o)) SYS_OBJS := $(patsubst $(SYS_DIR)/src/%, $(OBJ_DIR)/$(SYS_DIR)/%, $(SYS_OBJS)) # rules for kernel interface $(OBJ_DIR)/$(SYS_DIR)/%.o: TINCS = -I $(SYS_DIR)/$(OS)/$(ARCH) $(OBJ_DIR)/$(SYS_DIR)/%.o: $(SYS_DIR)/src/%.c $(COMPILE) $(SYS): $(SYS_OBJS) $(ARCHIVE)