This makes it much easier to find a particular thing in config.log.
We have to use the ${BASH_LINENO[*]} syntax which is a syntax error in
other shells, so test what shell we are running and use eval.
The extra output is only printed if configure is run with bash. On
systems where /bin/sh is not bash, it is necessary to say bash
./configure to get the extra debug info in the log.
Suggested-by: Eric Blake <[email protected]>
Signed-off-by: Ian Jackson <[email protected]>
CC: Kent R. Spillner <[email protected]>
CC: Janosch Frank <[email protected]>
CC: Thomas Huth <[email protected]>
CC: Peter Maydell <[email protected]>
CC: Paolo Bonzini <[email protected]>
---
v8: Fix so that it actually works as intended with bash.
v6: Fix commit message wording.
v4: No longer tag this patch RFC.
---
configure | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/configure b/configure
index aa35aef..f9ba9ea 100755
--- a/configure
+++ b/configure
@@ -60,6 +60,11 @@ do_compiler() {
# is compiler binary to execute.
local compiler="$1"
shift
+ if test -n "$BASH_VERSION"; then eval '
+ echo >>config.log "
+funcs: ${FUNCNAME[*]}
+lines: ${BASH_LINENO[*]}"
+ '; fi
echo $compiler "$@" >> config.log
$compiler "$@" >> config.log 2>&1 || return $?
# Test passed. If this is an --enable-werror build, rerun
--
2.1.4
_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xenproject.org/mailman/listinfo/xen-devel