SConscript revision 14007
19397Sandreas.hansson@arm.com# -*- mode:python -*- 29397Sandreas.hansson@arm.com# 39397Sandreas.hansson@arm.com# Copyright (c) 2018 ARM Limited 49397Sandreas.hansson@arm.com# All rights reserved 59397Sandreas.hansson@arm.com# 69397Sandreas.hansson@arm.com# The license below extends only to copyright in the software and shall 79397Sandreas.hansson@arm.com# not be construed as granting a license to any other intellectual 89397Sandreas.hansson@arm.com# property including but not limited to intellectual property relating 99397Sandreas.hansson@arm.com# to a hardware implementation of the functionality of the software 109397Sandreas.hansson@arm.com# licensed hereunder. You may use the software subject to the license 119397Sandreas.hansson@arm.com# terms below provided that you ensure that this notice is replicated 129397Sandreas.hansson@arm.com# unmodified and in its entirety in all distributions of the software, 139397Sandreas.hansson@arm.com# modified or unmodified, in source code or in binary form. 149397Sandreas.hansson@arm.com# 159397Sandreas.hansson@arm.com# Copyright (c) 2006 The Regents of The University of Michigan 169397Sandreas.hansson@arm.com# All rights reserved. 179397Sandreas.hansson@arm.com# 189397Sandreas.hansson@arm.com# Redistribution and use in source and binary forms, with or without 199397Sandreas.hansson@arm.com# modification, are permitted provided that the following conditions are 209397Sandreas.hansson@arm.com# met: redistributions of source code must retain the above copyright 219397Sandreas.hansson@arm.com# notice, this list of conditions and the following disclaimer; 229397Sandreas.hansson@arm.com# redistributions in binary form must reproduce the above copyright 239397Sandreas.hansson@arm.com# notice, this list of conditions and the following disclaimer in the 249397Sandreas.hansson@arm.com# documentation and/or other materials provided with the distribution; 259397Sandreas.hansson@arm.com# neither the name of the copyright holders nor the names of its 269397Sandreas.hansson@arm.com# contributors may be used to endorse or promote products derived from 279397Sandreas.hansson@arm.com# this software without specific prior written permission. 289397Sandreas.hansson@arm.com# 299397Sandreas.hansson@arm.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 309397Sandreas.hansson@arm.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 319397Sandreas.hansson@arm.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 329397Sandreas.hansson@arm.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 339397Sandreas.hansson@arm.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 349397Sandreas.hansson@arm.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 359397Sandreas.hansson@arm.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 369397Sandreas.hansson@arm.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 379397Sandreas.hansson@arm.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 389397Sandreas.hansson@arm.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 399397Sandreas.hansson@arm.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 409397Sandreas.hansson@arm.com# 419397Sandreas.hansson@arm.com# Authors: Nathan Binkert 429397Sandreas.hansson@arm.com 439397Sandreas.hansson@arm.comImport('*') 449397Sandreas.hansson@arm.com 45SimObject('CommMonitor.py') 46Source('comm_monitor.cc') 47 48SimObject('AbstractMemory.py') 49SimObject('AddrMapper.py') 50SimObject('Bridge.py') 51SimObject('DRAMCtrl.py') 52SimObject('ExternalMaster.py') 53SimObject('ExternalSlave.py') 54SimObject('MemObject.py') 55SimObject('SimpleMemory.py') 56SimObject('XBar.py') 57SimObject('HMCController.py') 58SimObject('SerialLink.py') 59SimObject('MemDelay.py') 60 61Source('abstract_mem.cc') 62Source('addr_mapper.cc') 63Source('bridge.cc') 64Source('coherent_xbar.cc') 65Source('drampower.cc') 66Source('dram_ctrl.cc') 67Source('external_master.cc') 68Source('external_slave.cc') 69Source('mem_object.cc') 70Source('mport.cc') 71Source('noncoherent_xbar.cc') 72Source('packet.cc') 73Source('port.cc') 74Source('packet_queue.cc') 75Source('port_proxy.cc') 76Source('physical.cc') 77Source('secure_port_proxy.cc') 78Source('simple_mem.cc') 79Source('snoop_filter.cc') 80Source('stack_dist_calc.cc') 81Source('tport.cc') 82Source('xbar.cc') 83Source('hmc_controller.cc') 84Source('serial_link.cc') 85Source('mem_delay.cc') 86 87if env['TARGET_ISA'] != 'null': 88 Source('fs_translating_port_proxy.cc') 89 Source('se_translating_port_proxy.cc') 90 Source('page_table.cc') 91 92if env['HAVE_DRAMSIM']: 93 SimObject('DRAMSim2.py') 94 Source('dramsim2_wrapper.cc') 95 Source('dramsim2.cc') 96 97SimObject('MemChecker.py') 98Source('mem_checker.cc') 99Source('mem_checker_monitor.cc') 100 101DebugFlag('AddrRanges') 102DebugFlag('BaseXBar') 103DebugFlag('CoherentXBar') 104DebugFlag('NoncoherentXBar') 105DebugFlag('SnoopFilter') 106CompoundFlag('XBar', ['BaseXBar', 'CoherentXBar', 'NoncoherentXBar', 107 'SnoopFilter']) 108 109DebugFlag('Bridge') 110DebugFlag('CommMonitor') 111DebugFlag('DRAM') 112DebugFlag('DRAMPower') 113DebugFlag('DRAMState') 114DebugFlag('ExternalPort') 115DebugFlag('LLSC') 116DebugFlag('MMU') 117DebugFlag('MemoryAccess') 118DebugFlag('PacketQueue') 119DebugFlag('StackDist') 120DebugFlag("DRAMSim2") 121DebugFlag('HMCController') 122DebugFlag('SerialLink') 123 124DebugFlag("MemChecker") 125DebugFlag("MemCheckerMonitor") 126DebugFlag("QOS") 127