SConscript revision 7087
14120Sgblack@eecs.umich.edu# -*- mode:python -*- 24120Sgblack@eecs.umich.edu 37087Snate@binkert.org# Copyright (c) 2007-2008 The Florida State University 47087Snate@binkert.org# Copyright (c) 2009 ARM Limited 57087Snate@binkert.org# All rights reserved. 67087Snate@binkert.org# 77087Snate@binkert.org# Redistribution and use in source and binary forms, with or without 87087Snate@binkert.org# modification, are permitted provided that the following conditions are 97087Snate@binkert.org# met: redistributions of source code must retain the above copyright 107087Snate@binkert.org# notice, this list of conditions and the following disclaimer; 117087Snate@binkert.org# redistributions in binary form must reproduce the above copyright 127087Snate@binkert.org# notice, this list of conditions and the following disclaimer in the 137087Snate@binkert.org# documentation and/or other materials provided with the distribution; 147087Snate@binkert.org# neither the name of the copyright holders nor the names of its 154120Sgblack@eecs.umich.edu# contributors may be used to endorse or promote products derived from 164120Sgblack@eecs.umich.edu# this software without specific prior written permission. 174120Sgblack@eecs.umich.edu# 184120Sgblack@eecs.umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 194120Sgblack@eecs.umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 204120Sgblack@eecs.umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 214120Sgblack@eecs.umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 224120Sgblack@eecs.umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 234120Sgblack@eecs.umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 244120Sgblack@eecs.umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 254120Sgblack@eecs.umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 264120Sgblack@eecs.umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 274120Sgblack@eecs.umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 284120Sgblack@eecs.umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 294120Sgblack@eecs.umich.edu# 304120Sgblack@eecs.umich.edu# Authors: Stephen Hines 314120Sgblack@eecs.umich.edu# Ali Saidi 324120Sgblack@eecs.umich.edu 334120Sgblack@eecs.umich.eduImport('*') 344120Sgblack@eecs.umich.edu 354120Sgblack@eecs.umich.eduif env['TARGET_ISA'] == 'arm': 364120Sgblack@eecs.umich.edu# Workaround for bug in SCons version > 0.97d20071212 374120Sgblack@eecs.umich.edu# Scons bug id: 2006 M5 Bug id: 308 384120Sgblack@eecs.umich.edu Dir('isa/formats') 394120Sgblack@eecs.umich.edu Source('faults.cc') 404120Sgblack@eecs.umich.edu Source('insts/branch.cc') 414120Sgblack@eecs.umich.edu Source('insts/mem.cc') 424120Sgblack@eecs.umich.edu Source('insts/pred_inst.cc') 434202Sbinkertn@umich.edu Source('insts/static_inst.cc') 445069Sgblack@eecs.umich.edu Source('nativetrace.cc') 454202Sbinkertn@umich.edu Source('pagetable.cc') 465659Sgblack@eecs.umich.edu Source('tlb.cc') 479022Sgblack@eecs.umich.edu Source('vtophys.cc') 489023Sgblack@eecs.umich.edu Source('utility.cc') 494601Sgblack@eecs.umich.edu 505124Sgblack@eecs.umich.edu SimObject('ArmNativeTrace.py') 517966Sgblack@eecs.umich.edu SimObject('ArmTLB.py') 525083Sgblack@eecs.umich.edu 534679Sgblack@eecs.umich.edu TraceFlag('Arm') 546515Sgblack@eecs.umich.edu TraceFlag('Faults', "Trace Exceptions, interrupts, svc/swi") 555083Sgblack@eecs.umich.edu if env['FULL_SYSTEM']: 564679Sgblack@eecs.umich.edu Source('interrupts.cc') 574679Sgblack@eecs.umich.edu Source('stacktrace.cc') 588745Sgblack@eecs.umich.edu Source('system.cc') 596313Sgblack@eecs.umich.edu 608771Sgblack@eecs.umich.edu SimObject('ArmInterrupts.py') 618771Sgblack@eecs.umich.edu SimObject('ArmSystem.py') 628771Sgblack@eecs.umich.edu else: 636365Sgblack@eecs.umich.edu Source('process.cc') 645124Sgblack@eecs.umich.edu Source('linux/linux.cc') 658752Sgblack@eecs.umich.edu Source('linux/process.cc') 668771Sgblack@eecs.umich.edu 6710553Salexandru.dutu@amd.com # Add in files generated by the ISA description. 684202Sbinkertn@umich.edu isa_desc_files = env.ISADesc('isa/main.isa') 698771Sgblack@eecs.umich.edu # Only non-header files need to be compiled. 708771Sgblack@eecs.umich.edu for f in isa_desc_files: 714997Sgblack@eecs.umich.edu if not f.path.endswith('.hh'): 727624Sgblack@eecs.umich.edu Source(f) 735135Sgblack@eecs.umich.edu 748753Sgblack@eecs.umich.edu