如何只用一个命令执行一堆生成文件?或者如何编写我的生成文件的脚本?



搜索大约 2 个荷鲁斯的解决方案,我什么也没找到,因为我什至不知道搜索它的正确性......我的问题是:我必须使用不同的"tad"文件(tad,tad01,tad02,tad03...tad27(,那么有没有办法制作某种"for 循环"并执行 27 倍的 makefile,只通过所需的tad更改标签 NAME??

.PHONY= doc clean
NAME= tad02 #############I MEAN THIS LABEL<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
CC=g++
OPTIONS= -g 
DEBUG= #-D DEBUG
LIBDIR=lib
INCLUDEDIR=include
_OBJ= file1.o file2.o file3.o 
OBJ = $(patsubst %,$(LIBDIR)/%,$(_OBJ))
tad:    src/$(NAME).cpp $(OBJ)
$(CC) $(OPTIONS) $(DEBUG) -I$(INCLUDEDIR) src/$(NAME).cpp $(OBJ) -o $(NAME)
$(LIBDIR)/%.o : $(LIBDIR)/%.cpp $(INCLUDEDIR)/%.h
$(CC) $(OPTIONS) $(DEBUG) -c -I$(INCLUDEDIR) -o $@ $<
doc:
doxygen
clean:
rm -f $(OBJ) 

有很多方法可以做到这一点。这是其中之一:

TADS:= tad tad01 tadthree someothertad tad27
allTads: $(TADS)
$(TADS): %: src/%.cpp $(OBJ)
$(CC) $(OPTIONS) $(DEBUG) -I$(INCLUDEDIR) $< $(OBJ) -o $@

最新更新