提交 740a8102 编写于 作者: mysterywolf's avatar mysterywolf

[errno][libc] 解决sys头文件在libc未开启时的引入问题

上级 ac3b3d13
......@@ -11,8 +11,9 @@
#include <rthw.h>
#include <rtdevice.h>
#include <stdint.h>
#include <sys/errno.h>
#if defined(RT_USING_POSIX)
#ifdef RT_USING_POSIX
#include <dfs_file.h>
#include <dfs_posix.h>
#include <dfs_poll.h>
......@@ -374,7 +375,7 @@ rt_size_t rt_pipe_read(rt_device_t device, rt_off_t pos, void *buffer, rt_size_t
if (device == RT_NULL)
{
rt_set_errno(-EINVAL);
rt_set_errno(EINVAL);
return 0;
}
if (count == 0) return 0;
......@@ -402,7 +403,7 @@ rt_size_t rt_pipe_write(rt_device_t device, rt_off_t pos, const void *buffer, rt
if (device == RT_NULL)
{
rt_set_errno(-EINVAL);
rt_set_errno(EINVAL);
return 0;
}
if (count == 0) return 0;
......@@ -516,12 +517,12 @@ int rt_pipe_delete(const char *name)
}
else
{
result = -ENODEV;
result = -RT_EINVAL;
}
}
else
{
result = -ENODEV;
result = -RT_EINVAL;
}
return result;
......
......@@ -97,7 +97,7 @@ int finsh_set_prompt(const char * prompt)
}
#endif /* RT_USING_HEAP */
#if defined(RT_USING_DFS)
#ifdef RT_USING_DFS
#include <dfs_posix.h>
#endif /* RT_USING_DFS */
......
......@@ -9,20 +9,17 @@ CPPPATH = [cwd]
if GetDepend('RT_USING_LIBC'):
src += Glob('*.c')
else:
if GetDepend('RT_LIBC_USING_TIME'):
src += ['time.c']
if GetDepend('RT_USING_POSIX') == False:
SrcRemove(src, ['unistd.c'])
if GetDepend('RT_USING_POSIX') == False:
SrcRemove(src, ['unistd.c'])
elif GetDepend('RT_LIBC_USING_TIME'):
src += ['time.c']
if rtconfig.CROSS_TOOL == 'keil':
CPPDEFINES = ['__CLK_TCK=RT_TICK_PER_SECOND']
else:
CPPDEFINES = []
if GetDepend('RT_USING_LIBC') or GetDepend('RT_LIBC_USING_TIME'):
group = DefineGroup('libc', src, depend = [''], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
group = DefineGroup('libc', src, depend = [], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
list = os.listdir(cwd)
for d in list:
......
......@@ -6,8 +6,10 @@ src = []
cwd = GetCurrentDir()
CPPPATH = [cwd]
group = []
src += Glob('*.c')
if GetDepend('RT_USING_LIBC'):
src += Glob('*.c')
if rtconfig.PLATFORM != 'gcc' or rtconfig.ARCH == 'sim':
group = DefineGroup('libc', src, depend = ['RT_USING_LIBC'], CPPPATH = CPPPATH)
group = DefineGroup('libc', src, depend = [], CPPPATH = CPPPATH)
Return('group')
......@@ -12,8 +12,9 @@
#include <rtthread.h>
#ifdef RT_USING_HEAP /* Memory routine */
void *
_malloc_r (struct _reent *ptr, size_t size)
#include <sys/errno.h>
void * _malloc_r (struct _reent *ptr, size_t size)
{
void* result;
......@@ -26,8 +27,7 @@ _malloc_r (struct _reent *ptr, size_t size)
return result;
}
void *
_realloc_r (struct _reent *ptr, void *old, size_t newlen)
void * _realloc_r (struct _reent *ptr, void *old, size_t newlen)
{
void* result;
......@@ -53,15 +53,13 @@ void *_calloc_r (struct _reent *ptr, size_t size, size_t len)
return result;
}
void
_free_r (struct _reent *ptr, void *addr)
void _free_r (struct _reent *ptr, void *addr)
{
rt_free (addr);
}
#else
void *
_sbrk_r(struct _reent *ptr, ptrdiff_t incr)
void * _sbrk_r(struct _reent *ptr, ptrdiff_t incr)
{
return RT_NULL;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册