summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SConstruct6
-rw-r--r--src/SConscript88
2 files changed, 14 insertions, 80 deletions
diff --git a/SConstruct b/SConstruct
index d047f99d3..35f88e04c 100644
--- a/SConstruct
+++ b/SConstruct
@@ -320,8 +320,10 @@ env['ALL_ISA_LIST'] = ['alpha', 'sparc', 'mips']
# Define the universe of supported CPU models
env['ALL_CPU_LIST'] = ['AtomicSimpleCPU', 'TimingSimpleCPU',
- 'FullCPU', 'O3CPU',
- 'OzoneCPU']
+ 'O3CPU', 'OzoneCPU']
+
+if os.path.isdir(os.path.join(SRCDIR, 'src/encumbered/cpu/full')):
+ env['ALL_CPU_LIST'] += ['FullCPU']
# Sticky options get saved in the options file so they persist from
# one invocation to the next (unless overridden, in which case the new
diff --git a/src/SConscript b/src/SConscript
index b9664dd39..6d7783113 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -30,7 +30,7 @@
import os
import sys
-from os.path import isdir
+from os.path import isfile, join as joinpath
# This file defines how to build a particular configuration of M5
# based on variable settings in the 'env' build environment.
@@ -146,45 +146,6 @@ base_sources = Split('''
sim/trace_context.cc
''')
-# Old FullCPU sources
-full_cpu_sources = Split('''
- encumbered/cpu/full/bpred.cc
- encumbered/cpu/full/commit.cc
- encumbered/cpu/full/cpu.cc
- encumbered/cpu/full/create_vector.cc
- encumbered/cpu/full/cv_spec_state.cc
- encumbered/cpu/full/dd_queue.cc
- encumbered/cpu/full/dep_link.cc
- encumbered/cpu/full/dispatch.cc
- encumbered/cpu/full/dyn_inst.cc
- encumbered/cpu/full/execute.cc
- encumbered/cpu/full/fetch.cc
- encumbered/cpu/full/floss_reasons.cc
- encumbered/cpu/full/fu_pool.cc
- encumbered/cpu/full/inst_fifo.cc
- encumbered/cpu/full/instpipe.cc
- encumbered/cpu/full/issue.cc
- encumbered/cpu/full/ls_queue.cc
- encumbered/cpu/full/machine_queue.cc
- encumbered/cpu/full/pipetrace.cc
- encumbered/cpu/full/readyq.cc
- encumbered/cpu/full/reg_info.cc
- encumbered/cpu/full/rob_station.cc
- encumbered/cpu/full/spec_memory.cc
- encumbered/cpu/full/spec_state.cc
- encumbered/cpu/full/storebuffer.cc
- encumbered/cpu/full/writeback.cc
- encumbered/cpu/full/iq/iq_station.cc
- encumbered/cpu/full/iq/iqueue.cc
- encumbered/cpu/full/iq/segmented/chain_info.cc
- encumbered/cpu/full/iq/segmented/chain_wire.cc
- encumbered/cpu/full/iq/segmented/iq_seg.cc
- encumbered/cpu/full/iq/segmented/iq_segmented.cc
- encumbered/cpu/full/iq/segmented/seg_chain.cc
- encumbered/cpu/full/iq/seznec/iq_seznec.cc
- encumbered/cpu/full/iq/standard/iq_standard.cc
- ''')
-
trace_reader_sources = Split('''
cpu/trace/reader/mem_trace_reader.cc
cpu/trace/reader/ibm_reader.cc
@@ -229,26 +190,6 @@ if env['TARGET_ISA'] == 'alpha':
kern/tru64/tru64_syscalls.cc
''')
-# turbolaser encumbered sources
-turbolaser_sources = Split('''
- encumbered/dev/dma.cc
- encumbered/dev/etherdev.cc
- encumbered/dev/scsi.cc
- encumbered/dev/scsi_ctrl.cc
- encumbered/dev/scsi_disk.cc
- encumbered/dev/scsi_none.cc
- encumbered/dev/tlaser_clock.cc
- encumbered/dev/tlaser_ipi.cc
- encumbered/dev/tlaser_mbox.cc
- encumbered/dev/tlaser_mc146818.cc
- encumbered/dev/tlaser_node.cc
- encumbered/dev/tlaser_pcia.cc
- encumbered/dev/tlaser_pcidev.cc
- encumbered/dev/tlaser_serial.cc
- encumbered/dev/turbolaser.cc
- encumbered/dev/uart8530.cc
- ''')
-
# Syscall emulation (non-full-system) sources
syscall_emulation_sources = Split('''
mem/translating_port.cc
@@ -262,15 +203,6 @@ syscall_emulation_sources = Split('''
# kern/tru64/tru64.cc
# ''')
-alpha_eio_sources = Split('''
- encumbered/eio/exolex.cc
- encumbered/eio/libexo.cc
- encumbered/eio/eio.cc
- ''')
-
-if env['TARGET_ISA'] == 'alpha':
- syscall_emulation_sources += alpha_eio_sources
-
memtest_sources = Split('''
cpu/memtest/memtest.cc
''')
@@ -289,24 +221,24 @@ arch_sources = SConscript(os.path.join('arch', 'SConscript'), exports = 'env')
cpu_sources = SConscript(os.path.join('cpu', 'SConscript'), exports = 'env')
if env['FULL_SYSTEM']:
- dev_sources = SConscript(os.path.join('dev', 'SConscript'), exports = 'env')
+ dev_sources = SConscript(os.path.join('dev', 'SConscript'),
+ exports = 'env')
full_system_sources += dev_sources
- kern_sources = SConscript(os.path.join('kern', 'SConscript'), exports = 'env')
+ kern_sources = SConscript(os.path.join('kern', 'SConscript'),
+ exports = 'env')
full_system_sources += kern_sources
-# This is outside of cpu/SConscript since the source directory isn't
-# underneath 'cpu'.
-if 'FullCPU' in env['CPU_MODELS']:
- cpu_sources += full_cpu_sources
-
# Set up complete list of sources based on configuration.
sources = base_sources + arch_sources + cpu_sources
+# encumbered should be last because we're adding to some of the other groups
+if isfile(joinpath(env['SRCDIR'], 'encumbered/SConscript')):
+ sources += SConscript('encumbered/SConscript', exports = 'env')
+
+
if env['FULL_SYSTEM']:
sources += full_system_sources
- if env['ALPHA_TLASER']:
- sources += turbolaser_sources
else:
sources += syscall_emulation_sources