configure.ac revision 5e6622722e84d594298a8324f3685a1bda2b5868
02c335c23bf5fa225a467c19f2c063fb0dc7b8c3Timo SirainenAC_PREREQ(2.59)
d756ebcfa96bd7cff02097c8f26df9df368b81b1Timo SirainenAC_INIT([sssd],
c96eb61168670cfdd7596baba18856d3f086a093Timo Sirainen VERSION_NUMBER,
3398d5e2b883812de5d569721c8294b581e1d9e6Timo Sirainen [sssd-devel@lists.fedorahosted.org])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_CONFIG_SRCDIR([BUILD.txt])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_CONFIG_AUX_DIR([build])
16c89b1260c9d07c01c83a9219424d3727069b2eTimo Sirainenm4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [AC_USE_SYSTEM_EXTENSIONS],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [AC_GNU_SOURCE])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenCFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo SirainenAM_INIT_AUTOMAKE([-Wall -Wno-portability foreign subdir-objects tar-pax
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo Sirainen parallel-tests])
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo SirainenAM_PROG_CC_C_O
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo Sirainenm4_ifdef([AM_PROG_AR], [AM_PROG_AR])
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo SirainenAC_DISABLE_STATIC
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo SirainenAC_PROG_INSTALL
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo Sirainenm4_ifdef([AC_PROG_MKDIR_P],
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen [AC_PROG_MKDIR_P],
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen [AC_SUBST([MKDIR_P], "mkdir -p")])
39e6fcc3e8b1ccb13087c232cb6bdea04d1a20a4Timo SirainenAC_CONFIG_MACRO_DIR([m4])
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo SirainenAM_GNU_GETTEXT([external])
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo SirainenAM_GNU_GETTEXT_VERSION([0.14.4])
fdc557286bc9f92c5f3bb49096ff6e2bcec0ea79Timo SirainenAC_SUBST([PRERELEASE_VERSION],
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen PRERELEASE_VERSION_NUMBER)
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_DEFINE([PRERELEASE_VERSION], "PRERELEASE_VERSION_NUMBER",
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [Prerelease version number of package])
8039af9679af6fb56116b353fe44f7dd4c08f031Timo SirainenAM_CONDITIONAL([GIT_CHECKOUT], [git log -1 >/dev/null 2>&1])
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenm4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenAM_CONDITIONAL([HAVE_GCC], [test "$ac_cv_prog_gcc" = yes])
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo SirainenAC_CONFIG_HEADER(config.h)
150e64c376365becf1ec5c9d45912ecb840eea96Timo SirainenAC_CHECK_TYPES([errno_t], [], [], [[#include <errno.h>]])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenBUILD_WITH_SHARED_BUILD_DIR
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo SirainenAC_COMPILE_IFELSE(
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen [AC_LANG_PROGRAM([[#include <pthread.h>]],
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen [[pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen (void) m; /* unused */
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen [AC_DEFINE([HAVE_PTHREAD], [1], [Pthread mutexes available.])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen HAVE_PTHREAD=1
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen [AC_MSG_WARN([Pthread library not found! Clients will not be thread safe...])])
7bd72e4deca3cbf757dd1ea298486d9f3bc24226Timo SirainenAM_CONDITIONAL([HAVE_PTHREAD], [test x"$HAVE_PTHREAD" != "x"])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen# Check library for the timer_create function
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenSAVE_LIBS=$LIBS
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenAC_SEARCH_LIBS([timer_create], [rt posix4],
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen [AC_DEFINE([HAVE_LIBRT], [1],
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen [Define if you have the librt library or equivalent.])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen LIBADD_TIMER="$LIBS"],
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen [AC_MSG_ERROR([unable to find library fot the timer_create() function])])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenAC_SUBST([LIBADD_TIMER])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenLIBS=$SAVE_LIBS
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen# Check library for the clock_gettime function
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenSAVE_LIBS=$LIBS
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenLIBCLOCK_GETTIME=
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_SEARCH_LIBS([clock_gettime], [rt posix4],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [AC_DEFINE([HAVE_LIBRT], [1],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [Define if you have the librt library or equivalent.])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen LIBCLOCK_GETTIME="$LIBS"],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [AC_MSG_ERROR([unable to find library for the clock_gettime() function])])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_SUBST([LIBCLOCK_GETTIME])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenLIBS=$SAVE_LIBS
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen# Check for presence of modern functions for setting file timestamps
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_CHECK_FUNCS([ utimensat \
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen#Check for endian headers
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_CHECK_HEADERS([endian.h sys/endian.h byteswap.h])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_C_BIGENDIAN([AC_DEFINE(HAVE_BIG_ENDIAN, [1], [whether platform is big endian])],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [AC_DEFINE(HAVE_LITTLE_ENDIAN, [1], [whether platform is little endian])])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen#Set the NSS library install path
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_ARG_ENABLE([nsslibdir], [AS_HELP_STRING([--enable-nsslibdir],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [Where to install nss libraries ($libdir)])],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [nsslibdir=$enableval],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [nsslibdir=$libdir])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_SUBST(nsslibdir)
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen#Set the PAM module install path
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_ARG_ENABLE([pammoddir], [AS_HELP_STRING([--enable-pammoddir],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [Where to install pam modules ($libdir/security)])],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [pammoddir=$enableval],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_SUBST(pammoddir)
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen#Set the NFSv4 idmapd library install path
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_ARG_ENABLE([nfsidmaplibdir], [AS_HELP_STRING([--enable-nfsidmaplibdir],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [Where to install libnfsidmap libraries ($libdir/libnfsidmap)])],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [nfsidmaplibdir=$enableval],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [nfsidmaplibdir=$libdir/libnfsidmap])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAC_SUBST(nfsidmaplibdir)
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen#Include here cause WITH_INIT_DIR requires $osname set in platform.m4
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_PLUGIN_PATH
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_PUBCONF_PATH
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_PIPE_PATH
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_MCACHE_PATH
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_DEFAULT_CCACHE_DIR
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_DEFAULT_CCNAME_TEMPLATE
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_ENVIRONMENT_FILE
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_XML_CATALOG
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_KRB5_PLUGIN_PATH
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_KRB5_RCACHE_DIR
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_KRB5AUTHDATA_PLUGIN_PATH
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_KRB5_CONF
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_PYTHON2_BINDINGS
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_PYTHON3_BINDINGS
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_CIFS_PLUGIN_PATH
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_WINBIND_PLUGIN_PATH
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenWITH_IPA_GETKEYTAB
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_AD_GPO_DEFAULT
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_GPO_CACHE_PATH
686ad6d723004b807fd558f3ef9d1f88afa7e127Timo SirainenWITH_NOLOGIN_SHELL
303a87c31cb4aa198326694e231df53a043e63c7Timo SirainenWITH_SESSION_RECORDING_SHELL
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_SUDO_LIB_PATH
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_NFS_LIB_PATH
303a87c31cb4aa198326694e231df53a043e63c7Timo SirainenWITH_LIBWBCLIENT
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_SSSD_USER
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenSSSD_RUNSTATEDIR
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo SirainenWITH_SECRETS_DB_PATH
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenif test x$with_secrets = xyes; then
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainenif test x$with_kcm = xyes; then
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenif test x$with_kcm = xyes -o x$with_secrets = xyes; then
3398d5e2b883812de5d569721c8294b581e1d9e6Timo Sirainen# This variable is defined by external/libcurl.m4, but conditionals
3398d5e2b883812de5d569721c8294b581e1d9e6Timo Sirainen# must be always evaluated
3398d5e2b883812de5d569721c8294b581e1d9e6Timo SirainenAM_CONDITIONAL([BUILD_WITH_LIBCURL],
3398d5e2b883812de5d569721c8294b581e1d9e6Timo Sirainen [test x"$have_curlopt_unix_sockpath" = xyes])
fdc557286bc9f92c5f3bb49096ff6e2bcec0ea79Timo SirainenWITH_UNICODE_LIB
ba5c8b0ae7460752adaf911901bf263788f62c72Phil Carmodyif test x$unicode_lib = xlibunistring; then
8039af9679af6fb56116b353fe44f7dd4c08f031Timo Sirainen AC_DEFINE_UNQUOTED(HAVE_LIBUNISTRING, 1, [Using libunistring for unicode])
bc3698b8892df8003b410daea6f5bbcd20433808Timo Sirainen UNICODE_LIBS=$UNISTRING_LIBS
06e72c658de3ce1252594b151313df90acf73271Timo Sirainen AC_DEFINE_UNQUOTED(HAVE_GLIB2, 1, [Using glib2 for unicode])
06e72c658de3ce1252594b151313df90acf73271Timo Sirainen UNICODE_LIBS=$GLIB2_LIBS
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAC_SUBST(UNICODE_LIBS)
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainenif test x$HAVE_NSCD; then
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen WITH_NSCD_CONF
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo SirainenWITH_INITSCRIPT
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenif test x$initscript = xsystemd; then
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen WITH_SYSTEMD_UNIT_DIR
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen WITH_SYSTEMD_CONF_DIR
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen CHECK_SERVICE_EXECUTABLE
28cd2599128e102198758cf6080588305feb6bcdTimo SirainenPKG_CHECK_MODULES([DBUS],[dbus-1])
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainendnl if test -n "`$PKG_CONFIG --modversion dbus-1 | grep '^0\.'`" ; then
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainenif ! $PKG_CONFIG --atleast-version 1.0.0 dbus-1; then
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen DBUS_CFLAGS="$DBUS_CFLAGS -DDBUS_API_SUBJECT_TO_CHANGE"
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen AC_MSG_RESULT([setting -DDBUS_API_SUBJECT_TO_CHANGE])
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainenif test x$has_dbus != xno; then
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen SAFE_LIBS="$LIBS"
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen LIBS="$DBUS_LIBS"
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen SAFE_CFLAGS=$CFLAGS
07974f50bd55b06fd6d465f2c0e491794786e2faTimo Sirainen CFLAGS="$CFLAGS $DBUS_CFLAGS"
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen AC_CHECK_FUNC([dbus_watch_get_unix_fd],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_DEFINE([HAVE_DBUS_WATCH_GET_UNIX_FD], [1],
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [Define if dbus_watch_get_unix_fd exists]))
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen AC_CHECK_TYPES([DBusBasicValue],
07974f50bd55b06fd6d465f2c0e491794786e2faTimo Sirainen [ #include <dbus/dbus.h> ])
07974f50bd55b06fd6d465f2c0e491794786e2faTimo Sirainen LIBS="$SAFE_LIBS"
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen CFLAGS=$SAFE_CFLAGS
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen# work around a bug in cov-build from Coverity
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainentest -n "$XML_CATALOG_FILES" || unset XML_CATALOG_FILES
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainenif test x$HAVE_MANPAGES != x; then
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen CHECK_XML_TOOLS
2d9644d34a78b24dc7769cd96497e700a0fb1cf1Timo Sirainen DOCBOOK_XSLT=http://docbook.sourceforge.net/release/xsl/current/manpages/profile-docbook.xsl
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen CHECK_STYLESHEET([$SGML_CATALOG_FILES],
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [$DOCBOOK_XSLT],
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [Docbook XSL profiling templates],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [HAVE_PROFILE_CATALOGS=1],
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [AC_MSG_WARN([Man pages might contain documentation for experimental features])])
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen if test x$HAVE_PROFILE_CATALOGS = x; then
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen DOCBOOK_XSLT=http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen CHECK_STYLESHEET([$SGML_CATALOG_FILES],
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [$DOCBOOK_XSLT],
270f00aeab7bede38764291e21a314211b884ab4Timo Sirainen [Docbook XSL templates],
17da42c31202b1b3e7e308121ea17d922c24da1bTimo Sirainen [AC_MSG_ERROR([could not find the docbook xsl catalog])])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_CHECK_PROG([PO4A],[po4a],[po4a],[no])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST(DOCBOOK_XSLT)
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo SirainenAM_CONDITIONAL([HAVE_PROFILE_CATALOGS], [test "x$HAVE_PROFILE_CATALOGS" != "x"])
d5cebe7f98e63d4e2822863ef2faa4971e8b3a5dTimo SirainenAM_CONDITIONAL([HAVE_MANPAGES], [test "x$HAVE_MANPAGES" != "x"])
7891195e3975d554df183670dba1fcecfa0a30c3Timo SirainenAM_CONDITIONAL([HAVE_PO4A], [test "x$PO4A" != "xno"])
7891195e3975d554df183670dba1fcecfa0a30c3Timo SirainenAC_CHECK_PROG(HAVE_PYTHON2, python2, yes, no)
7891195e3975d554df183670dba1fcecfa0a30c3Timo SirainenAS_IF([test x$HAVE_PYTHON2 = xyes],
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [AC_PATH_PROG(PYTHON2, python2)])
fdc557286bc9f92c5f3bb49096ff6e2bcec0ea79Timo SirainenAC_CHECK_PROG(HAVE_PYTHON3, python3, yes, no)
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAS_IF([test x$HAVE_PYTHON3 = xyes],
5fb3bff645380804c9db2510940c41db6b8fdb01Timo Sirainen [AC_PATH_PROG(PYTHON3, python3)])
89b3a53140d31bfa0f34378bf7ee1f52da954961Timo Sirainenif test x$HAVE_PYTHON2_BINDINGS = x1; then
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen AS_IF([test x$HAVE_PYTHON2 != xyes],
51327f2489a4e0e615eb9f7d921473cf8512bb79Timo Sirainen [AC_MSG_ERROR([
51327f2489a4e0e615eb9f7d921473cf8512bb79Timo SirainenThe program python2 was not found in search path.
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenPlease ensure that it is installed and its directory is included in the search
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenpath. It is required for building python2 bindings. If you do not want to build
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainenthem please use argument --without-python2-bindings when running configure.])])
17da42c31202b1b3e7e308121ea17d922c24da1bTimo Sirainen PYTHON=$PYTHON2
bd74402ca1a39ec303075fefb1212d7e18a71531Timo Sirainen AM_PATH_PYTHON([2.6])
bd74402ca1a39ec303075fefb1212d7e18a71531Timo Sirainen AM_PYTHON_CONFIG([python2])
270f00aeab7bede38764291e21a314211b884ab4Timo Sirainen AM_CHECK_PYTHON_HEADERS([],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_MSG_ERROR([Could not find python2 headers]))
c6ae908f6a2313573625d782bdd4e0ff3882c44aTimo Sirainen AM_CHECK_PYTHON_COMPAT
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([py2execdir], [$pyexecdir])
17da42c31202b1b3e7e308121ea17d922c24da1bTimo Sirainen AC_SUBST([python2dir], [$pythondir])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON2_CFLAGS], [$PYTHON_CFLAGS])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON2_LIBS], [$PYTHON_LIBS])
ef11d3930c3602fc86349a4e3a53442df470b601Timo Sirainen AC_SUBST([PYTHON2_INCLUDES], [$PYTHON_INCLUDES])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON2_VERSION], [$PYTHON_VERSION])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON2_PREFIX], [$PYTHON_PREFIX])
17da42c31202b1b3e7e308121ea17d922c24da1bTimo Sirainen AC_SUBST([PYTHON2_EXEC_PREFIX], [$PYTHON_EXEC_PREFIX])
ef11d3930c3602fc86349a4e3a53442df470b601Timo Sirainen SSS_CLEAN_PYTHON_VARIABLES
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenif test x$HAVE_PYTHON3_BINDINGS = x1; then
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AS_IF([test x$HAVE_PYTHON3 != xyes],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen [AC_MSG_ERROR([
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenThe program python3 was not found in search path.
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenPlease ensure that it is installed and its directory is included in the search
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainenpath. It is required for building python3 bindings. If you do not want to build
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainenthem please use argument --without-python3-bindings when running configure.])])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen PYTHON=$PYTHON3
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AM_PATH_PYTHON([3.3])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AM_PYTHON_CONFIG([python3])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AM_CHECK_PYTHON_HEADERS([],
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_MSG_ERROR([Could not find python3 headers]))
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AM_CHECK_PYTHON_COMPAT
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([py3execdir], [$pyexecdir])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen AC_SUBST([python3dir], [$pythondir])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen AC_SUBST([PYTHON3_CFLAGS], [$PYTHON_CFLAGS])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON3_LIBS], [$PYTHON_LIBS])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON3_INCLUDES], [$PYTHON_INCLUDES])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON3_VERSION], [$PYTHON_VERSION])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen AC_SUBST([PYTHON3_PREFIX], [$PYTHON_PREFIX])
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen AC_SUBST([PYTHON3_EXEC_PREFIX], [$PYTHON_EXEC_PREFIX])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen SSS_CLEAN_PYTHON_VARIABLES
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAM_CONDITIONAL([BUILD_PYTHON_BINDINGS],
270f00aeab7bede38764291e21a314211b884ab4Timo Sirainen [test x"$with_python2_bindings" = xyes \
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen -o x"$with_python3_bindings" = xyes])
59714981ae172b5113be7ca9b8be518b759fc86dTimo SirainenAM_PYTHON2_MODULE([ldap])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainenif test x$HAVE_SELINUX != x; then
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen AM_CHECK_SELINUX
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainen AM_CHECK_SELINUX_LOGIN_DIR
3dd0679b6f24be0287cc42d7a60bbf59cdf8b637Timo Sirainenif test x$HAVE_SEMANAGE != x -a x$HAVE_SELINUX != x; then
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen AM_CHECK_SEMANAGE
ccb77e2f63626ec46e5745ef4f38baa8e8e504fcTimo Sirainendnl If journald was selected for logging, configure journald
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainenif test x$syslog = xjournald; then
c4267cf4c40fb1f866b5958ff122ef836b8c5dfbTimo Sirainen AM_CHECK_JOURNALD
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainenif test x$cryptolib = xnss; then
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainenif test x$cryptolib = xlibcrypto; then
6384258c2f84e635d8ceffc3eeddad71f7538040Timo Sirainen AM_CHECK_LIBCRYPTO
8039af9679af6fb56116b353fe44f7dd4c08f031Timo SirainenAM_CHECK_INOTIFY
16c89b1260c9d07c01c83a9219424d3727069b2eTimo SirainenAC_CACHE_CHECK([whether compiler supports __attribute__((destructor))],
8039af9679af6fb56116b353fe44f7dd4c08f031Timo Sirainen sss_client_cv_attribute_destructor,
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainen [AC_COMPILE_IFELSE(
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainen [AC_LANG_SOURCE([__attribute__((destructor)) static void cleanup(void) { }])],
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainen sss_client_cv_attribute_destructor=yes)
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainenif test x"$sss_client_cv_attribute_destructor" = xyes ; then
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo Sirainen AC_DEFINE(HAVE_FUNCTION_ATTRIBUTE_DESTRUCTOR, 1,
ccd83028a34cc6e2b6370eb7ecf1cf25e717c2d3Timo Sirainen [whether compiler supports __attribute__((destructor))])
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo SirainenAC_CACHE_CHECK([whether compiler supports __attribute__((format))],
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainen sss_cv_attribute_format,
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainen [AC_COMPILE_IFELSE(
45c763dbebee268eda4a1e8bcc1ff82606b5ed0dTimo Sirainen [AC_LANG_SOURCE(
59714981ae172b5113be7ca9b8be518b759fc86dTimo Sirainen [void debug_fn(const char *format, ...) __attribute__ ((format (printf, 1, 2)));]
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [sss_cv_attribute_format=yes],
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainen AC_MSG_RESULT([no])
8039af9679af6fb56116b353fe44f7dd4c08f031Timo Sirainen AC_MSG_WARN([compiler does NOT support __attribute__((format))])
a4bc2c3962b94f83c7bb7bebe7af364f4dee7883Timo Sirainenif test x"$sss_cv_attribute_format" = xyes ; then
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo Sirainen AC_DEFINE(HAVE_FUNCTION_ATTRIBUTE_FORMAT, 1,
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo Sirainen [whether compiler supports __attribute__((format))])
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo SirainenAC_CACHE_CHECK([whether compiler supports __attribute__((warn_unused_result))],
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo Sirainen sss_cv_attribute_warn_unused_result,
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo Sirainen [AC_COMPILE_IFELSE(
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo Sirainen [AC_LANG_SOURCE(
28cd2599128e102198758cf6080588305feb6bcdTimo Sirainen [ char _check_leaks(int bytes) __attribute__ ((warn_unused_result)); ]
e34d170f8f0e084bd94bfbc1a7085ece67e508dfTimo Sirainen [sss_cv_attribute_warn_unused_result=yes],
a2f250a332dfc1e6cd4ffd196c621eb9dbf7b8a1Timo Sirainen AC_MSG_RESULT([no])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen AC_MSG_WARN([compiler does NOT support __attribute__((warn_unused_result))])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainenif test x"$sss_cv_attribute_warn_unused_result" = xyes ; then
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen AC_DEFINE(HAVE_FUNCTION_ATTRIBUTE_WARN_UNUSED_RESULT, 1,
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [whether compiler supports __attribute__((warn_unused_result))])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenSAFE_CFLAGS=$CFLAGS
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenCFLAGS="-Werror"
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAC_CACHE_CHECK(
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [whether compiler supports __attribute__((fallthrough))],
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [sss_cv_attribute_fallthrough],
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [AC_COMPILE_IFELSE(
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [AC_LANG_SOURCE(
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [ __attribute__ ((fallthrough)); ])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen sss_cv_attribute_fallthrough=yes
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen sss_cv_attribute_fallthrough_val="__attribute__ ((fallthrough))"
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen sss_cv_attribute_fallthrough=no
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen sss_cv_attribute_fallthrough_val=
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenCFLAGS=$SAFE_CFLAGS
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAC_DEFINE_UNQUOTED(
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [SSS_ATTRIBUTE_FALLTHROUGH],
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [$sss_cv_attribute_fallthrough_val],
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen [__attribute__((fallthrough)) if supported])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenPKG_CHECK_MODULES([CHECK], [check >= 0.9.5], [have_check=1], [have_check=])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainenif test x$have_check = x; then
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen AC_MSG_WARN([Without the 'CHECK' libraries, you will be unable to run all tests in the 'make check' suite])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo Sirainen AC_CHECK_HEADERS([check.h],,AC_MSG_ERROR([Could not find CHECK headers]))
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAC_PATH_PROG([DOXYGEN], [doxygen], [false])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAM_CONDITIONAL([HAVE_DOXYGEN], [test x$DOXYGEN != xfalse ])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAM_CONDITIONAL([HAVE_CHECK], [test x$have_check != x])
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAM_CHECK_CMOCKA
e2a88d59c0d47d63ce1ad5b1fd95e487124a3fd4Timo SirainenAM_CHECK_UID_WRAPPER
923eb3dde28e4d8841c14fd6b4a69635b7070c3eTimo SirainenAM_CHECK_NSS_WRAPPER
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo Sirainen# Check if the user wants SSSD to be compiled with systemtap probes
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenAM_CHECK_SYSTEMTAP
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenSSS_ENABLE_INTGCHECK_REQS
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenAM_CONDITIONAL([HAVE_DEVSHM], [test -d /dev/shm])
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo Sirainen# Check if we should install polkit rules
51cbc45fc1ac5dde29bc2adbb175945df1b4f7d4Timo SirainenENABLE_POLKIT_RULES_PATH
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenAM_CONDITIONAL([HAVE_POLKIT_RULES_D], [test x$HAVE_POLKIT_RULES_D != x])
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo Sirainenabs_build_dir=`pwd`
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenAC_DEFINE_UNQUOTED([ABS_BUILD_DIR], ["$abs_build_dir"], [Absolute path to the build directory])
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenAC_SUBST([abs_builddir], $abs_build_dir)
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo Sirainenmy_srcdir=`readlink -f $srcdir`
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenAC_DEFINE_UNQUOTED([ABS_SRC_DIR], ["$my_srcdir"], [Absolute path to the source directory])
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo SirainenAC_CONFIG_FILES([Makefile contrib/sssd.spec src/examples/rwtab src/doxy.config
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo Sirainen src/sysv/sssd src/sysv/gentoo/sssd src/sysv/SUSE/sssd
270f00aeab7bede38764291e21a314211b884ab4Timo Sirainen po/Makefile.in src/man/Makefile src/tests/cwrap/Makefile
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo Sirainen src/lib/ipa_hbac/ipa_hbac.pc src/lib/ipa_hbac/ipa_hbac.doxy
85ee28daca146e18a99a22f46c0d639e57a6ac95Timo Sirainen src/lib/idmap/sss_idmap.pc src/lib/idmap/sss_idmap.doxy