Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200923160824.GJ3265@brightrain.aerifal.cx>
Date: Wed, 23 Sep 2020 12:08:24 -0400
From: Rich Felker <dalias@...c.org>
To: James Y Knight <jyknight@...gle.com>
Cc: musl@...ts.openwall.com
Subject: Re: Re: OS detection wrong on Alpine Linux 3.10

On Wed, Sep 23, 2020 at 09:13:16AM -0400, James Y Knight wrote:
> >
> > >All I need to know is what version of Musl I am dealing with and I can
> > >configure myself.
> >
> >   Are you willing to maintain an #ifdef forest for all the versions of
> > all the libcs and all the kernels your programs may be used with, so
> > you can list exhaustively the available features in every configuration?
> >
> 
> At the risk of jumping in on a question asked of someone else: yes,
> absolutely! (Not _all_ available features of course, just the ones
> required.)
> 
> There are generally not that many nonstandard features you'd want to use in
> a typical program, and using an ifdef forest to implement an abstraction
> layer around those couple items is just fine.

I can't know whether you're "willing", but you're definitely not
willing and able. "All the..." includes people's personal projects
(from scratch or patches to existing ones) that you will never see,
future systems that come into existence long past your involvement in
the project or even your lifetime, etc. There is simply fundamentally
no way to maintain and guarantee compatibility with an unbounded,
as-yet-unknown set of standards-conforming systems short of either (1)
only using the standard-specified properties, or (2) testing for any
non-standard-specified properties you want to use.

As for "willing", most people who say they're willing to do this are
actually only willing to do it for the 3-5 most popular systems at the
time they work on the project; they never even hear about problems
they created on all the other minority systems since the few affected
users tend to assume (accurately, most often) that an upstream that
thinks it's ok to hard-code #ifdef-trees won't care about supporting
them.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.