Subject: [bug#72071] [PATCH 0/2] Fix hdf5-parallel-openmpi

From: Luca Cirrottola <[email-masked]>
Date: Thu, 25 Jul 2024 12:08:45 +0200 (CEST)

Hello Ludo'!

Yes, after applying the first patch with the package version update, a failure appears in "test_check_version" (I attach the log for future reference). I don't know if this happens now because of an update in the HDF5 package, or because the old version failed before reaching this test.
Anyway, this test compares two versions of a file generated according to the template in src/libhdf5.settings.in, the first one generated in the "configure" phase, the second one in the "check" phase. Since the "patch-settings" phase modifies the first file, the test fails.
Thanks for the explanations for the "patch-settings" phase! I will come back in the next message with a replacement for the second patch which hopefully does not break the expected behaviour.

Thanks,
Luca

----- Mail original -----
> De: "Ludovic Courtès" <[email-masked]>
> À: "Luca Cirrottola" <[email-masked]>
> Cc: [email-masked]
> Envoyé: Vendredi 19 Juillet 2024 18:01:30
> Objet: Re: [bug#72071] [PATCH 0/2] Fix hdf5-parallel-openmpi

> Hello Luca!
> 
> Luca Cirrottola <[email-masked]> skribis:
> 
>> Package hdf5-parallel-openmpi builds often fail with the error reported in
>> https://issues.guix.gnu.org/68313 . The issue has been discussed in
>> https://github.com/open-mpi/ompi/issues/11240 and
>> https://github.com/HDFGroup/hdf5/issues/2196, and solved by
>> https://github.com/HDFGroup/hdf5/pull/3421 that is included in HDF5 release
>> 1.14.3. My proposed solution consists of two commits, the first for updating
>> the HDF5 version in hdf5-parallel-openmpi to 1.14.3, the second for fixing a
>> new test error due to the recipe modifying a file which is used as a test
>> reference (my proposition is to remove this modification, but I don't know why
>> it was introduced in the first place, so thanks for any comment about this).
>>
>> Luca Cirrottola (2):
>>   Solve issue https://issues.guix.gnu.org/68313 by updating HDF5 version
>>     to 1.14.3 (containing the official fix
>>     https://github.com/HDFGroup/hdf5/pull/3421).
> 
> This first patch LGTM.
> 
> Do I get it right that there’s one test failure if we apply just this
> one patch?
> 
>>   Fix broken HDF5 test: Do not modify the file src/libhdf5.settings
>>     generated by the configure script, as it will be checked against a
>>     new version generated by the test code in
>>     test/test_check_version.sh.in.
> 
> Here, the ‘patch-settings’ phase was here (1) to ensure bit-for-bit
> reproducible builds regardless of the kernel (the “Uname” change), and
> (2) to avoid keeping references to the compiler (hdf5 would depend on
> GCC & co., so its closure as reported by ‘guix size hdf5’ would be much
> bigger than necessary).
> 
> I haven’t looked at ‘test_check_version.sh.in’, but can you think of a
> way to preserve the changes ‘patch-settings’ makes while still allowing
> that test to pass?
> 
> Thanks,
> Ludo’.