| Bill Allombert on Fri, 01 Jul 2005 22:40:11 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: pari compilation problems after cygwin updates |
On Fri, Jul 01, 2005 at 02:44:39PM -0400, David Mosher wrote:
> Fri 2005-07-01 00:59:00 +0200, Bill Allombert wrote:
>
> >It is traditional on UNIX to handle //include as an alias for /include.
>
> Here is the final paragraph of §4.11 "Pathname Resolution" of the "Single
> UNIX Specification, Version 3" (ISO/IEC 9945:2003 [ISO POSIX (2003)]; IEEE
> Std 1003.1, 2004 Edition; The Open Group Base Specifications, Issue 6),
> <http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11>:
>
> A pathname consisting of a single slash shall resolve to the root
> directory of the process. A null pathname shall not be successfully
> resolved. A pathname that begins with two successive slashes may be
> interpreted in an implementation-defined manner, although more than two
> leading slashes shall be treated as a single slash.
> My vague recollection is that there's nothing new here, and that an
Oh, sure // is iirc a plan 9 legacy. This is the origin of the double / in
http://host/page and of SMB \\host\share notation. emacs also support it
for transparent ftp.
> initial double-slash has been a "special case" in POSIX for quite some time.
Sure, but allowed by POSIX does not make it 'traditional'. The problem
is that configure-like scripts and Makefile in general tend to generate
path with embedded //, due to the use of standard contructs like
${prefix}/include. They are all buggy as soon as //include is not an
alias for /include, the users being within their right to set prefix to
'/'. Fixing that is painful.
Cheers,
Bill.