all:
BLD_DIR = ./build
InitMake := $(shell [ -d $(BLD_DIR) ] || mkdir -p $(BLD_DIR))
EXES = recv send
SRCS = $(wildcard *.c)
OBJS = $(SRCS:%.c=$(BLD_DIR)/%.o)
DEPS = $(SRCS:%.c=$(BLD_DIR)/%.d)
CFLAGS += -lncurses
LDFLAGS += -lncurses
recv: $(BLD_DIR)/recv.o
$(CC) -o $@ $^ $(LDFLAGS)
send: $(BLD_DIR)/send.o
$(CC) -o $@ $^ $(LDFLAGS)
all: $(EXES)
$(OBJS): $(BLD_DIR)/%.o: %.c
$(CC) $(CFLAGS) -o $@ -c $<
.PHONY: all clean
clean:
$(RM) -rf $(BLD_DIR)
一个经典的Makefile实例
最新推荐文章于 2023-02-13 17:11:51 发布