PJConnol PJConnol - 1 month ago 16
Linux Question

GNU Automake - How does dist_bin_SCRIPTS work and can I change it?

In a Makefile.am file I have come across the variable assignment

dist_bin_SCRIPTS = foo


From this website under the heading Makefile.am it says it installs the script in the
/usr/local/bin
directory.

It also says there are ways to define your own values (directories to install to)... In my case I would like to change it to install the script foo in
/etc/bash_completion.d
, does anybody know how to do this?

I've tried looking at the automake manual but I couldn't find out the required info sadly.

All help is appreciated :)

Answer

bin_SCRIPTS installs to /usr/local/bin is because bindir is predefined already (with many layers of defaults). So,

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

is the fast way without parametrization from configure (but still overridable at make-time.)