OpenCores
URL https://opencores.org/ocsvn/yifive/yifive/trunk

Subversion Repositories yifive

[/] [yifive/] [trunk/] [caravel_yifive/] [verilog/] [rtl/] [syntacore/] [scr1/] [sim/] [tests/] [common/] [common.mk] - Blame information for rev 22

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 22 dinesha
ADD_ASM_MACRO ?= -D__ASSEMBLY__=1
2
 
3
FLAGS = -O2 -funroll-loops -fpeel-loops -fgcse-sm -fgcse-las $(ADD_FLAGS)
4
FLAGS_STR = "$(FLAGS)"
5
 
6
CFLAGS_COMMON = -static -std=gnu99 -fno-common -fno-builtin-printf -DTCM=$(TCM)
7
CFLAGS_ARCH = -Wa,-march=rv32$(ARCH) -march=rv32$(ARCH) -mabi=$(ABI)
8
 
9
CFLAGS := $(FLAGS) $(EXT_CFLAGS) \
10
$(CFLAGS_COMMON) \
11
$(CFLAGS_ARCH) \
12
-DFLAGS_STR=\"$(FLAGS_STR)\" \
13
$(ADD_CFLAGS)
14
 
15
LDFLAGS   ?= -nostartfiles -nostdlib -lc -lgcc -march=rv32$(ARCH) -mabi=$(ABI)
16
 
17
ifeq (,$(findstring 0,$(TCM)))
18
ld_script ?= $(inc_dir)/link_tcm.ld
19
asm_src   ?= crt_tcm.S
20
else
21
ld_script ?= $(inc_dir)/link.ld
22
asm_src   ?= crt.S
23
endif
24
 
25
VPATH += $(src_dir) $(inc_dir) $(ADD_VPATH)
26
incs  += -I$(src_dir) -I$(inc_dir) $(ADD_incs)
27
 
28
c_objs   := $(addprefix $(bld_dir)/,$(patsubst %.c, %.o, $(c_src)))
29
asm_objs := $(addprefix $(bld_dir)/,$(patsubst %.S, %.o, $(asm_src)))
30
 
31
$(bld_dir)/%.o: %.S
32
        $(RISCV_GCC) $(CFLAGS) $(ADD_ASM_MACRO) -c $(incs) $< -o $@
33
 
34
$(bld_dir)/%.o: %.c
35
        $(RISCV_GCC) $(CFLAGS) -c $(incs) $< -o $@
36
 
37
$(bld_dir)/%.elf: $(ld_script) $(c_objs) $(asm_objs)
38
        $(RISCV_GCC) -o $@ -T $^ $(LDFLAGS)
39
 
40
$(bld_dir)/%.hex: $(bld_dir)/%.elf
41
        $(RISCV_OBJCOPY) $^ $@
42
 
43
$(bld_dir)/%.dump: $(bld_dir)/%.elf
44
        $(RISCV_OBJDUMP) $^ > $@

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.