update building script.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1381 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
parent
ee318bb0c1
commit
62b4ca8d49
|
@ -1,4 +1,5 @@
|
||||||
import os
|
import os
|
||||||
|
import sys
|
||||||
import string
|
import string
|
||||||
from SCons.Script import *
|
from SCons.Script import *
|
||||||
|
|
||||||
|
@ -86,6 +87,14 @@ def _make_path_relative(origin, dest):
|
||||||
# return os.path.join(*segments).replace('\\', '/')
|
# return os.path.join(*segments).replace('\\', '/')
|
||||||
return os.path.join(*segments)
|
return os.path.join(*segments)
|
||||||
|
|
||||||
|
def IARProject(target, script):
|
||||||
|
import xml.etree.ElementTree as etree
|
||||||
|
project = file(target, "wb")
|
||||||
|
project_path = os.path.dirname(os.path.abspath(target))
|
||||||
|
|
||||||
|
tree = etree.parse('template.ewp')
|
||||||
|
tree.write('project.ewp')
|
||||||
|
|
||||||
def MDKProject(target, script):
|
def MDKProject(target, script):
|
||||||
template = file('template.Uv2', "rb")
|
template = file('template.Uv2', "rb")
|
||||||
lines = template.readlines()
|
lines = template.readlines()
|
||||||
|
@ -104,6 +113,7 @@ def MDKProject(target, script):
|
||||||
|
|
||||||
# write file
|
# write file
|
||||||
|
|
||||||
|
ProjectFiles = []
|
||||||
CPPPATH = []
|
CPPPATH = []
|
||||||
CPPDEFINES = []
|
CPPDEFINES = []
|
||||||
LINKFLAGS = ''
|
LINKFLAGS = ''
|
||||||
|
@ -140,8 +150,12 @@ def MDKProject(target, script):
|
||||||
fn = node.rfile()
|
fn = node.rfile()
|
||||||
name = fn.name
|
name = fn.name
|
||||||
path = os.path.dirname(fn.abspath)
|
path = os.path.dirname(fn.abspath)
|
||||||
|
basename = os.path.basename(path)
|
||||||
path = _make_path_relative(project_path, path)
|
path = _make_path_relative(project_path, path)
|
||||||
path = os.path.join(path, name)
|
path = os.path.join(path, name)
|
||||||
|
if ProjectFiles.count(name):
|
||||||
|
name = basename + '_' + name
|
||||||
|
ProjectFiles.append(name)
|
||||||
lines.insert(line_index, 'File %d,%d,<%s><%s>\r\n'
|
lines.insert(line_index, 'File %d,%d,<%s><%s>\r\n'
|
||||||
% (group_index, _get_filetype(name), path, name))
|
% (group_index, _get_filetype(name), path, name))
|
||||||
line_index += 1
|
line_index += 1
|
||||||
|
@ -243,7 +257,7 @@ def PrepareBuilding(env, root_directory):
|
||||||
Rtt_Root = root_directory
|
Rtt_Root = root_directory
|
||||||
|
|
||||||
# patch for win32 spawn
|
# patch for win32 spawn
|
||||||
if env['PLATFORM'] == 'win32' and rtconfig.PLATFORM == 'gcc':
|
if env['PLATFORM'] == 'win32' and rtconfig.PLATFORM == 'gcc' and sys.version_info < (2, 6, 0):
|
||||||
win32_spawn = Win32Spawn()
|
win32_spawn = Win32Spawn()
|
||||||
win32_spawn.env = env
|
win32_spawn.env = env
|
||||||
env['SPAWN'] = win32_spawn.spawn
|
env['SPAWN'] = win32_spawn.spawn
|
||||||
|
@ -336,5 +350,8 @@ def EndBuilding(target):
|
||||||
import rtconfig
|
import rtconfig
|
||||||
Env.AddPostAction(target, rtconfig.POST_ACTION)
|
Env.AddPostAction(target, rtconfig.POST_ACTION)
|
||||||
|
|
||||||
|
if GetOption('target') == 'iar':
|
||||||
|
IARProject('project.ewp', Projects)
|
||||||
|
|
||||||
if GetOption('target') == 'mdk':
|
if GetOption('target') == 'mdk':
|
||||||
MDKProject('project.Uv2', Projects)
|
MDKProject('project.Uv2', Projects)
|
||||||
|
|
Loading…
Reference in New Issue