rockbox/firmware/libc/include/stdlib.h
Thomas Martitz 50a6ca39ad 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
2010-05-06 21:04:40 +00:00

58 lines
1,006 B
C

/*
* 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_ */