SConscript revision 4249
110399Sstephan.diestelhorst@arm.com# -*- mode:python -*-
211128Sali.jafri@arm.com
310399Sstephan.diestelhorst@arm.com# Copyright (c) 2005-2006 The Regents of The University of Michigan
410399Sstephan.diestelhorst@arm.com# All rights reserved.
510399Sstephan.diestelhorst@arm.com#
610399Sstephan.diestelhorst@arm.com# Redistribution and use in source and binary forms, with or without
710399Sstephan.diestelhorst@arm.com# modification, are permitted provided that the following conditions are
810399Sstephan.diestelhorst@arm.com# met: redistributions of source code must retain the above copyright
910399Sstephan.diestelhorst@arm.com# notice, this list of conditions and the following disclaimer;
1010399Sstephan.diestelhorst@arm.com# redistributions in binary form must reproduce the above copyright
1110399Sstephan.diestelhorst@arm.com# notice, this list of conditions and the following disclaimer in the
1210399Sstephan.diestelhorst@arm.com# documentation and/or other materials provided with the distribution;
1310399Sstephan.diestelhorst@arm.com# neither the name of the copyright holders nor the names of its
1410399Sstephan.diestelhorst@arm.com# contributors may be used to endorse or promote products derived from
1510399Sstephan.diestelhorst@arm.com# this software without specific prior written permission.
1610399Sstephan.diestelhorst@arm.com#
1710399Sstephan.diestelhorst@arm.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1810399Sstephan.diestelhorst@arm.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1910399Sstephan.diestelhorst@arm.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2010399Sstephan.diestelhorst@arm.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
2110399Sstephan.diestelhorst@arm.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2210399Sstephan.diestelhorst@arm.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2310399Sstephan.diestelhorst@arm.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2410399Sstephan.diestelhorst@arm.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2510399Sstephan.diestelhorst@arm.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2610399Sstephan.diestelhorst@arm.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2710399Sstephan.diestelhorst@arm.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2810399Sstephan.diestelhorst@arm.com#
2910399Sstephan.diestelhorst@arm.com# Authors: Gabe Black
3010399Sstephan.diestelhorst@arm.com
3110399Sstephan.diestelhorst@arm.com# Copyright (c) 2007 The Hewlett-Packard Development Company
3210399Sstephan.diestelhorst@arm.com# All rights reserved.
3310399Sstephan.diestelhorst@arm.com#
3410399Sstephan.diestelhorst@arm.com# Redistribution and use of this software in source and binary forms,
3510399Sstephan.diestelhorst@arm.com# with or without modification, are permitted provided that the
3610399Sstephan.diestelhorst@arm.com# following conditions are met:
3711135Sandreas.hansson@arm.com#
3810399Sstephan.diestelhorst@arm.com# The software must be used only for Non-Commercial Use which means any
3910399Sstephan.diestelhorst@arm.com# use which is NOT directed to receiving any direct monetary
4010399Sstephan.diestelhorst@arm.com# compensation for, or commercial advantage from such use.  Illustrative
4110399Sstephan.diestelhorst@arm.com# examples of non-commercial use are academic research, personal study,
4211135Sandreas.hansson@arm.com# teaching, education and corporate research & development.
4310399Sstephan.diestelhorst@arm.com# Illustrative examples of commercial use are distributing products for
4410399Sstephan.diestelhorst@arm.com# commercial advantage and providing services using the software for
4510399Sstephan.diestelhorst@arm.com# commercial advantage.
4610399Sstephan.diestelhorst@arm.com#
4710399Sstephan.diestelhorst@arm.com# If you wish to use this software or functionality therein that may be
4810399Sstephan.diestelhorst@arm.com# covered by patents for commercial use, please contact:
4910399Sstephan.diestelhorst@arm.com#     Director of Intellectual Property Licensing
5010399Sstephan.diestelhorst@arm.com#     Office of Strategy and Technology
5111129Sali.jafri@arm.com#     Hewlett-Packard Company
5211129Sali.jafri@arm.com#     1501 Page Mill Road
5311129Sali.jafri@arm.com#     Palo Alto, California  94304
5411129Sali.jafri@arm.com#
5511129Sali.jafri@arm.com# Redistributions of source code must retain the above copyright notice,
5611129Sali.jafri@arm.com# this list of conditions and the following disclaimer.  Redistributions
5711129Sali.jafri@arm.com# in binary form must reproduce the above copyright notice, this list of
5811129Sali.jafri@arm.com# conditions and the following disclaimer in the documentation and/or
5911129Sali.jafri@arm.com# other materials provided with the distribution.  Neither the name of
6011129Sali.jafri@arm.com# the COPYRIGHT HOLDER(s), HEWLETT-PACKARD COMPANY, nor the names of its
6111129Sali.jafri@arm.com# contributors may be used to endorse or promote products derived from
6210399Sstephan.diestelhorst@arm.com# this software without specific prior written permission.  No right of
6310399Sstephan.diestelhorst@arm.com# sublicense is granted herewith.  Derivatives of the software and
6410399Sstephan.diestelhorst@arm.com# output created using the software may be prepared, but only for
6510399Sstephan.diestelhorst@arm.com# Non-Commercial Uses.  Derivatives of the software may be shared with
6610399Sstephan.diestelhorst@arm.com# others provided: (i) the others agree to abide by the list of
6710399Sstephan.diestelhorst@arm.com# conditions herein which includes the Non-Commercial Use restrictions;
6811128Sali.jafri@arm.com# and (ii) such Derivatives of the software include the above copyright
6911128Sali.jafri@arm.com# notice to acknowledge the contribution from this software where
7011128Sali.jafri@arm.com# applicable, this list of conditions and the disclaimer below.
7111128Sali.jafri@arm.com#
7210399Sstephan.diestelhorst@arm.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
7311131Sandreas.hansson@arm.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
7411131Sandreas.hansson@arm.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
7511128Sali.jafri@arm.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
7611128Sali.jafri@arm.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
7711128Sali.jafri@arm.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
7811128Sali.jafri@arm.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
7911128Sali.jafri@arm.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
8011128Sali.jafri@arm.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
8111128Sali.jafri@arm.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
8211131Sandreas.hansson@arm.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
8311131Sandreas.hansson@arm.com#
8411131Sandreas.hansson@arm.com# Authors: Gabe Black
8511131Sandreas.hansson@arm.com
8610403Sstephan.diestelhorst@arm.comImport('*')
8710403Sstephan.diestelhorst@arm.comif env['TARGET_ISA'] == 'x86':
8811129Sali.jafri@arm.com    Source('floatregfile.cc')
8911129Sali.jafri@arm.com    Source('intregfile.cc')
9011129Sali.jafri@arm.com    Source('miscregfile.cc')
9111129Sali.jafri@arm.com    Source('predecoder.cc')
9211129Sali.jafri@arm.com    Source('predecoder_tables.cc')
9310403Sstephan.diestelhorst@arm.com    Source('regfile.cc')
9410403Sstephan.diestelhorst@arm.com    Source('remote_gdb.cc')
9510403Sstephan.diestelhorst@arm.com
9610403Sstephan.diestelhorst@arm.com    if env['FULL_SYSTEM']:
9710403Sstephan.diestelhorst@arm.com        # Full-system sources
9810403Sstephan.diestelhorst@arm.com        pass
9910403Sstephan.diestelhorst@arm.com    else:
10010403Sstephan.diestelhorst@arm.com        Source('process.cc')
10110399Sstephan.diestelhorst@arm.com
10210399Sstephan.diestelhorst@arm.com        Source('linux/linux.cc')
10310399Sstephan.diestelhorst@arm.com        Source('linux/process.cc')
10410399Sstephan.diestelhorst@arm.com        Source('linux/syscalls.cc')
10511129Sali.jafri@arm.com
10611129Sali.jafri@arm.com    # Add in files generated by the ISA description.
10711129Sali.jafri@arm.com    isa_desc_files = env.ISADesc('isa/main.isa')
10811129Sali.jafri@arm.com    # Only non-header files need to be compiled.
10911129Sali.jafri@arm.com    for f in isa_desc_files:
11011129Sali.jafri@arm.com        if not f.path.endswith('.hh'):
11111284Sandreas.hansson@arm.com            Source(f)
11210399Sstephan.diestelhorst@arm.com