From: Sam Ravnborg <sam@ravnborg.org>
To: Michal Marek <mmarek@suse.cz>
Cc: Masahiro Yamada <yamada.m@jp.panasonic.com>,
linux-kbuild@vger.kernel.org
Subject: Re: [PATCH] kbuild: document KBUILD_SHELL
Date: Tue, 10 Jun 2014 21:56:03 +0200 [thread overview]
Message-ID: <20140610195602.GA7109@ravnborg.org> (raw)
In-Reply-To: <5396EDD0.8030406@suse.cz>
On Tue, Jun 10, 2014 at 01:36:48PM +0200, Michal Marek wrote:
> On 2014-06-10 13:17, Masahiro Yamada wrote:
> > IMHO:
> > If all shell scripts invoked by $KBUILD_SHELL should be sh-compatible,
> > "KBUILD_SHELL" should always be set to "/bin/sh" and
> > users should not change it.
> >
> > I still don't understand why bash is preferable for KBUILD_SHELL.
>
> I'm just speculating, but the reason might have been that if you are
> compiling Linux on some oddball UNIX system, the POSIX shell might not
> be "/bin/sh", but some other path, who knows which. But if $BASH is
> defined or if there is /bin/bash, then it's very likely the familiar GNU
> Bash. Hence the preference. Of course, the side effect is that it makes
> it easy to introduce bash-only constructs into the scripts :-/.
It has been like this forever...
The reasons for having CONFIG_SHELL are:
- with a distribution where /bin/sh does not work with the shells provided
by the kernel - the user can override this to select another shell.
- avoid hardcoding /bin/sh in all the places where we run a script
I recall we had problems with bash only stuff when ubuntu changed to dash.
But back then the fix was always to remove the bashism from the scripts.
IMO we should document that CONFG_SHELL/KBUILD_SHELL exists.
But that the user needs to modify the top-level Makefiel to change it
is IMO OK as this is seldomly if ever required.
Sam
prev parent reply other threads:[~2014-06-10 19:56 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-10 2:51 [PATCH] kbuild: document KBUILD_SHELL Masahiro Yamada
2014-06-10 9:27 ` Michal Marek
2014-06-10 9:50 ` Sam Ravnborg
2014-06-10 11:00 ` Michal Marek
2014-06-10 11:17 ` Masahiro Yamada
2014-06-10 11:36 ` Michal Marek
2014-06-10 12:02 ` Masahiro Yamada
2014-06-10 12:22 ` Michal Marek
2014-06-10 12:55 ` Masahiro Yamada
2014-06-26 2:02 ` Masahiro Yamada
2014-07-04 22:01 ` Michal Marek
2014-06-10 19:56 ` Sam Ravnborg [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140610195602.GA7109@ravnborg.org \
--to=sam@ravnborg.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=mmarek@suse.cz \
--cc=yamada.m@jp.panasonic.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox