123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- SOURCE=null
- QUOI=null
-
- default:
- @echo "Specifiez une cible [secure|unsecure|compile|exec|exec_secure|exec_unsecure|clean]"
-
-
-
-
- secure:
- @sed -i 's/#define SECURISED (0)/#define SECURISED (1)/g' Interpreteur/Tables/tables.c InterpreteurRegistres/Tables/tables.c Compilateur/Lex_Yacc/as.y
- @sed -i 's/constant SECURISED : boolean := false;/constant SECURISED : boolean := true;/g' Processeur/Processeur.srcs/sources_1/new/System.vhd
-
-
-
-
- unsecure:
- @sed -i 's/#define SECURISED (1)/#define SECURISED (0)/g' Interpreteur/Tables/tables.c InterpreteurRegistres/Tables/tables.c Compilateur/Lex_Yacc/as.y
- @sed -i 's/constant SECURISED : boolean := true;/constant SECURISED : boolean := false;/g' Processeur/Processeur.srcs/sources_1/new/System.vhd
-
-
-
-
- compile:
- ifeq ($(QUOI),null)
- @echo "USAGE : make compile QUOI=\"[compilateur|interpreteur|interpreteur_registres|cross_assembleur|all]\""
- else
- ifeq ($(QUOI),compilateur)
- @echo "Compilation du compilateur"
- $(MAKE) -C Compilateur build
- @echo "Compilation terminée"
- else ifeq ($(QUOI),cross_assembleur)
- @echo "Compilation du CrossAssembleur"
- $(MAKE) -C CrossAssembleur build
- @echo "Compilation terminée"
- else ifeq ($(QUOI),interpreteur)
- @echo "Compilation de l'interpreteur"
- $(MAKE) -C Interpreteur build
- @echo "Compilation terminée"
- else ifeq ($(QUOI),interpreteur_registres)
- @echo "Compilation de l'interpreteur_registres"
- $(MAKE) -C InterpreteurRegistres build
- @echo "Compilation terminée"
- else ifeq ($(QUOI),all)
- @echo "Compilation du compilateur"
- $(MAKE) -C Compilateur build
- @echo "Compilation terminée"
- @echo "Compilation de l'interpreteur"
- $(MAKE) -C Interpreteur build
- @echo "Compilation terminée"
- @echo "Compilation du CrossAssembleur"
- $(MAKE) -C CrossAssembleur build
- @echo "Compilation terminée"
- @echo "Compilation de l'interpreteur_registres"
- $(MAKE) -C InterpreteurRegistres build
- @echo "Compilation terminée"
- else
- @echo "USAGE : make compile QUOI=\"[compilateur|interpreteur|interpreteur_registres|cross_assembleur|all]\""
- endif
- endif
-
- clean:
- $(MAKE) -C Compilateur clean
- $(MAKE) -C Interpreteur clean
- $(MAKE) -C InterpreteurRegistres clean
- $(MAKE) -C CrossAssembleur clean
- @rm -f ./*.memasm ./*.regasm ./*.bin
-
-
-
-
- exec_secure: secure compile exec
-
- exec_unsecure: unsecure compile exec
-
-
-
- exec:
- ifeq ($(SOURCE),null)
- @echo "USAGE : make exec SOURCE=\"file_name\" QUOI=\"[compile|interprete|interprete_registres|cross_assemble|load|all]\""
- else
- ifeq ($(QUOI),null)
- @echo "USAGE : make exec SOURCE=\"file_name\" QUOI=\"[compile|interprete|interprete_registres|cross_assemble|load|all]\""
- else
- ifeq ($(QUOI),compile)
- @echo "Compilation"
- cat $(SOURCE).c | Compilateur/rondoudou_gcc
- @mv output.txt $(SOURCE).memasm
- @echo "Compilation terminée"
- else ifeq ($(QUOI),interprete)
- @echo "Interpretation"
- Interpreteur/rondoudou_interpreter $(SOURCE).memasm
- @echo "Interpretation terminée"
- else ifeq ($(QUOI),interprete_registres)
- @echo "Interpretation registres"
- InterpreteurRegistres/rondoudou_interpreter_registres $(SOURCE).regasm
- @echo "Interpretation registres terminée"
- else ifeq ($(QUOI),cross_assemble)
- @echo "CrossAssemblage"
- cat $(SOURCE).memasm | CrossAssembleur/rondoudou_cross_assembleur
- @mv output.asm $(SOURCE).regasm
- @mv output.bin $(SOURCE).bin
- @echo "CrossAssemblage terminé"
- else ifeq ($(QUOI),load)
- @echo "Chargement du binaire"
- @sed -r "s/signal MEMORY : STD_LOGIC_VECTOR \(\(Mem_Size \* Nb_bits\)-1 downto 0\) := \"[01]*\";/signal MEMORY : STD_LOGIC_VECTOR \(\(Mem_Size \* Nb_bits\)-1 downto 0\) := $$(cat $(SOURCE).bin);/g" Processeur/Processeur.srcs/sources_1/new/MemoireInstructions.vhd > $(SOURCE).tmp.vhd
- @mv $(SOURCE).tmp.vhd Processeur/Processeur.srcs/sources_1/new/MemoireInstructions.vhd
- @echo "Chargement du binaire terminé"
- else ifeq ($(QUOI),all)
- @echo "Compilation"
- cat $(SOURCE).c | Compilateur/rondoudou_gcc
- @mv output.txt $(SOURCE).memasm
- @echo "Compilation terminée"
- @echo "CrossAssemblage"
- cat $(SOURCE).memasm | CrossAssembleur/rondoudou_cross_assembleur
- @mv output.asm $(SOURCE).regasm
- @mv output.bin $(SOURCE).bin
- @echo "CrossAssemblage terminé"
- @echo "Chargement du binaire"
- @sed -r "s/signal MEMORY : STD_LOGIC_VECTOR \(\(Mem_Size \* Nb_bits\)-1 downto 0\) := \"[01]*\";/signal MEMORY : STD_LOGIC_VECTOR \(\(Mem_Size \* Nb_bits\)-1 downto 0\) := $$(cat $(SOURCE).bin);/g" Processeur/Processeur.srcs/sources_1/new/MemoireInstructions.vhd > $(SOURCE).tmp.vhd
- @mv $(SOURCE).tmp.vhd Processeur/Processeur.srcs/sources_1/new/MemoireInstructions.vhd
- @echo "Chargement du binaire terminé"
- else
- @echo "USAGE : make exec SOURCE=\"file_name\" QUOI=\"[compile|interprete|interprete_registres|cross_assemble|load|all]\""
- endif
- endif
- endif
-
|