[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 16/16] configure: do_compiler: Dump some extra info under bash
Anthony PERARD writes ("Re: [PATCH 16/16] configure: do_compiler: Dump some extra info under bash"): > On Thu, Apr 19, 2018 at 05:45:19PM +0100, Ian Jackson wrote: > > +funcs: ${FUNCNAME} > > +lines: ${BASH_LINENO} > > +files: ${BASH_SOURCE}" > > echo $compiler "$@" >> config.log > > $compiler "$@" >> config.log 2>&1 || return $? > > # Test passed. If this is an --enable-werror build, rerun > > How is this usefull? All I have in my config.log is a lot of: > funcs: do_compiler > lines: 91 > files: ./configure > > And one: > funcs: do_compiler > lines: 95 > files: ./configure > > It still don't tell me which test had runned. You are right. Perhaps my testing was inadequate. I wrote this a long while ago, and if there was a syntax along these lines that DTRT in both bash and dash in my tests it is long gone. Starting de novo, the following code works for me: (echo >>config.log " funcs: ${FUNCNAME[*]} lines: ${BASH_LINENO[*]} files: ${BASH_SOURCE[*]}") 2>/dev/null ||: With bash I get the expected information in config.log, which looks like this: funcs: do_compiler do_cc compile_prog cc_has_warning_flag main lines: 91 124 1720 1724 0 files: ./configure ./configure ./configure ./configure ./configure With dash the script runs but there is nothing from this segment in the log. Without the 2>/dev/null, it prints ./configure: 63: ./configure: Bad substitution so the syntax error is indeed being suprresed and ignored. The ( ) is necessary because syntax errors are not like set -e errors: they cause the shell process to exit. I will update the patch and put some of this info in the commit message. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |