Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
rt-thread
提交
06f8426f
R
rt-thread
项目概览
BaiXuePrincess
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
06f8426f
编写于
11月 19, 2014
作者:
B
Bright Pan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Delete trailing whitespace
上级
2ad82e74
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
45 addition
and
45 deletion
+45
-45
tools/building.py
tools/building.py
+33
-33
tools/keil.py
tools/keil.py
+12
-12
未找到文件。
tools/building.py
浏览文件 @
06f8426f
...
...
@@ -67,7 +67,7 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [
rtconfig
.
EXEC_PATH
=
rtconfig
.
EXEC_PATH
.
replace
(
'bin40'
,
'armcc/bin'
)
Env
[
'LINKFLAGS'
]
=
Env
[
'LINKFLAGS'
].
replace
(
'RV31'
,
'armcc'
)
# reset AR command flags
# reset AR command flags
env
[
'ARCOM'
]
=
'$AR --create $TARGET $SOURCES'
env
[
'LIBPREFIX'
]
=
''
env
[
'LIBSUFFIX'
]
=
'.lib'
...
...
@@ -102,7 +102,7 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [
PreProcessor
.
process_contents
(
contents
)
BuildOptions
=
PreProcessor
.
cpp_namespace
# add copy option
# add copy option
AddOption
(
'--copy'
,
dest
=
'copy'
,
action
=
'store_true'
,
...
...
@@ -148,12 +148,12 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [
rtconfig
.
POST_ACTION
=
''
# add build library option
AddOption
(
'--buildlib'
,
dest
=
'buildlib'
,
AddOption
(
'--buildlib'
,
dest
=
'buildlib'
,
type
=
'string'
,
help
=
'building library of a component'
)
AddOption
(
'--cleanlib'
,
dest
=
'cleanlib'
,
AddOption
(
'--cleanlib'
,
dest
=
'cleanlib'
,
action
=
'store_true'
,
default
=
False
,
help
=
'clean up the library by --buildlib'
)
...
...
@@ -240,13 +240,13 @@ def PrepareModuleBuilding(env, root_directory):
Env
=
env
Rtt_Root
=
root_directory
# add build/clean library option for library checking
AddOption
(
'--buildlib'
,
dest
=
'buildlib'
,
# add build/clean library option for library checking
AddOption
(
'--buildlib'
,
dest
=
'buildlib'
,
type
=
'string'
,
help
=
'building library of a component'
)
AddOption
(
'--cleanlib'
,
dest
=
'cleanlib'
,
AddOption
(
'--cleanlib'
,
dest
=
'cleanlib'
,
action
=
'store_true'
,
default
=
False
,
help
=
'clean up the library by --buildlib'
)
...
...
@@ -268,7 +268,7 @@ def GetDepend(depend):
building
=
False
elif
BuildOptions
[
depend
]
!=
''
:
return
BuildOptions
[
depend
]
return
building
# for list type depend
...
...
@@ -345,7 +345,7 @@ def DefineGroup(name, src, depend, **parameters):
if
group
.
has_key
(
'LINKFLAGS'
):
Env
.
Append
(
LINKFLAGS
=
group
[
'LINKFLAGS'
])
# check whether to clean up library
# check whether to clean up library
if
GetOption
(
'cleanlib'
)
and
os
.
path
.
exists
(
os
.
path
.
join
(
group
[
'path'
],
GroupLibFullName
(
name
,
Env
))):
if
group
[
'src'
]
!=
[]:
print
'Remove library:'
,
GroupLibFullName
(
name
,
Env
)
...
...
@@ -369,14 +369,14 @@ def DefineGroup(name, src, depend, **parameters):
else
:
objs
=
group
[
'src'
]
# merge group
# merge group
for
g
in
Projects
:
if
g
[
'name'
]
==
name
:
# merge to this group
MergeGroup
(
g
,
group
)
return
objs
# add a new group
# add a new group
Projects
.
append
(
group
)
return
objs
...
...
@@ -468,7 +468,7 @@ def EndBuilding(target, program = None):
if
GetOption
(
'target'
)
==
'iar'
:
from
iar
import
IARProject
IARProject
(
'project.ewp'
,
Projects
)
IARProject
(
'project.ewp'
,
Projects
)
if
GetOption
(
'target'
)
==
'vs'
:
from
vs
import
VSProject
...
...
@@ -485,7 +485,7 @@ def EndBuilding(target, program = None):
if
GetOption
(
'target'
)
==
'ua'
:
from
ua
import
PrepareUA
PrepareUA
(
Projects
,
Rtt_Root
,
str
(
Dir
(
'#'
)))
if
GetOption
(
'copy'
)
and
program
!=
None
:
MakeCopy
(
program
)
if
GetOption
(
'copy-header'
)
and
program
!=
None
:
...
...
@@ -515,7 +515,7 @@ def GetVersion():
rtdef
=
os
.
path
.
join
(
Rtt_Root
,
'include'
,
'rtdef.h'
)
# parse rtdef.h to get RT-Thread version
# parse rtdef.h to get RT-Thread version
prepcessor
=
SCons
.
cpp
.
PreProcessor
()
f
=
file
(
rtdef
,
'r'
)
contents
=
f
.
read
()
...
...
@@ -561,9 +561,9 @@ def do_rm_file(src):
def
do_copy_file
(
src
,
dst
):
import
shutil
# check source file
# check source file
if
not
os
.
path
.
exists
(
src
):
return
return
path
=
os
.
path
.
dirname
(
dst
)
# mkdir if path not exist
...
...
@@ -574,13 +574,13 @@ def do_copy_file(src, dst):
def
do_copy_folder
(
src_dir
,
dst_dir
):
import
shutil
# check source directory
# check source directory
if
not
os
.
path
.
exists
(
src_dir
):
return
if
os
.
path
.
exists
(
dst_dir
):
shutil
.
rmtree
(
dst_dir
)
shutil
.
copytree
(
src_dir
,
dst_dir
)
source_ext
=
[
"c"
,
"h"
,
"s"
,
"S"
,
"cpp"
,
"xpm"
]
...
...
@@ -607,22 +607,22 @@ def MakeCopy(program):
global
source_list
global
Rtt_Root
global
Env
target_path
=
os
.
path
.
join
(
Dir
(
'#'
).
abspath
,
'rt-thread'
)
if
Env
[
'PLATFORM'
]
==
'win32'
:
RTT_ROOT
=
Rtt_Root
.
lower
()
else
:
RTT_ROOT
=
Rtt_Root
if
target_path
.
startswith
(
RTT_ROOT
):
return
for
item
in
program
:
walk_children
(
item
)
source_list
.
sort
()
# filte source file in RT-Thread
target_list
=
[]
for
src
in
source_list
:
...
...
@@ -633,7 +633,7 @@ def MakeCopy(program):
target_list
.
append
(
src
)
source_list
=
target_list
# get source path
# get source path
src_dir
=
[]
for
src
in
source_list
:
src
=
src
.
replace
(
RTT_ROOT
,
''
)
...
...
@@ -645,10 +645,10 @@ def MakeCopy(program):
full_path
=
RTT_ROOT
for
item
in
sub_path
:
full_path
=
os
.
path
.
join
(
full_path
,
item
)
if
full_path
not
in
src_dir
:
if
full_path
not
in
src_dir
:
src_dir
.
append
(
full_path
)
for
item
in
src_dir
:
for
item
in
src_dir
:
source_list
.
append
(
os
.
path
.
join
(
item
,
'SConscript'
))
for
src
in
source_list
:
...
...
@@ -659,7 +659,7 @@ def MakeCopy(program):
dst
=
os
.
path
.
join
(
target_path
,
dst
)
do_copy_file
(
src
,
dst
)
# copy tools directory
# copy tools directory
print
"=> tools"
do_copy_folder
(
os
.
path
.
join
(
RTT_ROOT
,
"tools"
),
os
.
path
.
join
(
target_path
,
"tools"
))
do_copy_file
(
os
.
path
.
join
(
RTT_ROOT
,
'AUTHORS'
),
os
.
path
.
join
(
target_path
,
'AUTHORS'
))
...
...
@@ -707,7 +707,7 @@ def MakeCopyHeader(program):
dst
=
os
.
path
.
join
(
target_path
,
dst
)
do_copy_file
(
src
,
dst
)
# copy tools directory
# copy tools directory
print
"=> tools"
do_copy_folder
(
os
.
path
.
join
(
RTT_ROOT
,
"tools"
),
os
.
path
.
join
(
target_path
,
"tools"
))
do_copy_file
(
os
.
path
.
join
(
RTT_ROOT
,
'AUTHORS'
),
os
.
path
.
join
(
target_path
,
'AUTHORS'
))
...
...
tools/keil.py
浏览文件 @
06f8426f
...
...
@@ -49,11 +49,11 @@ def MDK4AddGroupForFN(ProjectFiles, parent, name, filename, project_path):
file_type
=
SubElement
(
file
,
'FileType'
)
file_type
.
text
=
'%d'
%
_get_filetype
(
name
)
file_path
=
SubElement
(
file
,
'FilePath'
)
file_path
.
text
=
path
.
decode
(
fs_encoding
)
def
MDK4AddGroup
(
ProjectFiles
,
parent
,
name
,
files
,
project_path
):
# don't add an empty group
# don't add an empty group
if
len
(
files
)
==
0
:
return
...
...
@@ -69,7 +69,7 @@ def MDK4AddGroup(ProjectFiles, parent, name, files, project_path):
basename
=
os
.
path
.
basename
(
path
)
path
=
_make_path_relative
(
project_path
,
path
)
path
=
os
.
path
.
join
(
path
,
name
)
files
=
SubElement
(
group
,
'Files'
)
file
=
SubElement
(
files
,
'File'
)
file_name
=
SubElement
(
file
,
'FileName'
)
...
...
@@ -81,7 +81,7 @@ def MDK4AddGroup(ProjectFiles, parent, name, files, project_path):
file_type
=
SubElement
(
file
,
'FileType'
)
file_type
.
text
=
'%d'
%
_get_filetype
(
name
)
file_path
=
SubElement
(
file
,
'FilePath'
)
file_path
.
text
=
path
.
decode
(
fs_encoding
)
def
MDK4Project
(
target
,
script
):
...
...
@@ -93,16 +93,16 @@ def MDK4Project(target, script):
tree
=
etree
.
parse
(
'template.uvproj'
)
root
=
tree
.
getroot
()
out
=
file
(
target
,
'wb'
)
out
.
write
(
'<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
\n
'
)
CPPPATH
=
[]
CPPDEFINES
=
[]
LINKFLAGS
=
''
CCFLAGS
=
''
ProjectFiles
=
[]
# add group
groups
=
tree
.
find
(
'Targets/Target/Groups'
)
if
groups
is
None
:
...
...
@@ -110,28 +110,28 @@ def MDK4Project(target, script):
groups
.
clear
()
# clean old groups
for
group
in
script
:
group_xml
=
MDK4AddGroup
(
ProjectFiles
,
groups
,
group
[
'name'
],
group
[
'src'
],
project_path
)
# get each include path
if
group
.
has_key
(
'CPPPATH'
)
and
group
[
'CPPPATH'
]:
if
CPPPATH
:
CPPPATH
+=
group
[
'CPPPATH'
]
else
:
CPPPATH
+=
group
[
'CPPPATH'
]
# get each group's definitions
if
group
.
has_key
(
'CPPDEFINES'
)
and
group
[
'CPPDEFINES'
]:
if
CPPDEFINES
:
CPPDEFINES
+=
group
[
'CPPDEFINES'
]
else
:
CPPDEFINES
+=
group
[
'CPPDEFINES'
]
# get each group's link flags
if
group
.
has_key
(
'LINKFLAGS'
)
and
group
[
'LINKFLAGS'
]:
if
LINKFLAGS
:
LINKFLAGS
+=
' '
+
group
[
'LINKFLAGS'
]
else
:
LINKFLAGS
+=
group
[
'LINKFLAGS'
]
if
group
.
has_key
(
'LIBS'
)
and
group
[
'LIBS'
]:
for
item
in
group
[
'LIBS'
]:
lib_path
=
''
...
...
@@ -161,7 +161,7 @@ def MDK4Project(target, script):
if
os
.
path
.
exists
(
'template.uvopt'
):
import
shutil
shutil
.
copy2
(
'template.uvopt'
,
'project.uvopt'
)
def
MDKProject
(
target
,
script
):
template
=
file
(
'template.Uv2'
,
"rb"
)
lines
=
template
.
readlines
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录