diff options
author | Thorsten Kukuk <kukuk@thkukuk.de> | 2011-06-14 15:28:05 +0200 |
---|---|---|
committer | Thorsten Kukuk <kukuk@thkukuk.de> | 2011-06-14 15:28:05 +0200 |
commit | 0fda81ee5bdc656554d55fb8d6f40c39bae3a3bf (patch) | |
tree | 7c73872d32f59d234d71ee99fb8cc599bc9aa5e4 /configure.in | |
parent | cda7bd483b42a39157e69271fa2211d7e89944dc (diff) | |
download | pam-0fda81ee5bdc656554d55fb8d6f40c39bae3a3bf.tar.gz pam-0fda81ee5bdc656554d55fb8d6f40c39bae3a3bf.tar.bz2 pam-0fda81ee5bdc656554d55fb8d6f40c39bae3a3bf.zip |
2011-06-14 Thorsten Kukuk <kukuk@thkukuk.de>
* configure.in: Check for libtirpc bye default.
* libpam/Makefile.am: Add support for libtirpc.
* modules/pam_access/Makefile.am: Likewise.
* modules/pam_unix/Makefile.am: Likewise.
* modules/pam_unix/pam_unix_passwd.c: Change ifdefs for
new libtirpc support.
* modules/pam_unix/yppasswd_xdr.c: Only compile if we have rpc/rpc.h.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 45 |
1 files changed, 36 insertions, 9 deletions
diff --git a/configure.in b/configure.in index d09d753f..80f9ee96 100644 --- a/configure.in +++ b/configure.in @@ -441,12 +441,39 @@ fi AC_SUBST(LIBDB) AM_CONDITIONAL([HAVE_LIBDB], [test ! -z "$LIBDB"]) -AC_CHECK_LIB([nsl],[yp_get_default_domain], LIBNSL="-lnsl", LIBNSL="") -BACKUP_LIBS=$LIBS -LIBS="$LIBS $LIBNSL" -AC_CHECK_FUNCS(yp_get_default_domain getdomainname innetgr yperr_string yp_master yp_bind yp_match yp_unbind) -LIBS=$BACKUP_LIBS -AC_SUBST(LIBNSL) +AC_ARG_ENABLE([nis], + AS_HELP_STRING([-disable-nis], [Disable building NIS/YP support in pam_unix and pam_access])) + +AS_IF([test "x$enable_nis" != "xno"], [ + CFLAGS=$old_CFLAGS + LIBS=$old_LIBS + + dnl if there's libtirpc available, prefer that over the system + dnl implementation. + PKG_CHECK_MODULES([libtirpc], [libtirpc], [ + CFLAGS="$CFLAGS $libtirpc_CFLAGS" + LIBS="$LIBS $libtirpc_LIBS" + ], [:;]) + + AC_SEARCH_LIBS([yp_get_default_domain], [nsl]) + + AC_CHECK_FUNCS([yp_get_default_domain yperr_string yp_master yp_bind yp_match yp_unbind]) + AC_CHECK_HEADERS([rpc/rpc.h rpcsvc/ypclnt.h rpcsvc/yp_prot.h]) + AC_CHECK_DECLS([getrpcport], , , [ + #if HAVE_RPC_RPC_H + # include <rpc/rpc.h> + #endif + ]) + + NIS_CFLAGS="${CFLAGS%${old_CFLAGS}}" + NIS_LIBS="${LIBS%${old_LIBS}}" + + CFLAGS="$old_CFLAGS" + LIBS="$old_LIBS" +]) + +AC_SUBST([NIS_CFLAGS]) +AC_SUBST([NIS_LIBS]) AC_ARG_ENABLE([selinux], AS_HELP_STRING([--disable-selinux],[do not use SELinux]), @@ -471,7 +498,7 @@ dnl Checks for header files. AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_SYS_WAIT -AC_CHECK_HEADERS(fcntl.h limits.h malloc.h sys/file.h sys/ioctl.h sys/time.h syslog.h net/if.h termio.h unistd.h sys/fsuid.h inittypes.h rpcsvc/ypclnt.h rpcsvc/yp_prot.h) +AC_CHECK_HEADERS(fcntl.h limits.h malloc.h sys/file.h sys/ioctl.h sys/time.h syslog.h net/if.h termio.h unistd.h sys/fsuid.h inittypes.h) dnl For module/pam_lastlog AC_CHECK_HEADERS(lastlog.h utmp.h utmpx.h) @@ -491,11 +518,11 @@ AC_TYPE_GETGROUPS AC_PROG_GCC_TRADITIONAL AC_FUNC_MEMCMP AC_FUNC_VPRINTF -AC_CHECK_FUNCS(fseeko gethostname gettimeofday lckpwdf mkdir select) +AC_CHECK_FUNCS(fseeko getdomainname gethostname gettimeofday lckpwdf mkdir select) AC_CHECK_FUNCS(strcspn strdup strspn strstr strtol uname) AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r) AC_CHECK_FUNCS(getgrouplist getline getdelim) -AC_CHECK_FUNCS(inet_ntop inet_pton ruserok_af) +AC_CHECK_FUNCS(inet_ntop inet_pton innetgr ruserok_af) AC_CHECK_FUNCS(unshare, [UNSHARE=yes], [UNSHARE=no]) AM_CONDITIONAL([HAVE_UNSHARE], [test "$UNSHARE" = yes]) |