tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Fixing configure failures from newer gcc



At Sun, 19 Oct 2025 13:17:47 +0000, Paolo Vincenzo Olivo <vins%NetBSD.org@localhost> wrote:
Subject: Re: Fixing configure failures from newer gcc
>
> As a side note, recently I decided to pass `-Wno-deprecated-declaration'
> to a couple of packages I maintain. I'm referring to software written
> for OpenBSD/LibreSSL, and using OpenSSL 3.x + a LibreTLS shim on pkgsrc.
> OpenSSL 3 deprecated several functions which are still in use in
> LibreSSL [0], so it seems reasonable to silence deprecation warnings,
> as they arise from inherent incompatibilities between the two APIs.
> I wonder if silencing is to be considered acceptable in such edge cases.

That's just suppressing a warning, right?  Not a build failure?

If so then I don't think it's acceptable to suppress such warnings -- it
is extra burden on pkgsrc in so many ways and buys pkgsrc nothing
whatsoever.  Only people who build packages from source will ever see
such warnings, and most don't care and can't do anything about them
anyway except grumble quietly in private and take more care to be sure
the resulting binaries work as expected.

So, I don't believe it is _ever_ worthwhile for pkgsrc to suppress
compiler warnings.

Maybe it is worth reporting them upstream, but that's a separate effort
and the person who thinks of doing it can weigh the pros and cons for
themselves.  If the pkgsrc maintainer and the package maintainer are one
in the same, well then fix it properly upstream, not in pkgsrc!

I also don't believe it is ever correct for pkgsrc to suppress build
failures due to language level and/or compiler disparities, i.e. it is
NEVER a good idea to use "-Wno-error=*".  The only correct thing to do
is to force the compiler to back off with "-std=".

This is critical because the warnings are not the only possible fallout
from failing to match the compiler's settings to the code.  Newer
compilers which support newer language levels also often introduce new
undefined behaviour conditions.  Even after telling the compiler to back
off this is a big flashing warning light that the pkgsrc maintainer
should very carefully test the package binary to be sure it still works
as well as before.  If it doesn't work properly then pkgsrc can
hopefully be told to force an older version of the compiler to be used.

--
					Greg A. Woods <gwoods%acm.org@localhost>

Kelowna, BC     +1 250 762-7675           RoboHack <woods%robohack.ca@localhost>
Planix, Inc. <woods%planix.com@localhost>     Avoncote Farms <woods%avoncote.ca@localhost>

Attachment: pgpWojSTEonfV.pgp
Description: OpenPGP Digital Signature



Home | Main Index | Thread Index | Old Index