未验证 提交 08a8e75a 编写于 作者: B Bernard Xiong 提交者: GitHub

Merge pull request #3662 from BernardXiong/fix_pthreads

Fix pthreads
......@@ -17,10 +17,6 @@
#include <dfs_posix.h>
#endif
#ifdef RT_USING_PTHREADS
#include <pthread.h>
#endif
#ifdef RT_USING_MODULE
#include <dlmodule.h>
#endif
......
from building import *
from utils import VersionCmp
cwd = GetCurrentDir()
src = Glob('*.c')
CPPPATH = [cwd]
cwd = GetCurrentDir()
src = Glob('*.c')
CPPPATH = [cwd]
CPPDEFINES = []
# only enable POSIX.1b-1993 Real-time extensions
libc_ver = GetDepend('LIBC_VERSION')
try:
ver = libc_ver.split(' ')
ver = ver[1]
if VersionCmp(ver, "2.5.0") == 1:
CPPDEFINES = ['_POSIX_C_SOURCE=199309L']
except :
pass
group = DefineGroup('pthreads', src,
depend = ['RT_USING_PTHREADS', 'RT_USING_LIBC'], CPPPATH = CPPPATH)
depend = ['RT_USING_PTHREADS', 'RT_USING_LIBC'], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
Return('group')
......@@ -277,7 +277,7 @@ int pthread_create(pthread_t *pid,
/* set pthread cleanup function and ptd data */
ptd->tid->cleanup = _pthread_cleanup;
ptd->tid->user_data = (rt_uint32_t)ptd;
ptd->tid->user_data = (rt_ubase_t)ptd;
/* start thread */
if (rt_thread_startup(ptd->tid) == RT_EOK)
......
......@@ -623,7 +623,7 @@ struct rt_thread
void *lwp;
#endif
rt_uint32_t user_data; /**< private user data beyond this thread */
rt_ubase_t user_data; /**< private user data beyond this thread */
};
typedef struct rt_thread *rt_thread_t;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册