SConscript revision 6313
15389SN/A# -*- mode:python -*-
25389SN/A
35389SN/A# Copyright (c) 2004-2005 The Regents of The University of Michigan
45389SN/A# All rights reserved.
55389SN/A#
65389SN/A# Redistribution and use in source and binary forms, with or without
75389SN/A# modification, are permitted provided that the following conditions are
85389SN/A# met: redistributions of source code must retain the above copyright
95389SN/A# notice, this list of conditions and the following disclaimer;
105389SN/A# redistributions in binary form must reproduce the above copyright
115389SN/A# notice, this list of conditions and the following disclaimer in the
125389SN/A# documentation and/or other materials provided with the distribution;
135389SN/A# neither the name of the copyright holders nor the names of its
145389SN/A# contributors may be used to endorse or promote products derived from
155389SN/A# this software without specific prior written permission.
165389SN/A#
175389SN/A# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
185389SN/A# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
195389SN/A# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
205389SN/A# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
215389SN/A# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
225389SN/A# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
235389SN/A# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
245389SN/A# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
255389SN/A# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
265389SN/A# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
275389SN/A# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
285389SN/A#
295389SN/A# Authors: Gabe Black
305389SN/A#          Steve Reinhardt
315478SN/A
3213665Sandreas.sandberg@arm.comImport('*')
3313665Sandreas.sandberg@arm.com
3413665Sandreas.sandberg@arm.comif env['TARGET_ISA'] == 'alpha':
3513665Sandreas.sandberg@arm.com    Source('ev5.cc')
3613665Sandreas.sandberg@arm.com    Source('faults.cc')
3713665Sandreas.sandberg@arm.com    Source('floatregfile.cc')
385389SN/A    Source('intregfile.cc')
395389SN/A    Source('ipr.cc')
405389SN/A    Source('isa.cc')
415389SN/A    Source('miscregfile.cc')
425389SN/A    Source('pagetable.cc')
4311244Sandreas.sandberg@arm.com    Source('regfile.cc')
4411244Sandreas.sandberg@arm.com    Source('remote_gdb.cc')
4511244Sandreas.sandberg@arm.com    Source('tlb.cc')
4611244Sandreas.sandberg@arm.com    Source('utility.cc')
4711244Sandreas.sandberg@arm.com
4811244Sandreas.sandberg@arm.com    SimObject('AlphaTLB.py')
495638Sgblack@eecs.umich.edu
505638Sgblack@eecs.umich.edu    if env['FULL_SYSTEM']:
519338SAndreas.Sandberg@arm.com        SimObject('AlphaInterrupts.py')
525389SN/A        SimObject('AlphaSystem.py')
535389SN/A
545390SN/A        Source('idle_event.cc')
5511244Sandreas.sandberg@arm.com        Source('interrupts.cc')
565390SN/A        Source('kernel_stats.cc')
5710548Sgabeblack@google.com        Source('osfpal.cc')
5810548Sgabeblack@google.com        Source('stacktrace.cc')
5910548Sgabeblack@google.com        Source('system.cc')
605390SN/A        Source('vtophys.cc')
615447SN/A
625447SN/A        Source('freebsd/system.cc')
635447SN/A        Source('linux/system.cc')
645447SN/A        Source('tru64/system.cc')
655478SN/A
665389SN/A    else:
675389SN/A        Source('process.cc')
6812274Sgabeblack@google.com
695389SN/A        Source('linux/linux.cc')
705816Sgblack@eecs.umich.edu        Source('linux/process.cc')
715816Sgblack@eecs.umich.edu
725816Sgblack@eecs.umich.edu        Source('tru64/tru64.cc')
735816Sgblack@eecs.umich.edu        Source('tru64/process.cc')
745816Sgblack@eecs.umich.edu
755817Sgblack@eecs.umich.edu    # Add in files generated by the ISA description.
765833Sgblack@eecs.umich.edu    isa_desc_files = env.ISADesc('isa/main.isa')
775817Sgblack@eecs.umich.edu    # Only non-header files need to be compiled.
788929Snilay@cs.wisc.edu    for f in isa_desc_files:
798929Snilay@cs.wisc.edu        if not f.path.endswith('.hh'):
8010548Sgabeblack@google.com            Source(f)
8110548Sgabeblack@google.com