X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Flibc.so_src%2Finclude_exp%2Fstdlib.h;h=2bfb00d270309ae3db3a211b0fb6c23a42f63553;hb=d4b689239171d6786d20accfa3e8db7688271a68;hp=acba0821b855d1bfa186b93f33196982246ed571;hpb=df8ced739e79757e9c96bd8ae184f0857574c0d6;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libc.so_src/include_exp/stdlib.h b/Usermode/Libraries/libc.so_src/include_exp/stdlib.h index acba0821..2bfb00d2 100644 --- a/Usermode/Libraries/libc.so_src/include_exp/stdlib.h +++ b/Usermode/Libraries/libc.so_src/include_exp/stdlib.h @@ -12,6 +12,42 @@ #define EXIT_FAILURE 1 #define EXIT_SUCCESS 0 +#ifdef ARCHDIR_is_native +# define _exit acess__exit + +//# define strtoll acess_strtoll +//# define strtol acess_strtol +//# define strtoul acess_strtoul +//# define strtoull acess_strtoull + +# define strtod acess_strtod +# define strtof acess_strtof +# define atof acess_atof + +# define exit acess_exit +# define atexit acess_atexit +# define abort acess_abort +# define abs acess_abs +# define labs acess_labs +# define llabs acess_llabs + +# define getenv acess_getenv +# define putenv acess_putenv + +# define bsearch acess_bsearch +# define qsort acess_qsort + +# define free acess_free +# define malloc acess_malloc +# define calloc acess_calloc +# define realloc acess_realloc +# define IsHeap acess_IsHeap + +# define srand acess_srand +# define rand acess_rand +# define rand_p acess_rand_p +#endif + /* --- Spinlock Macros --- */ /* TODO: Support non-x86 architectures */ #define DEFLOCK(_name) static int _spinlock_##_name=0; @@ -34,13 +70,18 @@ extern float atof(const char *ptr); extern void exit(int status) __attribute__((noreturn)); extern void abort(void); extern void atexit(void (*__func)(void)); -extern void qsort(void *base, size_t nmemb, size_t size, int(*compar)(const void *, const void *)); extern int abs(int j); extern long int labs(long int j); extern long long int llabs(long long int j); /* --- Environment --- */ extern char *getenv(const char *name); +extern int putenv(char *string); + +/* --- Search/Sort --- */ +typedef int (*_stdlib_compar_t)(const void *, const void *); +extern void *bsearch(const void *key, const void *base, size_t nmemb, size_t size, _stdlib_compar_t compar); +extern void qsort(void *base, size_t nmemb, size_t size, _stdlib_compar_t compar); /* --- Heap --- */ extern void free(void *mem);