aboutsummaryrefslogblamecommitdiff
path: root/eim/build/Makefile
blob: a7eec60a34d4ff308ef797c90ffde70506eed489 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                           
 






                                                                                            
                          






                                         



                                                            

          


                                                                 
                                                              







                                                             
 

                                                          
                                                           

                 
 



                                                                                        
     
                                                                                                   
# Localize all the relative path awfulness in one variable.

CORE_TREE	:= $(abspath ../../../..)

# Figure out what the native word size is on the build host, because
# the XiLinx tools care for some reason.

WORD_SIZE	:= $(shell python -c 'from struct import pack; print len(pack("L", 0)) * 8')

# Parameters to xilinx.mk.

project		= novena_eim
vendor		= xilinx
family		= spartan6
part		= xc6slx45csg324-3
top_module	= novena_top
isedir		= /opt/Xilinx/14.7/ISE_DS
xil_env		= . $(isedir)/settings$(WORD_SIZE).sh
ucf		= ../ucf/$(project).ucf

# Verilog files that always go with builds on this platform.

vfiles = \
	$(CORE_TREE)/platform/novena/eim/rtl/novena_eim.v \
	$(CORE_TREE)/platform/novena/common/rtl/novena_regs.v \
	$(CORE_TREE)/platform/novena/common/rtl/novena_clkmgr.v \
	$(CORE_TREE)/platform/novena/common/rtl/clkmgr_dcm.v \
	$(CORE_TREE)/platform/novena/config/core_selector.v \
	$(CORE_TREE)/comm/eim/src/rtl/cdc_bus_pulse.v \
	$(CORE_TREE)/comm/eim/src/rtl/eim_arbiter_cdc.v \
	$(CORE_TREE)/comm/eim/src/rtl/eim_arbiter.v \
	$(CORE_TREE)/comm/eim/src/rtl/eim_da_phy.v \
	$(CORE_TREE)/comm/eim/src/rtl/eim_indicator.v \
	$(CORE_TREE)/comm/eim/src/rtl/eim_regs.v \
	$(CORE_TREE)/comm/eim/src/rtl/eim.v

# Verilog files selected by the core configuration script.

-include $(CORE_TREE)/platform/novena/config/core_vfiles.mk

include xilinx.mk

# Fun extras for running verlator as a linter.

VERILATOR_FLAGS	= --lint-only --top-module novena_top -Wall -Wno-fatal -Wno-DECLFILENAME

lint:
	verilator ${VERILATOR_FLAGS} $(vfiles) $(CORE_TREE)/platform/novena/common/rtl/lint-dummy.v