MENU

Makefile实例:批量编译多个目标

October 14, 2020 • Read: 55 • C/C++

gist: https://gist.github.com/songtianlun/8984626fd80cd20b7c2e71f95caaf8d1

# Batch Single C file MakeFile

# 指定CPU架构 Architecture -> ARCH
ARCH ?= 
CC = $(ARCH)gcc
SUFFIX = .c
CFLAGS += -Wall -g
LD = 

CUR_SOURCE = $(wildcard *$(SUFFIX))
CUR_TARGETS = $(patsubst %$(SUFFIX), %, $(CUR_SOURCE))

all:$(CUR_TARGETS)

# %:%.c 是一个表示与目标相同 文件的模式变量 
$(CUR_TARGETS):%:%$(SUFFIX)
    $(CC) $< $(CFLAGS) -o $@ $(LD)

# 指定伪目标
.PHONY:clean all
    clean:
        -rm -rf $(TARGETS)

参考文献

Archives QR Code Tip
QR Code for this page
Tipping QR Code
Leave a Comment