autofs-5.1.8 - rename configure.in to configure.ac

From: Ian Kent <raven@themaw.net>

Signed-off-by: Ian Kent <raven@themaw.net>
---
 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 <<EOF
+int main(void) { return 0; }
+EOF
+CFLAGS=-fPIE
+LDFLAGS=-pie
+DAEMON_CFLAGS=
+DAEMON_LDFLAGS=
+AC_MSG_CHECKING([whether gcc -fPIE works])
+AC_RUN_IFELSE([AC_LANG_PROGRAM([[]], [[int main(void) {return 0;}]])],
+	      [gcc_supports_pie=yes], [gcc_supports_pie=no], [gcc_supports_pie=no])
+AC_MSG_RESULT([$gcc_supports_pie])
+if test $gcc_supports_pie = yes ; then
+	DAEMON_CFLAGS="-fPIE"
+	DAEMON_LDFLAGS="-pie"
+fi
+rm -f pietest.c
+AC_SUBST(DAEMON_CFLAGS)
+AC_SUBST(DAEMON_LDFLAGS)
+
+#
+# Enable ability to access value in external env variable
+#
+AC_ARG_ENABLE(ext-env,
+[  --disable-ext-env	        disable search in environment for substitution variable],,
+	enableval=yes)
+if test x$enable_ext_env = xyes -o x$enableval = xyes; then
+        AC_DEFINE(ENABLE_EXT_ENV, 1, [leave this alone])
+fi
+
+#
+# Disable use of locking when spawning mount command
+#
+AC_ARG_ENABLE(mount-locking,
+[  --disable-mount-locking       disable use of locking when spawning mount command],,
+	enableval=yes)
+if test x$enable_mount_locking = xyes -o x$enableval = xyes; then
+	AC_DEFINE(ENABLE_MOUNT_LOCKING, 1, [Disable use of locking when spawning mount command])
+fi
+
+#
+# Enable forced shutdown on USR1 signal (unlink umounts all mounts).
+#
+AC_ARG_ENABLE(force-shutdown,
+[  --enable-force-shutdown       enable USR1 signal to force unlink umount of any
+			        busy mounts during shutdown],,
+	enableval=no)
+if test x$enable_force_shutdown = xyes -o x$enableval = xyes; then
+	AC_DEFINE(ENABLE_FORCED_SHUTDOWN, 1, [Enable forced shutdown on USR1 signal])
+fi
+
+#
+# Enable exit, ignoring busy mounts.
+#
+AC_ARG_ENABLE(ignore-busy,
+[  --enable-ignore-busy	        enable exit without umounting busy mounts during
+			        shutdown],,
+	enableval=no)
+if test x$enable_ignore_busy_mounts = xyes -o x$enableval = xyes; then
+	AC_DEFINE(ENABLE_IGNORE_BUSY_MOUNTS, 1, [Enable exit, ignoring busy mounts])
+fi
+
+#
+# Enable exit, ignoring busy mounts.
+#
+AC_ARG_ENABLE(limit-getgrgid-size,
+[  --enable-limit-getgrgid-size	enable limit stack use of getgrgid_r()],,
+	enableval=no)
+if test x$enable_limit_getgrgid_size = xyes -o x$enableval = xyes; then
+	AC_DEFINE(ENABLE_LIMIT_GETGRGID_SIZE, 1, [Enable limit stack use of getgrgid_r()])
+fi
+
+#
+# Write Makefile.conf and include/config.h
+#
+AC_CONFIG_HEADER(include/config.h)
+AC_OUTPUT(Makefile.conf)
+
+#
+# Run make clean since we don't explicitly code the header file dependencies
+#
+AC_OUTPUT_COMMANDS([make clean])
diff --git a/configure.in b/configure.in
deleted file mode 100644
index 45f32340..00000000
--- a/configure.in
+++ /dev/null
@@ -1,446 +0,0 @@
-#
-# configure.in 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 <<EOF
-int main(void) { return 0; }
-EOF
-CFLAGS=-fPIE
-LDFLAGS=-pie
-DAEMON_CFLAGS=
-DAEMON_LDFLAGS=
-AC_MSG_CHECKING([whether gcc -fPIE works])
-AC_RUN_IFELSE([AC_LANG_PROGRAM([[]], [[int main(void) {return 0;}]])],
-	      [gcc_supports_pie=yes], [gcc_supports_pie=no], [gcc_supports_pie=no])
-AC_MSG_RESULT([$gcc_supports_pie])
-if test $gcc_supports_pie = yes ; then
-	DAEMON_CFLAGS="-fPIE"
-	DAEMON_LDFLAGS="-pie"
-fi
-rm -f pietest.c
-AC_SUBST(DAEMON_CFLAGS)
-AC_SUBST(DAEMON_LDFLAGS)
-
-#
-# Enable ability to access value in external env variable
-#
-AC_ARG_ENABLE(ext-env,
-[  --disable-ext-env	        disable search in environment for substitution variable],,
-	enableval=yes)
-if test x$enable_ext_env = xyes -o x$enableval = xyes; then
-        AC_DEFINE(ENABLE_EXT_ENV, 1, [leave this alone])
-fi
-
-#
-# Disable use of locking when spawning mount command
-#
-AC_ARG_ENABLE(mount-locking,
-[  --disable-mount-locking       disable use of locking when spawning mount command],,
-	enableval=yes)
-if test x$enable_mount_locking = xyes -o x$enableval = xyes; then
-	AC_DEFINE(ENABLE_MOUNT_LOCKING, 1, [Disable use of locking when spawning mount command])
-fi
-
-#
-# Enable forced shutdown on USR1 signal (unlink umounts all mounts).
-#
-AC_ARG_ENABLE(force-shutdown,
-[  --enable-force-shutdown       enable USR1 signal to force unlink umount of any
-			        busy mounts during shutdown],,
-	enableval=no)
-if test x$enable_force_shutdown = xyes -o x$enableval = xyes; then
-	AC_DEFINE(ENABLE_FORCED_SHUTDOWN, 1, [Enable forced shutdown on USR1 signal])
-fi
-
-#
-# Enable exit, ignoring busy mounts.
-#
-AC_ARG_ENABLE(ignore-busy,
-[  --enable-ignore-busy	        enable exit without umounting busy mounts during
-			        shutdown],,
-	enableval=no)
-if test x$enable_ignore_busy_mounts = xyes -o x$enableval = xyes; then
-	AC_DEFINE(ENABLE_IGNORE_BUSY_MOUNTS, 1, [Enable exit, ignoring busy mounts])
-fi
-
-#
-# Enable exit, ignoring busy mounts.
-#
-AC_ARG_ENABLE(limit-getgrgid-size,
-[  --enable-limit-getgrgid-size	enable limit stack use of getgrgid_r()],,
-	enableval=no)
-if test x$enable_limit_getgrgid_size = xyes -o x$enableval = xyes; then
-	AC_DEFINE(ENABLE_LIMIT_GETGRGID_SIZE, 1, [Enable limit stack use of getgrgid_r()])
-fi
-
-#
-# Write Makefile.conf and include/config.h
-#
-AC_CONFIG_HEADER(include/config.h)
-AC_OUTPUT(Makefile.conf)
-
-#
-# Run make clean since we don't explicitly code the header file dependencies
-#
-AC_OUTPUT_COMMANDS([make clean])