Header reorganisation for benefit of some solaris machines..
DOX_DIR_LATEX = @DOX_DIR_LATEX@
DOX_DIR_MAN = @DOX_DIR_MAN@
ECHO = @ECHO@
+ETR_SOCKET_LIBS = @ETR_SOCKET_LIBS@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBTOOL = @LIBTOOL@
AC_DEFINE(PREFER_PORTABLE_SNPRINTF, 1, "enable replacement (v)snprintf if system (v)snprintf is broken")
fi])
+dnl This macro figures out what libraries are required on this platform to link
+dnl sockets programs. It's usually -lsocket and/or -lnsl or neither. We test for
+dnl all three combinations.
+dnl Copyright Warren Young <warren@etr-usa.com>
+
+AC_DEFUN([ETR_SOCKET_NSL],
+[
+AC_CACHE_CHECK(for libraries containing socket functions,
+ac_cv_socket_libs, [
+ oCFLAGS=$CFLAGS
+
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ ],
+ [
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+ ],
+ ac_cv_socket_libs=-lc, ac_cv_socket_libs=no)
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ CFLAGS="$oCFLAGS -lsocket"
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ ],
+ [
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+ ],
+ ac_cv_socket_libs=-lsocket, ac_cv_socket_libs=no)
+ fi
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ CFLAGS="$oCFLAGS -lsocket -lnsl"
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ ],
+ [
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+ ],
+ ac_cv_socket_libs="-lsocket -lnsl", ac_cv_socket_libs=no)
+ fi
+
+ CFLAGS=$oCFLAGS
+])
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ AC_MSG_ERROR([Cannot find socket libraries])
+ elif test x"$ac_cv_socket_libs" = "x-lc"
+ then
+ ETR_SOCKET_LIBS=""
+ else
+ ETR_SOCKET_LIBS="$ac_cv_socket_libs"
+ fi
+
+ AC_SUBST(ETR_SOCKET_LIBS)
+]) dnl ETR_SOCKET_NSL
AC_DEFINE(PREFER_PORTABLE_SNPRINTF, 1, "enable replacement (v)snprintf if system (v)snprintf is broken")
fi])
+dnl This macro figures out what libraries are required on this platform to link
+dnl sockets programs. It's usually -lsocket and/or -lnsl or neither. We test for
+dnl all three combinations.
+dnl Copyright Warren Young <warren@etr-usa.com>
+
+AC_DEFUN([ETR_SOCKET_NSL],
+[
+AC_CACHE_CHECK(for libraries containing socket functions,
+ac_cv_socket_libs, [
+ oCFLAGS=$CFLAGS
+
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ ],
+ [
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+ ],
+ ac_cv_socket_libs=-lc, ac_cv_socket_libs=no)
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ CFLAGS="$oCFLAGS -lsocket"
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ ],
+ [
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+ ],
+ ac_cv_socket_libs=-lsocket, ac_cv_socket_libs=no)
+ fi
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ CFLAGS="$oCFLAGS -lsocket -lnsl"
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ ],
+ [
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+ ],
+ ac_cv_socket_libs="-lsocket -lnsl", ac_cv_socket_libs=no)
+ fi
+
+ CFLAGS=$oCFLAGS
+])
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ AC_MSG_ERROR([Cannot find socket libraries])
+ elif test x"$ac_cv_socket_libs" = "x-lc"
+ then
+ ETR_SOCKET_LIBS=""
+ else
+ ETR_SOCKET_LIBS="$ac_cv_socket_libs"
+ fi
+
+ AC_SUBST(ETR_SOCKET_LIBS)
+]) dnl ETR_SOCKET_NSL
+echo "$as_me:$LINENO: checking for libraries containing socket functions" >&5
+echo $ECHO_N "checking for libraries containing socket functions... $ECHO_C" >&6
+if test "${ac_cv_socket_libs+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+ oCFLAGS=$CFLAGS
+
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+#include "confdefs.h"
+
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+
+#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+int
+main ()
+{
+
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_socket_libs=-lc
+else
+ echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_socket_libs=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ CFLAGS="$oCFLAGS -lsocket"
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+#include "confdefs.h"
+
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+
+#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+int
+main ()
+{
+
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_socket_libs=-lsocket
+else
+ echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_socket_libs=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+ fi
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ CFLAGS="$oCFLAGS -lsocket -lnsl"
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+#include "confdefs.h"
+
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+
+#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+int
+main ()
+{
+
+ struct in_addr add;
+ int sd = socket(AF_INET, SOCK_STREAM, 0);
+ inet_ntoa(add);
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_socket_libs="-lsocket -lnsl"
+else
+ echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_socket_libs=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+ fi
+
+ CFLAGS=$oCFLAGS
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_socket_libs" >&5
+echo "${ECHO_T}$ac_cv_socket_libs" >&6
+
+ if test x"$ac_cv_socket_libs" = "xno"
+ then
+ { { echo "$as_me:$LINENO: error: Cannot find socket libraries" >&5
+echo "$as_me: error: Cannot find socket libraries" >&2;}
+ { (exit 1); exit 1; }; }
+ elif test x"$ac_cv_socket_libs" = "x-lc"
+ then
+ ETR_SOCKET_LIBS=""
+ else
+ ETR_SOCKET_LIBS="$ac_cv_socket_libs"
+ fi
+
+
+
+
echo "$as_me:$LINENO: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then
s,@CPP@,$CPP,;t t
s,@LIBTOOL@,$LIBTOOL,;t t
s,@LIBTOOL_DEPS@,$LIBTOOL_DEPS,;t t
+s,@ETR_SOCKET_LIBS@,$ETR_SOCKET_LIBS,;t t
s,@LIBOBJS@,$LIBOBJS,;t t
s,@LSOCKET@,$LSOCKET,;t t
s,@LNSL@,$LNSL,;t t
AC_PROG_LIBTOOL
AC_SUBST(LIBTOOL_DEPS)
-dnl Checks for libraries.
+dnl check if we need -lsocket or -lnsl
+ETR_SOCKET_NSL
dnl Checks for header files.
AC_HEADER_STDC
DOX_DIR_LATEX = @DOX_DIR_LATEX@
DOX_DIR_MAN = @DOX_DIR_MAN@
ECHO = @ECHO@
+ETR_SOCKET_LIBS = @ETR_SOCKET_LIBS@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBTOOL = @LIBTOOL@
LIBTOOL_DEPS = @LIBTOOL_DEPS@
include_HEADERS = opm.h opm_error.h opm_types.h opm_common.h
-libopm_la_LIBADD = @LNSL@ @LSOCKET@ @LTLIBOBJS@
+libopm_la_LIBADD = @ETR_SOCKET_LIBS@ @LTLIBOBJS@
noinst_PROGRAMS = test test_debug
test_SOURCES = test.c
DOX_DIR_LATEX = @DOX_DIR_LATEX@
DOX_DIR_MAN = @DOX_DIR_MAN@
ECHO = @ECHO@
+ETR_SOCKET_LIBS = @ETR_SOCKET_LIBS@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBTOOL = @LIBTOOL@
LIBTOOL_DEPS = @LIBTOOL_DEPS@
include_HEADERS = opm.h opm_error.h opm_types.h opm_common.h
-libopm_la_LIBADD = @LNSL@ @LSOCKET@ @LTLIBOBJS@
+libopm_la_LIBADD = @ETR_SOCKET_LIBS@ @LTLIBOBJS@
noinst_PROGRAMS = test test_debug
test_SOURCES = test.c
#include "setup.h"
+#include "inet.h"
#include "compat.h"
#include "config.h"
#include "proxy.h"
#include "opm_types.h"
#include "opm_error.h"
#include "libopm.h"
-#include "inet.h"
RCSID("$Id$");