# Verilated -*- Makefile -*- # DESCRIPTION: Verilator output: Makefile for building Verilated archive or executable # # Execute this makefile from the object directory: # make -f Vtop.mk default: Vtop ### Constants... # Perl executable (from $PERL) PERL = perl # Path to Verilator kit (from $VERILATOR_ROOT) VERILATOR_ROOT = /usr/share/verilator # Path to SystemPerl kit top (from $SYSTEMPERL) SYSTEMPERL = # Path to SystemPerl kit includes (from $SYSTEMPERL_INCLUDE) SYSTEMPERL_INCLUDE = # SystemC include directory with systemc.h (from $SYSTEMC_INCLUDE) SYSTEMC_INCLUDE ?= # SystemC library directory with libsystemc.a (from $SYSTEMC_LIBDIR) SYSTEMC_LIBDIR ?= ### Switches... # SystemPerl output mode? 0/1 (from --sp) VM_SP = 0 # SystemC output mode? 0/1 (from --sc) VM_SC = 0 # SystemPerl or SystemC output mode? 0/1 (from --sp/--sc) VM_SP_OR_SC = 0 # Deprecated VM_PCLI = 1 # Deprecated: SystemC architecture to find link library path (from $SYSTEMC_ARCH) VM_SC_TARGET_ARCH = linux ### Vars... # Design prefix (from --prefix) VM_PREFIX = Vtop # Module prefix (from --prefix) VM_MODPREFIX = Vtop # User CFLAGS (from -CFLAGS on Verilator command line) VM_USER_CFLAGS = \ # User LDLIBS (from -LDFLAGS on Verilator command line) VM_USER_LDLIBS = \ # User .cpp files (from .cpp's on Verilator command line) VM_USER_CLASSES = \ control \ sim_main \ # User .cpp directories (from .cpp's on Verilator command line) VM_USER_DIR = \ . \ ### Default rules... # Include list of all generated classes include Vtop_classes.mk # Include global rules include $(VERILATOR_ROOT)/include/verilated.mk ### Executable rules... (from --exe) VPATH += $(VM_USER_DIR) control.o: control.cpp $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(OPT_FAST) -c -o $@ $< sim_main.o: sim_main.cpp $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(OPT_FAST) -c -o $@ $< ### Link rules... (from --exe) Vtop: $(VK_USER_OBJS) $(VK_GLOBAL_OBJS) $(VM_PREFIX)__ALL.a $(LINK) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ $(LIBS) $(SC_LIBS) 2>&1 | c++filt # Verilated -*- Makefile -*-