summaryrefslogtreecommitdiff
path: root/sys/include/ape/stdlib.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/include/ape/stdlib.h')
-rwxr-xr-xsys/include/ape/stdlib.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/sys/include/ape/stdlib.h b/sys/include/ape/stdlib.h
new file mode 100755
index 000000000..374e6c566
--- /dev/null
+++ b/sys/include/ape/stdlib.h
@@ -0,0 +1,55 @@
+#ifndef __STDLIB_H
+#define __STDLIB_H
+#pragma lib "/$M/lib/ape/libap.a"
+
+#include <stddef.h>
+
+#define EXIT_FAILURE 1
+#define EXIT_SUCCESS 0
+#define MB_CUR_MAX 3
+#define RAND_MAX 32767
+
+typedef struct { int quot, rem; } div_t;
+typedef struct { long quot, rem; } ldiv_t;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern double atof(const char *);
+extern int atoi(const char *);
+extern long int atol(const char *);
+extern long long atoll(const char *);
+extern double strtod(const char *, char **);
+extern long int strtol(const char *, char **, int);
+extern unsigned long int strtoul(const char *, char **, int);
+extern long long int strtoll(const char *, char **, int);
+extern unsigned long long int strtoull(const char *, char **, int);
+extern int rand(void);
+extern void srand(unsigned int seed);
+extern void *calloc(size_t, size_t);
+extern void free(void *);
+extern void *malloc(size_t);
+extern void *realloc(void *, size_t);
+extern void abort(void);
+extern int atexit(void (*func)(void));
+extern void exit(int);
+extern char *getenv(const char *);
+extern int system(const char *);
+extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
+extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
+extern int abs(int);
+extern div_t div(int, int);
+extern long int labs(long int);
+extern ldiv_t ldiv(long int, long int);
+extern int mblen(const char *, size_t);
+extern int mbtowc(wchar_t *, const char *, size_t);
+extern int wctomb(char *, wchar_t);
+extern size_t mbstowcs(wchar_t *, const char *, size_t);
+extern size_t wcstombs(char *, const wchar_t *, size_t);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __STDLIB_H */