我有一大堆makefile目标做同样的事情:
${SOME_FILE}:
${FILES} | ${DIST_DIR}
@@cat ${FILES} | \
sed 's/@DATE/'"${DATE}"'/' | \
sed 's/@VERSION/'"${CR_VER}"'/' \
> ${OUT_FILE};
其中${FILES}
和${OUT_FILE}
是唯一发生变化的事情。我想弄清楚是否可以将这些目标简化为:
${SOME_FILE}:
compile(${FILES},${OUT_FILE})
感谢您的任何见解。
答案 0 :(得分:13)
GNU make有这个:
要定义多行功能,您可以使用以下语法:
答案 1 :(得分:2)
如果您不想限制自己使用GNUmake,最好的办法是自己生成makefile片段,然后include
生成它们。