lpc43xx: clean the .o before building M0 and M4
SCons will omit the file in parent dir of SConstruct somehow and build the object files in that dir instead of in variant dir. This cause problem because we cannot mix the object files between M0 and M4 which SCons failed to rebuild. So we have to manually remove the files before building.
This commit is contained in:
parent
17a75eaa02
commit
11026d0579
|
@ -25,5 +25,23 @@ Export('rtconfig')
|
|||
# prepare building environment
|
||||
objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False)
|
||||
|
||||
if rtconfig.CROSS_TOOL == 'gcc':
|
||||
import glob
|
||||
# Remove the .o for M0 left on the drivers dir.
|
||||
for i in glob.glob(GetCurrentDir() + '/../drivers/*.o'):
|
||||
print 'RM %s' % i
|
||||
os.unlink(i)
|
||||
|
||||
if sys.platform.startswith('linux'):
|
||||
import glob
|
||||
ocwd = os.getcwdu()
|
||||
res = os.system('cd ../Libraries/; find -name \*.o -exec rm {} \;')
|
||||
os.chdir(ocwd)
|
||||
else:
|
||||
# Assume Windows.
|
||||
ocwd = os.getcwdu()
|
||||
print 'TODO: remove the object files in ../Libraries'
|
||||
os.chdir(ocwd)
|
||||
|
||||
# do building
|
||||
DoBuilding(TARGET, objs)
|
||||
|
|
|
@ -28,6 +28,7 @@ objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False)
|
|||
if rtconfig.CROSS_TOOL == 'gcc':
|
||||
print 'build M0 code first'
|
||||
if sys.platform.startswith('linux'):
|
||||
import glob
|
||||
ocwd = os.getcwdu()
|
||||
os.chdir('../M0')
|
||||
res = os.system('scons')
|
||||
|
@ -35,12 +36,19 @@ if rtconfig.CROSS_TOOL == 'gcc':
|
|||
print 'build M0 exit with code %d\n' % res
|
||||
sys.exit(res)
|
||||
os.chdir(ocwd)
|
||||
res = os.system('cd ../Libraries/; find -name \*.o -exec rm {} \;')
|
||||
os.chdir(ocwd)
|
||||
else:
|
||||
# assume Windows.
|
||||
# Assume Windows.
|
||||
ocwd = os.getcwdu()
|
||||
os.chdir('..\M0')
|
||||
os.system('scons.bat')
|
||||
os.chdir(ocwd)
|
||||
|
||||
# Remove the .o for M0 left on the drivers dir.
|
||||
for i in glob.glob(GetCurrentDir() + '/../drivers/*.o'):
|
||||
print 'RM %s' % i
|
||||
os.unlink(i)
|
||||
|
||||
# do building
|
||||
DoBuilding(TARGET, objs)
|
||||
|
|
Loading…
Reference in New Issue