From 16cbf3c076a0aca6d47adaf3f719493674cf2363 Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Tue, 17 Jan 2017 20:00:00 +0300 Subject: Initial version. --- auto/malloc | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 auto/malloc (limited to 'auto/malloc') diff --git a/auto/malloc b/auto/malloc new file mode 100644 index 00000000..c3372cfe --- /dev/null +++ b/auto/malloc @@ -0,0 +1,159 @@ + +# Copyright (C) Igor Sysoev +# Copyright (C) NGINX, Inc. + + +# Linux glibc 2.1.91, FreeBSD 7.0, Solaris 11, +# MacOSX 10.6 (Snow Leopard), NetBSD 5.0. + +nxt_feature="posix_memalign()" +nxt_feature_name=NXT_HAVE_POSIX_MEMALIGN +nxt_feature_run=yes +nxt_feature_incs= +nxt_feature_libs= +nxt_feature_test="#include + + int main() { + void *p; + + if (posix_memalign(&p, 4096, 4096) != 0) + return 1; + + free(p); + return 0; + }" +. auto/feature + + +if [ $nxt_found = no ]; then + + # Solaris, HP-UX. + + nxt_feature="memalign()" + nxt_feature_name=NXT_HAVE_MEMALIGN + nxt_feature_run=yes + nxt_feature_incs= + nxt_feature_libs= + nxt_feature_test="#include + + int main() { + void *p; + + p = memalign(4096, 4096); + if (p == NULL) + return 1; + + free(p); + return 0; + }" + . auto/feature +fi + + +# Linux malloc_usable_size(). + +nxt_feature="Linux malloc_usable_size()" +nxt_feature_name=NXT_HAVE_MALLOC_USABLE_SIZE +nxt_feature_run=yes +nxt_feature_incs= +nxt_feature_libs= +nxt_feature_test="#include + + int main() { + void *p; + + p = malloc(4096); + if (malloc_usable_size(p) < 4096) + return 1; + return 0; + }" +. auto/feature + + +if [ $nxt_found = no ]; then + + # FreeBSD malloc_usable_size(). + + nxt_feature="FreeBSD malloc_usable_size()" + nxt_feature_name=NXT_HAVE_MALLOC_USABLE_SIZE + nxt_feature_run=yes + nxt_feature_incs= + nxt_feature_libs= + nxt_feature_test="#include + #include + + int main() { + void *p; + + p = malloc(4096); + if (malloc_usable_size(p) < 4096) + return 1; + return 0; + }" + . auto/feature +fi + + +if [ $nxt_found = no ]; then + + # MacOSX malloc_good_size(). + + nxt_feature="MacOSX malloc_good_size()" + nxt_feature_name=NXT_HAVE_MALLOC_GOOD_SIZE + nxt_feature_run=yes + nxt_feature_incs= + nxt_feature_libs= + nxt_feature_test="#include + + int main() { + if (malloc_good_size(4096) < 4096) + return 1; + return 0; + }" + . auto/feature +fi + + +# alloca(). + +# Linux, FreeBSD, MacOSX. + +nxt_feature="alloca()" +nxt_feature_name=NXT_HAVE_ALLOCA +nxt_feature_run=yes +nxt_feature_incs= +nxt_feature_libs= +nxt_feature_test="#include + + int main() { + void *p; + + p = alloca(256); + if (p == 0) + return 1; + return 0; + }" +. auto/feature + + +if [ $nxt_found = no ]; then + + # Linux, Solaris, MacOSX. + + nxt_feature="alloca() in alloca.h" + nxt_feature_name=NXT_HAVE_ALLOCA_H + nxt_feature_run=yes + nxt_feature_incs= + nxt_feature_libs= + nxt_feature_test="#include + + int main() { + void *p; + + p = alloca(256); + if (p == 0) + return 1; + return 0; + }" + . auto/feature +fi -- cgit