Используйте autotools с README.md
Я использую autotools для библиотек, размещенных на GitHub. Вместо обычного текстового файла README я хочу использовать README.md.
При запуске automake я получаю следующую ошибку
Makefile.am: required file `./README' not found
Можно ли сказать autotools, чтобы они не проверяли README?
4 ответа:
Просто передайте опцию
foreignв automake. Это говорит ему, что ваше программное обеспечение не соответствует типичным стандартам gnu, и, таким образом, пропуск README не является ошибкой. Как правило, это делается вconfigure.ac:AM_INIT_AUTOMAKE([foreign])Но это также можно сделать, назначив
AUTOMAKE_OPTIONSв Makefile.am:AUTOMAKE_OPTIONS = foreign
Мы используем
README: README.md fgrep -v "[Build Status]" $< \ | markdown \ | html2text -style pretty -nobs \ | sed -e 's:>:>:g' \ > $@.tmpЧтобы сгенерировать текст README из markdown README.md
Зачем просить его не искать ваш файл README, если он у вас уже есть? Он просто оказался в формате markdown и сохранен как README.md. если вы хотите, чтобы ваш файл README был идентичен вашему README.md файл, почему бы не связать с ним?
Из командной строки:
ln -s README.md READMEТаким образом, вы можете сохранить свой README.md файл и любые инструменты, которые вы используете, по-прежнему будут работать со стандартными соглашениями об именовании. Говоря в скобках, весьма вероятно, что autotools позволяет вам указать пользовательский путь для вашего readme.
Простое решение, основанное на ответеfceller : единственное, что нужно, - это правило построения для
READMEвmakefile.am. Это правило может быть даже пустым. Поэтому просто добавьте следующую строку к вашемуmakefile.am:README: README.mdВот и все, теперь automake больше не жалуется, и вам не нужно объявлять свой проект как
foreign.Это не нужно, но я предпочитаю более полное правило, я добавляю к
makefile.am:README: README.md pandoc -f markdown -t plain --wrap=none $< -o $@ CLEANFILES = READMEНо даже с этим правилом,
READMEне строится, если вы явно вызовитеmake README.