Je travaille régulièrement sur plusieurs ordinateurs différents et plusieurs systèmes d'exploitation différents, tels que Mac OS X, Linux ou Solaris. Pour le projet sur lequel je travaille, je récupère mon code depuis un dépôt git distant.
J'aime pouvoir travailler sur mes projets indépendamment du terminal que j'utilise. Jusqu'à présent, j'ai trouvé des moyens de contourner les changements de système d'exploitation en modifiant le makefile à chaque changement d'ordinateur. Cependant, cela est fastidieux et cause beaucoup de maux de tête.
Comment puis-je modifier mon makefile pour qu'il détecte le système d'exploitation que j'utilise et modifie la syntaxe en conséquence ?
Voici le makefile :
cc = gcc -g
CC = g++ -g
yacc=$(YACC)
lex=$(FLEX)
all: assembleur
assembler: y.tab.o lex.yy.o
$(CC) -o assembleur y.tab.o lex.yy.o -ll -l y
assembler.o: assembler.c
$(cc) -o assembleur.o assembler.c
y.tab.o: assem.y
$(yacc) -d assem.y
$(CC) -c y.tab.c
lex.yy.o: assem.l
$(lex) assem.l
$(cc) -c lex.yy.c
clean:
rm -f lex.yy.c y.tab.c y.tab.h assembleur *.o *.tmp *.debug *.acts