At present, CONFIG_SHELL becomes /bin/sh if its bash and /bin/bash if not. This
isn't deterministic and leads to changes in ptest packages which include 
Makefiles.

At first glance you'd think we'd hardcode to /bin/sh since most system shells 
are sane.

Sadly the dash vs. bash leads to quoting differences in configure.

The bash default is probably the safest option since configure tries to find 
bash
and this is what most systems would end up using.

The end result is a more consisent build environment.

Signed-off-by: Richard Purdie <[email protected]>
---
 meta/classes/autotools.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass
index 3d22ad02557..6c2a33ac72f 100644
--- a/meta/classes/autotools.bbclass
+++ b/meta/classes/autotools.bbclass
@@ -90,7 +90,7 @@ oe_runconf () {
        cfgscript=`python3 -c "import os; 
print(os.path.relpath(os.path.dirname('${CONFIGURE_SCRIPT}'), 
'.'))"`/$cfgscript_name
        if [ -x "$cfgscript" ] ; then
                bbnote "Running $cfgscript ${CONFIGUREOPTS} ${EXTRA_OECONF} $@"
-               if ! ${CACHED_CONFIGUREVARS} $cfgscript ${CONFIGUREOPTS} 
${EXTRA_OECONF} "$@"; then
+               if ! ${CACHED_CONFIGUREVARS} CONFIG_SHELL=/bin/bash $cfgscript 
${CONFIGUREOPTS} ${EXTRA_OECONF} "$@"; then
                        bbnote "The following config.log files may provide 
further information."
                        bbnote `find ${B} -ignore_readdir_race -type f -name 
config.log`
                        bbfatal_log "configure failed"
-- 
2.20.1

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to