On 07/09/2024 00:12, Even Rouault via Tiff wrote:
Le 07/09/2024 à 01:05, Bob Friesenhahn a écrit :
I do have the autoconf-archive M4 macros installed.  The change for AX_CHECK_GL was put into a merge request for the release, and that seems risky to me. It should be merged into head separately in advance, with perhaps a day for others to verify that they can reproduce the build.

Dependence on autoconf-archive M4 macros is risky because not all systems will have the same version.  It is worth encouraging testing to make sure that it works with the autoconf-archive provided by various major OS versions.

The only way to assure that the macros are the desired latest release version is to retrieve them from gnu.org (which was down for a day or two in this past week).

hum, ok if that's thought to be controversial / risky, I'm leaning to reverting this merge request and let other people deal with the issues it tried to solve. I don't care about autoconf builds when I've the chance to be able to use CMake instead (if that was just me, I would get rid of autoconf support from libtiff to only keep the CMake one, and just maintain one single build system, but that's a battle for another time), and I don't want to be bothered with autoconf related issues and having to do several RCs due to that.

I would prefer it if we could drop the autotools at this point and simply use CMake.

There is a significant maintenance burden to maintaining two systems in parallel, and we pay for that in both maintainer time and in the CI, and in the lost opportunity to make changes.  We have to ensure that both systems behave identically, and this is both harder than maintaining either system in isolation and it means that CMake has had to be completely behaviour compatible with the historical autotools behaviour even when it was suboptimal.

There are quite a few things I'd like to do to improve libTIFF, for example much better and more comprehensive testing, which I've put off pretty much because writing all of the build tools test logic twice over would be prohibitive.  Everything we want to do that touches the build needs doing twice over, including all of the testing to ensure both are identical.  It's too much, and it is preventing us doing new work that would be of value.

I was an Autoconf user and occasional contributor for many years, but I'm afraid the world moved on, and it's thoroughly obsolete and barely maintained.  It's past time to let it go.  It went for 8 years without a release, and there were three releases the past few years but it's stagnated to the point no real changes can be made because of the architectural decisions made decades prior. See https://ftp.gnu.org/gnu/autoconf/ for the release dates, and have a look at the mailing list.  Compare that with the sustained and ongoing activity around CMake [https://github.com/Kitware/CMake/tags] where there are point releases for multiple stable branches coming out at least monthly.  It's actively maintained and solves the portability problems we have on *all* contemporary platforms, including Windows, Android and the rest.  It's comprehensive and supports absolutely everything.  I would really prefer for us to put our effort into the build system which has the most value, and that system cannot be Autoconf because of its inherent restriction to shell/make.  Switching to CMake will not disadvantage any of our users, since it works perfectly well on all of the platforms Autoconf supports, and it can generate Makefiles perfectly well.


Kind regards,

Roger
_______________________________________________
Tiff mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/tiff

Reply via email to