Subject: [bug#59993] [PATCH v2 3/3] tests: Fix implicit function declaration in ax/depcomp.sh

From: Frederic Berat <[email-masked]>
Date: Mon, 16 Jan 2023 10:15:09 +0100

I'm still investigating this failure.

So far I could find 2 similar scenarios, both based on 1.16.5 with the
patch, but one that fails, and the other that succeeds, seemingly
consistently.
Case 1: using the 1.16.5 tarball + the patch applied, automake is built and
tested within fedora environment (with specific env variables and flags
...), the test seems to pass consistently.
Case 2: using the 1.16.5 tarball + the patch applied, I distclean,
bootstrap, reconfigure (using same configure command as case 1) and build
manually, the test seems to fail consistently.
Both builds are run within the same chroot.

In the failure case, foo.o doesn't get rebuilt when the header is restored
to its original state, whereas the header is listed in the foo.Tpo file.
Since foo.o isn't rebuilt, the foo.Tpo file isn't moved to foo.Po, which
leads to the test failure.

I'm trying to figure out why in one case foo.o is consistently rebuilt,
while not in the other.

On Fri, Jan 13, 2023 at 10:57 AM Frederic Berat <[email-masked]> wrote:

> Ok, I'll try to figure out why this test passes on 1.16.5 but not on HEAD
> with the same patch.
>
> On Fri, Jan 13, 2023 at 9:47 AM Mike Frysinger <[email-masked]> wrote:
>
>> On 13 Jan 2023 09:14, Frederic Berat wrote:
>> > I made one more build with a different patchset list, could it be that
>> the
>> > failure you encounter is with "t/subobj.sh" ?
>>
>> to be clear, i applied this patch only to current git master.  i didn't
>> try
>> including anything else.  with that in mind, the failure is not in that,
>> but
>> in t/depcomp-auto.tap.
>> FAIL: t/depcomp-auto
>> FAIL: t/depcomp-auto.tap 14 - [simple VPATH] make distclean
>> FAIL: t/depcomp-auto.tap 21 - [long VPATH] make distclean
>> FAIL: t/depcomp-auto.tap 28 - [absolute VPATH] make distclean
>>
>> ERROR: files left in build directory after distclean:
>> ./.deps/foo.Tpo
>> make: *** [Makefile:750: distcleancheck] Error 1
>> -mike
>>
>