From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/10937 Path: news.gmane.org!.POSTED!not-for-mail From: "A. Wilcox" Newsgroups: gmane.linux.lib.musl.general Subject: Re: SUSv2 c89 compilation environment symbols missing Date: Tue, 17 Jan 2017 21:26:38 -0600 Organization: =?UTF-8?Q?Ad=c3=a9lie_Linux?= Message-ID: <587EE06E.1040905@adelielinux.org> References: <20161230224238.GT1555@brightrain.aerifal.cx> <97280ba1-9a3c-0f19-90db-5b313980621a@gmail.com> <20161230225404.GU1555@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1484710022 17747 195.159.176.226 (18 Jan 2017 03:27:02 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 18 Jan 2017 03:27:02 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 To: musl@lists.openwall.com Original-X-From: musl-return-10950-gllmg-musl=m.gmane.org@lists.openwall.com Wed Jan 18 04:26:57 2017 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.84_2) (envelope-from ) id 1cTgtf-0003ju-11 for gllmg-musl@m.gmane.org; Wed, 18 Jan 2017 04:26:51 +0100 Original-Received: (qmail 11665 invoked by uid 550); 18 Jan 2017 03:26:53 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 11645 invoked from network); 18 Jan 2017 03:26:53 -0000 X-Enigmail-Draft-Status: N1110 In-Reply-To: Xref: news.gmane.org gmane.linux.lib.musl.general:10937 Archived-At: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 17/01/17 17:36, Laine Gholson wrote: > then remove the macros, half-supporting something is worse than > not supporting it at all I am highly interested in what you are using that needs SUSv2 confstr macros. That isn't snark, either; I didn't know anything that would build against musl (or even a compiler that can link against musl) would specifically require C89 confstr macros and not be easily portable to at least the C99 ones. >>>> On Fri, Dec 30, 2016 at 04:30:13PM -0600, Laine Gholson >>>> wrote: >>>>> musl defines, e.g _SC_XBS5_ILP32_OFF32, but not >>>>> _CS_XBS5_ILP32_OFF32_CFLAGS see >>>>> http://pubs.opengroup.org/onlinepubs/7908799/xcu/getconf.html The >>>>> argument you are making is for confstr, not getconf, so that we are clear. getconf is a shell utility, and confstr is a C function: http://pubs.opengroup.org/onlinepubs/7908799/xsh/confstr.html Note that those macros were marked as LEGACY and only available under XSI option for the 2004 edition (Issue 6) of the POSIX standard. The 2008/2016 edition (Issue 7) of the POSIX standard removes them. Considering musl's first public code drop was 2011-02-12, I highly doubt that it targets Issue 6 as Issue 7 had already existed for three years. (Rich can correct me here if I'm wrong.) As I see it, you have two options here: - - Port the software you want to build to the new macros defined in a newer edition (ideally Issue 7) of the POSIX standard. Using preprocessor conditionals, you should even be able to retain backwards compatibility with the SUSv2 macros if you need that for any reason. - - Use a library that specifically implements SUSv2. The Open Group maintains a register of compliant implementations[1], and it looks like Solaris 9 will meet your needs on SPARC and x86 while AIX 5.1 and 5.2 will on PowerPC. [1]: http://www.opengroup.org/csq/search/t=XU2.html - -- A. Wilcox (awilfox) Project Lead, Adélie Linux http://adelielinux.org