SConscript revision 10923
13534Sgblack@eecs.umich.edu# -*- mode:python -*-
23534Sgblack@eecs.umich.edu
33534Sgblack@eecs.umich.edu# Copyright (c) 2006 The Regents of The University of Michigan
43534Sgblack@eecs.umich.edu# All rights reserved.
53534Sgblack@eecs.umich.edu#
63534Sgblack@eecs.umich.edu# Redistribution and use in source and binary forms, with or without
73534Sgblack@eecs.umich.edu# modification, are permitted provided that the following conditions are
83534Sgblack@eecs.umich.edu# met: redistributions of source code must retain the above copyright
93534Sgblack@eecs.umich.edu# notice, this list of conditions and the following disclaimer;
103534Sgblack@eecs.umich.edu# redistributions in binary form must reproduce the above copyright
113534Sgblack@eecs.umich.edu# notice, this list of conditions and the following disclaimer in the
123534Sgblack@eecs.umich.edu# documentation and/or other materials provided with the distribution;
133534Sgblack@eecs.umich.edu# neither the name of the copyright holders nor the names of its
143534Sgblack@eecs.umich.edu# contributors may be used to endorse or promote products derived from
153534Sgblack@eecs.umich.edu# this software without specific prior written permission.
163534Sgblack@eecs.umich.edu#
173534Sgblack@eecs.umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
183534Sgblack@eecs.umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
193534Sgblack@eecs.umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
203534Sgblack@eecs.umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
213534Sgblack@eecs.umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
223534Sgblack@eecs.umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
233534Sgblack@eecs.umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
243534Sgblack@eecs.umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
253534Sgblack@eecs.umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
263534Sgblack@eecs.umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
273534Sgblack@eecs.umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
283534Sgblack@eecs.umich.edu#
293534Sgblack@eecs.umich.edu# Authors: Steve Reinhardt
303534Sgblack@eecs.umich.edu#          Gabe Black
313534Sgblack@eecs.umich.edu
324202Sbinkertn@umich.eduImport('*')
333534Sgblack@eecs.umich.edu
3410069Sandreas.hansson@arm.comSimObject('Device.py')
3510069Sandreas.hansson@arm.comSource('io_device.cc')
3610069Sandreas.hansson@arm.comSource('isa_fake.cc')
3710069Sandreas.hansson@arm.comDebugFlag('IsaFake')
3810069Sandreas.hansson@arm.com
399850Sandreas.hansson@arm.comif env['TARGET_ISA'] == 'null':
407768SAli.Saidi@ARM.com    Return()
417768SAli.Saidi@ARM.com
428739Sgblack@eecs.umich.eduSimObject('BadDevice.py')
438739Sgblack@eecs.umich.eduSimObject('CopyEngine.py')
448739Sgblack@eecs.umich.eduSimObject('DiskImage.py')
458739Sgblack@eecs.umich.eduSimObject('Ethernet.py')
4610800SPeter.Enns@arm.comSimObject('I2C.py')
478739Sgblack@eecs.umich.eduSimObject('Ide.py')
488739Sgblack@eecs.umich.eduSimObject('Pci.py')
498739Sgblack@eecs.umich.eduSimObject('Platform.py')
508739Sgblack@eecs.umich.eduSimObject('SimpleDisk.py')
518739Sgblack@eecs.umich.eduSimObject('Terminal.py')
528739Sgblack@eecs.umich.eduSimObject('Uart.py')
534486Sbinkertn@umich.edu
548739Sgblack@eecs.umich.eduSource('baddev.cc')
558739Sgblack@eecs.umich.eduSource('copy_engine.cc')
568739Sgblack@eecs.umich.eduSource('disk_image.cc')
579016Sandreas.hansson@arm.comSource('dma_device.cc')
588739Sgblack@eecs.umich.eduSource('etherbus.cc')
598739Sgblack@eecs.umich.eduSource('etherdevice.cc')
608739Sgblack@eecs.umich.eduSource('etherdump.cc')
618739Sgblack@eecs.umich.eduSource('etherint.cc')
628739Sgblack@eecs.umich.eduSource('etherlink.cc')
6310923Sgabor.dozsa@arm.comSource('multi_packet.cc')
6410923Sgabor.dozsa@arm.comSource('multi_iface.cc')
6510923Sgabor.dozsa@arm.comSource('multi_etherlink.cc')
6610923Sgabor.dozsa@arm.comSource('tcp_iface.cc')
678739Sgblack@eecs.umich.eduSource('etherpkt.cc')
688739Sgblack@eecs.umich.eduSource('ethertap.cc')
6910800SPeter.Enns@arm.comSource('i2cbus.cc')
708739Sgblack@eecs.umich.eduSource('i8254xGBe.cc')
718739Sgblack@eecs.umich.eduSource('ide_ctrl.cc')
728739Sgblack@eecs.umich.eduSource('ide_disk.cc')
738739Sgblack@eecs.umich.eduSource('intel_8254_timer.cc')
748739Sgblack@eecs.umich.eduSource('mc146818.cc')
758739Sgblack@eecs.umich.eduSource('ns_gige.cc')
768739Sgblack@eecs.umich.eduSource('pciconfigall.cc')
778739Sgblack@eecs.umich.eduSource('pcidev.cc')
788739Sgblack@eecs.umich.eduSource('pktfifo.cc')
798739Sgblack@eecs.umich.eduSource('platform.cc')
808739Sgblack@eecs.umich.eduSource('ps2.cc')
818739Sgblack@eecs.umich.eduSource('simple_disk.cc')
828739Sgblack@eecs.umich.eduSource('sinic.cc')
838739Sgblack@eecs.umich.eduSource('terminal.cc')
848739Sgblack@eecs.umich.eduSource('uart.cc')
858739Sgblack@eecs.umich.eduSource('uart8250.cc')
865192Ssaidi@eecs.umich.edu
878739Sgblack@eecs.umich.eduDebugFlag('DiskImageRead')
888739Sgblack@eecs.umich.eduDebugFlag('DiskImageWrite')
898739Sgblack@eecs.umich.eduDebugFlag('DMA')
908739Sgblack@eecs.umich.eduDebugFlag('DMACopyEngine')
918739Sgblack@eecs.umich.eduDebugFlag('Ethernet')
9210923Sgabor.dozsa@arm.comDebugFlag('MultiEthernet')
9310923Sgabor.dozsa@arm.comDebugFlag('MultiEthernetPkt')
948739Sgblack@eecs.umich.eduDebugFlag('EthernetCksum')
958739Sgblack@eecs.umich.eduDebugFlag('EthernetDMA')
968739Sgblack@eecs.umich.eduDebugFlag('EthernetData')
978739Sgblack@eecs.umich.eduDebugFlag('EthernetDesc')
988739Sgblack@eecs.umich.eduDebugFlag('EthernetEEPROM')
998739Sgblack@eecs.umich.eduDebugFlag('EthernetIntr')
1008739Sgblack@eecs.umich.eduDebugFlag('EthernetPIO')
1018739Sgblack@eecs.umich.eduDebugFlag('EthernetSM')
1028739Sgblack@eecs.umich.eduDebugFlag('IdeCtrl')
1038739Sgblack@eecs.umich.eduDebugFlag('IdeDisk')
1048739Sgblack@eecs.umich.eduDebugFlag('Intel8254Timer')
1058739Sgblack@eecs.umich.eduDebugFlag('MC146818')
1068739Sgblack@eecs.umich.eduDebugFlag('PCIDEV')
1078739Sgblack@eecs.umich.eduDebugFlag('PciConfigAll')
1088739Sgblack@eecs.umich.eduDebugFlag('SimpleDisk')
1098739Sgblack@eecs.umich.eduDebugFlag('SimpleDiskData')
1108739Sgblack@eecs.umich.eduDebugFlag('Terminal')
1118739Sgblack@eecs.umich.eduDebugFlag('TerminalVerbose')
1128739Sgblack@eecs.umich.eduDebugFlag('Uart')
1135192Ssaidi@eecs.umich.edu
1148739Sgblack@eecs.umich.eduCompoundFlag('DiskImageAll', [ 'DiskImageRead', 'DiskImageWrite' ])
1158739Sgblack@eecs.umich.eduCompoundFlag('EthernetAll', [ 'Ethernet', 'EthernetPIO', 'EthernetDMA',
1168739Sgblack@eecs.umich.edu    'EthernetData' , 'EthernetDesc', 'EthernetIntr', 'EthernetSM',
1178739Sgblack@eecs.umich.edu    'EthernetCksum', 'EthernetEEPROM' ])
1188739Sgblack@eecs.umich.eduCompoundFlag('EthernetNoData', [ 'Ethernet', 'EthernetPIO', 'EthernetDesc',
1198739Sgblack@eecs.umich.edu    'EthernetIntr', 'EthernetSM', 'EthernetCksum' ])
1208739Sgblack@eecs.umich.eduCompoundFlag('IdeAll', [ 'IdeCtrl', 'IdeDisk' ])
121