Re: Contrib PROGRAM problem

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: Boszormenyi Zoltan <zb@cybertec.at>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, PostgreSQL-development Hackers <pgsql-hackers@postgresql.org>
Date: 2013-01-18T22:37:16Z
Lists: pgsql-hackers
On 01/18/2013 05:19 PM, Boszormenyi Zoltan wrote:
> 2013-01-18 22:52 keltezéssel, Alvaro Herrera írta:
>> Boszormenyi Zoltan wrote:
>>
>>
>>> I want to test my lock_timeout code under Windows and
>>> I compiled the whole PG universe with the MinGW cross-compiler
>>> for 64-bit under Fedora 18.
>>>
>>> The problem contrib directories where Makefile contains
>>>      PROGRAM = ...
>>> The executables binaries are created without the .exe suffix. E.g.:
>> I think you should be able to solve this by adding the $(X) suffix to
>> the $(PROGRAM) rule at the bottom of src/makefiles/pgxs.mk.
>>
>
> Do you mean the attached patch? It indeed fixes the build.
>
>


>   ifdef PROGRAM
>   $(PROGRAM): $(OBJS)
> -	$(CC) $(CFLAGS) $(OBJS) $(PG_LIBS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
> +	$(CC) $(CFLAGS) $(OBJS) $(PG_LIBS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
>   endif
>


Wouldn't it be better to make the rule be for $(PROGRAM)$(X) and adjust 
the dependency for "all" in the same manner? Otherwise make will rebuild 
it whether or not it's needed, won't it?


cheers

andrew