| SHELL:=csh |
| |
| PROD_PATH:="PATH_TO_PROD_REPO" |
| VARIANT:="18T_ms" |
| |
| .PHONY: all do clean_char clean_design clean char design push_prod |
| |
| all: do |
| |
| do: char design |
| |
| char: |
| -@cd lib && make magic pex VARIANT=${VARIANT} |
| -@cd char && make VARIANT=${VARIANT} |
| |
| design: |
| @cd flow/synth_snps && make synth VARIANT=${VARIANT} |
| @cd flow && make change VARIANT=${VARIANT} |
| @cd flow/pnr && make all |
| @cd flow && make clean VARIANT=${VARIANT} |
| @cp flow/pnr/final.gds outputs/ |
| @cp flow/pnr/final.gds lib/gds/ |
| |
| clean: clean_lib clean_char clean_design |
| |
| clean_lib: |
| -@cd lib && make clean |
| |
| clean_char: |
| -@cd char && make clean |
| |
| clean_design: |
| -@cd flow/synth_snps && make clean |
| -@cd flow/pnr && make clean && ./clean_me.csh |
| |
| push_prod: |
| @mkdir -p $(PROD_PATH) |
| @cp -r Makefile $(PROD_PATH) |
| @cp -r sourceme $(PROD_PATH) |
| @cp -r char $(PROD_PATH) |
| @cp -r lib $(PROD_PATH) |
| @cp -r outputs $(PROD_PATH) |
| @mkdir -p $(PROD_PATH)/flow |
| @cp -r flow/pnr $(PROD_PATH)/flow/pnr |
| @cp -r flow/synth_snps $(PROD_PATH)/flow/synth_snps |
| @rm -rf $(PROD_PATH)/flow/synth_snps/hdl/* |