Я ищу что-то вроде фильтра Исключить для msbuild, но я хочу это в make-файле, обработанном nmake.
Это возможно?
Предположим, у меня есть make-файл, который определяет этот макрос:
SOURCES=xxx.c yyy.c zzz.c
и я вызываю его с nmake OLD=xxx.c NEW=bbb.c
... могу ли я создать в make-файле макрос со значением вроде:
yyy.c zzz.c bbb.c
... в основном замена bbb.c на xxx.c?
Файлы могут появляться в любом порядке.
Это было бы довольно легко, если бы подстановка строк, которая возможна в макросах nmake, позволяла оценивать макросы.
Другими словами, я могу сделать
sources=xxx.c yyy.c zzz.c
objs=$(sources:.c=.o)
и значение $ (objs)
xxx.o yyy.o zzz.o
Но nmake не допускает макрос для значения любого аргумента для этой замены . Я не могу сделать это:
new=.o
sources=xxx.c yyy.c zzz.c
objs=$(sources:.c=$(new))