forked from lowRISC/lowrisc-chip
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefrag
43 lines (33 loc) · 1.21 KB
/
Makefrag
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# See LICENSE for license details.
# check RISCV environment variable
ifndef RISCV
$(error Please set environment variable RISCV. Please take a look at README)
endif
MODEL := Top
PROJECT := lowrisc_chip
CXX := g++
CXXFLAGS := -O1
SBT := java -Xmx2048M -Xss8M -XX:MaxPermSize=256M -jar sbt-launch.jar
SHELL := /bin/bash
CHISEL_ARGS := $(MODEL) $(CONFIG) --W0W --minimumCompatibility 3.0.0 --backend $(BACKEND) --configName $(CONFIG) --compileInitializationUnoptimized --targetDir $(generated_dir)
# specify source files
src_path = src/main/scala
default_submodules = . junctions uncore hardfloat rocket
chisel_srcs := $(addprefix $(base_dir)/,$(addsuffix /$(src_path)/*.scala,$(default_submodules)))
osd_base = $(base_dir)/opensocdebug/hardware
include $(osd_base)/Makefrag
chisel_srcs += $(osd_srcs)
# translate trace files generated by C++/Verilog simulation
disasm := >
which_disasm := $(shell which spike-dasm 2> /dev/null)
ifneq ($(which_disasm),)
disasm := 2>&1 | $(which_disasm) $(DISASM_EXTENSION) >
endif
# define time-out for different types of simulation
timeout_cycles = 100000000
long_timeout_cycles = 1000000000
linux_timeout_cycles = 5000000000
# emacs local variable
# Local Variables:
# mode: makefile
# End: