This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
Re: Add realpath Prototype
- From: Sebastian Huber <sebastian dot huber at embedded-brains dot de>
- To: newlib at sourceware dot org
- Date: Wed, 20 Nov 2013 15:42:15 +0100
- Subject: Re: Add realpath Prototype
- Authentication-results: sourceware.org; auth=none
- References: <528A5B4B dot 2020606 at oarcorp dot com> <528A5D6C dot 2070307 at users dot sourceforge dot net> <528A6B45 dot 70208 at oarcorp dot com> <20131119114241 dot GA18847 at calimero dot vinschen dot de> <20131120094650 dot GA19426 at calimero dot vinschen dot de> <528CBB47 dot 5030506 at oarcorp dot com> <20131120142618 dot GP2936 at calimero dot vinschen dot de> <528CC8BD dot 9040803 at oarcorp dot com>
On 2013-11-20 15:35, Joel Sherrill wrote:
On 11/20/2013 8:26 AM, Corinna Vinschen wrote:
On Nov 20 07:38, Joel Sherrill wrote:
On 11/20/2013 3:46 AM, Corinna Vinschen wrote:
On Nov 19 12:42, Corinna Vinschen wrote:
On Nov 18 13:32, Joel Sherrill wrote:
On 11/18/2013 12:33 PM, Yaakov (Cygwin/X) wrote:
On 2013-11-18 12:24, Joel Sherrill wrote:
I added the realpath() prototype more or less where
glibc has it in stdlib.h.
Also added restrict to Linux implementation.
Does this look ok to commit?
Your patch includes a duplicate declaration of qsort().
Fixed. Stupid cut and paste.
Also, Cygwin provides its own prototype of realpath in
its own headers, so either that needs to be removed, or
this prototype placed in a !__CYGWIN__ block; I'll let
Corinna decide which she prefers.
Since this wasn't in newlib, I didn't know about it. I have
been trusting grep. :)
Whatever Corinna wants to do, I am ok with.
Just apply your patch. I'll remove the Cygwin definition
afterwards.
FYI, I moved the readline declaration into the following
`#ifndef __STRICT_ANSI__' block, analogue to the old
Cygwin-only declaration.
. Thanks. The guards are tricky. glibc has
#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED
http://pubs.opengroup.org/onlinepubs/9699919799/functions/realpath.html
marks it as XSI with no explicit macros that I am spotting.
Is that close enough?
I don't understand the question. BSD and XOPEN don't correspond
to strict ANSI.
I was just pointing out that glibc has BSD and XOPEN as guards.
Is that equivalent?
In FreeBSD we have this (<stdlib.h>):
/*
* Extensions made by POSIX relative to C. We don't know yet which edition
* of POSIX made these extensions, so assume they've always been there until
* research can be done.
*/
#if __POSIX_VISIBLE /* >= ??? */
int posix_memalign(void **, size_t, size_t); /* (ADV) */
int rand_r(unsigned *); /* (TSF) */
char *realpath(const char * __restrict, char * __restrict);
int setenv(const char *, const char *, int);
int unsetenv(const char *);
#endif
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschÃftliche Mitteilung im Sinne des EHUG.