base/Makefile

30 lines
577 B
Makefile
Raw Normal View History

2025-03-05 08:46:31 +00:00
#
# Makefile for base example
#
include ./make.h
2025-03-05 09:31:48 +00:00
2025-03-05 08:46:31 +00:00
2025-03-05 09:02:02 +00:00
# 目标和源文件
TARGETS = fork execlp
SOURCES = $(wildcard $(SRC_DIR)/*.c) # 找到所有的 .c 文件
OBJECTS = $(patsubst $(SRC_DIR)/%.c,%.o,$(SOURCES)) # 将 .c 替换为 .o
2025-03-05 08:46:31 +00:00
2025-03-05 09:02:02 +00:00
# 默认目标
2025-03-05 09:31:48 +00:00
all: $(TARGETS)
2025-03-05 08:46:31 +00:00
2025-03-05 09:02:02 +00:00
# 链接目标文件生成可执行文件
fork: fork.o
$(CC) -o fork fork.o
2025-03-05 08:46:31 +00:00
2025-03-05 09:02:02 +00:00
execlp: execlp.o
$(CC) -o execlp execlp.o
2025-03-05 08:46:31 +00:00
2025-03-05 09:02:02 +00:00
# 从 .c 文件编译生成 .o 文件
%.o: $(SRC_DIR)/%.c
$(CC) $(CFLAGS) $(COMMON_INCLUDE_DIRS) -c $< -o $@
2025-03-05 08:46:31 +00:00
2025-03-05 09:02:02 +00:00
clean:
$(RM) -f $(TARGETS) $(OBJECTS)
2025-03-05 08:46:31 +00:00