configure.ac revision f0beb4e313970ffd075cd711ed6cfbac03ad5af6
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_PREREQ(2.59)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
ee359fe1384507fed6c2274e7bfe81d288de4542Stephen Gallagherm4_include([version.m4])
33396dc46ea52c18f47db1b5d590880806521005Sumit BoseAC_INIT([sssd],
ee359fe1384507fed6c2274e7bfe81d288de4542Stephen Gallagher VERSION_NUMBER,
33396dc46ea52c18f47db1b5d590880806521005Sumit Bose [sssd-devel@lists.fedorahosted.org])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_CONFIG_SRCDIR([BUILD.txt])
324fb26ba803a999bedc29e93c46c84f27abf5b7Sumit BoseAC_CONFIG_AUX_DIR([build])
324fb26ba803a999bedc29e93c46c84f27abf5b7Sumit Bose
324fb26ba803a999bedc29e93c46c84f27abf5b7Sumit Bosem4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
324fb26ba803a999bedc29e93c46c84f27abf5b7Sumit Bose [AC_USE_SYSTEM_EXTENSIONS],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_GNU_SOURCE])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen GallagherCFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen Gallagher
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen Gallagher
e65df5b966b27e13283c65f59f99ac44781e0333Simo SorceAM_INIT_AUTOMAKE([-Wall -Wno-portability foreign subdir-objects tar-pax
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher parallel-tests])
672f430c2e5d55226261a281bc3fa77311ace5a4Jakub HrozekAM_PROG_CC_C_O
672f430c2e5d55226261a281bc3fa77311ace5a4Jakub Hrozekm4_ifdef([AM_PROG_AR], [AM_PROG_AR])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_DISABLE_STATIC
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_PROG_INSTALL
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherLT_INIT
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_ifdef([AC_PROG_MKDIR_P],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_PROG_MKDIR_P],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_SUBST([MKDIR_P], "mkdir -p")])
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen GallagherLT_LIB_DLLOAD
cc98edd9479d4622634a1275c98058916c14059aStephen GallagherAC_CONFIG_MACRO_DIR([m4])
ee359fe1384507fed6c2274e7bfe81d288de4542Stephen GallagherAM_GNU_GETTEXT([external])
cc98edd9479d4622634a1275c98058916c14059aStephen GallagherAM_GNU_GETTEXT_VERSION([0.14.4])
d3da1c165cdb4c1ec126a8f4b6b544ca415b9d20Pavel Březina
d3da1c165cdb4c1ec126a8f4b6b544ca415b9d20Pavel BřezinaAC_SUBST([PRERELEASE_VERSION],
d3da1c165cdb4c1ec126a8f4b6b544ca415b9d20Pavel Březina PRERELEASE_VERSION_NUMBER)
1183d29d87c5c7439cf2364b7d7324d4a13b6e35Stephen Gallagher
1183d29d87c5c7439cf2364b7d7324d4a13b6e35Stephen GallagherAC_DEFINE([PRERELEASE_VERSION], "PRERELEASE_VERSION_NUMBER",
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [Prerelease version number of package])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAM_CONDITIONAL([GIT_CHECKOUT], [git log -1 >/dev/null 2>&1])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAM_CONDITIONAL([HAVE_GCC], [test "$ac_cv_prog_gcc" = yes])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_CHECK_HEADERS(stdint.h dlfcn.h)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_CONFIG_HEADER(config.h)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_CHECK_TYPES([errno_t], [], [], [[#include <errno.h>]])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
c89589fa349f38214c9cb8d9389c0fd557e5dca2Simo Sorcem4_include([src/build_macros.m4])
c89589fa349f38214c9cb8d9389c0fd557e5dca2Simo SorceBUILD_WITH_SHARED_BUILD_DIR
c89589fa349f38214c9cb8d9389c0fd557e5dca2Simo Sorce
86b61156743b7ebdc049450a6f88452890fd9a61Jakub HrozekAC_COMPILE_IFELSE(
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek [AC_LANG_PROGRAM([[#include <pthread.h>]],
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek [[pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;
c89589fa349f38214c9cb8d9389c0fd557e5dca2Simo Sorce (void) m; /* unused */
c89589fa349f38214c9cb8d9389c0fd557e5dca2Simo Sorce ]])],
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek [AC_DEFINE([HAVE_PTHREAD], [1], [Pthread mutexes available.])
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek HAVE_PTHREAD=1
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek ],
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek [AC_MSG_WARN([Pthread library not found! Clients will not be thread safe...])])
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek
86b61156743b7ebdc049450a6f88452890fd9a61Jakub HrozekAM_CONDITIONAL([HAVE_PTHREAD], [test x"$HAVE_PTHREAD" != "x"])
86b61156743b7ebdc049450a6f88452890fd9a61Jakub Hrozek
86b61156743b7ebdc049450a6f88452890fd9a61Jakub HrozekSAVE_LIBS=$LIBS
86b61156743b7ebdc049450a6f88452890fd9a61Jakub HrozekLIBS="$LIBS -lpthread"
86b61156743b7ebdc049450a6f88452890fd9a61Jakub HrozekAC_CHECK_FUNCS([ pthread_mutexattr_setrobust \
48130eef6c5c64a07094b9e8582ba358b2048f24Jakub Hrozek pthread_mutex_consistent \
48130eef6c5c64a07094b9e8582ba358b2048f24Jakub Hrozek pthread_mutexattr_setrobust_np \
48130eef6c5c64a07094b9e8582ba358b2048f24Jakub Hrozek pthread_mutex_consistent_np ])
48130eef6c5c64a07094b9e8582ba358b2048f24Jakub HrozekLIBS=$SAVE_LIBS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher# Check for presence of modern functions for setting file timestamps
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_CHECK_FUNCS([ utimensat \
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher futimens ])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher#Check for endian headers
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_CHECK_HEADERS([endian.h sys/endian.h byteswap.h])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_C_BIGENDIAN([AC_DEFINE(HAVE_BIG_ENDIAN, [1], [whether platform is big endian])],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_DEFINE(HAVE_LITTLE_ENDIAN, [1], [whether platform is little endian])])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher#Set the NSS library install path
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_ARG_ENABLE([nsslibdir], [AS_HELP_STRING([--enable-nsslibdir],
d921c1eba437662437847279f251a0a5d8f70127Maxim [Where to install nss libraries ($libdir)])],
d921c1eba437662437847279f251a0a5d8f70127Maxim [nsslibdir=$enableval],
d921c1eba437662437847279f251a0a5d8f70127Maxim [nsslibdir=$libdir])
d921c1eba437662437847279f251a0a5d8f70127MaximAC_SUBST(nsslibdir)
d921c1eba437662437847279f251a0a5d8f70127Maxim
d921c1eba437662437847279f251a0a5d8f70127Maxim#Set the PAM module install path
d921c1eba437662437847279f251a0a5d8f70127MaximAC_ARG_ENABLE([pammoddir], [AS_HELP_STRING([--enable-pammoddir],
327127bb7fcc07f882209f029e14026de1b23c94Maxim [Where to install pam modules ($libdir/security)])],
327127bb7fcc07f882209f029e14026de1b23c94Maxim [pammoddir=$enableval],
327127bb7fcc07f882209f029e14026de1b23c94Maxim [pammoddir=$libdir/security])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_SUBST(pammoddir)
d3da1c165cdb4c1ec126a8f4b6b544ca415b9d20Pavel Březina
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher#Set the NFSv4 idmapd library install path
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_ARG_ENABLE([nfsidmaplibdir], [AS_HELP_STRING([--enable-nfsidmaplibdir],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [Where to install libnfsidmap libraries ($libdir/libnfsidmap)])],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [nfsidmaplibdir=$enableval],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [nfsidmaplibdir=$libdir/libnfsidmap])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAC_SUBST(nfsidmaplibdir)
eb2e21b764d03544d8161e9956d7f70b07b75f77Simo Sorce
bc9235cfb80bd64a3bfa959e8d26d5ad1be0bdf4Jakub Hrozek#Include here cause WITH_INIT_DIR requires $osname set in platform.m4
bc9235cfb80bd64a3bfa959e8d26d5ad1be0bdf4Jakub Hrozekm4_include([src/external/platform.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include(src/conf_macros.m4)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_DB_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_PLUGIN_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_PID_PATH
4b6a0d0b3d42e5fdb457f47d9adfa5e66b160256Stephen GallagherWITH_LOG_PATH
90fd1bbd6035cdab46faa3a695a2fb2be6508b17Sumit BoseWITH_PUBCONF_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_PIPE_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_MCACHE_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_DEFAULT_CCACHE_DIR
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_DEFAULT_CCNAME_TEMPLATE
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_ENVIRONMENT_FILE
068dbee9ca7bf5b37330eff91c94ae10f288d09fJakub HrozekWITH_INIT_DIR
98ce3c3e85a4bb2e1822bf8ab2a1c2ab9e3dd61dJakub HrozekWITH_TEST_DIR
be65f065fef1d387281096ef095a2acef39ecc12Jakub HrozekWITH_MANPAGES
e124844907ed6973915e4d56f5442ecd07535a12Jakub HrozekWITH_XML_CATALOG
f36078af138f052cd9a30360867b0ebd0805af5eJakub HrozekWITH_KRB5_PLUGIN_PATH
34c78b745eb349eef2b0f13ef2b722632aebe619Jan CholastaWITH_KRB5_RCACHE_DIR
e07a94a66985b674c5df11ca466792902164c4e2George McCollisterWITH_KRB5AUTHDATA_PLUGIN_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_KRB5_CONF
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_PYTHON2_BINDINGS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_PYTHON3_BINDINGS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_CIFS_PLUGIN_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_WINBIND_PLUGIN_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SELINUX
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_NSCD
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_IPA_GETKEYTAB
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SEMANAGE
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_AD_GPO_DEFAULT
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_GPO_CACHE_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_NOLOGIN_SHELL
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_APP_LIBS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SUDO
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SUDO_LIB_PATH
a5077712fc8c24e8cad08207b7b5a6603bde6a7cJakub HrozekWITH_AUTOFS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SSH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_IFP
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_CRYPTO
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SYSLOG
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SAMBA
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_NFS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_NFS_LIB_PATH
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_LIBWBCLIENT
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SSSD_USER
2a5790216f57e9bdfb2930d52860bb5300366536Jakub HrozekSSSD_RUNSTATEDIR
b9e5bd09a5ff7009537a18914dbebcf10498f592Sumit BoseWITH_SECRETS
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_SECRETS_DB_PATH
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagher
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/pkg.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libpopt.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libtalloc.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libtdb.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libtevent.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libldb.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libdhash.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libcollection.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libini_config.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/pam.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/ldap.m4])
b32159300fea63222d8dd9200ed634087704ea74Stephen Gallagherm4_include([src/external/libpcre.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/krb5.m4])
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozekm4_include([src/external/libcares.m4])
e6e26182d58c05d896f72f2925426658a6dc70b5Jakub Hrozekm4_include([src/external/libcmocka.m4])
e6e26182d58c05d896f72f2925426658a6dc70b5Jakub Hrozekm4_include([src/external/docbook.m4])
e6e26182d58c05d896f72f2925426658a6dc70b5Jakub Hrozekm4_include([src/external/sizes.m4])
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozekm4_include([src/external/python.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/selinux.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/crypto.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/nscd.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/nsupdate.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/libkeyutils.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/libnl.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/systemd.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/pac_responder.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/cifsidmap.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/signal.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/inotify.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/samba.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/sasl.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/configlib.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/libnfsidmap.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/cwrap.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/libresolv.m4])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherm4_include([src/external/intgcheck.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekm4_include([src/external/systemtap.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherif test x$with_secrets = xyes; then
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek m4_include([src/external/libhttp_parser.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek m4_include([src/external/libjansson.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekfi
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekif test x$build_config_lib = xyes; then
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek m4_include([src/external/libaugeas.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekfi
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub HrozekWITH_UNICODE_LIB
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekif test x$unicode_lib = xlibunistring; then
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek m4_include([src/external/libunistring.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek AC_DEFINE_UNQUOTED(HAVE_LIBUNISTRING, 1, [Using libunistring for unicode])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek UNICODE_LIBS=$UNISTRING_LIBS
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekelse
6f51c802311fd81a409a26763ed45b28a3234d0dJakub Hrozek m4_include([src/external/glib.m4])
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozek AC_DEFINE_UNQUOTED(HAVE_GLIB2, 1, [Using glib2 for unicode])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher UNICODE_LIBS=$GLIB2_LIBS
4d81fe27ced3d2e96866aeaf61661a925cb8edf1Jakub Hrozekfi
8b1f525acd20f36c836e827de3c251088961c5d9Stephen GallagherAC_SUBST(UNICODE_LIBS)
f5b6f977d4144c28e9c66f3f1c9d634d595d1117Marko Myllynen
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherWITH_LIBNL
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherif test x$HAVE_NSCD; then
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher WITH_NSCD_CONF
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherfi
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
72e60fd4eabcfbcdbfe01e8c38b94052bc6c2067Jakub HrozekWITH_INITSCRIPT
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherif test x$initscript = xsystemd; then
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher WITH_SYSTEMD_UNIT_DIR
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher WITH_SYSTEMD_CONF_DIR
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherelse
3d038d2e0dc7af04ec2f7c85ae325accb39f6237Jakub Hrozek AC_CHECK_PROG(HAVE_SERVICE, service, yes, no)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher AS_IF([test x$HAVE_SERVICE = xyes],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_DEFINE(HAVE_SERVICE, 1,
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [Whether the service command is available])])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherfi
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherPKG_CHECK_MODULES([DBUS],[dbus-1])
5352c9b3609bca63814f9f6f03dbbbadf6c6333aStephen Gallagherdnl if test -n "`$PKG_CONFIG --modversion dbus-1 | grep '^0\.'`" ; then
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherif ! $PKG_CONFIG --atleast-version 1.0.0 dbus-1; then
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher DBUS_CFLAGS="$DBUS_CFLAGS -DDBUS_API_SUBJECT_TO_CHANGE"
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher AC_MSG_RESULT([setting -DDBUS_API_SUBJECT_TO_CHANGE])
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozekfi
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozek
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozekif test x$has_dbus != xno; then
2a5790216f57e9bdfb2930d52860bb5300366536Jakub Hrozek SAFE_LIBS="$LIBS"
e07a94a66985b674c5df11ca466792902164c4e2George McCollister LIBS="$DBUS_LIBS"
e07a94a66985b674c5df11ca466792902164c4e2George McCollister SAFE_CFLAGS=$CFLAGS
e07a94a66985b674c5df11ca466792902164c4e2George McCollister CFLAGS="$CFLAGS $DBUS_CFLAGS"
e07a94a66985b674c5df11ca466792902164c4e2George McCollister
e07a94a66985b674c5df11ca466792902164c4e2George McCollister AC_CHECK_FUNC([dbus_watch_get_unix_fd],
e07a94a66985b674c5df11ca466792902164c4e2George McCollister AC_DEFINE([HAVE_DBUS_WATCH_GET_UNIX_FD], [1],
172c07013d1ea99447a780fd36f49d5c3a76981bJakub Hrozek [Define if dbus_watch_get_unix_fd exists]))
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher AC_CHECK_TYPES([DBusBasicValue],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [ #include <dbus/dbus.h> ])
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce LIBS="$SAFE_LIBS"
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce CFLAGS=$SAFE_CFLAGS
336879aabae137f9a81304f147fb0d43001654b0Simo Sorcefi
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce# work around a bug in cov-build from Coverity
336879aabae137f9a81304f147fb0d43001654b0Simo Sorcetest -n "$XML_CATALOG_FILES" || unset XML_CATALOG_FILES
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce
336879aabae137f9a81304f147fb0d43001654b0Simo Sorceif test x$HAVE_MANPAGES != x; then
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce CHECK_XML_TOOLS
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce
336879aabae137f9a81304f147fb0d43001654b0Simo Sorce DOCBOOK_XSLT=http://docbook.sourceforge.net/release/xsl/current/manpages/profile-docbook.xsl
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher CHECK_STYLESHEET([$SGML_CATALOG_FILES],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [$DOCBOOK_XSLT],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [Docbook XSL profiling templates],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [HAVE_PROFILE_CATALOGS=1],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_MSG_WARN([Man pages might contain documentation for experimental features])])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher if test x$HAVE_PROFILE_CATALOGS = x; then
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher DOCBOOK_XSLT=http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher CHECK_STYLESHEET([$SGML_CATALOG_FILES],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [$DOCBOOK_XSLT],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [Docbook XSL templates],
50fe3d79ab12b795a687b676761bef265701626aStephen Gallagher [],
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher [AC_MSG_ERROR([could not find the docbook xsl catalog])])
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher fi
8c294c1cd4d721818a59684cf7f2b36123f79163Stephen Gallagher
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher AC_CHECK_PROG([PO4A],[po4a],[po4a],[no])
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher AC_SUBST(DOCBOOK_XSLT)
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagherfi
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen GallagherAM_CONDITIONAL([HAVE_PROFILE_CATALOGS], [test "x$HAVE_PROFILE_CATALOGS" != "x"])
96c73559adfbdac96720008fc022cb1d540b53c3Jakub HrozekAM_CONDITIONAL([HAVE_MANPAGES], [test "x$HAVE_MANPAGES" != "x"])
4dd615c01357b8715711aad6820ba9595d3ad377Stephen GallagherAM_CONDITIONAL([HAVE_PO4A], [test "x$PO4A" != "xno"])
70e59ed31c5a9c9ed02d9065ddf92be87c887efbJakub Hrozek
a6098862048d4bb469130b9ff21be3020d6f2c54Sumit BoseAC_CHECK_PROG(HAVE_PYTHON2, python2, yes, no)
f1ce53a3b5656361557f80f61dfd42a371230c65Stephen GallagherAS_IF([test x$HAVE_PYTHON2 = xyes],
f1ce53a3b5656361557f80f61dfd42a371230c65Stephen Gallagher [AC_PATH_PROG(PYTHON2, python2)])
f1ce53a3b5656361557f80f61dfd42a371230c65Stephen Gallagher
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen GallagherAC_CHECK_PROG(HAVE_PYTHON3, python3, yes, no)
AS_IF([test x$HAVE_PYTHON3 = xyes],
[AC_PATH_PROG(PYTHON3, python3)])
if test x$HAVE_PYTHON2_BINDINGS = x1; then
AS_IF([test x$HAVE_PYTHON2 != xyes],
[AC_MSG_ERROR([
The program python2 was not found in search path.
Please ensure that it is installed and its directory is included in the search
path. It is required for building python2 bindings. If you do not want to build
them please use argument --without-python2-bindings when running configure.])])
PYTHON=$PYTHON2
AM_PATH_PYTHON([2.6])
AM_PYTHON_CONFIG([python2])
AM_CHECK_PYTHON_HEADERS([],
AC_MSG_ERROR([Could not find python2 headers]))
AM_CHECK_PYTHON_COMPAT
AC_SUBST([py2execdir], [$pyexecdir])
AC_SUBST([python2dir], [$pythondir])
AC_SUBST([PYTHON2_CFLAGS], [$PYTHON_CFLAGS])
AC_SUBST([PYTHON2_LIBS], [$PYTHON_LIBS])
AC_SUBST([PYTHON2_INCLUDES], [$PYTHON_INCLUDES])
AC_SUBST([PYTHON2_VERSION], [$PYTHON_VERSION])
AC_SUBST([PYTHON2_PREFIX], [$PYTHON_PREFIX])
AC_SUBST([PYTHON2_EXEC_PREFIX], [$PYTHON_EXEC_PREFIX])
SSS_CLEAN_PYTHON_VARIABLES
fi
if test x$HAVE_PYTHON3_BINDINGS = x1; then
AS_IF([test x$HAVE_PYTHON3 != xyes],
[AC_MSG_ERROR([
The program python3 was not found in search path.
Please ensure that it is installed and its directory is included in the search
path. It is required for building python3 bindings. If you do not want to build
them please use argument --without-python3-bindings when running configure.])])
PYTHON=$PYTHON3
AM_PATH_PYTHON([3.3])
AM_PYTHON_CONFIG([python3])
AM_CHECK_PYTHON_HEADERS([],
AC_MSG_ERROR([Could not find python3 headers]))
AM_CHECK_PYTHON_COMPAT
AC_SUBST([py3execdir], [$pyexecdir])
AC_SUBST([python3dir], [$pythondir])
AC_SUBST([PYTHON3_CFLAGS], [$PYTHON_CFLAGS])
AC_SUBST([PYTHON3_LIBS], [$PYTHON_LIBS])
AC_SUBST([PYTHON3_INCLUDES], [$PYTHON_INCLUDES])
AC_SUBST([PYTHON3_VERSION], [$PYTHON_VERSION])
AC_SUBST([PYTHON3_PREFIX], [$PYTHON_PREFIX])
AC_SUBST([PYTHON3_EXEC_PREFIX], [$PYTHON_EXEC_PREFIX])
SSS_CLEAN_PYTHON_VARIABLES
fi
AM_CONDITIONAL([BUILD_PYTHON_BINDINGS],
[test x"$with_python2_bindings" = xyes \
-o x"$with_python3_bindings" = xyes])
AM_PYTHON2_MODULE([ldap])
if test x$HAVE_SELINUX != x; then
AM_CHECK_SELINUX
AM_CHECK_SELINUX_LOGIN_DIR
fi
if test x$HAVE_SEMANAGE != x -a x$HAVE_SELINUX != x; then
AM_CHECK_SEMANAGE
fi
dnl If journald was selected for logging, configure journald
if test x$syslog = xjournald; then
AM_CHECK_JOURNALD
fi
if test x$cryptolib = xnss; then
AM_CHECK_NSS
fi
if test x$cryptolib = xlibcrypto; then
AM_CHECK_LIBCRYPTO
fi
AM_CHECK_INOTIFY
AC_CACHE_CHECK([whether compiler supports __attribute__((destructor))],
sss_client_cv_attribute_destructor,
[AC_COMPILE_IFELSE(
[AC_LANG_SOURCE([__attribute__((destructor)) static void cleanup(void) { }])],
sss_client_cv_attribute_destructor=yes)
])
if test x"$sss_client_cv_attribute_destructor" = xyes ; then
AC_DEFINE(HAVE_FUNCTION_ATTRIBUTE_DESTRUCTOR, 1,
[whether compiler supports __attribute__((destructor))])
fi
AC_CACHE_CHECK([whether compiler supports __attribute__((format))],
sss_cv_attribute_format,
[AC_COMPILE_IFELSE(
[AC_LANG_SOURCE(
[void debug_fn(const char *format, ...) __attribute__ ((format (printf, 1, 2)));]
)],
[sss_cv_attribute_format=yes],
[
AC_MSG_RESULT([no])
AC_MSG_WARN([compiler does NOT support __attribute__((format))])
])
])
if test x"$sss_cv_attribute_format" = xyes ; then
AC_DEFINE(HAVE_FUNCTION_ATTRIBUTE_FORMAT, 1,
[whether compiler supports __attribute__((format))])
fi
AC_CACHE_CHECK([whether compiler supports __attribute__((warn_unused_result))],
sss_cv_attribute_warn_unused_result,
[AC_COMPILE_IFELSE(
[AC_LANG_SOURCE(
[ char _check_leaks(int bytes) __attribute__ ((warn_unused_result)); ]
)],
[sss_cv_attribute_warn_unused_result=yes],
[
AC_MSG_RESULT([no])
AC_MSG_WARN([compiler does NOT support __attribute__((warn_unused_result))])
])
])
if test x"$sss_cv_attribute_warn_unused_result" = xyes ; then
AC_DEFINE(HAVE_FUNCTION_ATTRIBUTE_WARN_UNUSED_RESULT, 1,
[whether compiler supports __attribute__((warn_unused_result))])
fi
PKG_CHECK_MODULES([CHECK], [check >= 0.9.5], [have_check=1], [have_check=])
if test x$have_check = x; then
AC_MSG_WARN([Without the 'CHECK' libraries, you will be unable to run all tests in the 'make check' suite])
else
AC_CHECK_HEADERS([check.h],,AC_MSG_ERROR([Could not find CHECK headers]))
fi
AC_PATH_PROG([DOXYGEN], [doxygen], [false])
AM_CONDITIONAL([HAVE_DOXYGEN], [test x$DOXYGEN != xfalse ])
AM_CONDITIONAL([HAVE_CHECK], [test x$have_check != x])
AM_CHECK_CMOCKA
AM_CHECK_UID_WRAPPER
AM_CHECK_NSS_WRAPPER
# Check if the user wants SSSD to be compiled with systemtap probes
AM_CHECK_SYSTEMTAP
SSS_ENABLE_INTGCHECK_REQS
AM_CONDITIONAL([HAVE_DEVSHM], [test -d /dev/shm])
# Check if we should install polkit rules
ENABLE_POLKIT_RULES_PATH
AM_CONDITIONAL([HAVE_POLKIT_RULES_D], [test x$HAVE_POLKIT_RULES_D != x])
abs_build_dir=`pwd`
AC_DEFINE_UNQUOTED([ABS_BUILD_DIR], ["$abs_build_dir"], [Absolute path to the build directory])
AC_SUBST([abs_builddir], $abs_build_dir)
my_srcdir=`readlink -f $srcdir`
AC_DEFINE_UNQUOTED([ABS_SRC_DIR], ["$my_srcdir"], [Absolute path to the source directory])
AC_CONFIG_FILES([Makefile contrib/sssd.spec src/examples/rwtab src/doxy.config
contrib/sssd-pcsc.rules
src/sysv/sssd src/sysv/gentoo/sssd src/sysv/SUSE/sssd
po/Makefile.in src/man/Makefile src/tests/cwrap/Makefile
src/tests/intg/Makefile
src/lib/ipa_hbac/ipa_hbac.pc src/lib/ipa_hbac/ipa_hbac.doxy
src/lib/idmap/sss_idmap.pc src/lib/idmap/sss_idmap.doxy
src/sss_client/idmap/sss_nss_idmap.pc
src/sss_client/idmap/sss_nss_idmap.doxy
src/sss_client/libwbclient/wbclient_sssd.pc
src/lib/sifp/sss_simpleifp.pc
src/lib/sifp/sss_simpleifp.doxy
src/config/setup.py
src/responder/ifp/org.freedesktop.sssd.infopipe.service
src/systemtap/sssd.stp
src/config/SSSDConfig/__init__.py])
AC_OUTPUT