Skip to content
Snippets Groups Projects
Select Git revision
  • 9a86e656c10207ab18ab7b3ecc2a7203552a2ae4
  • master default protected
  • dev
  • fix
  • feat-merge-filter
  • to_fwk
  • integrate
  • 1.3
  • 1.2.1
  • 1.2
  • 1.1.1
  • 1.1.0
12 results

Makefile

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    Makefile 1.63 KiB
    ###############################################################################
    # Global receipes
    none:
    	$(info You should specify what to make: ip, sim, clean, clean-all)
    
    sim:
    
    ###############################################################################
    # Configuration
    hdlpkgsrc := 
    
    ###############################################################################
    # Generate a source list, depending on the config
    rdlsrc := $(shell ls rdl/*.rdl)
    rdltarget := $(rdlsrc:rdl/%.rdl=hdl/%.vhd)
    hdlsrc := $(shell ls hdl/*.vhd) $(rdltarget) $(hdlpkgsrc)
    # TODO: depends on the configuration
    tcl/sources.tcl:
    	echo read_vhdl {$(hdlsrc)} > $@
    
    ###############################################################################
    # Compute interface from rdl files
    # TODO: generic rule from variables
    hdl/combpm_protocol_electron_ctrl.vhd: rdl/combpm_protocol_electron_ctrl.rdl
    	hectare --axi-vhdl $@ $<
    
    ###############################################################################
    # Package IP
    ip:component.xml
    
    component.xml:tcl/sources.tcl tcl/combpm.tcl $(hdlsrc)
    	vivado -mode batch -source tcl/combpm.tcl
    
    ###############################################################################
    # Synthessize IP for test
    synth:component.xml
    	vivado -mode batch -source tcl/bloc_synthesis.tcl
    
    
    
    
    ###############################################################################
    # Cleaner Rules
    clean:
    	rm -f vivado*.log vivado*.jou
    
    clean-ip:
    	rm -rf ip_proj ip_user_files xgui
    	rm -f component.xml
    
    clean-sim:
    	rm -f *.wdb
    
    clean-all:clean-ip clean
    	rm -f tcl/sources.tcl
    	rm -f hdl/combpm_protocol_electron_ctrl.vhd
    
    .PHONY: clean clean-ip clean-sim clean-all none ip sim synth