Re: Compile error with MSVC - Mailing list pgsql-patches

From Magnus Hagander
Subject Re: Compile error with MSVC
Date
Msg-id 468F4473.3080001@hagander.net
Whole thread Raw
In response to Re: Compile error with MSVC  (Magnus Hagander <magnus@hagander.net>)
Responses Re: Compile error with MSVC  (Alvaro Herrera <alvherre@commandprompt.com>)
List pgsql-patches
Magnus Hagander wrote:
> Alvaro Herrera wrote:
>> Magnus Hagander wrote:
>>> Yoshiyuki Asaba wrote:
>>>> Hi,
>>>>
>>>> From: Magnus Hagander <magnus@hagander.net>
>>>> Subject: Re: [PATCHES] Compile error with MSVC
>>>> Date: Thu, 05 Jul 2007 07:03:11 +0200
>>>>
>>>>>> I tried to compile using Visual C++ 2005. But I got the following
>>>>>> errors.
>>>>>>
>>>>>>   .\src\backend\parser\keywords.c(22) : fatal error C1083: 'parser/parse.h': No such file or directory
>>>>>>
>>>>>> I saw src/tools/msvc/pgbison.bat. Why does it copy
>>>>>> src/backend/parser/parser.h to src/include/parser directory?
>>>>> <snip>
>>>>> While your solution may be correct (I don't recall offhand how, but it
>>>>> doesn't seem off the chart), I don't see how it can help you in this
>>>>> case. Since pgbison would copy the file there, ISTM that pgbison must
>>>>> have filed. Did you not get a warning output from that one earlier in
>>>>> your build?
>>>> If gram.c is older than gram.y, pgbison copy parse.h by custom build
>>>> step. But it is newer, pgbison is skipped.
>>>>
>>>> I see the same problem in PostgreSQL 8.2.4. parse.h does not exist in
>>>> "src/include/parser" directory.
>>> Oh, I see, you're building from the tarball, not from cvs. Now I see the
>>> problem. And yeah, your solution looks like the correct one. I'll take a
>>> look at the details and make sure it gets in there.
>> Maybe what needs fixed is that the Makefile ought to copy the parse.h
>> file to the include dir.  Using src/backend/parser as an include dir
>> strikes me as a bad idea.
>
> Well, the MSVC build is just emulating Unix regardless of if it's good
> or bad :-)
>
> Anyway. I'm not sure it matters enough to change it on Unix... It's not
> like it hasn't worked well for many years ;-)

I've applied this. I didn't include your changes to clean.bat, because
clean really should clean up everything ;-) This should fix building for
people working off dev snapshot tarballs.

(If we want to change where parse.h is supposed to live, we'll take that
as a separate step)

Thanks!

//Magnus

pgsql-patches by date:

Previous
From: Joe Conway
Date:
Subject: Re: dblink connection security
Next
From: Zdenek Kotala
Date:
Subject: Re: script binaries renaming