aboutsummaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in65
1 files changed, 65 insertions, 0 deletions
diff --git a/configure.in b/configure.in
new file mode 100644
index 0000000..822720d
--- /dev/null
+++ b/configure.in
@@ -0,0 +1,65 @@
+AC_INIT(pam_exec.c)
+AC_CANONICAL_SYSTEM
+AC_PREFIX_DEFAULT()
+
+AM_INIT_AUTOMAKE(pam_exec, 1)
+AM_CONFIG_HEADER(config.h)
+AM_MAINTAINER_MODE
+
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_INSTALL
+
+if test "$ac_cv_prog_gcc" = "yes"; then CFLAGS="$CFLAGS -Wall -fPIC"; fi
+
+case "$target_os" in
+freebsd*) CPPFLAGS="$CPPFLAGS -DPIC -D_REENTRANT" ;;
+aix*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
+*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
+esac
+
+case "$target_os" in
+aix*) pam_exec_so_LD="ld"
+ pam_exec_so_LDFLAGS="-bM:SRE -bnoentry -bE:\$(srcdir)/exports.aix"
+ TARGET_OS="AIX" ;;
+darwin*) pam_exec_so_LDFLAGS="-bundle" ;;
+hpux*) pam_exec_so_LD="/bin/ld"
+ pam_exec_so_LDFLAGS="-b -dynamic -G `cat exports.hpux`"
+ TARGET_OS="HPUX" ;;
+solaris*) pam_exec_so_LD="/usr/ccs/bin/ld"
+ pam_exec_so_LDFLAGS="-B dynamic -M \$(srcdir)/exports.solaris -G -B group -lc" ;;
+linux*) pam_exec_so_LDFLAGS="-shared -Wl,-Bdynamic -Wl,--version-script,\$(srcdir)/exports.linux" ;;
+*) pam_exec_so_LDFLAGS="-shared" ;;
+esac
+
+AC_SUBST(pam_exec_so_LD)
+AC_SUBST(pam_exec_so_LDFLAGS)
+
+AM_CONDITIONAL(USE_NATIVE_LINKER, test -n "$pam_exec_so_LD")
+AM_CONDITIONAL(EXTENSION_SO, test "$target_os" = "linux" -o "$target_os" = "linux-gnu")
+AM_CONDITIONAL(EXTENSION_1, test "$TARGET_OS" = "HPUX")
+
+if test -n "$with_openssl_dir"; then
+ CPPFLAGS="$CPPFLAGS -I$with_openssl_dir/include"
+ LDFLAGS="$LDFLAGS -L$with_openssl_dir/lib"
+ case "$target_os" in
+ aix*) LDFLAGS="$LDFLAGS -Wl,-brtl -Wl,-blibpath:$with_openssl_dir/lib"
+ pam_exec_so_LDFLAGS="$pam_exec_so_LDFLAGS -L$with_openssl_dir/lib -brtl -blibpath:$with_openssl_dir/lib" ;;
+ hpux*) LDFLAGS="$LDFLAGS -Wl,+b$with_openssl_dir/lib"
+ pam_exec_so_LDFLAGS="$pam_exec_so_LDFLAGS -L$with_openssl_dir/lib +b$with_openssl_dir/lib" ;;
+ solaris*) LDFLAGS="$LDFLAGS -R$with_openssl_dir/lib"
+ pam_exec_so_LDFLAGS="$pam_exec_so_LDFLAGS -L$with_openssl_dir/lib -R$with_openssl_dir/lib" ;;
+ *) LDFLAGS="$LDFLAGS -Wl,-rpath,$with_openssl_dir/lib" ;;
+ esac
+fi
+
+AC_CHECK_HEADERS(security/pam_appl.h security/pam_misc.h security/pam_modules.h)
+AC_CHECK_HEADERS(pam/pam_appl.h pam/pam_misc.h pam/pam_modules.h)
+AC_CHECK_HEADERS(openssl/opensslconf.h, , AC_MSG_ERROR(could not locate <openssl/opensslconf.h>))
+
+AC_CHECK_LIB(crypto, SHA1_Init,[LIBS="-lcrypto $LIBS"],,$LIBS)
+AC_CHECK_LIB(pam, pam_start)
+AC_CHECK_LIB(pam_misc, misc_conv)
+
+AC_OUTPUT(Makefile)
+