aboutsummaryrefslogtreecommitdiff
path: root/configure.in
blob: 822720d786a31332ebadfa4484f04c71bd094567 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
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)