Re: Makefiles

Page principale

Répondre à ce message
Auteur: Christophe LYON
Date:  
À: Xavier SIRVENT
CC: GUILDE
Sujet: Re: Makefiles

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.