diff options
-rw-r--r-- | COMPILING | 3 | ||||
-rw-r--r-- | buildlib/config.h.in | 15 | ||||
-rw-r--r-- | buildlib/netdb.h.in | 5 | ||||
-rw-r--r-- | configure.in | 28 |
4 files changed, 47 insertions, 4 deletions
@@ -61,7 +61,8 @@ HP-UX 1) snprintf exists but is not prototyped, ignore spurios warnings 2) No socklen_t 3) Requires -D_XOPEN_SOURCE_EXTENDED for h_errno - Items 2 and 3 have to be fixed by hand. Insert this into + configure attempts to detect items 2 and 3, and tries to fix them. If + not, you can add the following into(patches welcome to configure.in) build/include/netdb.h: #define _XOPEN_SOURCE_EXTENDED diff --git a/buildlib/config.h.in b/buildlib/config.h.in index 689549e65..7e738af52 100644 --- a/buildlib/config.h.in +++ b/buildlib/config.h.in @@ -32,6 +32,20 @@ /* Define if we have enabled pthread support */ #undef HAVE_PTHREAD +/* Define if h_errno is in netdb.h */ +#undef HAVE_NETDB_H + +/* Define if socklen_t is in sys/socket.h This does not mean we + shouldn't include sys/socket.h tho! */ +#undef HAVE_SYS_SOCKET_H + +/* If there is no socklen_t, define this(might want to update + configure.in. */ +#undef NEED_SOCKLEN_T_DEFINE + +/* Define on HP-UX */ +#undef NEED_XOPEN_NETDB_H + /* Define the architecture name string */ #undef ARCHITECTURE @@ -40,4 +54,3 @@ /* The package name string */ #undef PACKAGE - diff --git a/buildlib/netdb.h.in b/buildlib/netdb.h.in new file mode 100644 index 000000000..1babd7657 --- /dev/null +++ b/buildlib/netdb.h.in @@ -0,0 +1,5 @@ +/* Fix broken(?) unixen. */ +#ifdef NEED_SOCKLEN_T_DEFINE + #define socklen_t size_t +#endif +#include_next <netdb.h> diff --git a/configure.in b/configure.in index 366d70375..2981a5a4c 100644 --- a/configure.in +++ b/configure.in @@ -14,10 +14,10 @@ dnl configure.in correctly and can be run at any time AC_INIT(configure.in) AC_CONFIG_AUX_DIR(buildlib) -AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in) +AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/netdb.h:buildlib/netdb.h.in) dnl -- SET THIS TO THE RELEASE VERSION -- -AC_DEFINE_UNQUOTED(VERSION,"0.3.15") +AC_DEFINE_UNQUOTED(VERSION,"0.3.15.1") AC_DEFINE_UNQUOTED(PACKAGE,"apt") dnl Check our C compiler @@ -140,6 +140,30 @@ if test x"$c9x_ints" = x"no"; then AC_SUBST(HAVE_C9X) fi +AC_MSG_CHECKING(for socklen_t) +AC_EGREP_HEADER(socklen_t, sys/socket.h, [ + AC_DEFINE(HAVE_SYS_SOCKET_H) + AC_MSG_RESULT(sys/socket.h) +], [ + AC_DEFINE(NEED_SOCKLEN_T_DEFINE) + AC_MSG_RESULT([socklen_t size_t]) +]) + +AC_MSG_CHECKING(for h_errno) +AC_EGREP_HEADER(h_errno, netdb.h, [AC_DEFINE(HAVE_NETDB_H) + AC_MSG_RESULT(found) +], [AC_TRY_COMPILE(netdb.h, h_errno foo, [AC_MSG_RESULT(found) + AC_MSG_RESULT(found) + ], [ah_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED" + AC_TRY_COMPILE([netdb.h], [h_errno foo], [AC_DEFINE(NEED_XOPEN_NETDB_H) + AC_MSG_RESULT([found, needed -D_XOPEN_SOURCE_EXTENDED]) + ], [CFLAGS="$ah_CFLAGS" + AC_MSG_ERROR(["not found."]) + ]) + ]) +]) + dnl Check for debiandoc AC_CHECK_PROG(DEBIANDOC_HTML,debiandoc2html,"yes","") AC_CHECK_PROG(DEBIANDOC_TEXT,debiandoc2text,"yes","") |