[Top][All Lists]

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

Re: [bug #61315] Several groff source files don't include <config.h> fir

From: Paul Eggert
Subject: Re: [bug #61315] Several groff source files don't include <config.h> first
Date: Sat, 9 Oct 2021 14:36:30 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

On 10/9/21 1:33 PM, Ingo Schwarze wrote:
if a function exists, replacing it with something else is an outrage.

It's an outrage only if one already subscribes to the theory that it's an outrage.

If GNU apps were not allowed to replace broken system functions, every GNU app would have do its own porting, and this would be significantly more work overall. For example, each individual GNU app would have to work around each individual snprintf portability problem itself, either by avoiding snprintf, or by avoiding snprintf features like "%zt" or "%$2s" or printing infinity or all the other snprintf things that go wrong on various platforms. And sprintf is just one library function; there are hundreds of others to deal with. Such an approach would be a significantly worse porting hassle than Gnulib already is.

There are other ways to port besides Gnulib. There's the way that OpenSSH does it, for example: it has a core project written for OpenBSD only, and a separate project that maintains OpenSSH ports. Unfortunately, this entails about 127,000 lines of differences in a 121,000-line project (I used 'diff -rNwU0 ssh openssh-8.8p1 | wc' to measure). Although such an approach evidently works well enough for OpenSSH, it doesn't scale well to larger systems like GNU.

When you maintain a significant amount of ported software (say, a few
thousand different packages), then the only sustainable way to cope with
the gnulib stuff is to globally switch most of it off:

That's not what most organizations do, organizations that deal with many more packages that OpenBSD does. These other organizations are sustaining themselves quite well. So I don't agree with the assertion that the OpenBSD way is the only sustainable way.

Despite all the problems you encountered with Gnulib, I don't recall seeing bug reports from you on bug-gnulib@gnu.org. That's unfortunate, as unreported bugs are less likely to be fixed. At some point if you have the time you might try reporting a bug or two to bug-gnulib@gnu.org, and see whether the problems get fixed. Doing so might suggest a better way for OpenBSD and GNU to cooperate.

PS. Werner, I hope I haven't bored you with this long email. I preferred writing it to all the stuff I really should be doing....

reply via email to

[Prev in Thread] Current Thread [Next in Thread]