mirror of
https://github.com/verilator/verilator.git
synced 2025-01-04 05:37:48 +00:00
59 lines
1.9 KiB
Makefile
59 lines
1.9 KiB
Makefile
# -*- Makefile -*-
|
|
#######################################################################
|
|
#
|
|
# DESCRIPTION: Verilator Example: Makefile for inside object directory
|
|
#
|
|
# This is executed in the object directory, and called by ../Makefile
|
|
#
|
|
# Copyright 2003-2019 by Wilson Snyder. This program is free software; you can
|
|
# redistribute it and/or modify it under the terms of either the GNU
|
|
# Lesser General Public License Version 3 or the Perl Artistic License
|
|
# Version 2.0.
|
|
#
|
|
#######################################################################
|
|
|
|
default: Vtop
|
|
|
|
# Include the rules made by Verilator
|
|
include Vtop.mk
|
|
|
|
# Use OBJCACHE (ccache) if using gmake and its installed
|
|
COMPILE.cc = $(OBJCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c
|
|
|
|
#######################################################################
|
|
# Compile flags
|
|
|
|
# Override some default compile flags
|
|
CPPFLAGS += -MMD -MP
|
|
CPPFLAGS += -DVL_DEBUG=1
|
|
# Turn on some more flags (when configured appropriately)
|
|
# For testing inside Verilator, "configure --enable-ccwarn" will do this
|
|
# automatically; otherwise you may want this unconditionally enabled
|
|
ifeq ($(CFG_WITH_CCWARN),yes) # Local... Else don't burden users
|
|
USER_CPPFLAGS_WALL += -W -Werror -Wall
|
|
endif
|
|
|
|
# See the benchmarking section of bin/verilator.
|
|
# Support class optimizations. This includes the tracing and symbol table.
|
|
# SystemC takes minutes to optimize, thus it is off by default.
|
|
OPT_SLOW =
|
|
# Fast path optimizations. Most time is spent in these classes.
|
|
OPT_FAST = -O2 -fstrict-aliasing
|
|
#OPT_FAST = -O
|
|
#OPT_FAST =
|
|
|
|
#######################################################################
|
|
# Linking final exe -- presumes have a sim_main.cpp
|
|
|
|
# Special compile rule
|
|
sim_main.o: sim_main.cpp $(VM_PREFIX).h
|
|
|
|
######################################################################
|
|
######################################################################
|
|
# Automatically understand dependencies
|
|
|
|
DEPS := $(wildcard *.d)
|
|
ifneq ($(DEPS),)
|
|
include $(DEPS)
|
|
endif
|