summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2014-04-11 17:04:06 +0800
committerBernard Xiong <[email protected]>2014-04-11 17:04:06 +0800
commit0c4ac4bd1a93ac1406f87f1d108c54bf14f57d28 (patch)
tree3537a9d2dd2d56c662105de78e01398d8fd523b0
parent279f2cb9483164b0a5cdca1e2cfb2ad061084d4d (diff)
parent81b284b316c27e8c39e8a1deabbeef31a13612bc (diff)
Merge pull request #259 from grissiom/fix-scons
Fix scons
-rw-r--r--tools/building.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/tools/building.py b/tools/building.py
index 54193fcf2f..61c1de743d 100644
--- a/tools/building.py
+++ b/tools/building.py
@@ -192,18 +192,23 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [
LINKCOMSTR = 'LINK $TARGET'
)
+ # we need to seperate the variant_dir for BSPs and the kernels. BSPs could
+ # have their own components etc. If they point to the same folder, SCons
+ # would find the wrong source code to compile.
+ bsp_vdir = 'build/bsp'
+ kernel_vdir = 'build/kernel'
# board build script
- objs = SConscript('SConscript', variant_dir='build', duplicate=0)
- Repository(Rtt_Root)
+ objs = SConscript('SConscript', variant_dir=bsp_vdir, duplicate=0)
# include kernel
- objs.extend(SConscript(Rtt_Root + '/src/SConscript', variant_dir='build/src', duplicate=0))
+ objs.extend(SConscript(Rtt_Root + '/src/SConscript', variant_dir=kernel_vdir + '/src', duplicate=0))
# include libcpu
if not has_libcpu:
- objs.extend(SConscript(Rtt_Root + '/libcpu/SConscript', variant_dir='build/libcpu', duplicate=0))
+ objs.extend(SConscript(Rtt_Root + '/libcpu/SConscript',
+ variant_dir=kernel_vdir + '/libcpu', duplicate=0))
# include components
objs.extend(SConscript(Rtt_Root + '/components/SConscript',
- variant_dir='build/components',
+ variant_dir=kernel_vdir + '/components',
duplicate=0,
exports='remove_components'))