SConscript revision 7832
114209Sandreas.sandberg@arm.com# -*- mode:python -*-
214209Sandreas.sandberg@arm.com
314209Sandreas.sandberg@arm.com# Copyright (c) 2006 The Regents of The University of Michigan
414209Sandreas.sandberg@arm.com# All rights reserved.
514209Sandreas.sandberg@arm.com#
614209Sandreas.sandberg@arm.com# Redistribution and use in source and binary forms, with or without
714209Sandreas.sandberg@arm.com# modification, are permitted provided that the following conditions are
814209Sandreas.sandberg@arm.com# met: redistributions of source code must retain the above copyright
914209Sandreas.sandberg@arm.com# notice, this list of conditions and the following disclaimer;
1014209Sandreas.sandberg@arm.com# redistributions in binary form must reproduce the above copyright
1114209Sandreas.sandberg@arm.com# notice, this list of conditions and the following disclaimer in the
1214209Sandreas.sandberg@arm.com# documentation and/or other materials provided with the distribution;
1314209Sandreas.sandberg@arm.com# neither the name of the copyright holders nor the names of its
1414209Sandreas.sandberg@arm.com# contributors may be used to endorse or promote products derived from
1514209Sandreas.sandberg@arm.com# this software without specific prior written permission.
1614209Sandreas.sandberg@arm.com#
1714209Sandreas.sandberg@arm.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1814209Sandreas.sandberg@arm.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1914209Sandreas.sandberg@arm.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2014209Sandreas.sandberg@arm.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
2114209Sandreas.sandberg@arm.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2214209Sandreas.sandberg@arm.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2314209Sandreas.sandberg@arm.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2414209Sandreas.sandberg@arm.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2514209Sandreas.sandberg@arm.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2614209Sandreas.sandberg@arm.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2714209Sandreas.sandberg@arm.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2814209Sandreas.sandberg@arm.com#
2914209Sandreas.sandberg@arm.com# Authors: Nathan Binkert
3014209Sandreas.sandberg@arm.com
3114209Sandreas.sandberg@arm.comImport('*')
3214209Sandreas.sandberg@arm.com
3314209Sandreas.sandberg@arm.comSimObject('Bridge.py')
3414209Sandreas.sandberg@arm.comSimObject('Bus.py')
3514209Sandreas.sandberg@arm.comSimObject('MemObject.py')
3614209Sandreas.sandberg@arm.com
3714209Sandreas.sandberg@arm.comSource('bridge.cc')
3814209Sandreas.sandberg@arm.comSource('bus.cc')
3914209Sandreas.sandberg@arm.comSource('mem_object.cc')
4014209Sandreas.sandberg@arm.comSource('packet.cc')
4114209Sandreas.sandberg@arm.comSource('port.cc')
4214209Sandreas.sandberg@arm.comSource('tport.cc')
4314209Sandreas.sandberg@arm.comSource('mport.cc')
4414209Sandreas.sandberg@arm.com
4514209Sandreas.sandberg@arm.comif env['TARGET_ISA'] != 'no':
4614209Sandreas.sandberg@arm.com    SimObject('PhysicalMemory.py')
4714209Sandreas.sandberg@arm.com    Source('dram.cc')
4814209Sandreas.sandberg@arm.com    Source('physical.cc')
4914209Sandreas.sandberg@arm.com
5014209Sandreas.sandberg@arm.comif env['FULL_SYSTEM']:
5114209Sandreas.sandberg@arm.com    Source('vport.cc')
5214209Sandreas.sandberg@arm.comelif env['TARGET_ISA'] != 'no':
5314209Sandreas.sandberg@arm.com    Source('page_table.cc')
5414209Sandreas.sandberg@arm.com    Source('translating_port.cc')
5514209Sandreas.sandberg@arm.com
5614209Sandreas.sandberg@arm.comTraceFlag('Bus')
5714209Sandreas.sandberg@arm.comTraceFlag('BusAddrRanges')
5814209Sandreas.sandberg@arm.comTraceFlag('BusBridge')
5914209Sandreas.sandberg@arm.comTraceFlag('LLSC')
6014209Sandreas.sandberg@arm.comTraceFlag('MMU')
6114209Sandreas.sandberg@arm.comTraceFlag('MemoryAccess')
6214209Sandreas.sandberg@arm.com
6314209Sandreas.sandberg@arm.comTraceFlag('ProtocolTrace')
6414209Sandreas.sandberg@arm.comTraceFlag('RubyCache')
6514209Sandreas.sandberg@arm.comTraceFlag('RubyDma')
6614209Sandreas.sandberg@arm.comTraceFlag('RubyGenerated')
6714209Sandreas.sandberg@arm.comTraceFlag('RubyMemory')
6814209Sandreas.sandberg@arm.comTraceFlag('RubyNetwork')
6914209Sandreas.sandberg@arm.comTraceFlag('RubyQueue')
7014209Sandreas.sandberg@arm.comTraceFlag('RubyPort')
7114209Sandreas.sandberg@arm.comTraceFlag('RubySlicc')
7214209Sandreas.sandberg@arm.comTraceFlag('RubyStorebuffer')
7314209Sandreas.sandberg@arm.comTraceFlag('RubyTester')
7414209Sandreas.sandberg@arm.com
7514209Sandreas.sandberg@arm.comCompoundFlag('Ruby', [ 'RubyQueue', 'RubyNetwork', 'RubyTester',
7614209Sandreas.sandberg@arm.com    'RubyGenerated', 'RubySlicc', 'RubyStorebuffer', 'RubyCache', 
7714209Sandreas.sandberg@arm.com    'RubyMemory', 'RubyDma'])
7814209Sandreas.sandberg@arm.com