default : @echo "Spécifiez une cible" ########################### ### NETTOYAGE ### ########################### clean : clean_Symboles clean_Instructions clean_Lex_Yacc clean_Fonctions @rm -f rondoudou_gcc @rm -f output.txt clean_Symboles: @rm -f Tables/Symboles/*.o @rm -f Tables/Symboles/test clean_Instructions: @rm -f Tables/Instructions/*.o @rm -f Tables/Instructions/test clean_Fonctions: @rm -f Tables/Fonctions/*.o @rm -f Tables/Fonctions/test clean_Lex_Yacc: @rm -f Lex_Yacc/as.output Lex_Yacc/as.tab.* Lex_Yacc/lex.yy.* ########################### ### COMPILATION ### ########################### build : clean build_Symboles build_Instructions build_Lex_Yacc build_Fonctions gcc Lex_Yacc/as.tab.o Lex_Yacc/lex.yy.o Tables/Instructions/tab_instruc.o Tables/Symboles/table_symboles.o Tables/Fonctions/tab_fonctions.o -ll -o rondoudou_gcc build_Symboles: clean_Symboles gcc -c Tables/Symboles/table_symboles.c -o Tables/Symboles/table_symboles.o build_Instructions: clean_Instructions gcc -c Tables/Instructions/tab_instruc.c -o Tables/Instructions/tab_instruc.o build_Fonctions : clean_Fonctions gcc -c Tables/Fonctions/tab_fonctions.c -o Tables/Fonctions/tab_fonctions.o build_Lex_Yacc: clean_Lex_Yacc bison -g -v -d -t -b Lex_Yacc/as Lex_Yacc/as.y flex -o Lex_Yacc/lex.yy.c Lex_Yacc/al.lex gcc -c Lex_Yacc/as.tab.c -o Lex_Yacc/as.tab.o gcc -c Lex_Yacc/lex.yy.c -o Lex_Yacc/lex.yy.o ########################### ### TESTS ### ########################### test_Symboles: build_Symboles gcc -c Tables/Symboles/test.c -o Tables/Symboles/test.o gcc Tables/Symboles/test.o Tables/Symboles/table_symboles.o -o Tables/Symboles/test Tables/Symboles/test test_Instructions: build_Instructions gcc -c Tables/Instructions/test.c -o Tables/Instructions/test.o gcc Tables/Instructions/test.o Tables/Instructions/tab_instruc.o -o Tables/Instructions/test Tables/Instructions/test test_Fonctions: build_Fonctions gcc -c Tables/Fonctions/test.c -o Tables/Fonctions/test.o gcc Tables/Fonctions/test.o Tables/Fonctions/tab_fonctions.o -o Tables/Fonctions/test Tables/Fonctions/test test: build cat Fichiers_Tests/progC | ./rondoudou_gcc ########################### ### EDITION ### ########################### edit_Lex_Yacc: pluma Lex_Yacc/al.lex Lex_Yacc/as.y & edit_Symboles: pluma Tables/Symboles/table_symboles.c Tables/Symboles/table_symboles.h & edit_Instructions: pluma Tables/Instructions/tab_instruc.c Tables/Instructions/tab_instruc.h & edit_Progs: pluma Fichiers_Tests/progC & edit_Fonctions : pluma Tables/Fonctions/tab_fonctions.c Tables/Fonctions/tab_fonctions.h & edit: edit_Lex_Yacc edit_Symboles edit_Instructions edit_Progs edit_Fonctions