From 3985cef24de2da3b6895e67f4d577d4806c032b0 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Tue, 21 Apr 2015 17:30:47 +0800 Subject: [PATCH] bash: explicitly define NON_INTERACTIVE_LOGIN_SHELLS in CFLAGS If NON_INTERACTIVE_LOGIN_SHELLS is defined, all login shells read the startup files, even if they are not interactive. This is the behaviour of other major distros like Ubuntu and Fedora. We also need to set it so that when executing `su -l xxx -c env' command, /etc/profile is parsed. [YOCTO #5359] [YOCTO #7137] (From OE-Core rev: 33af68d62bb427c588f5eeecb75fbc31b55f8459) Signed-off-by: Chen Qi Signed-off-by: Richard Purdie --- meta/recipes-extended/bash/bash.inc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc index d7b28cfffe..c06f157b8a 100644 --- a/meta/recipes-extended/bash/bash.inc +++ b/meta/recipes-extended/bash/bash.inc @@ -9,6 +9,11 @@ inherit autotools gettext texinfo update-alternatives ptest EXTRA_AUTORECONF += "--exclude=autoheader" EXTRA_OECONF = "--enable-job-control" +# If NON_INTERACTIVE_LOGIN_SHELLS is defined, all login shells read the +# startup files, even if they are not interactive. +# This is what other major distros do. And this is what we wanted. See bug#5359 and bug#7137. +CFLAGS += "-DNON_INTERACTIVE_LOGIN_SHELLS" + ALTERNATIVE_${PN} = "sh" ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" ALTERNATIVE_TARGET[sh] = "${base_bindir}/bash"