diff options
| author | Thomas Martitz <kugel@rockbox.org> | 2010-05-06 21:04:40 +0000 |
|---|---|---|
| committer | Thomas Martitz <kugel@rockbox.org> | 2010-05-06 21:04:40 +0000 |
| commit | 50a6ca39ad4ed01922aa4f755f0ca579788226cf (patch) | |
| tree | c7881b015b220558167310345b162324c96be15a /firmware/libc/include/stdlib.h | |
| parent | adb506df14aded06ed6e9ebf8540e6fd383ffd6a (diff) | |
| download | rockbox-50a6ca39ad4ed01922aa4f755f0ca579788226cf.zip rockbox-50a6ca39ad4ed01922aa4f755f0ca579788226cf.tar.gz rockbox-50a6ca39ad4ed01922aa4f755f0ca579788226cf.tar.bz2 rockbox-50a6ca39ad4ed01922aa4f755f0ca579788226cf.tar.xz | |
Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/libc/include/stdlib.h')
| -rw-r--r-- | firmware/libc/include/stdlib.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/firmware/libc/include/stdlib.h b/firmware/libc/include/stdlib.h new file mode 100644 index 0000000..5f6db6d --- /dev/null +++ b/firmware/libc/include/stdlib.h @@ -0,0 +1,58 @@ +/* + * stdlib.h + * + * Definitions for common types, variables, and functions. + */ + +#ifndef _STDLIB_H_ +#ifdef __cplusplus +extern "C" { +#endif +#define _STDLIB_H_ + +#include "_ansi.h" + +#define __need_size_t +#define __need_wchar_t +#include <stddef.h> + +#ifndef NULL +#define NULL ((void*)0) +#endif + +#define EXIT_FAILURE 1 +#define EXIT_SUCCESS 0 + +_VOID _EXFUN(qsort,(_PTR __base, size_t __nmemb, size_t __size, int(*_compar)(const _PTR, const _PTR))); + +void *malloc(size_t); +void *calloc (size_t nmemb, size_t size); +void free(void *); +void *realloc(void *, size_t); + +#define RAND_MAX INT_MAX + +void srand(unsigned int seed); +int rand(void); + +#ifndef ABS +#if defined(__GNUC__) +#define ABS(a) ({typeof (a) ___a = (a); ___a < 0 ? -___a: ___a; }) +#else +#define ABS(a) (((a) < 0) ? -(a) : (a)) +#endif /* __GNUC__ */ +#endif + +#define abs(x) ((int)ABS(x)) +#define labs(x) ((long)abs(x)) + +#ifdef SIMULATOR +void exit(int status); +#endif + +int atoi (const char *str); + +#ifdef __cplusplus +} +#endif +#endif /* _STDLIB_H_ */ |