Page MenuHomeSolus

hdf5: switch build to autotools
ClosedPublic

Authored by aleksvor on Feb 16 2021, 10:07 AM.

Details

Summary

Switch hdf5 build to autotools. CMake build generates broken CMake configuration files which then break builds of all revdeps which use CMake (namely netcdf, cgns, ParaView and VTK >= 9.0).
Autotools don't build libhdf5_tools library, but at this time nothing in the repo uses it.

Test Plan

Built revdeps:

  • netcdf-c
  • cgns
  • paraview
  • gdal
  • octave

Diff Detail

Repository
R1396 hdf5
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

aleksvor created this revision.Feb 16 2021, 10:07 AM
aleksvor requested review of this revision.Feb 16 2021, 10:07 AM
aleksvor added a child revision: D10551: Initial commit of cgns.

Were the other revdeps built for validation, like octave and gdal?

Were the other revdeps built for validation, like octave and gdal?

Yes, I have tested rebuilds of these against hdf5 and can confirm that they are fine. I'll update the test plan.

aleksvor edited the test plan for this revision. (Show Details)Feb 18 2021, 8:33 AM
YakoYakoYokuYoku added inline comments.
package.yml
12–22

I'd suggest to run CMake once so we can have the *.pc files, i.e.:

%cmake_ninja -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_INSTALL_LIB_DIR=%libdir%

The *.pcs reside in solusBuildDir/CMakeFiles/*.pc, then these should be installed and lastly all of them needs to be copied/symlinked to a non versioned *.pc file so that we don't have broken pkg-config dependencies.

aleksvor updated this revision to Diff 25849.Mar 22 2021, 5:35 PM

Generate pkgconfigs and add non-versioned symlinks for them.

package.yml
31

file reports me broken links:

/usr/lib64/pkgconfig/hdf5.pc: broken symbolic link to /home/build/YPKG/root/hdf5/install//usr/lib64/pkgconfig//hdf5-1.10.4.pc

I'd suggest to remove $PKGCONFIGDIR/ and leave only hdf5-$version.pc, meaning that this will symlink to hdf5-$version.pc if it's in the same dir, this also applies to the rest.

aleksvor updated this revision to Diff 25863.Mar 23 2021, 6:42 AM

Fix my thinko - correct the targets of symlinks.

aleksvor updated this revision to Diff 26010.Apr 3 2021, 6:30 PM

Copy versioned pkgconfigs instead of symlinking them.

DataDrake accepted this revision.Fri, Apr 23, 11:55 AM
DataDrake added a subscriber: DataDrake.

LGTM. Thanks!

This revision is now accepted and ready to land.Fri, Apr 23, 11:55 AM
This revision was automatically updated to reflect the committed changes.