diff options
| author | Grissiom <[email protected]> | 2014-04-10 15:03:11 +0800 |
|---|---|---|
| committer | Grissiom <[email protected]> | 2014-04-10 15:03:11 +0800 |
| commit | a03816ef9aa583bb16ad1282dacaad9c02b87cd7 (patch) | |
| tree | b9cabb1beff1d7abb4e942ade55bc489b090a2bd /tools | |
| parent | f91f22b31f5db14a27787e3c6b0ebfa0d971589b (diff) | |
scons: seperate the BSP build with the kernel build
BSPs could have their own components/ etc. If they point to the same
folder, SCons would find the wrong source code to compile.
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/building.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/tools/building.py b/tools/building.py index 54193fcf2f..ae9c8da6d1 100644 --- a/tools/building.py +++ b/tools/building.py @@ -192,18 +192,25 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [ LINKCOMSTR = 'LINK $TARGET' ) - # board build script - objs = SConscript('SConscript', variant_dir='build', duplicate=0) Repository(Rtt_Root) + + # 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=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')) |
