1##***************************************************************************** 2# AUTHOR: 3# Morris Jette <jette1@llnl.gov> 4# 5# SYNOPSIS: 6# X_AC_PAM 7# 8# DESCRIPTION: 9# Test for PAM (Pluggable Authentication Module) support. 10# 11# WARNINGS: 12# This macro must be placed after AC_PROG_CC or equivalent. 13##***************************************************************************** 14 15AC_DEFUN([X_AC_PAM], [ 16 AC_MSG_CHECKING([whether to enable PAM support]) 17 AC_ARG_ENABLE( 18 [pam], 19 AS_HELP_STRING(--enable-pam,enable PAM (Pluggable Authentication Modules) support), 20 [ case "$enableval" in 21 yes) x_ac_pam=yes ;; 22 no) x_ac_pam=no ;; 23 *) AC_MSG_RESULT([doh!]) 24 AC_MSG_ERROR([bad value "$enableval" for --enable-pam]) ;; 25 esac 26 ], 27 [x_ac_pam=yes] 28 ) 29 30 if test "$x_ac_pam" = yes; then 31 AC_MSG_RESULT([yes]) 32 AC_CHECK_LIB([pam], 33 [pam_get_user], 34 [ac_have_pam=yes; PAM_LIBS="-lpam"]) 35 36 AC_CHECK_LIB([pam_misc], 37 [misc_conv], 38 [ac_have_pam_misc=yes; PAM_LIBS="$PAM_LIBS -lpam_misc"]) 39 40 AC_SUBST(PAM_LIBS) 41 if test "x$ac_have_pam" = "xyes" -a "x$ac_have_pam_misc" = "xyes"; then 42 AC_DEFINE(HAVE_PAM,, [define if you have the PAM library]) 43 else 44 AC_MSG_WARN([unable to locate PAM libraries]) 45 fi 46 else 47 AC_MSG_RESULT([no]) 48 fi 49 AM_CONDITIONAL(HAVE_PAM, 50 test "x$x_ac_pam" = "xyes" -a "x$ac_have_pam" = "xyes" -a "x$ac_have_pam_misc" = "xyes") 51 52 53 AC_ARG_WITH(pam_dir, 54 AS_HELP_STRING(--with-pam_dir=PATH,Specify path to PAM module installation), 55 [ 56 if test -d $withval ; then 57 PAM_DIR="$withval" 58 else 59 AC_MSG_ERROR([bad value "$withval" for --with-pam_dir]) 60 fi 61 ], 62 [ 63 if test -d /lib64/security ; then 64 PAM_DIR="/lib64/security" 65 else 66 PAM_DIR="/lib/security" 67 fi 68 ] 69 ) 70 AC_SUBST(PAM_DIR) 71 AC_DEFINE_UNQUOTED(PAM_DIR, "$pam_dir", [Define PAM module installation directory.]) 72 73]) 74 75