Re: [dev] Re: wmii; make with /bin/bash not with /bin/sh

From: Kris Maglione <maglione.k_AT_gmail.com>
Date: Fri, 21 May 2010 10:52:58 -0400

On Thu, 20 May 2010 22:19:20 +0200
David Schmid <info_AT_david-schmid.de> wrote:

> On Thu, 20 May 2010 21:46:01 +0200
> David Engster <deng_AT_randomsample.de> wrote:
> > > Now it says:
> > >
> > > MAKE all libbio/
> > > ../util/compile: syntax error at line 13: `(' unexpected
> > > make[1]: *** [bbuffered.o] Error 2
> > > make: *** [dall] Error 2
> >
> > Sorry, forgot to mention that you still have to set /bin/bash in
> > those scripts in util.
>
> Now that looks awesome. The only thing that does not work is
> cmd/wihack.sh, even when set to /bin/bash.
>
> FILTER cmd/wihack.sh
> wihack.sh: bad substitution
> make[1]: *** [wihack.out] Error 1
> make: *** [dall] Error 2
>
> But I think I will figure out the rest.

That's just because the make script runs a syntax check on sh scripts
before it installs them. I'm afraid the only option is to edit
mk/hdr.mk. It should probably use $(BINSH) there instead.

Is there some reason you can't just replace /bin/sh with some
reasonable shell? dash, ash, or ksh (which would run POSIX emulation in
that case) should all do fine. I can't imagine that there are any
scripts which would run under Bourne and not POSIX sh, and it'd
probably save you some headaches elsewhere, too.

Oh, and ash and ksh actually support proper commandline editing and
histoy, unlike Solaris's shell, as I recall.

-- 
Kris Maglione
I have always found that plans are useless, but planning is
indispensable.
	--Dwight Eisenhower
Received on Fri May 21 2010 - 14:52:58 UTC

This archive was generated by hypermail 2.2.0 : Fri May 21 2010 - 15:00:03 UTC