- Timestamp:
- Apr 14, 2009, 8:39:12 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Synthesis
r112 r113 10 10 11 11 DIR_VHDL = . 12 DIR_WORK = work 12 WORK_NAME = work 13 DIR_WORK = $(MORPHEO_TMP)/$(WORK_NAME) 13 14 14 15 FPGA_CFG_FILE_LOCAL = mkf.info … … 21 22 FPGA_LOG_FILES = $(patsubst $(DIR_CFG_GEN)/%.cfg,$(DIR_LOG)/%.fpga.log,$(wildcard $(DIR_CFG_GEN)/*.cfg)) \ 22 23 $(patsubst $(DIR_CFG_USER)/%.cfg,$(DIR_LOG)/%.fpga.log,$(wildcard $(DIR_CFG_USER)/*.cfg)) 24 25 23 26 #-----[ Rules ]-------------------------------------------- 24 27 .PRECIOUS : $(DIR_LOG)/%.vhdl.log $(DIR_LOG)/%.sim.log 25 28 26 vhdl : execute $(DIR_WORK) 29 vhdl : $(EXEC_LOG) 30 @\ 31 $(MAKE) vhdl_package; \ 32 $(MAKE) vhdl_entity; \ 33 $(MAKE) vhdl_testbench 34 35 vhdl_package : $(DIR_WORK) 27 36 @\ 28 37 declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Pack.vhdl)); \ 29 38 declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log}); \ 30 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; \ 39 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) -k $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; 40 41 vhdl_testbench : $(DIR_WORK) 42 @\ 43 declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl)); \ 44 declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log}); \ 45 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) -k $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; 46 47 vhdl_entity : $(DIR_WORK) 48 @\ 31 49 declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*.vhdl|$(GREP_NOT) "(_Pack\.|_Testbench\.)")); \ 32 50 declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log}); \ 33 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; \ 34 declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl)); \ 35 declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log}); \ 36 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; 51 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) -k $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; \ 37 52 53 #list : 54 # @\ 55 # declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*.vhdl|$(GREP_NOT) "(_Pack\.|_Testbench\.)")); \ 56 # for file1 in $${vhdl_files[*]}; do \ 57 # declare x=$$(basename $${file1} .vhdl); \ 58 # declare -i count_x=$($(ECHO) $${x} | ${WC} -m); \ 59 # for file2 in $${vhdl_files[*]}; do \ 60 # if $(TEST) "$${file1}" != "$${file2}"; then\ 61 # declare y=$$(basename $${file2} .vhdl); \ 62 # declare -i count_y=$($(ECHO) $${y} | ${WC} -m); \ 63 # if $(TEST) $${count_x} -gt $${count_y}; then \ 64 # break; \ 65 # fi; \ 66 # $(ECHO) $${x}; \ 67 # fi; \ 68 # done; \ 69 # done; 38 70 39 71 sim : vhdl … … 41 73 declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl)); \ 42 74 declare -a log_files=($${vhdl_files[*]/%.vhdl/.sim.log}); \ 43 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi;75 if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) -k $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi; 44 76 45 77 fpga : sim … … 56 88 done; \ 57 89 ($(XILINX_ENV); cd $(FPGA_CFG_FILE_GLOBAL_DIR); ./$(FPGA_CFG_FILE_GLOBAL)); \ 58 $(MAKE) $(FPGA_LOG_FILES);90 $(MAKE) -k $(FPGA_LOG_FILES); 59 91 60 92 $(DIR_LOG)/%.fpga.log : … … 65 97 $(DIR_WORK) : 66 98 @\ 67 $(ECHO) "Create work-space : $@"; \ 68 $(MODELTECH_VLIB) $@; \ 69 $(MODELTECH_VMAP) $(XILINX_CORELIB); 99 $(ECHO) "Create work-space : $@"; \ 100 $(MODELTECH_VLIB) $@; \ 101 $(MODELTECH_VMAP) $(XILINX_LIBNAME) $(XILINX_LIBDIR); \ 102 if $(TEST) $${?} -ne 0; then \ 103 $(ECHO) "Xilinx corelib must be compiled to simulation tools"; \ 104 $(ECHO) "Run manualy \"$(XILINX_COMPXLIB)\" with $(XILINX_CORELIB) directory"; \ 105 fi; 70 106 71 107 $(DIR_LOG)/%.sim.log : $(DIR_VHDL)/%.vhdl $(DIR_LOG)/%.vhdl.log … … 82 118 @\ 83 119 $(ECHO) "VHDL's Compilation : $*"; \ 84 $(MODELTECH_VCOM) $< &> $@;120 $(MODELTECH_VCOM) -work $(DIR_WORK) $< &> $@; 85 121 86 122 synthesis_clean : 87 123 @\ 88 124 if $(TEST) -f Makefile.mkf; then $(MAKE) -f Makefile.mkf clean; fi; \ 89 $(RM) $(DIR_WORK) transcript Makefile.mkf * .wlf;125 $(RM) $(DIR_WORK) transcript Makefile.mkf *wlf* modelsim.ini; 90 126 91 127 synthesis_clean_all : synthesis_clean
Note: See TracChangeset
for help on using the changeset viewer.