|
Message-ID: <20200216160620.GU1663@brightrain.aerifal.cx> Date: Sun, 16 Feb 2020 11:06:20 -0500 From: Rich Felker <dalias@...c.org> To: musl@...ts.openwall.com Subject: Re: getauxval availability On Sun, Feb 16, 2020 at 08:43:54AM -0500, Jeffrey Walton wrote: > Hi Everyone, > > We use getauxval on Linux when available to determine cpu caps. For > Glibc the code looks like (http://lwn.net/Articles/519085/): > > #if (((__GLIBC__ * 100) + __GLIBC_MINOR__) >= 216) > # define GETAUXV_AVAILABLE 1 > #endif > > I need a similar test for musl. It looks like the function was added > at https://git.musl-libc.org/cgit/musl/commit/?id=21ada94c4b8c. I > don't see how to map a commit to a release for the web front-end musl > uses. > > The release page indicates it should be available with musl-1.0.1, > which was released April 16 2014 > (https://www.musl-libc.org/releases/). But I am not sure about the > musl release process, and what is included in a release tarball. > > What is the first release of musl that contains 21ada94c4b8c ? The right way to do this is probing for the existence via a configure check or equivalent, not hard-coding specific library versions believed to have the interface. On both glibc and musl (and other software ppl try to do hardcode-the-version hacks with, like Linu kernel), distros and individual users backport important things so that there is no reliable answer. I realize this is something of a pain for programmers who don't make use of any configure-like system at build time, and there is a long term plan to have a cross-libc system for macros announcing the availability of nonstandard functionality so that you can just do #ifdef at the source level rather than needing to do something at configure time, analogous to how the POSIX macros in unistd.h work. 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.