SConscript revision 2978
1# -*- mode:python -*- 2 3# Copyright (c) 2006 The Regents of The University of Michigan 4# All rights reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions are 8# met: redistributions of source code must retain the above copyright 9# notice, this list of conditions and the following disclaimer; 10# redistributions in binary form must reproduce the above copyright 11# notice, this list of conditions and the following disclaimer in the 12# documentation and/or other materials provided with the distribution; 13# neither the name of the copyright holders nor the names of its 14# contributors may be used to endorse or promote products derived from 15# this software without specific prior written permission. 16# 17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28# 29# Authors: Korey Sewell 30 31import os 32import os.path 33import sys 34 35# Import build environment variable from SConstruct. 36Import('env') 37 38 39################################################################# 40# 41# Include ISA-specific files for the O3 CPU-model 42# 43################################################################# 44 45sources = [] 46 47if env['TARGET_ISA'] == 'alpha': 48 sources += Split(''' 49 alpha/dyn_inst.cc 50 alpha/cpu.cc 51 alpha/thread_context.cc 52 alpha/cpu_builder.cc 53 ''') 54elif env['TARGET_ISA'] == 'mips': 55 sources += Split(''' 56 mips/dyn_inst.cc 57 mips/cpu.cc 58 mips/thread_context.cc 59 mips/cpu_builder.cc 60 ''') 61elif env['TARGET_ISA'] == 'sparc': 62 sources += Split(''' 63 sparc/dyn_inst.cc 64 sparc/cpu.cc 65 sparc/thread_context.cc 66 sparc/cpu_builder.cc 67 ''') 68else: 69 sys.exit('O3 CPU does not support the \'%s\' ISA' % env['TARGET_ISA']) 70 71 72# Convert file names to SCons File objects. This takes care of the 73# path relative to the top of the directory tree. 74sources = [File(s) for s in sources] 75 76Return('sources') 77 78