2013-02-21 13 views
20

ile autotools kullanın GitHub'da barındırılan kütüphaneler için autotools kullanıyorum. Sıradan bir README metin dosyası kullanmak yerine, README.md'u kullanmak istiyorum. automake çalıştırırkenREADME.md

, aşağıdaki hata

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

o README denetlemek için değil autotools söylemek mümkün mü olsun?

cevap

27

Otomatik olarak yapmak için foreign seçeneğini geçin. Bu, yazılımınızın tipik gnu standartlarına uymadığını ve dolayısıyla README'yi atlamasının bir hata olmadığını söyler. Genellikle, bu configure.ac yapılır:

AM_INIT_AUTOMAKE([foreign]) 

ama aynı zamanda Makefile.am içinde AUTOMAKE_OPTIONS atayarak yapılabilir: Bir metin oluşturmak için

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

kullanıyor

AUTOMAKE_OPTIONS = foreign 
+1

Fantastik, teşekkürler. Diğerleri için not, configure.ac' değiştirdikten sonra 'autoreconf' çalıştırmanız gerekir. –

4

Neden zaten bir tane olduğunda README dosyanıza bakmamasını isteyin? Sadece markdown formatında olmalı ve README.md olarak kaydedilir. README dosyanızın README.md dosyanızla aynı olmasını istiyorsanız, neden olmasın?

Komut satırından

:

ln -s README.md README 

Bu şekilde, sizin README.md dosyasını ve hala standart adlandırma kuralları ile çalışmak mümkün olacak kullanan tüm araçları tutmak için olsun. Parentetik olarak, autotools'un benioku için özel bir yol belirlemenize izin vermesi olasıdır.

+4

Bunu istemiyorum elbette. Bu sadece kafa karıştırıcı. –

7

README from README.md

+0

Teşekkürler! ama neden bu kadar karmaşık? README: README.md kedi $ < > $ @. Tmp yapmak? :) – Ax3l

0

Simples çözümü, temel pn fceller 'un yanıtı: Gerekli olan tek şey, numaralı telefondan README için bir kuraldır. Bu kural bile boş olabilir. Dolayısıyla, sadece senin makefile.am aşağıdaki satırı ekleyin:

hepsi
README: README.md 

, şimdi automake artık şikayet etmiyor ve foreign olarak projenizi beyan etmek gerekmez.

Bu gerekli, ama daha tam kuralı tercih edilmez, ben makefile.am eklemek: Açıkça make README çağrı sürece

README: README.md 
    pandoc -f markdown -t plain --wrap=none $< -o [email protected] 

CLEANFILES = README 

Ama bu kurala, README inşa edilmez.

İlgili konular