Re: use of {} shell wildcards in debian/rules
On Fri, Sep 02, 2005 at 03:17:30PM +0100, Toby White wrote:
> I have recently come across this behaviour while rebuilding
> modxslt; in the debian/rules file, there are several instances
> of the idiom:
>
> @cp -a $(CURDIR)/debian/libmodxslt0/usr/lib/libmodxslt0{.a,.la} \
> $(CURDIR)/debian/libmodxslt0-dev/usr/lib
>
> Note the use of the {.a,.la} wildcards.
>
> While perfectly reasonable in bash, they are of course
> not POSIX shell wildcards.
[...]
> Clearly this is easy to fix, and I can provide a short bug
> report and patch to modxslt; but I don't know if debian/rules
> files are expected to conform to POSIX, or if one is allowed
> the latitude of bash. Since they are Makefiles, there is no
> convention (is there?) for specifying which shell should
> be used to execute commands.
>
> Should I submit a bug?
Yes, this is a bug; if you want to use bashisms in debian/rules, you
have to set 'SHELL = /bin/bash'.
Cheers,
--
Colin Watson [cjwatson@debian.org]
Reply to: