提交 787d7681 编写于 作者: B bernard.xiong

fix compiling error.

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@826 bbd45198-f89e-11dd-88c7-29a3b14d5316
上级 4b4a4f20
...@@ -17,6 +17,8 @@ AddOption('--target', ...@@ -17,6 +17,8 @@ AddOption('--target',
if GetOption('target'): if GetOption('target'):
SetOption('no_exec', 1) SetOption('no_exec', 1)
TARGET = target + '.' + rtconfig.TARGET_EXT
env = Environment(tools = ['mingw'], env = Environment(tools = ['mingw'],
AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
CC = rtconfig.CC, CCFLAGS = rtconfig.CFLAGS, CC = rtconfig.CC, CCFLAGS = rtconfig.CFLAGS,
...@@ -28,6 +30,38 @@ Export('env') ...@@ -28,6 +30,38 @@ Export('env')
Export('RTT_ROOT') Export('RTT_ROOT')
Export('rtconfig') Export('rtconfig')
Export('projects') Export('projects')
Export('TARGET')
if env['PLATFORM'] == 'win32' and rtconfig.PLATFORM == 'gcc':
import win32file
import win32event
import win32process
import win32security
def my_spawn(sh, escape, cmd, args, spawnenv):
for var in spawnenv:
spawnenv[var] = spawnenv[var].encode('ascii', 'replace')
sAttrs = win32security.SECURITY_ATTRIBUTES()
StartupInfo = win32process.STARTUPINFO()
newargs = ' '.join(map(escape, args[1:]))
cmdline = cmd + " " + newargs
# check for any special operating system commands
if cmd == 'del':
for arg in args[1:]:
win32file.DeleteFile(arg)
exit_code = 0
else:
# otherwise execute the command.
hProcess, hThread, dwPid, dwTid = win32process.CreateProcess(None, cmdline, None, None, 1, 0, spawnenv, None, StartupInfo)
win32event.WaitForSingleObject(hProcess, win32event.INFINITE)
exit_code = win32process.GetExitCodeProcess(hProcess)
win32file.CloseHandle(hProcess);
win32file.CloseHandle(hThread);
return exit_code
env['SPAWN'] = my_spawn
objs = SConscript(RTT_ROOT + '/src/SConscript', variant_dir='build/src', duplicate=0) objs = SConscript(RTT_ROOT + '/src/SConscript', variant_dir='build/src', duplicate=0)
objs = objs + SConscript(RTT_ROOT + '/libcpu/SConscript', variant_dir='build/libcpu', duplicate=0) objs = objs + SConscript(RTT_ROOT + '/libcpu/SConscript', variant_dir='build/libcpu', duplicate=0)
...@@ -45,7 +79,6 @@ objs = objs + SConscript('SConscript', variant_dir='build/bsp', duplicate=0) ...@@ -45,7 +79,6 @@ objs = objs + SConscript('SConscript', variant_dir='build/bsp', duplicate=0)
Repository(RTT_ROOT) Repository(RTT_ROOT)
objs = objs + SConscript('components/SConscript') objs = objs + SConscript('components/SConscript')
TARGET = target + '.' + rtconfig.TARGET_EXT
env.Program(TARGET, objs) env.Program(TARGET, objs)
env.AddPostAction(TARGET, rtconfig.POST_ACTION) env.AddPostAction(TARGET, rtconfig.POST_ACTION)
......
...@@ -27,7 +27,7 @@ void run_module(const char* filename) ...@@ -27,7 +27,7 @@ void run_module(const char* filename)
int fd, length; int fd, length;
char *module_name; char *module_name;
struct rt_module* module; struct rt_module* module;
struct dfs_stat s; struct _stat s;
char *buffer; char *buffer;
stat(filename, &s); stat(filename, &s);
...@@ -45,7 +45,7 @@ void run_module(const char* filename) ...@@ -45,7 +45,7 @@ void run_module(const char* filename)
module = rt_module_load((void *)buffer, ++module_name); module = rt_module_load((void *)buffer, ++module_name);
if(module != RT_NULL) if(module != RT_NULL)
{ {
rt_module_run(module); // rt_module_run(module);
} }
close(fd); close(fd);
......
...@@ -141,7 +141,7 @@ void rtthread_startup(void) ...@@ -141,7 +141,7 @@ void rtthread_startup(void)
#ifdef RT_USING_MODULE #ifdef RT_USING_MODULE
/* init module system */ /* init module system */
rt_system_module_init(); // rt_system_module_init();
#endif #endif
/* init application */ /* init application */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册