Xavier SIRVENT wrote:
>
> Je rajoute au début de mon makefile les lignes suivantes:
>
> RELEASE_CC=CC -c
> DEBUG_CC=CC -c -g
>
> RELEASE_LD=ld
> DEBUG_LD=ld
>
> all:=CURRENT_CC=$(RELEASE_CC)
> all:=CURRENT_LD=$(RELEASE_LD)
>
> debug:=CURRENT_CC=$(DEBUG_CC)
> debug:=CURRENT_LD=$(DEBUG_LD)
>
> puis, pour faire simple:
>
> all: HelloWorld
> debug: HelloWorld
>
> HelloWorld: helloWorld.o)
> $(CURRENT_LD) HelloWorld.o -o HelloWorld
>
> HelloWorld.o: HelloWorld.cpp
> $(CURRENT_CC) -c HelloWorld.o HelloWorld.cpp
>
> Ainsi, que je tape make ou make debug, cela me build un binaire normal
> ou debug
>
> Ben, ca, avec gmake, ca ne marche pas!
>
> Savez-vous comment positionner des variables en fonction des cibles?
> Des idées pour faire autrement? Je ne suis pas un expert make
>
> Xavier
Tu peux faire qqch du style:
all:
$(MAKE) HelloWorld CURRENT_CC=$(RELEASE_CC) CURRENT_LD=$(RELEASE_LD)
debug:
$(MAKE) HelloWorld CURRENT_CC=$(DEBUG_CC) CURRENT_LD=$(DEBUG_LD)
Christophe.