2016-10-19 1 views
1

В файле Makefile.am я пришел через присваивания значения переменной dist_bin_SCRIPTS = fooGNU Automake - Как работает dist_bin_SCRIPTS и могу ли я его изменить?

website Из этого под заголовком Makefile.am он говорит, что устанавливает скрипт в каталоге /usr/local/bin.

В нем также говорится, что есть способы определить свои собственные значения (каталоги для установки на) ... В моем случае я хотел бы изменить его, чтобы установить скрипт foo в /etc/bash_completion.d, знает ли кто-нибудь, как это сделать?

Я пробовал посмотреть руководство по автомеханизму, но я не смог узнать нужную информацию печально.

Вся помощь ценится :)

ответ

1

bin_SCRIPTS устанавливается в/USR/местные/бен, потому что bindir предопределен уже (с большим количеством слоев по умолчанию). Так,

foodir = ${sysconfdir}/bash_completion.d 
foo_DATA = mycompletion.sh 

является быстрым способом без параметризации из Configure (но все еще переопределение в косметике время.)

+0

Не могли бы вы объяснить, почему 'dist_' не требуется перед' foo_DATA'? – PJConnol

+2

dist_ требуется только явно в нескольких случаях, в частности, если файл сгенерирован некоторыми инструментами, но вы все равно хотите поместить копию в tarball. Если вы не сгенерируете файл, а скорее имеете его в исходном репозитории, просто 'bin_SCRIPTS' будет работать так же хорошо, как' foo_DATA'. –

Смежные вопросы