autofs-5.1.8 - rename configure.in to configure.ac From: Ian Kent Signed-off-by: Ian Kent --- CHANGELOG | 1 Makefile | 12 +- Makefile.rules | 2 configure.ac | 446 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 446 -------------------------------------------------------- 5 files changed, 454 insertions(+), 453 deletions(-) create mode 100644 configure.ac delete mode 100644 configure.in diff --git a/CHANGELOG b/CHANGELOG index a87f16eb..450990ba 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -103,6 +103,7 @@ - fix typo in create_cmd_pipe_fifo(). - add null check in master_kill(). - be more careful with cmd pipe at exit. +- rename configure.in to configure.ac. 19/10/2021 autofs-5.1.8 - add xdr_exports(). diff --git a/Makefile b/Makefile index 99db2c75..45454eef 100644 --- a/Makefile +++ b/Makefile @@ -39,8 +39,8 @@ mrproper distclean: clean find . -noleaf \( -name '*~' -o -name '#*' -o -name '*.orig' -o -name '*.rej' -o -name '*.old' \) -print0 | xargs -0 rm -f -rm -f include/config.h Makefile.conf config.* .autofs-* echo x > .autofs-`cat .version` - sed -e "s/(\.autofs-[0-9.]\+)/(.autofs-`cat .version`)/" < configure.in > configure.in.tmp - mv -f configure.in.tmp configure.in + sed -e "s/(\.autofs-[0-9.]\+)/(.autofs-`cat .version`)/" < configure.ac > configure.ac.tmp + mv -f configure.ac.tmp configure.ac rm -f configure $(MAKE) configure @@ -51,16 +51,16 @@ VERSION := $(shell cat .version) backup: mrproper cd .. ; tar zcf - $(PKGDIR) | gzip -9 > autofs-$(VERSION)-bu-$(TODAY).tar.gz -configure: configure.in aclocal.m4 +configure: configure.ac aclocal.m4 autoconf autoheader rm -rf config.* *.cache -configure.in: .version +configure.ac: .version -rm -f .autofs-* echo x > .autofs-`cat .version` - sed -e "s/(\.autofs-[0-9.]\+)/(.autofs-`cat .version`)/" < configure.in > configure.in.tmp - mv -f configure.in.tmp configure.in + sed -e "s/(\.autofs-[0-9.]\+)/(.autofs-`cat .version`)/" < configure.ac > configure.ac.tmp + mv -f configure.ac.tmp configure.ac -include Makefile.private diff --git a/Makefile.rules b/Makefile.rules index 43cf2963..6ce39e54 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -6,7 +6,7 @@ SUBDIRS = lib daemon modules man INCDIRS = include INCFILES = COPYING COPYRIGHT NEWS README* TODO Makefile Makefile.rules \ - Makefile.conf.in .version .autofs-* configure.in aclocal.m4 \ + Makefile.conf.in .version .autofs-* configure.ac aclocal.m4 \ configure *.patch autofs.spec ifeq ($(FEDFS), 1) diff --git a/configure.ac b/configure.ac new file mode 100644 index 00000000..d9567ef2 --- /dev/null +++ b/configure.ac @@ -0,0 +1,446 @@ +# +# configure.ac for the autofs daemon + +AC_PREREQ(2.5) + +# +# Disable caching (the script is tiny, and it doesn't work with --with-path) +# then start autofs +# +define([AC_CACHE_LOAD], )dnl +define([AC_CACHE_SAVE], )dnl +AC_INIT(.autofs-5.1.8) + +# for pkg-config macros +m4_include([/usr/share/aclocal/pkg.m4]) + +# +# autofs installs by default in /usr +# +AC_PREFIX_DEFAULT(/usr) + +# +# The user can specify --with-path=PATH rather than relying on the default +# +searchpath="/usr/bin:/bin:/usr/sbin:/sbin" +AC_ARG_WITH(path, +[ --with-path=PATH look in PATH for binaries needed by the automounter], + if test -z "$withval" -o "$withval" = "yes" -o "$withval" = "no" + then + : + else + searchpath="${withval}" + fi +) + +AC_MSG_CHECKING([for binaries in]) +AC_MSG_RESULT([$searchpath]) + +# +# Make sure we have "/proc" +# +AF_LINUX_PROCFS() + +# +# Location of init.d directory? +# +AF_INIT_D() +AC_SUBST(initdir) +AF_PID_D() +AC_SUBST(piddir) +PKG_PROG_PKG_CONFIG + +# +# Check for systemd unit files direectory exists if unit file installation +# is requested +# +AF_WITH_SYSTEMD() +AC_SUBST(systemddir) +AC_SUBST(WITH_SYSTEMD) +PKG_CHECK_MODULES([systemd],[libsystemd],, +[ + AC_CHECK_LIB(systemd, sm_notify, systemd_LIBS="-lsystemd") + AC_SUBST(systemd_LIBS) +]) + +# +# Location of system config script directory? +# +AF_CONF_D() +AC_ARG_WITH(confdir, +[ --with-confdir=DIR use DIR for autofs configuration files], + if test -z "$withval" -o "$withval" = "yes" -o "$withval" = "no" + then + : + else + confdir="${withval}" + fi +) +AC_MSG_CHECKING([for autofs configuration file directory]) +AC_MSG_RESULT([$confdir]) +AC_SUBST(confdir) + +# +# The user can specify --with-mapsdir=PATH to specify autofs maps go +# +AF_MAP_D() +AC_ARG_WITH(mapdir, +[ --with-mapdir=PATH look in PATH for mount maps used by the automounter], + if test -z "$withval" -o "$withval" = "yes" -o "$withval" = "no" + then + : + else + mapdir="${withval}" + fi +) +AC_MSG_CHECKING([for autofs maps directory]) +AC_MSG_RESULT([$mapdir]) +AC_SUBST(mapdir) + +# +# The user can specify --with-fifodir=PATH to specify where autofs fifos go +# +AF_FIFO_D() +AC_ARG_WITH(fifodir, +[ --with-fifodir=PATH use PATH as the directory for fifos used by the automounter], + if test -z "$withval" -o "$withval" = "yes" -o "$withval" = "no" + then + : + else + fifodir="${withval}" + fi +) +AC_MSG_CHECKING([for autofs fifos directory]) +AC_MSG_RESULT([$fifodir]) +AC_SUBST(fifodir) + +# +# The user can specify --with-flagdir=PATH to specify where autofs flag file goes +# +AF_FLAG_D() +AC_ARG_WITH(flagdir, +[ --with-flagdir=PATH use PATH as the directory for the flag file used by the automounter], + if test -z "$withval" -o "$withval" = "yes" -o "$withval" = "no" + then + : + else + flagdir="${withval}" + fi +) +AC_MSG_CHECKING([for autofs flag file directory]) +AC_MSG_RESULT([$flagdir]) +AC_SUBST(flagdir) + +# +# Use libtirpc +# +AC_ARG_WITH([libtirpc], AS_HELP_STRING([--with-libtirpc], [use libtirpc if available])) +if test "x$with_libtirpc" = "xyes"; then + PKG_CHECK_MODULES([TIRPC],[libtirpc],[ + AC_DEFINE(WITH_LIBTIRPC,1, + [Define to 1 if you have the libtirpc library installed]) + AC_DEFINE(TIRPC_WORKAROUND,1, + [Define to 1 to use the libtirpc tsd usage workaround]) + ]) + AC_CHECK_FUNCS([getrpcbyname getservbyname]) +fi + +# +# Optional include dmalloc +# +AM_WITH_DMALLOC() +AC_SUBST(DMALLOCLIB) + +# +# Programs needed for various system functions or modules +# +AF_PATH_INCLUDE(MOUNT, mount, /bin/mount, $searchpath) +AF_PATH_INCLUDE(MOUNT_NFS, mount.nfs, /sbin/mount.nfs , $searchpath) +AF_PATH_INCLUDE(UMOUNT, umount, /bin/umount, $searchpath) +AF_PATH_INCLUDE(E2FSCK, fsck.ext2 e2fsck, , $searchpath) +AF_PATH_INCLUDE(E3FSCK, fsck.ext3 e3fsck, , $searchpath) +AF_PATH_INCLUDE(E4FSCK, fsck.ext4 e4fsck, , $searchpath) + +AF_CHECK_PROG(LEX, flex lex, , $searchpath) +AF_CHECK_PROG(YACC, bison, , $searchpath) +AF_CHECK_PROG(RANLIB, ranlib, , $searchpath) + +AF_CHECK_SSS_LIB(SSS_AUTOFS, libsss_autofs.so) +AC_SUBST(HAVE_SSS_AUTOFS) +AC_SUBST(sssldir) + +AC_CHECK_FUNCS(pipe2 innetgr) + +# +# Newer mounts have the -s (sloppy) option to ignore unknown options, +# good for portability +# +AC_ARG_ENABLE(sloppy-mount, +[ --enable-sloppy-mount enable the use of the -s option to mount],, + enable_sloppy_mount=auto) +if test x$enable_sloppy_mount = xauto; then + AF_SLOPPY_MOUNT() +fi +if test x$enable_sloppy_mount = xyes; then + AC_DEFINE(HAVE_SLOPPY_MOUNT, 1, [define if the mount command supports the -s option]) +fi + +# +# Newer umounts have the -c (--no-canonicalize) option to avoid +# stating the path and possible blocking. Good for NFS. +# +AC_ARG_ENABLE(no-canon-umount, +[ --enable-no-canon-umount enable the use of the -c option to umount],, + enable_no_canon_umount=auto) +if test x$enable_no_canon_umount = xauto; then + AF_NO_CANON_UMOUNT() +fi +if test x$enable_no_canon_umount = xyes; then + AC_DEFINE(HAVE_NO_CANON_UMOUNT, 1, [define if the umount command supports the -c option]) +fi + +ENABLE_FEDFS="" +AC_ARG_ENABLE(fedfs, +[ --enable-fedfs enable inclusion of fedfs binaries mount.fedfs and fedfs-map-nfs4],, + enable_fedfs=no) +if test x$enable_fedfs = xyes; then + ENABLE_FEDFS="1" +fi +AC_SUBST(ENABLE_FEDFS) + +# LDAP SASL auth needs libxml and Kerberos +PKG_CHECK_MODULES([XML], [libxml-2.0], [ + HAVE_LIBXML=1 + AC_DEFINE(LIBXML2_WORKAROUND, 1, [Use libxml2 tsd usage workaround]) +], [HAVE_LIBXML=0]) + +AF_CHECK_KRB5() + +AC_SEARCH_LIBS([versionsort],[]) +if test "$ac_cv_search_versionsort" = "no"; then + AC_DEFINE(WITHOUT_VERSIONSORT, 1, + [Define if your C library does not provide versionsort]) +fi + +# glibc < 2.17 needs librt for clock_gettime() +AC_CHECK_LIB(rt, clock_gettime, LIBCLOCK_GETTIME="-lrt") +AC_SUBST(LIBCLOCK_GETTIME) + +PKG_CHECK_MODULES([NSL],[libnsl],, +[ +AC_CHECK_LIB(nsl, yp_match, NSL_LIBS="-lnsl") +AC_SUBST(NSL_LIBS) +NSL_CFLAGS="" +]) + +AC_CHECK_LIB(resolv, res_query, LIBRESOLV="-lresolv", AC_CHECK_LIB(resolv, __res_query, LIBRESOLV="-lresolv")) +AC_SUBST(LIBRESOLV) + +# +# Hesiod support? Expect that this may have a special directory... +# +AF_tmp_ldflags="$LDFLAGS" +LIBHESIOD='' +HAVE_HESIOD='' +AC_ARG_WITH(hesiod, +[ --with-hesiod=DIR enable Hesiod support (libs and includes in DIR)], + if test "$withval" = no + then + HAVE_HESIOD=0 # Disable + elif test -z "$withval" -o "$withval" = 'yes' + then + : Search for Hesiod in normal directory path + else + : Search for Hesiod in specific directory + LDFLAGS="$LDFLAGS -L${withval}/lib" + LIBHESIOD="-L${withval}/lib" + HESIOD_FLAGS="-I${withval}/include" + fi +) + +if test -z "$HAVE_HESIOD" -o "$HAVE_HESIOD" != "0" +then + HAVE_HESIOD=0 + AF_CHECK_LIBHESIOD() + if test "$HAVE_HESIOD" = "1"; then + AC_DEFINE(WITH_HESIOD,1, + [Define if using Hesiod as a source of automount maps]) + fi +fi +AC_SUBST(HAVE_HESIOD) +AC_SUBST(LIBHESIOD) +AC_SUBST(HESIOD_FLAGS) +LDFLAGS="${AF_tmp_ldflags}" + +AF_CHECK_YPCLNT_HEADER() +AF_CHECK_NIS_HEADER() + +# +# OpenLDAP support? Expect that this may have a special directory... +# +AF_tmp_ldflags="$LDFLAGS" +AF_tmp_libs="$LIBS" +LIBLDAP='' +HAVE_LDAP='' +AC_ARG_WITH(openldap, +[ --with-openldap=DIR enable OpenLDAP map support (libs and includes in DIR)], + if test "$withval" = 'no'; then + HAVE_LDAP=0 # Disable + elif test -z "$withval" -o "$withval" = 'yes' + then + : Search for LDAP in normal directory path + else + : Search for LDAP in specific directory + LDFLAGS="$LDFLAGS -L${withval}/lib" + LIBLDAP="-L${withval}/lib" + LDAP_FLAGS="-I${withval}/include" + fi +) +if test -z "$HAVE_LDAP" -o "$HAVE_LDAP" != "0"; then + HAVE_LDAP=0 + LDAP_FLAGS="$LDAP_FLAGS -DLDAP_DEPRECATED=1" + AC_CHECK_LIB(ldap, ldap_initialize, HAVE_LDAP=1 LIBLDAP="$LIBLDAP -lldap -llber -lresolv", , + -llber -lresolv $LIBS) + if test "$HAVE_LDAP" = "1"; then + AC_DEFINE(WITH_LDAP,1, + [Define if using LDAP as a source of automount maps]) + AF_CHECK_FUNC_LDAP_SUPPORT_SASL() + AF_CHECK_FUNC_LDAP_CREATE_PAGE_CONTROL() + AF_CHECK_FUNC_LDAP_PARSE_PAGE_CONTROL() + fi +fi + +AC_SUBST(LDAP_FLAGS) +AC_SUBST(HAVE_LDAP) +AC_SUBST(LIBLDAP) +LDFLAGS="${AF_tmp_ldflags}" +LIBS="${AF_tmp_libs}" + +# +# SASL support +# configure magic taken from: +# http://www.timof.qipc.org/autofs/autofs-4.1.4-ldap-20050930.patch +# + +AF_tmp_ldflags="$LDFLAGS" +LIBSASL='' +HAVE_SASL='' +AC_ARG_WITH(sasl, +[ --with-sasl=DIR enable SASL support for LDAP maps (libs and includes in DIR)], + if test "$withval" = 'no'; then + HAVE_SASL=0 # Disable + elif test -z "$withval" -o "$withval" = 'yes' + then + : Search for SASL in normal directory path + else + : Search for SASL in specific directory + HAVE_SASL=1 + LDFLAGS="$LDFLAGS -L${withval}/lib" + LIBSASL="-L${withval}/lib" + SASL_FLAGS="-I${withval}/include" + fi +) +if test -z "$HAVE_SASL" -o "$HAVE_SASL" != "0" -a "$HAVE_LIBXML" = "1" +then + HAVE_SASL=0 + AC_CHECK_LIB(sasl2, sasl_client_start, HAVE_SASL=1 LIBSASL="$LIBSASL -lsasl2", , -lsasl2 $LIBS) + if test "$HAVE_SASL" = "1"; then + AC_DEFINE(WITH_SASL,1, + [Define if using SASL authentication with the LDAP module]) + fi +fi + +AC_SUBST(XML_CFLAGS) +AC_SUBST(XML_LIBS) +AC_SUBST(SASL_FLAGS) +AC_SUBST(HAVE_SASL) +AC_SUBST(LIBSASL) +AC_SUBST(KRB5_LIBS) +AC_SUBST(KRB5_FLAGS) +LDFLAGS="${AF_tmp_ldflags}" + +# +# Does gcc support building position independent executables? +# +AC_PROG_CC +cat > pietest.c < pietest.c <