SConscript revision 7816
15353Svilas.sridharan@gmail.com# -*- mode:python -*-
23395Shsul@eecs.umich.edu
33395Shsul@eecs.umich.edu# Copyright (c) 2004-2006 The Regents of The University of Michigan
43395Shsul@eecs.umich.edu# All rights reserved.
53395Shsul@eecs.umich.edu#
63395Shsul@eecs.umich.edu# Redistribution and use in source and binary forms, with or without
73395Shsul@eecs.umich.edu# modification, are permitted provided that the following conditions are
83395Shsul@eecs.umich.edu# met: redistributions of source code must retain the above copyright
93395Shsul@eecs.umich.edu# notice, this list of conditions and the following disclaimer;
103395Shsul@eecs.umich.edu# redistributions in binary form must reproduce the above copyright
113395Shsul@eecs.umich.edu# notice, this list of conditions and the following disclaimer in the
123395Shsul@eecs.umich.edu# documentation and/or other materials provided with the distribution;
133395Shsul@eecs.umich.edu# neither the name of the copyright holders nor the names of its
143395Shsul@eecs.umich.edu# contributors may be used to endorse or promote products derived from
153395Shsul@eecs.umich.edu# this software without specific prior written permission.
163395Shsul@eecs.umich.edu#
173395Shsul@eecs.umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
183395Shsul@eecs.umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
193395Shsul@eecs.umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
203395Shsul@eecs.umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
213395Shsul@eecs.umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
223395Shsul@eecs.umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
233395Shsul@eecs.umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
243395Shsul@eecs.umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
253395Shsul@eecs.umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
263395Shsul@eecs.umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
273395Shsul@eecs.umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
283395Shsul@eecs.umich.edu#
293395Shsul@eecs.umich.edu# Authors: Gabe Black
303395Shsul@eecs.umich.edu#          Steve Reinhardt
313395Shsul@eecs.umich.edu#          Korey Sewell
325869Sksewell@umich.edu
335361Srstrong@cs.ucsd.eduImport('*')
343395Shsul@eecs.umich.edu
354455Ssaidi@eecs.umich.eduif env['TARGET_ISA'] == 'mips':
364968Sacolyte@umich.edu    Source('faults.cc')
376893SBrad.Beckmann@amd.com    Source('isa.cc')
386893SBrad.Beckmann@amd.com    Source('tlb.cc')
396908SBrad.Beckmann@amd.com    Source('pagetable.cc')
406916SBrad.Beckmann@amd.com    Source('utility.cc')
416916SBrad.Beckmann@amd.com    Source('dsp.cc')
426916SBrad.Beckmann@amd.com
436916SBrad.Beckmann@amd.com    SimObject('MipsTLB.py')
446918SBrad.Beckmann@amd.com    TraceFlag('MipsPRA')
456918SBrad.Beckmann@amd.com
467025SBrad.Beckmann@amd.com    if env['FULL_SYSTEM']:
477025SBrad.Beckmann@amd.com        SimObject('MipsSystem.py')
487025SBrad.Beckmann@amd.com        SimObject('MipsInterrupts.py')
497025SBrad.Beckmann@amd.com        Source('idle_event.cc')
507025SBrad.Beckmann@amd.com        Source('mips_core_specific.cc')
513395Shsul@eecs.umich.edu        Source('vtophys.cc')
526892SBrad.Beckmann@amd.com        Source('system.cc')
536892SBrad.Beckmann@amd.com        Source('stacktrace.cc')
546892SBrad.Beckmann@amd.com        Source('linux/system.cc')
553395Shsul@eecs.umich.edu        Source('interrupts.cc')
566641Sksewell@umich.edu        Source('bare_iron/system.cc')
576144Sksewell@umich.edu    else:
586144Sksewell@umich.edu        Source('process.cc')
593395Shsul@eecs.umich.edu        Source('linux/linux.cc')
603395Shsul@eecs.umich.edu        Source('linux/process.cc')
613395Shsul@eecs.umich.edu
623395Shsul@eecs.umich.edu    # Add in files generated by the ISA description.
635361Srstrong@cs.ucsd.edu    isa_desc_files = env.ISADesc('isa/main.isa')
645361Srstrong@cs.ucsd.edu    # Only non-header files need to be compiled.
655361Srstrong@cs.ucsd.edu    for f in isa_desc_files:
665361Srstrong@cs.ucsd.edu        if not f.path.endswith('.hh'):
675361Srstrong@cs.ucsd.edu            Source(f)
685361Srstrong@cs.ucsd.edu