Re: Install /usr/bin/something from upstream source to /usr/bin/somethingon hdd?
Hi
--------message d'origine --------
De: Patrick Schleizer <adrelanos@riseup.net>
A: debian-mentors@lists.debian.org
Sujet: Re: Install /usr/bin/something from upstream source to /usr/bin/somethingon hdd?
Date: Sun, 27 Apr 2014 15:25:16 +0000
> Andrey Rahmatullin:
>
> I like to make it generic, so I don't have to list individual files in
> the Makefile. That causes less overhead for packaging if file names are
> changed/added/etc. (They probably won't be changed a lot, but I am going
> to package lots of shell scripts I've written over two years, so I like
> to have a template, that requires little changes.)
>
> Rsync dependency has been removed.
>
> The Makefile for "make install" now calls a small script called
> install-helper.bsh, that essentially does:
>
> find \
> . \
> -not -type d \
> -not -path './Makefile' \
> ... \
> -not -path './CONTRIBUTING.md' \
> -exec echo "cp --parents '{}' $DESTDIR/" \; \
> -exec cp --parents '{}' "$DESTDIR/" \;
>
> Does that sound acceptable?
I don't understand the need to call a shell script from the Makefile. According to the FHS,
the main directories where you may want to install shell scripts, shell libraries, config files
and their documentation are: /etc, /bin, /sbin, /usr, /lib, and why not, /var. So you can use
a very generic "install" target - and probably more portable/elegant than the find command
above - with something like
DESTDIR ?= /
install:
for d in bin etc lib sbin usr var; do if [ -d $${d} ]; then cp -R $${d} ${DESTDIR}; fi; done
That's all; this doesn't need a lot of rsync's or find's exceptions.
Cheers
quidame
Reply to: