Re: NT FAQ needs updating - Mailing list pgsql-ports

From Pete Forman
Subject Re: NT FAQ needs updating
Date
Msg-id 14799.24561.755612.82999@kryten.bedford.waii.com
Whole thread Raw
In response to Re: NT FAQ needs updating  (Pete Forman <gsez020@kryten.bedford.waii.com>)
List pgsql-ports
Peter Eisentraut writes:
 > Pete Forman writes:
 > > Configure seems to have taken care of things.  Cygwin B20 and 1.1
 > > have bison 1.25 and configure determines that it will be called
 > > with -L.  Redhat 6.2 has bison 1.28 which no longer accepts -L
 > > but configure copes with this.  AIX, IRIX and Solaris all just
 > > have yacc and this is correctly detected as not taking -L.
 >
 > The problem is that configure doesn't *really* take care of
 > things. :-( If you look into src/template/cygwin32 you'll see
 > YFLAGS = -L...  Unfortunately, there were some reports that this
 > doesn't work for some people, particularly because the path
 > /sw/cygwin-b20/share/ wasn't accurate.
 >
 > Bison as shipped from GNU doesn't have an -L option at all, never
 > had, so that the Cygwin folks have apparently added it.  If you
 > don't mind me being a pain, maybe you could go into the directory
 > src/backend/parser and do
 >
 > bison -y -d gram.y
 >
 > without an -L option.  If it needs one, then I'd love to know a way
 > to determine the path automatically.

These fail:

   B20, plain:

       bison -y -d gram.y

   B20, what configure came up with:

       bison -y -d -L /sw/cygwin-b20/share/ gram.y

These pass:

   B20, using my installation path:

       bison -y -d -L /Program\ Files/cygnus/cygwin-b20/share/ gram.y

   1.1.4, no -L needed:

       bison -y -d gram.y

As far as I can tell Cygwin 1.1 has changed its root filesystem.  In
B20 "/" maps to "C:\".  It seems that 1.1 maps "/" to "D:\cygwin\" in
my case, i.e. relative to where it is installed.  Using the strings
program to look in the bison executables for "share", the default
location of bison.simple, etc., shows that B20 has
"/cygnus/cygwin-b20/share/" canned in while 1.1 has "/usr/share/".
That means that 1.1 does not need an -L.

On B20:

    $ mount
    Device           Directory           Type        Flags
    C:               /                   native      text!=binary

On 1.1:

    $ mount
    Device              Directory           Type         Flags
    D:\cygwin\bin       /usr/bin            user         binmode
    D:\cygwin\lib       /usr/lib            user         binmode
    D:\cygwin           /                   user         binmode

In both cases I installed Cygwin following the default options, apart
from location to install to.  They may both be tweakable to set mount
maps.
--
Pete Forman                 -./\.- Disclaimer: This post is originated
Western Geophysical           -./\.-  by myself and does not represent
pete.forman@westgeo.com         -./\.-  the opinion of Baker Hughes or
http://www.crosswinds.net/~petef  -./\.-  its divisions.

pgsql-ports by date:

Previous
From: Pete Forman
Date:
Subject: Re: NT FAQ needs updating
Next
From: Pete Forman
Date:
Subject: Re: NT FAQ needs updating