通过www.example.com使用自动工具README.md

z9gpfhce  于 2023-02-15  发布在  其他
关注(0)|答案(5)|浏览(138)

我正在为GitHub上的一个库使用autotools,我不想使用普通的README文本文件,而想使用README.md
运行automake时,我得到以下错误

Makefile.am: required file `./README' not found

是否可以告诉autotools不要检查README

jbose2ul

jbose2ul1#

只需将foreign选项传递给automake,这会告诉automake你的软件不符合典型的gnu标准,因此省略README并不是错误,通常,这是在configure.ac中完成的:

AM_INIT_AUTOMAKE([foreign])

但也可以通过在www.example.com中指定AUTOMAKE_OPTIONS来完成Makefile.am:

AUTOMAKE_OPTIONS = foreign
ct2axkht

ct2axkht2#

我们正在使用

README: README.md
        fgrep -v "[Build Status]" $< \
                | markdown \
                | html2text -style pretty -nobs \
                | sed -e 's:&gt;:>:g' \
                > $@.tmp

要从减价www.example.com生成文本自述文件README.md

tv6aics1

tv6aics13#

基于pn fceller的答案的最简单的解决方案是:唯一需要的是在makefile.am中为README创建一个构建规则,这个规则甚至可以是空的,所以只需在makefile.am中添加以下代码行:

README: README.md

就这样,现在automake不再抱怨了,你也不需要把你的项目声明为foreign
这不是必需的,但我更喜欢一个更完整的规则,我添加到makefile.am

README: README.md
    pandoc -f markdown -t plain --wrap=none $< -o $@

CLEANFILES = README

但是,即使有了这个规则,除非显式调用make README,否则不会构建README

ki0zmccv

ki0zmccv4#

既然你已经有一个README文件,为什么不让它去找呢?它只是碰巧是markdown格式的,并保存为www.example.com。如果你想让你的README文件和README.md文件一样,为什么不链接到它呢?README.md. If you want your README file to be identical to your README.md file, why not link to it?
从命令行:

ln -s README.md README

这样,你就可以保留你的www.example.com文件,你使用的任何工具仍然可以使用标准的命名约定,顺便说一句,autotools很可能允许你为你的自述文件指定一个自定义路径。README.md file and any tools you use will still be able to work with the standard naming conventions. Parenthetically speaking, it is very likely that autotools allows you to specify a custom path for your readme.

hjqgdpho

hjqgdpho5#

automake 1.16.4(从2021年开始)现在应该本机允许一堆文件的.md扩展名,包括为这些文件获得正确的make dist

相关问题