OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [orpsocv2/] [bench/] [sysc/] [src/] [Modules.make] - Blame information for rev 642

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

Line No. Rev Author Line
1 6 julius
# Make file for SystemC modules not associated directly with Verilator
2
#
3
# Copyright (C) 2009 Embecosm Limited
4
#
5
# Contributor Jeremy Bennett 
6
#
7
# This file is part of the cycle accurate model of the OpenRISC 1000 based
8
# system-on-chip, ORPSoC, built using Verilator.
9
#
10
# This program is free software; you can redistribute it and/or modify it
11
# under the terms of the GNU General Public License as published by the Free
12
# Software Foundation; either version 3 of the License, or (at your option)
13
# any later version.
14
#
15
# This program is distributed in the hope that it will be useful, but WITHOUT
16
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
18
# more details.
19
#
20
# You should have received a copy of the GNU General Public License along
21
# with this program.  If not, see . */
22
 
23
# The C/C++ parts of this program are commented throughout in a fashion
24
# suitable for processing with Doxygen.
25
 
26
# Tools and flags
27
ARFLAGS = rcs
28
#CXXFLAGS += $(OPT_FAST) $(OPT_SLOW) $(OPT) $(PROF_FLAGS)
29 49 julius
 
30
ifdef VLT_CPPFLAGS
31
CXXFLAGS += $(VLT_CPPFLAGS)
32
endif
33
 
34 63 julius
CPPFLAGS += -DTARGET_BIG_ENDIAN
35
 
36 6 julius
CXX ?= g++
37 49 julius
#PROF_OPTS ?= -fbranch-probabilities -fvpt -funroll-loops -fpeel-loops -ftracer -O3
38 6 julius
OPT_ALL ?= $(OPT_SLOW) $(OPT_FAST) $(OPT)
39
 
40
# Sub-directories
41
SYSC_INC_DIR = ../include
42
INCDIRS   = -I$(SYSTEMC)/include -I$(SYSC_INC_DIR)
43
 
44
# Local objects
45 63 julius
OBJS = DebugUnitSC.o \
46
        GdbServerSC.o \
47
        JtagSC.o          \
48
        TapAction.o       \
49
        TapActionDRScan.o \
50
        TapActionIRScan.o \
51
        TapActionReset.o  \
52
        TapStateMachine.o \
53
        MemCache.o \
54
        MpHash.o \
55
        Or1200MonitorSC.o \
56
        ResetSC.o \
57
        RspConnection.o \
58
        RspPacket.o \
59
        SprCache.o \
60
        Utils.o \
61 6 julius
        UartSC.o
62
LIB  = libmodules.a
63
 
64 49 julius
ifdef VLT_DEBUG
65
CXXFLAGS += -g
66
endif
67
 
68 6 julius
# -----------------------------------------------------------------------------
69
# Rule to make dependency files
70
%.d: %.cpp
71
        @set -e; rm -f $@; \
72
                $(CXX) -MM $(CPPFLAGS) $(INCDIRS) $< > $@.$$$$; \
73
                sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
74
                rm -f $@.$$$$
75
 
76
# Rule to make object files
77
%.o: %.cpp
78 49 julius
        $(CXX) $(CPPFLAGS) $(PROF_OPTS) $(INCDIRS) $(CXXFLAGS) -c  $<
79 6 julius
 
80
 
81
# -----------------------------------------------------------------------------
82
# Make the library
83
$(LIB): $(OBJS)
84
        $(AR) $(ARFLAGS) $@ $+
85
 
86
 
87
# -----------------------------------------------------------------------------
88
# Tidy up
89
.PHONY: clean
90
clean:
91
        $(RM) *.d *.d.*
92
        $(RM) *.o *.gcno *.gcda
93
        $(RM) $(LIB)
94
 
95
 
96
# -----------------------------------------------------------------------------
97
# More modest tidy up for branch profiling
98
.PHONY: prof-clean
99
prof-clean:
100
        $(RM) *.o
101
        $(RM) $(LIB)
102
 
103
 
104
# -----------------------------------------------------------------------------
105
# Include the dependency files
106 64 julius
# Comment out for now. include $(OBJS:.o=.d)

powered by: WebSVN 2.1.0

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