Define NEED_MALLOC_H if including <stdlib.h> is not enough for proper compilation and <malloc.h> must also be included.

This commit is contained in:
Yang Tse 2006-07-11 20:40:38 +00:00
parent c6fc5a1a26
commit 4d95d23d99
4 changed files with 105 additions and 1 deletions

View File

@ -171,6 +171,57 @@ AC_DEFUN([CURL_CHECK_HEADER_WS2TCPIP], [
]) ])
dnl CURL_CHECK_HEADER_MALLOC
dnl -------------------------------------------------
dnl Check for compilable and valid malloc.h header,
dnl and check if it is needed even with stdlib.h
AC_DEFUN([CURL_CHECK_HEADER_MALLOC], [
AC_CACHE_CHECK([for malloc.h], [ac_cv_header_malloc_h], [
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([
#include <malloc.h>
],[
void *p = malloc(10);
void *q = calloc(10,10);
free(p);
free(q);
])
],[
ac_cv_header_malloc_h="yes"
],[
ac_cv_header_malloc_h="no"
])
])
if test "$ac_cv_header_malloc_h" = "yes"; then
AC_DEFINE_UNQUOTED(HAVE_MALLOC_H, 1,
[Define to 1 if you have the malloc.h header file.])
#
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([
#include <stdlib.h>
],[
void *p = malloc(10);
void *q = calloc(10,10);
free(p);
free(q);
])
],[
curl_cv_need_header_malloc_h="no"
],[
curl_cv_need_header_malloc_h="yes"
])
#
case "$curl_cv_need_header_malloc_h" in
yes)
AC_DEFINE_UNQUOTED(NEED_MALLOC_H, 1,
[Define to 1 if you need the malloc.h header file.])
;;
esac
fi
])
dnl CURL_CHECK_TYPE_SOCKLEN_T dnl CURL_CHECK_TYPE_SOCKLEN_T
dnl ------------------------------------------------- dnl -------------------------------------------------
dnl Check for existing socklen_t type, and provide dnl Check for existing socklen_t type, and provide

View File

@ -149,6 +149,57 @@ AC_DEFUN([CURL_CHECK_HEADER_WS2TCPIP], [
]) ])
dnl CURL_CHECK_HEADER_MALLOC
dnl -------------------------------------------------
dnl Check for compilable and valid malloc.h header,
dnl and check if it is needed even with stdlib.h
AC_DEFUN([CURL_CHECK_HEADER_MALLOC], [
AC_CACHE_CHECK([for malloc.h], [ac_cv_header_malloc_h], [
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([
#include <malloc.h>
],[
void *p = malloc(10);
void *q = calloc(10,10);
free(p);
free(q);
])
],[
ac_cv_header_malloc_h="yes"
],[
ac_cv_header_malloc_h="no"
])
])
if test "$ac_cv_header_malloc_h" = "yes"; then
AC_DEFINE_UNQUOTED(HAVE_MALLOC_H, 1,
[Define to 1 if you have the malloc.h header file.])
#
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([
#include <stdlib.h>
],[
void *p = malloc(10);
void *q = calloc(10,10);
free(p);
free(q);
])
],[
curl_cv_need_header_malloc_h="no"
],[
curl_cv_need_header_malloc_h="yes"
])
#
case "$curl_cv_need_header_malloc_h" in
yes)
AC_DEFINE_UNQUOTED(NEED_MALLOC_H, 1,
[Define to 1 if you need the malloc.h header file.])
;;
esac
fi
])
dnl CURL_CHECK_TYPE_SOCKLEN_T dnl CURL_CHECK_TYPE_SOCKLEN_T
dnl ------------------------------------------------- dnl -------------------------------------------------
dnl Check for existing socklen_t type, and provide dnl Check for existing socklen_t type, and provide

View File

@ -96,6 +96,8 @@ CURL_CHECK_HEADER_WINSOCK
CURL_CHECK_HEADER_WINSOCK2 CURL_CHECK_HEADER_WINSOCK2
CURL_CHECK_HEADER_WS2TCPIP CURL_CHECK_HEADER_WS2TCPIP
CURL_CHECK_HEADER_MALLOC
dnl check for a few basic system headers we need dnl check for a few basic system headers we need
AC_CHECK_HEADERS( AC_CHECK_HEADERS(
sys/types.h \ sys/types.h \

View File

@ -1443,6 +1443,7 @@ dnl **********************************************************************
dnl Checks for header files. dnl Checks for header files.
AC_HEADER_STDC AC_HEADER_STDC
CURL_CHECK_HEADER_MALLOC
dnl Now check for the very most basic headers. Then we can use these dnl Now check for the very most basic headers. Then we can use these
dnl ones as default-headers when checking for the rest! dnl ones as default-headers when checking for the rest!
@ -1454,7 +1455,6 @@ AC_CHECK_HEADERS(
sys/ioctl.h \ sys/ioctl.h \
assert.h \ assert.h \
unistd.h \ unistd.h \
malloc.h \
stdlib.h \ stdlib.h \
limits.h \ limits.h \
arpa/inet.h \ arpa/inet.h \