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:
Родитель
c6fc5a1a26
Коммит
4d95d23d99
51
acinclude.m4
51
acinclude.m4
|
@ -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 -------------------------------------------------
|
||||
dnl Check for existing socklen_t type, and provide
|
||||
|
|
|
@ -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 -------------------------------------------------
|
||||
dnl Check for existing socklen_t type, and provide
|
||||
|
|
|
@ -96,6 +96,8 @@ CURL_CHECK_HEADER_WINSOCK
|
|||
CURL_CHECK_HEADER_WINSOCK2
|
||||
CURL_CHECK_HEADER_WS2TCPIP
|
||||
|
||||
CURL_CHECK_HEADER_MALLOC
|
||||
|
||||
dnl check for a few basic system headers we need
|
||||
AC_CHECK_HEADERS(
|
||||
sys/types.h \
|
||||
|
|
|
@ -1443,6 +1443,7 @@ dnl **********************************************************************
|
|||
dnl Checks for header files.
|
||||
AC_HEADER_STDC
|
||||
|
||||
CURL_CHECK_HEADER_MALLOC
|
||||
|
||||
dnl Now check for the very most basic headers. Then we can use these
|
||||
dnl ones as default-headers when checking for the rest!
|
||||
|
@ -1454,7 +1455,6 @@ AC_CHECK_HEADERS(
|
|||
sys/ioctl.h \
|
||||
assert.h \
|
||||
unistd.h \
|
||||
malloc.h \
|
||||
stdlib.h \
|
||||
limits.h \
|
||||
arpa/inet.h \
|
||||
|
|
Загрузка…
Ссылка в новой задаче