SConscript revision 8335
1768SN/A# -*- mode:python -*- 21762SN/A 3768SN/A# Copyright (c) 2009 ARM Limited 4768SN/A# All rights reserved. 5768SN/A# 6768SN/A# The license below extends only to copyright in the software and shall 7768SN/A# not be construed as granting a license to any other intellectual 8768SN/A# property including but not limited to intellectual property relating 9768SN/A# to a hardware implementation of the functionality of the software 10768SN/A# licensed hereunder. You may use the software subject to the license 11768SN/A# terms below provided that you ensure that this notice is replicated 12768SN/A# unmodified and in its entirety in all distributions of the software, 13768SN/A# modified or unmodified, in source code or in binary form. 14768SN/A# 15768SN/A# Copyright (c) 2007-2008 The Florida State University 16768SN/A# All rights reserved. 17768SN/A# 18768SN/A# Redistribution and use in source and binary forms, with or without 19768SN/A# modification, are permitted provided that the following conditions are 20768SN/A# met: redistributions of source code must retain the above copyright 21768SN/A# notice, this list of conditions and the following disclaimer; 22768SN/A# redistributions in binary form must reproduce the above copyright 23768SN/A# notice, this list of conditions and the following disclaimer in the 24768SN/A# documentation and/or other materials provided with the distribution; 25768SN/A# neither the name of the copyright holders nor the names of its 26768SN/A# contributors may be used to endorse or promote products derived from 272665SN/A# this software without specific prior written permission. 282665SN/A# 292665SN/A# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 302665SN/A# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 31768SN/A# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 32768SN/A# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 331722SN/A# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 341722SN/A# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 35768SN/A# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 36768SN/A# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 371401SN/A# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 381401SN/A# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 39768SN/A# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 403540Sgblack@eecs.umich.edu# 419338SAndreas.Sandberg@arm.com# Authors: Stephen Hines 425443Sgblack@eecs.umich.edu# Ali Saidi 438229Snate@binkert.org 445392Sgblack@eecs.umich.eduImport('*') 454762Snate@binkert.org 46932SN/Aif env['TARGET_ISA'] == 'arm': 47768SN/A# Workaround for bug in SCons version > 0.97d20071212 481722SN/A# Scons bug id: 2006 M5 Bug id: 308 49885SN/A Dir('isa/formats') 50885SN/A Source('faults.cc') 51768SN/A Source('insts/macromem.cc') 522542SN/A Source('insts/mem.cc') 53768SN/A Source('insts/misc.cc') 54773SN/A Source('insts/pred_inst.cc') 55768SN/A Source('insts/static_inst.cc') 565392Sgblack@eecs.umich.edu Source('insts/vfp.cc') 575606Snate@binkert.org Source('isa.cc') 581854SN/A Source('miscregs.cc') 595392Sgblack@eecs.umich.edu Source('predecoder.cc') 605606Snate@binkert.org Source('nativetrace.cc') 615606Snate@binkert.org Source('tlb.cc') 625392Sgblack@eecs.umich.edu Source('utility.cc') 635392Sgblack@eecs.umich.edu Source('remote_gdb.cc') 645392Sgblack@eecs.umich.edu 651854SN/A SimObject('ArmNativeTrace.py') 665392Sgblack@eecs.umich.edu SimObject('ArmTLB.py') 675392Sgblack@eecs.umich.edu 685392Sgblack@eecs.umich.edu DebugFlag('Arm') 691817SN/A DebugFlag('TLBVerbose') 70771SN/A DebugFlag('Faults', "Trace Exceptions, interrupts, svc/swi") 71885SN/A DebugFlag('Predecoder', "Instructions returned by the predecoder") 72803SN/A if env['FULL_SYSTEM']: 73885SN/A Source('interrupts.cc') 74885SN/A Source('stacktrace.cc') 75803SN/A Source('system.cc') 76885SN/A Source('vtophys.cc') 77885SN/A Source('linux/system.cc') 78803SN/A Source('table_walker.cc') 79885SN/A 80885SN/A SimObject('ArmInterrupts.py') 81803SN/A SimObject('ArmSystem.py') 82769SN/A else: 83885SN/A Source('process.cc') 84885SN/A Source('linux/linux.cc') 85885SN/A Source('linux/process.cc') 86885SN/A 87777SN/A # Add in files generated by the ISA description. 88777SN/A isa_desc_files = env.ISADesc('isa/main.isa') 89885SN/A # Only non-header files need to be compiled. 90775SN/A for f in isa_desc_files: 91775SN/A if not f.path.endswith('.hh'): 921817SN/A Source(f) 935443Sgblack@eecs.umich.edu 94773SN/A