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.