2010-09-03 5 views
10

Как установить дерево каталогов HTML-файлов, таблиц стилей и изображений с помощью automake без необходимости создавать Makefile в каждом подкаталоге?Как установить дерево каталогов данных с помощью automake

Используя следующую в корневом каталоге

htmldir = $(docdir)/foo/html 
html_DATA = \ 
     stylesheets/foo.css \ 
     images/foo.jpg \ 
     index.html \ 
     about/index.html \ 
     faq/index.html 
EXTRA_DIST = $(html_DATA) 

терпит неудачу, потому что подкаталоги не созданы до install называются.

ответ

10

Вы могли бы написать

foohtmldir = $(htmldir)/foo/html 
nobase_dist_foohtml_DATA = \ 
    stylesheets/foo.css \ 
    images/foo.jpg \ 
    index.html \ 
    about/index.html \ 
    faq/index.html 

htmldir переменная пользователь имеет право изменять с помощью configure --htmldir=..., поэтому я предлагаю использовать еще один, если вы хотите написать какой-то подкаталог этого. Префикс nobase_ покажет Automake, чтобы не лишать ведущие каталоги во время установки, а префикс dist_ требует, чтобы файлы были распределены.