parent
c49f69cb8c
commit
d060a75b0d
27 changed files with 3317 additions and 652 deletions
File diff suppressed because it is too large
Load Diff
@ -1,55 +0,0 @@ |
||||
dnl |
||||
dnl The following was written by jhawk@mit.edu |
||||
dnl |
||||
dnl AC_LIBRARY_NET: Id: net.m4,v 1.4 1997/10/25 20:49:53 jhawk Exp |
||||
dnl |
||||
dnl This test is for network applications that need socket() and |
||||
dnl gethostbyname() -ish functions. Under Solaris, those applications need to |
||||
dnl link with "-lsocket -lnsl". Under IRIX, they should *not* link with |
||||
dnl "-lsocket" because libsocket.a breaks a number of things (for instance: |
||||
dnl gethostbyname() under IRIX 5.2, and snoop sockets under most versions of |
||||
dnl IRIX). |
||||
dnl |
||||
dnl Unfortunately, many application developers are not aware of this, and |
||||
dnl mistakenly write tests that cause -lsocket to be used under IRIX. It is |
||||
dnl also easy to write tests that cause -lnsl to be used under operating |
||||
dnl systems where neither are necessary (or useful), such as SunOS 4.1.4, which |
||||
dnl uses -lnsl for TLI. |
||||
dnl |
||||
dnl This test exists so that every application developer does not test this in |
||||
dnl a different, and subtly broken fashion. |
||||
dnl |
||||
dnl It has been argued that this test should be broken up into two seperate |
||||
dnl tests, one for the resolver libraries, and one for the libraries necessary |
||||
dnl for using Sockets API. Unfortunately, the two are carefully intertwined and |
||||
dnl allowing the autoconf user to use them independantly potentially results in |
||||
dnl unfortunate ordering dependancies -- as such, such component macros would |
||||
dnl have to carefully use indirection and be aware if the other components were |
||||
dnl executed. Since other autoconf macros do not go to this trouble, and almost |
||||
dnl no applications use sockets without the resolver, this complexity has not |
||||
dnl been implemented. |
||||
dnl |
||||
dnl The check for libresolv is in case you are attempting to link statically |
||||
dnl and happen to have a libresolv.a lying around (and no libnsl.a). |
||||
dnl |
||||
AC_DEFUN(AC_LIBRARY_NET, [ |
||||
# Most operating systems have gethostbyname() in the default searched |
||||
# libraries (i.e. libc): |
||||
AC_CHECK_FUNC(gethostbyname, , |
||||
# Some OSes (eg. Solaris) place it in libnsl: |
||||
AC_CHECK_LIB(nsl, gethostbyname, , |
||||
# Some strange OSes (SINIX) have it in libsocket: |
||||
AC_CHECK_LIB(socket, gethostbyname, , |
||||
# Unfortunately libsocket sometimes depends on libnsl. |
||||
# AC_CHECK_LIB's API is essentially broken so the following |
||||
# ugliness is necessary: |
||||
AC_CHECK_LIB(socket, gethostbyname, |
||||
LIBS="-lsocket -lnsl $LIBS", |
||||
AC_CHECK_LIB(resolv, gethostbyname), |
||||
-lnsl) |
||||
) |
||||
) |
||||
) |
||||
AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket, , |
||||
AC_CHECK_LIB(socket, socket, LIBS="-lsocket -lnsl $LIBS", , -lnsl))) |
||||
]) |
Loading…
Reference in new issue