scons: Find ext build directories automatically.
The ext directories with SConscripts in them are easy to find automatically. Avoid boilerplate listing them out and SConscript()ing them manually. Change-Id: Ib723882aebc00e639eb8ec44904bb05ffa2c6b55 Reviewed-on: https://gem5-review.googlesource.com/2942 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
This commit is contained in:
34
SConstruct
34
SConstruct
@@ -1339,33 +1339,13 @@ config_builder = Builder(emitter = config_emitter, action = config_action)
|
||||
|
||||
main.Append(BUILDERS = { 'ConfigFile' : config_builder })
|
||||
|
||||
# libelf build is shared across all configs in the build root.
|
||||
main.SConscript('ext/libelf/SConscript',
|
||||
variant_dir = joinpath(build_root, 'libelf'))
|
||||
|
||||
# iostream3 build is shared across all configs in the build root.
|
||||
main.SConscript('ext/iostream3/SConscript',
|
||||
variant_dir = joinpath(build_root, 'iostream3'))
|
||||
|
||||
# libfdt build is shared across all configs in the build root.
|
||||
main.SConscript('ext/libfdt/SConscript',
|
||||
variant_dir = joinpath(build_root, 'libfdt'))
|
||||
|
||||
# fputils build is shared across all configs in the build root.
|
||||
main.SConscript('ext/fputils/SConscript',
|
||||
variant_dir = joinpath(build_root, 'fputils'))
|
||||
|
||||
# DRAMSim2 build is shared across all configs in the build root.
|
||||
main.SConscript('ext/dramsim2/SConscript',
|
||||
variant_dir = joinpath(build_root, 'dramsim2'))
|
||||
|
||||
# DRAMPower build is shared across all configs in the build root.
|
||||
main.SConscript('ext/drampower/SConscript',
|
||||
variant_dir = joinpath(build_root, 'drampower'))
|
||||
|
||||
# nomali build is shared across all configs in the build root.
|
||||
main.SConscript('ext/nomali/SConscript',
|
||||
variant_dir = joinpath(build_root, 'nomali'))
|
||||
# builds in ext are shared across all configs in the build root.
|
||||
ext_dir = abspath(joinpath(str(main.root), 'ext'))
|
||||
for root, dirs, files in os.walk(ext_dir):
|
||||
if 'SConscript' in files:
|
||||
build_dir = os.path.relpath(root, ext_dir)
|
||||
main.SConscript(joinpath(root, 'SConscript'),
|
||||
variant_dir=joinpath(build_root, build_dir))
|
||||
|
||||
###################################################
|
||||
#
|
||||
|
||||
Reference in New Issue
Block a user