SConscript revision 8335:9228e00459d4
1# -*- mode:python -*-
2
3# Copyright (c) 2006 The Regents of The University of Michigan
4# All rights reserved.
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions are
8# met: redistributions of source code must retain the above copyright
9# notice, this list of conditions and the following disclaimer;
10# redistributions in binary form must reproduce the above copyright
11# notice, this list of conditions and the following disclaimer in the
12# documentation and/or other materials provided with the distribution;
13# neither the name of the copyright holders nor the names of its
14# contributors may be used to endorse or promote products derived from
15# this software without specific prior written permission.
16#
17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#
29# Authors: Nathan Binkert
30
31Import('*')
32
33SimObject('BaseTLB.py')
34SimObject('Root.py')
35SimObject('InstTracer.py')
36
37Source('async.cc')
38Source('core.cc')
39Source('debug.cc')
40Source('eventq.cc')
41Source('init.cc')
42Source('main.cc', main=True, skip_lib=True)
43Source('root.cc')
44Source('serialize.cc')
45Source('sim_events.cc')
46Source('sim_object.cc')
47Source('simulate.cc')
48Source('stat_control.cc')
49
50if env['TARGET_ISA'] != 'no':
51    SimObject('System.py')
52    Source('faults.cc')
53    Source('pseudo_inst.cc')
54    Source('system.cc')
55
56if env['FULL_SYSTEM']:
57    Source('arguments.cc')
58elif env['TARGET_ISA'] != 'no':
59    Source('tlb.cc')
60    SimObject('Process.py')
61
62    Source('process.cc')
63    Source('syscall_emul.cc')
64
65DebugFlag('Checkpoint')
66DebugFlag('Config')
67DebugFlag('Event')
68DebugFlag('Fault')
69DebugFlag('Flow')
70DebugFlag('IPI')
71DebugFlag('IPR')
72DebugFlag('Interrupt')
73DebugFlag('Loader')
74DebugFlag('Stack')
75DebugFlag('SyscallVerbose')
76DebugFlag('TimeSync')
77DebugFlag('TLB')
78DebugFlag('Thread')
79DebugFlag('Timer')
80DebugFlag('VtoPhys')
81DebugFlag('WorkItems')
82