1348980Sdesdnl $OpenPAM: configure.ac 947 2019-02-24 20:18:17Z des $ 2141098Sdes 3228692SdesAC_PREREQ([2.62]) 4348980SdesAC_REVISION([$OpenPAM: configure.ac 947 2019-02-24 20:18:17Z des $]) 5348980SdesAC_INIT([OpenPAM], [20190224], [des@des.no], [openpam], [http://www.openpam.org/]) 6255369SdesAC_CONFIG_SRCDIR([lib/libpam/pam_start.c]) 7228692SdesAC_CONFIG_MACRO_DIR([m4]) 8228692SdesAM_INIT_AUTOMAKE([foreign]) 9228692SdesAM_CONFIG_HEADER([config.h]) 10141098Sdes 11228692Sdes# C compiler and features 12174832SdesAC_LANG(C) 13228692SdesAC_PROG_CC 14228692SdesAC_PROG_CC_STDC 15228692SdesAC_PROG_CPP 16228692SdesAC_GNU_SOURCE 17228692SdesAC_C_CONST 18228692SdesAC_C_RESTRICT 19141098SdesAC_C_VOLATILE 20141098Sdes 21228692Sdes# libtool 22228692SdesLT_PREREQ([2.2.6]) 23228692SdesLT_INIT([disable-static dlopen]) 24228692Sdes 25348980Sdes# pkg-config 26348980SdesAX_PROG_PKG_CONFIG 27348980Sdes 28228692Sdes# other programs 29228692SdesAC_PROG_INSTALL 30228692Sdes 31141098SdesLIB_MAJ=2 32141098SdesAC_SUBST(LIB_MAJ) 33141098SdesAC_DEFINE_UNQUOTED(LIB_MAJ, $LIB_MAJ, [OpenPAM library major number]) 34141098Sdes 35228692SdesAC_ARG_ENABLE([debug], 36228692Sdes AC_HELP_STRING([--enable-debug], 37255376Sdes [turn debugging macros on]), 38255376Sdes AC_DEFINE(OPENPAM_DEBUG, 1, [Turn debugging macros on])) 39174832Sdes 40228692SdesAC_ARG_ENABLE([unversioned-modules], 41228692Sdes AC_HELP_STRING([--disable-unversioned-modules], 42228692Sdes [support loading of unversioned modules]), 43228692Sdes [AS_IF([test x"$enableval" = x"no"], [ 44228692Sdes AC_DEFINE(DISABLE_UNVERSIONED_MODULES, 45228692Sdes 1, 46228692Sdes [Whether loading unversioned modules support is disabled]) 47228692Sdes ])]) 48141098Sdes 49228692SdesAC_ARG_WITH([modules-dir], 50228692Sdes AC_HELP_STRING([--with-modules-dir=DIR], 51228692Sdes [OpenPAM modules directory]), 52228692Sdes [AS_IF([test x"$withval" != x"no"], [ 53228692Sdes OPENPAM_MODULES_DIR="$withval" 54255376Sdes AC_DEFINE_UNQUOTED(OPENPAM_MODULES_DIR, 55255376Sdes "${OPENPAM_MODULES_DIR%/}", 56255376Sdes [OpenPAM modules directory]) 57255376Sdes ])]) 58141098SdesAC_SUBST(OPENPAM_MODULES_DIR) 59255376SdesAM_CONDITIONAL([CUSTOM_MODULES_DIR], [test x"$OPENPAM_MODULES_DIR" != x""]) 60141098Sdes 61228692SdesAC_ARG_WITH([doc], 62228692Sdes AC_HELP_STRING([--without-doc], [do not build documentation]), 63228692Sdes [], 64228692Sdes [with_doc=yes]) 65228692SdesAM_CONDITIONAL([WITH_DOC], [test x"$with_doc" = x"yes"]) 66141098Sdes 67228692SdesAC_ARG_WITH([pam-unix], 68348980Sdes AC_HELP_STRING([--with-pam-unix], [build sample pam_unix(8) module]), 69228692Sdes [], 70228692Sdes [with_pam_unix=no]) 71228692SdesAM_CONDITIONAL([WITH_PAM_UNIX], [test x"$with_pam_unix" = x"yes"]) 72141098Sdes 73228692SdesAC_ARG_WITH(pamtest, 74348980Sdes AC_HELP_STRING([--with-pamtest], [build test application]), 75228692Sdes [], 76228692Sdes [with_pamtest=no]) 77228692SdesAM_CONDITIONAL([WITH_PAMTEST], [test x"$with_pamtest" = x"yes"]) 78228692Sdes 79174832SdesAC_ARG_WITH(su, 80348980Sdes AC_HELP_STRING([--with-su], [build sample su(1) implementation]), 81228692Sdes [], 82228692Sdes [with_su=no]) 83228692SdesAM_CONDITIONAL([WITH_SU], [test x"$with_su" = x"yes"]) 84174832Sdes 85348980SdesAC_ARG_WITH(system-libpam, 86348980Sdes AC_HELP_STRING([--with-system-libpam], [use system libpam]), 87348980Sdes [], 88348980Sdes [with_system_libpam=no]) 89348980SdesAM_CONDITIONAL([WITH_SYSTEM_LIBPAM], [test x"$with_system_libpam" = x"yes"]) 90348980Sdes 91228692SdesAC_CHECK_HEADERS([crypt.h]) 92141098Sdes 93255376SdesAC_CHECK_FUNCS([asprintf vasprintf]) 94255376SdesAC_CHECK_FUNCS([dlfunc fdlopen]) 95255376SdesAC_CHECK_FUNCS([fpurge]) 96255376SdesAC_CHECK_FUNCS([setlogmask]) 97271624SdesAC_CHECK_FUNCS([strlcat strlcmp strlcpy strlset]) 98141098Sdes 99228692Sdessaved_LIBS="${LIBS}" 100228692SdesLIBS="" 101228692SdesAC_CHECK_LIB([dl], [dlopen]) 102228692SdesDL_LIBS="${LIBS}" 103228692SdesLIBS="${saved_LIBS}" 104141098SdesAC_SUBST(DL_LIBS) 105141098Sdes 106228692Sdessaved_LIBS="${LIBS}" 107228692SdesLIBS="" 108348980SdesAC_CHECK_LIB([pam], [pam_start]) 109348980SdesSYSTEM_LIBPAM="${LIBS}" 110228692SdesLIBS="${saved_LIBS}" 111348980SdesAC_SUBST(SYSTEM_LIBPAM) 112141098Sdes 113348980SdesAX_PKG_CONFIG_CHECK([cryb-test], 114348980Sdes [AC_MSG_NOTICE([Cryb test framework found, unit tests enabled.])], 115348980Sdes [AC_MSG_WARN([Cryb test framework not found, unit tests disabled.])]) 116348980SdesAM_CONDITIONAL([WITH_TEST], [test x"$CRYB_TEST_LIBS" != x""]) 117255376Sdes 118228692SdesAC_ARG_ENABLE([developer-warnings], 119228692Sdes AS_HELP_STRING([--enable-developer-warnings], [enable strict warnings (default is NO)]), 120280031Sdim [CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual"]) 121228692SdesAC_ARG_ENABLE([debugging-symbols], 122228692Sdes AS_HELP_STRING([--enable-debugging-symbols], [enable debugging symbols (default is NO)]), 123228692Sdes [CFLAGS="${CFLAGS} -O0 -g -fno-inline"]) 124228692SdesAC_ARG_ENABLE([werror], 125228692Sdes AS_HELP_STRING([--enable-werror], [use -Werror (default is NO)]), 126228692Sdes [CFLAGS="${CFLAGS} -Werror"]) 127141098Sdes 128174832SdesAC_CONFIG_FILES([ 129236109Sdes Makefile 130228692Sdes bin/Makefile 131236109Sdes bin/openpam_dump_policy/Makefile 132228692Sdes bin/pamtest/Makefile 133228692Sdes bin/su/Makefile 134236109Sdes doc/Makefile 135236109Sdes doc/man/Makefile 136228692Sdes include/Makefile 137228692Sdes include/security/Makefile 138255376Sdes lib/Makefile 139255369Sdes lib/libpam/Makefile 140348980Sdes misc/Makefile 141228692Sdes modules/Makefile 142228692Sdes modules/pam_deny/Makefile 143228692Sdes modules/pam_permit/Makefile 144348980Sdes modules/pam_return/Makefile 145236109Sdes modules/pam_unix/Makefile 146236109Sdes t/Makefile 147174832Sdes]) 148255376SdesAC_CONFIG_FILES([mkpkgng],[chmod +x mkpkgng]) 149348980SdesAC_CONFIG_FILES([misc/coverage.sh],[chmod +x misc/coverage.sh]) 150348980SdesAC_CONFIG_FILES([misc/coverity.sh],[chmod +x misc/coverity.sh]) 151141098SdesAC_OUTPUT 152