libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Testsuite failures on Cygwin with ECHO=printf (was: Re: Speeding up libt


From: Robert Ögren
Subject: Testsuite failures on Cygwin with ECHO=printf (was: Re: Speeding up libtool)
Date: Sun, 27 Mar 2005 01:39:57 +0100
User-agent: Mozilla Thunderbird 1.0 (Windows/20041206)

Ralf Wildenhues wrote:
[...]
Yes.  We recently identified that an audit of libtool.m4 for wrong use
of $ECHO is necessary.

[details left out]

Another question: How did you find those bugs?  I.e., were they exposed
by the Libtool testsuite?  If not, how can we trigger them?

The testsuite triggers the EXPORTn bug and some other bugs if $ECHO is set to 'printf %s\n' on Cygwin. When running the testsuite normally, "All 106 tests passed". (The new testsuite thingy fails 2 of 5 tests, but I'll report that in a separate mail). When running the testsuite like this:

make check VERBOSE=yes lt_ECHO='printf %s\n'

The result is
9 of 95 tests failed
(11 tests were not run)

I've uploaded the verbose log to http://www.roboros.com/tmp/libtool-echo-errs.txt

Some highlights:

PASS: mdemo-static.test
PASS: mdemo-make.test
SKIP: mdemo-exec.test
SKIP: mdemo-inst.test
SKIP: mdemo-unst.test

This is interesting. Linking actually fails in mdemo-make due to syntax error in the def file, but the test still passes because libtool returns success. As far as I can see this is because the code tests $? after func_show_eval "$link_command", but func_show_eval evals ':' last if an error occurs and only one argument is supplied. A change that appears to fix this is to replace
  my_fail_exp="${2-:}"
by
  my_fail_exp="${2-false}"
in func_show_eval.

PASS: demo-conf.test
PASS: demo-make.test
PASS: demo-exec.test
PASS: demo-inst.test
FAIL: demo-unst.test

Uninstall fails:
libtool: uninstall: dldll=`/bin/bash 2>&1 -c '. /Robert/libtool-HEAD/src/libtool
/tests/_inst/lib/libhello.la; printf %s\n ../bin/cyghello-2.dll'`
libtool: uninstall: dlpath=/Robert/libtool-HEAD/src/libtool/tests/_inst/lib/../
bin/cyghello-2.dlln
libtool: uninstall: rm -f /Robert/libtool-HEAD/src/libtool/tests/_inst/lib/../b
in/cyghello-2.dlln

(ECHO in postinstall_cmds and postuninstall_cmds)

PASS: mdemo-conf.test
FAIL: mdemo-make.test
SKIP: mdemo-exec.test
SKIP: mdemo-inst.test
SKIP: mdemo-unst.test
FAIL: mdemo-dryrun.test

Syntax error in def files (EXPORTn)


PASS: mdemo-shared.test
FAIL: mdemo-make.test
SKIP: mdemo-exec.test
SKIP: mdemo-inst.test
SKIP: mdemo-unst.test

Same as previous

Robert




reply via email to

[Prev in Thread] Current Thread [Next in Thread]