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

Subversion Repositories riscv_vhdl

[/] [riscv_vhdl/] [trunk/] [debugger/] [makefiles/] [make_cpu_sysc_plugin] - Blame information for rev 2

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 sergeykhbr
###
2
## @file
3
## @copyright  Copyright 2016 GNSS Sensor Ltd. All right reserved.
4
## @author     Sergey Khabarov - sergeykhbr@gmail.com
5
##
6
 
7
include util.mak
8
 
9
ifeq ($(SYSTEMC_SRC), )
10
   $(error SYSTEMC_SRC variable must be defined)
11
endif
12
 
13
ifeq ($(SYSTEMC_LIB), )
14
   $(error SYSTEMC_LIB variable must be defined)
15
endif
16
 
17
CC=gcc
18
CPP=gcc
19
CFLAGS=-g -c -Wall -Werror -fPIC -pthread
20
LDFLAGS=-shared -pthread -L$(SYSTEMC_LIB) -L$(PLUGINS_ELF_DIR)/..
21
INCL_KEY=-I
22
DIR_KEY=-B
23
 
24
 
25
# include sub-folders list
26
INCL_PATH= \
27
        $(SYSTEMC_SRC) \
28
        $(TOP_DIR)src/common
29
 
30
# source files directories list:
31
SRC_PATH =\
32
        $(TOP_DIR)src/common \
33
        $(TOP_DIR)src/cpu_sysc_plugin \
34
        $(TOP_DIR)src/cpu_sysc_plugin/riverlib \
35
        $(TOP_DIR)src/cpu_sysc_plugin/riverlib/core \
36
        $(TOP_DIR)src/cpu_sysc_plugin/riverlib/core/arith \
37
        $(TOP_DIR)src/cpu_sysc_plugin/riverlib/cache
38
 
39
VPATH = $(SRC_PATH)
40
 
41
SOURCES = \
42
        attribute \
43
        autobuffer \
44
        async_tqueue \
45
        plugin_init \
46
        cpu_riscv_rtl \
47
        rtl_wrapper \
48
        river_top \
49
        icache \
50
        dcache \
51
        cache_top \
52
        int_mul \
53
        int_div \
54
        shift \
55
        br_predic \
56
        csr \
57
        decoder \
58
        execute \
59
        fetch \
60
        memaccess \
61
        proc \
62
        regibank \
63
        stacktrbuf \
64
        dbg_port
65
 
66
LIBS = \
67
        dbg64g \
68
        pthread \
69
        m \
70
        stdc++
71
 
72
SRC_FILES = $(addsuffix .cpp,$(SOURCES))
73
OBJ_FILES = $(addprefix $(PLUGINS_OBJ_DIR)/,$(addsuffix .o,$(SOURCES)))
74
EXECUTABLE = $(addprefix $(PLUGINS_ELF_DIR)/,cpu_sysc_plugin.so)
75
 
76
all: $(EXECUTABLE)
77
 
78
all: $(EXECUTABLE)
79
 
80
$(EXECUTABLE): $(OBJ_FILES)
81
        echo $(CPP) $(LDFLAGS) $(OBJ_FILES) -o $@ -Wl,-Bstatic -lsystemc -Wl,-Bdynamic $(addprefix -l,$(LIBS))
82
        $(CPP) $(LDFLAGS) $(OBJ_FILES) -o $@ -Wl,-Bstatic -lsystemc -Wl,-Bdynamic $(addprefix -l,$(LIBS))
83
        $(ECHO) "\n  Plugin '"$@"' has been built successfully.\n"
84
 
85
$(addprefix $(PLUGINS_OBJ_DIR)/,%.o): %.cpp
86
        echo $(CPP) $(CFLAGS) -std=c++0x $(addprefix $(INCL_KEY),$(INCL_PATH)) $< -o $@
87
        $(CPP) $(CFLAGS) -std=c++0x $(addprefix $(INCL_KEY),$(INCL_PATH)) $< -o $@
88
 
89
$(addprefix $(PLUGINS_OBJ_DIR)/,%.o): %.c
90
        echo $(CC) $(CFLAGS) -std=c99 $(addprefix $(INCL_KEY),$(INCL_PATH)) $< -o $@
91
        $(CC) $(CFLAGS) -std=c99 $(addprefix $(INCL_KEY),$(INCL_PATH)) $< -o $@

powered by: WebSVN 2.1.0

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