使用 Makefile 编译后删除临时文件

Remove temporary files after compiling with Makefile

我目前正在使用以下 Makefile 来编译我的 C 项目。

RM = rm -f
CFLAGS += -Wextra -Wall -Werror
CFLAGS +=   -I.

NAME = a.out

SRCS =  main.c

OBJS =  $(SRCS:.c=.o)


all:    $(NAME)
        $(NAME): $(OBJS)
        gcc $(OBJS) -o $(NAME) $(LDFLAGS)

clean:
        $(RM) $(OBJS)

fclean: clean
        $(RM) $(NAME)

re: fclean all

我想在我的 clean 命令中添加一些东西,它可以删除临时文件,也就是说以 ~ 结尾的文件。 我必须在不使用 *~.

的情况下执行此操作
TMP =  $(SRCS:.c=.c~)

clean:
        $(RM) -f $(OBJS)
        $(RM) -f $(TMP)

或者像@Barmar 所说的那样

clean:
    -$(RM) $(OBJS)
    -$(RM) $(TMP)

最好避免 RM = rm -f 中的选项 ==> RM = rm

doc