Problème de portabilité nmake / make
Bonjour,
Je dois effectuer un makefile qui sera multiplateforme ( nmake de chez MS et make de chez GNU ).
J'ai fait le code que je vais copier plus loin, qui marche parfaitement sous nmake mais qui plante sous make, à cause de "dépendances circulaires", si quelqu'un peut m'éclairer la dessus ?
Merci d'avance
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| LLIB = $(OS:Windows_NT=lib) $(OSTYPE:linux-gnu=ar)
OBJ = $(OS:Windows_NT=.obj) $(OSTYPE:linux-gnu=.o)
FLIB = $(OS:Windows_NT=.lib) $(OSTYPE:linux-gnu=.a)
EXEC = $(OS:Windows_NT=.exe) $(OSTYPE:linux-gnu=.out)
FLC = $(OS:Windows_NT=EWIN) $(OSTYPE:linux-gnu=ENUX)
Barbre$(EXEC) : Barbre$(FLIB) BgstB$(FLIB) BgstDsk$(FLIB)
$(CC) -o Barbre$(EXEC) Barbre$(FLIB) BgstB$(FLIB) BgstDsk$(FLIB) BarbreTst.c
Barbre$(FLIB) : Barbre$(OBJ) utilitaires$(OBJ)
$(LLIB) Barbre$(OBJ) utilitaires$(OBJ) /out:Barbre$(FLIB)
BgstB$(FLIB) : Binstalle$(OBJ) InsereArticle$(OBJ) partage$(OBJ) BarbreCherche$(OBJ)
$(LLIB) Binstalle$(OBJ) InsereArticle$(OBJ) partage$(OBJ) BarbreCherche$(OBJ) /out:BgstB$(FLIB)
BgstDsk$(FLIB) : dskgest$(OBJ)
$(LLIB) dskgest$(OBJ) /out:BgstDsk$(FLIB)
Barbre$(OBJ) : Barbre.c Barbre.h
$(CC) -c -D$(FLC) Barbre.c
utilitaires$(OBJ) : utilitaires.c Barbre.h
$(CC) -c -D$(FLC) utilitaires.c
BInstalle$(OBJ) : BInstalle.c Barbre.h
$(CC) -c -D$(FLC) BInstalle.c
InsereArticle$(OBJ) : InsereArticle.c Barbre.h
$(CC) -c -D$(FLC) InsereArticle.c
partage$(OBJ) : partage.c Barbre.h
$(CC) -c -D$(FLC) partage.c
BarbreCherche$(OBJ) : BarbreCherche.c Barbre.h
$(CC) -c -D$(FLC) BarbreCherche.c
dskgest$(OBJ) : dskgest.c Barbre.h
$(CC) -c -D$(FLC) dskgest.c |