Я ищу инструмент сборки make like, который поддерживает (помимо обычных функций make):
- Автоматическое удаление временно созданных файлов (как, например, в GNU make)
- Регулярные выражения в шаблонах правил (например, в Cook
О 1:
По умолчанию GNU make удаляет временные файлы. Например, есть эти правила:
%.c: %.y
some-comand
%.o: %.c
some-comand
Если у вас есть файл foo.y и вызывается make foo.o, то make-производные должны сначала создать foo.c, а затем foo.o. После того, как он будет готов, удалите временный файл foo.c.
Кук не поддерживает это.
О 2:
Сделайте так, чтобы поддержка суффиксов поддерживала правила стиля паттернов. Например, вот так (эквивалентные обозначения):
%.o: %.c
some-comand
.c.o:
некоторые-COMAND
Допускается использование регулярных выражений в правилах шаблонов. Примеры псевдокода:
foo.+bar.o: foo.+bar.c
some-comand
foo\1bar.o: foo(.+)bar.c
some-comand
Первое правило совпадает (и его команда выполняется), если, например, необходим файл fooXXXbar.o и существует файл fooYYYbar.c (или make знает, как его создать. Второе правило соответствует, если, например, нужен файл fooXXXbar.o и fooXXXbar.c существует.
Знаете ли вы сборку, которая поддерживает эти функции?