Subject: Re: bug#19222: Some test failures with LibTool-2.4.4 on non GNU/Linux systems

From: "Gary V. Vaughan" <[email-masked]>
Date: Fri, 5 Dec 2014 11:35:01 +0000

Hi Assaf,

Thanks for the feedback.

On Dec 4, 2014, at 9:33 PM, Assaf Gordon <[email-masked]> wrote:
> On 12/03/2014 05:05 PM, Gary V. Vaughan wrote:
>>> On Nov 30, 2014, at 1:56 AM, Assaf Gordon <[email-masked]> wrote:
> 
> <...>
> 
>> I can see immediately that most of the failures on your OpenBSD system are caused
>> by not having a GNU M4 installed on the path for libtoolize.  I should have been a
>> lot more vocal about that change rather than hiding it in the 2.4.3 release notes,
>> as it has tripped a lot of people up.  The latest master revision now checks for a
>> suitable M4 at configure time, and complains if there is nothing suitable on your
>> command search PATH, which I think will help.
>> 
>> May I ask if you would kindly rerun then test suite on that machine and reply with a
>> link to the updated logs, after having installed GNU M4 first of course :)
> 
> On OpenBSD 5.6, with GNU M4 installed as "/usr/local/bin/gm4",
> 
> -1-
> Building the latest git ( 2.4.4.8-9f52 ) from a tarball (that is, "git clone && bootstrap && configure && make dist" on a GNU/Linux box, then "configure && make && make check" on the OpenBSD VM), two tests fail:
> ===
>  33: demo.at:548        hardcoding library path
>      libtoolize automake autoconf
> 101: old-ltdl-iface.at:35 Makefile.inc
>      libtoolize automake autoconf
> ===
> 
> log here:
> http://files.housegordon.org/libtool/openbsd56-libtool-2.4.4.8-9f52.tar.gz

According to the comment at the top of old-ltdl-iface.at, I'm supposed to have
removed that test already, so you can safely ignore that failure :->

It's not at all obvious from the logs why the test cases are not working here :(
But...

> -2-
> When bootstrapping on the OpenBSD VM (i.e. "git clone && bootstrap etc") there are more errors, indicating perhaps some bad code generation?
> 
> ===
> $ make check
> ...
> 32: force non-PIC objects                          /tmp/libtool/tests/testsuite: /tmp/libtool/tests/testsuite.dir/at-groups/32/test-source[70]: syntax error: `}' unexpected
> testsuite: WARNING: unable to parse test group: 32
> testsuite: WARNING: A failure happened in a test group before any test could be
> testsuite: WARNING: run. This means that test suite is improperly designed.  Please
> testsuite: WARNING: report this failure to <[email-masked]>.
> ...
> ====
> 
> Logs are here:
> http://files.housegordon.org/libtool/openbsd56-libtool-git.make-check.log
> http://files.housegordon.org/libtool/openbsd56-libtool-git-9f52.tar.gz

This looks like the bootstrap process and/or Autotest is making assumptions about
the shell utilities that are not true with the OpenBSD implementations.

You might be able to figure out where that is by diffing the generated testsuite
files between a Linux bootstrap and an OpenBSD bootstrapped version.

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)