Thread: Problematic dependency in plpython Makefile [Windows]

Problematic dependency in plpython Makefile [Windows]

From
Noah Misch
Date:
On Windows, src/pl/plpython/Makefile has a rule whose target line expands to
something like "python33.def: C:/Windows/system32/python33.dll".  When doing a
MinGW build with Cygwin's make-3.81, that line elicits an error:

Makefile:69: *** target pattern contains no `%'.  Stop.

Seeing a second colon, make treats the line as a static pattern rule.  Perhaps
the MinGW project ships a make patched to avoid this, or perhaps folks
building PostgreSQL override WINDIR.  In any event, that dependency is not
useful: we can't build the named file if it's absent, and an error from
pexports is a good as an error from make.  Let's drop the dependency.

Note that this affects --without-python builds during "make clean".

Thanks,
nm

Attachment

Re: Problematic dependency in plpython Makefile [Windows]

From
Craig Ringer
Date:
On 01/03/2013 11:13 AM, Noah Misch wrote:
> On Windows, src/pl/plpython/Makefile has a rule whose target line expands to
> something like "python33.def: C:/Windows/system32/python33.dll".  When doing a
> MinGW build with Cygwin's make-3.81, that line elicits an error:
Shouldn't you generally be using msys make from mingw?

I'm a bit puzzled as to why you'd be using cygwin make.

-- Craig Ringer                   http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services




Re: Problematic dependency in plpython Makefile [Windows]

From
Noah Misch
Date:
On Thu, Jan 03, 2013 at 11:52:58AM +0800, Craig Ringer wrote:
> On 01/03/2013 11:13 AM, Noah Misch wrote:
> > On Windows, src/pl/plpython/Makefile has a rule whose target line expands to
> > something like "python33.def: C:/Windows/system32/python33.dll".  When doing a
> > MinGW build with Cygwin's make-3.81, that line elicits an error:
> Shouldn't you generally be using msys make from mingw?
> 
> I'm a bit puzzled as to why you'd be using cygwin make.

I don't normally use MSYS at all.  I wouldn't furnish widespread Makefile
changes to avoid doing so, but this is the only change I have needed.



Re: Problematic dependency in plpython Makefile [Windows]

From
Andrew Dunstan
Date:
On 01/02/2013 10:13 PM, Noah Misch wrote:
> On Windows, src/pl/plpython/Makefile has a rule whose target line expands to
> something like "python33.def: C:/Windows/system32/python33.dll".  When doing a
> MinGW build with Cygwin's make-3.81, that line elicits an error:
>
> Makefile:69: *** target pattern contains no `%'.  Stop.
>
> Seeing a second colon, make treats the line as a static pattern rule.  Perhaps
> the MinGW project ships a make patched to avoid this, or perhaps folks
> building PostgreSQL override WINDIR.  In any event, that dependency is not
> useful: we can't build the named file if it's absent, and an error from
> pexports is a good as an error from make.  Let's drop the dependency.
>
> Note that this affects --without-python builds during "make clean".
>
>
>

I suspect under Msys the path seen won't contain a colon - it will be an 
Msys virtualized path like /c/Windows/system32/....

Frankly, this is an unsupported toolchain. The supported toolchains 
under Windows are Msys/Mingw and the Microsoft toolsets.

OTOH, I don't object to dropping a dependency that is truly useless.

cheers

andrew




Re: Problematic dependency in plpython Makefile [Windows]

From
Andrew Dunstan
Date:
On 01/02/2013 11:34 PM, Andrew Dunstan wrote:
>
> On 01/02/2013 10:13 PM, Noah Misch wrote:
>> On Windows, src/pl/plpython/Makefile has a rule whose target line 
>> expands to
>> something like "python33.def: C:/Windows/system32/python33.dll".  
>> When doing a
>> MinGW build with Cygwin's make-3.81, that line elicits an error:
>>
>> Makefile:69: *** target pattern contains no `%'.  Stop.
>>
>> Seeing a second colon, make treats the line as a static pattern 
>> rule.  Perhaps
>> the MinGW project ships a make patched to avoid this, or perhaps folks
>> building PostgreSQL override WINDIR.  In any event, that dependency 
>> is not
>> useful: we can't build the named file if it's absent, and an error from
>> pexports is a good as an error from make.  Let's drop the dependency.
>>
>> Note that this affects --without-python builds during "make clean".
>>
>>
>>
>
> I suspect under Msys the path seen won't contain a colon - it will be 
> an Msys virtualized path like /c/Windows/system32/....

Apparently not, from testing. Maybe the make is patched after all.

cheers

andrew