X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=m4%2Fstdlib.m4;h=4f2f7397fb9dfc7919cf58a1fca6fff6551e7598;hb=7fa8158cfcdd526f247d063202dc57c7f76901d8;hp=c84d44d1a38da74415d518e2a761fba7da628d4b;hpb=b4508f6b917660970f887894a6aaed6c220a2c72;p=m6w6%2Fext-psi diff --git a/m4/stdlib.m4 b/m4/stdlib.m4 index c84d44d..4f2f739 100644 --- a/m4/stdlib.m4 +++ b/m4/stdlib.m4 @@ -1,10 +1,24 @@ -AC_DEFUN(PSI_CHECK_STDLIB, [ +PSI_CHECK_STDLIB() { AC_CHECK_HEADERS(stdlib.h) + PSI_STRUCT(div_t, [ + int quot, + int rem + ]) + PSI_STRUCT(ldiv_t, [ + long quot, + long rem + ]) + PSI_STRUCT(lldiv_t, [ + long long quot, + long long rem + ]) + PSI_CONST(EXIT_FAILURE, int) PSI_CONST(EXIT_SUCCESS, int) PSI_CONST(RAND_MAX, int) - PSI_CONST(MB_CUR_MAX, int) + + PSI_MACRO(int MB_CUR_MAX) PSI_DECL(void _Exit, [(int status)]) PSI_DECL(void abort, [()]) @@ -23,7 +37,8 @@ AC_DEFUN(PSI_CHECK_STDLIB, [ PSI_DECL(long jrand48, [(unsigned short xsubi@<:@3@:>@)]) PSI_DECL(long labs, [(long l)]) PSI_DECL(void lcong48, [(unsigned short param@<:@7@:>@)]) - PSI_DECL(long ldiv, [(long numerator, long denominator)]) + PSI_DECL(ldiv_t ldiv, [(long numerator, long denominator)]) + PSI_DECL(lldiv_t lldiv, [(long long numerator, long long denominator)]) PSI_DECL(long lrand48, [()]) PSI_DECL(int mblen, [(const char *s, size_t n)]) PSI_DECL(size_t mbstowcs, [(wchar_t *dest, char *src, size_t n)]) @@ -42,7 +57,11 @@ AC_DEFUN(PSI_CHECK_STDLIB, [ PSI_DECL(char *realpath, [(char *path, char *resolved)]) PSI_DECL(unsigned short *seed48, [(unsigned short seed16v@<:@3@:>@)]) PSI_DECL(int setenv, [(char *var)]) - PSI_DECL(void setkey, [(char *key)]) + + AC_SEARCH_LIBS(setkey, crypt, [ + PSI_DECL(void setkey, [(char *key)]) + ]) + PSI_DECL(char *setstate, [(char *state)]) PSI_DECL(void srand, [(unsigned seed)]) PSI_DECL(void srand48, [(long seed)]) @@ -50,11 +69,11 @@ AC_DEFUN(PSI_CHECK_STDLIB, [ PSI_DECL(double strtod, [(char *nptr, char **endptr)]) PSI_DECL(float strtof, [(char *nptr, char **endptr)]) PSI_DECL(long strtol, [(char *nptr, char **endptr)]) + PSI_DECL(long double strtold, [(const char *nptr, char **endptr)]) PSI_DECL(unsigned long strtoul, [(char *nptr, char **endptr)]) PSI_DECL(int system, [(char *command)]) PSI_DECL(int unlockpt, [(int fd)]) PSI_DECL(int unsetenv, [(char *var)]) PSI_DECL(size_t wcstombs, [(char *dest, wchar_t *src, size_t n)]) PSI_DECL(int wctomb, [(char *s, wchar_t wc)]) -]) - +}