Что такое хороший способ создания текстовых файлов из Makefile? - PullRequest
3 голосов
/ 30 декабря 2011

Мой процесс сборки использует множество сторонних утилит. Многие из этих утилит требуют использования текстовых файлов ASCII для конфигурации. Я хотел бы создать эти короткие текстовые файлы из Makefile. Единственный способ, которым я знаю, - это использовать команду echo для записи по одной строке текстового файла за раз, а затем перенаправлять вывод следующим образом:

foo.script: bar.prj
        touch $@
        echo run >>$@
        echo -input bar.prj >>$@
        echo -output baz.out >>$@

Это некрасиво. Что еще хуже, я создаю Makefile из программы Python. Таким образом, фактический код выглядит примерно так:

TEMPLATE="""{target}: {input}
        touch $@
        echo run >>$@
        echo -input {input} >>$@
        echo -output {output} >>%@"""
TEMPLATE.format(target='foo.script',input='bar.prj',output='baz.out')

Это становится очень трудно читать и поддерживать. Кто-нибудь знает лучший способ?

ОТВЕТ:

Не генерировать текст из Make. Вызовите скрипт, написанный на языке, который облегчает генерацию текста.

1 Ответ

1 голос
/ 30 декабря 2011

Если вы используете python уже в процессе сборки, вы можете написать небольшой скрипт на python, который принимает файл шаблона, целевой файл и ряд параметров и генерирует целевой файл из файла шаблона с заполнением соответствующих параметров.в.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...