Skip to content
Snippets Groups Projects
Select Git revision
  • 6e232755dde07e8a0daed738cac18b2fe03cca1f
  • 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
  • Romain Broucquart's avatar
    BRONES Romain authored
    * GTHE COMMON must be outside IP (QPLL needed for other interfaces)
    * GTWizard created with TCL
    * GTWizard instantiated directly in top level
    6e232755
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    Makefile 1.54 KiB
    ###############################################################################
    # Global receipes
    none:
    	$(info You should specify what to make: ip, sim, clean, clean-all)
    
    sim:
    
    ###############################################################################
    # Configuration
    # TODO: better way to configure ?
    hdlpkgsrc := 
    #hdl_pkg/combpm_gtwrapper_CAENELS4SFP_1L_pkg.vhd
    
    ###############################################################################
    # 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) $(xcisrc)
    	vivado -mode batch -source tcl/combpm.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