aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac43
1 files changed, 41 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index 92ffbbd..8fb1eac 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,3 +1,3 @@
# This file is part of GNU Pies. -*- autoconf -*-
-# Copyright (C) 2009-2014 Sergey Poznyakoff
+# Copyright (C) 2009-2015 Sergey Poznyakoff
#
@@ -35,5 +35,8 @@ AC_PROG_LEX
# Checks for libraries.
+AC_CHECK_LIB(crypt, crypt)
# Checks for header files.
-AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdint.h stdlib.h string.h sys/socket.h sys/time.h syslog.h unistd.h utmp.h utmpx.h])
+AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdint.h stdlib.h\
+ string.h sys/socket.h sys/time.h syslog.h unistd.h utmp.h utmpx.h\
+ crypt.h shadow.h])
@@ -82,2 +85,37 @@ AM_GNU_GETTEXT_VERSION([0.18])
+# PAM
+status_pam=maybe
+AC_ARG_ENABLE([pam],
+ AC_HELP_STRING([--enable-pam],
+ [enable PAM]),
+ [
+case "${enableval}" in
+ yes) status_pam=yes ;;
+ no) status_pam=no ;;
+ *) AC_MSG_ERROR([bad value ${enableval} for --enable-pam]) ;;
+esac],[status_pam=maybe])
+
+AC_SUBST(PAM_LIBS,-lpam)
+if test "$status_pam" != "no"; then
+ pam=$status_pam
+ AC_CHECK_HEADERS(security/pam_appl.h)
+ if test "$ac_cv_header_security_pam_appl_h" = "yes"; then
+ AC_CHECK_LIB(dl, dlopen, [PAM_LIBS="$PAM_LIBS -ldl"])
+ AC_CHECK_LIB(pam, pam_start,
+ [status_pam=yes],
+ [status_pam=no], $PAM_LIBS)
+ else
+ status_pam=no
+ fi
+ if test $pam = yes && test $pam != $status_pam; then
+ AC_MSG_ERROR([required module PAM cannot be built because of missing prerequisites])
+ fi
+fi
+
+AM_CONDITIONAL([PAM_COND], [test $status_pam = yes])
+if test $status_pam = yes; then
+ AC_DEFINE_UNQUOTED(WITH_PAM, 1, [PAM support enabled])
+fi
+
+# Build inetd
AC_ARG_ENABLE([inetd],
@@ -102,2 +140,3 @@ AC_CONFIG_FILES([Makefile
src/Makefile
+ ident/Makefile
doc/Makefile

Return to:

Send suggestions and report system problems to the System administrator.