d068404
diff --git a/configure.ac b/configure.ac
d068404
index f1c46c5..5d9cbf3 100644
d068404
--- a/configure.ac
d068404
+++ b/configure.ac
d068404
@@ -249,6 +249,16 @@ AC_ARG_ENABLE(nfsdcld,
d068404
 	enable_nfsdcld=$enableval,
d068404
 	enable_nfsdcld="yes")
d068404
 
d068404
+AC_ARG_ENABLE(nfsrahead,
d068404
+	[AS_HELP_STRING([--disable-nfsrahead],[disable nfsrahead command @<:@default=no@:>@])],
d068404
+	enable_nfsrahead=$enableval,
d068404
+	enable_nfsrahead="yes")
d068404
+	AM_CONDITIONAL(CONFIG_NFSRAHEAD, [test "$enable_nfsrahead" = "yes" ])
d068404
+	if test "$enable_nfsrahead" = yes; then
d068404
+		dnl Check for -lmount
d068404
+		PKG_CHECK_MODULES([LIBMOUNT], [mount])
d068404
+	fi
d068404
+
d068404
 AC_ARG_ENABLE(nfsdcltrack,
d068404
 	[AS_HELP_STRING([--disable-nfsdcltrack],[disable NFSv4 clientid tracking programs @<:@default=no@:>@])],
d068404
 	enable_nfsdcltrack=$enableval,
d068404
diff --git a/support/export/auth.c b/support/export/auth.c
d068404
index 03ce4b8..2d7960f 100644
d068404
--- a/support/export/auth.c
d068404
+++ b/support/export/auth.c
d068404
@@ -82,7 +82,7 @@ check_useipaddr(void)
d068404
 }
d068404
 
d068404
 unsigned int
d068404
-auth_reload()
d068404
+auth_reload(void)
d068404
 {
d068404
 	struct stat		stb;
d068404
 	static ino_t		last_inode;
d068404
diff --git a/support/export/v4clients.c b/support/export/v4clients.c
d068404
index 5f15b61..3230251 100644
d068404
--- a/support/export/v4clients.c
d068404
+++ b/support/export/v4clients.c
d068404
@@ -26,7 +26,7 @@ void v4clients_init(void)
d068404
 {
d068404
 	struct stat sb;
d068404
 
d068404
-	if (!stat("/proc/fs/nfsd/clients", &sb) == 0 ||
d068404
+	if (stat("/proc/fs/nfsd/clients", &sb) != 0 ||
d068404
 	    !S_ISDIR(sb.st_mode))
d068404
 		return;
d068404
 	if (clients_fd >= 0)
d068404
diff --git a/support/export/v4root.c b/support/export/v4root.c
d068404
index c12a7d8..fbb0ad5 100644
d068404
--- a/support/export/v4root.c
d068404
+++ b/support/export/v4root.c
d068404
@@ -198,7 +198,7 @@ static int v4root_add_parents(nfs_export *exp)
d068404
  * looking for components of the v4 mount.
d068404
  */
d068404
 void
d068404
-v4root_set()
d068404
+v4root_set(void)
d068404
 {
d068404
 	nfs_export	*exp;
d068404
 	int	i;
d068404
diff --git a/support/export/xtab.c b/support/export/xtab.c
d068404
index c888a80..e210ca9 100644
d068404
--- a/support/export/xtab.c
d068404
+++ b/support/export/xtab.c
d068404
@@ -135,7 +135,7 @@ xtab_write(char *xtab, char *xtabtmp, char *lockfn, int is_export)
d068404
 }
d068404
 
d068404
 int
d068404
-xtab_export_write()
d068404
+xtab_export_write(void)
d068404
 {
d068404
 	return xtab_write(etab.statefn, etab.tmpfn, etab.lockfn, 1);
d068404
 }
d068404
diff --git a/support/nfsidmap/regex.c b/support/nfsidmap/regex.c
d068404
index 958b4ac..8424179 100644
d068404
--- a/support/nfsidmap/regex.c
d068404
+++ b/support/nfsidmap/regex.c
d068404
@@ -542,7 +542,7 @@ struct trans_func regex_trans = {
d068404
 	.gss_princ_to_grouplist	= regex_gss_princ_to_grouplist,
d068404
 };
d068404
 
d068404
-struct trans_func *libnfsidmap_plugin_init()
d068404
+struct trans_func *libnfsidmap_plugin_init(void)
d068404
 {
d068404
 	return (&regex_trans);
d068404
 }
d068404
diff --git a/tools/Makefile.am b/tools/Makefile.am
d068404
index 40c17c3..48fd0cd 100644
d068404
--- a/tools/Makefile.am
d068404
+++ b/tools/Makefile.am
d068404
@@ -12,6 +12,10 @@ if CONFIG_NFSDCLD
d068404
 OPTDIRS += nfsdclddb
d068404
 endif
d068404
 
d068404
-SUBDIRS = locktest rpcdebug nlmtest mountstats nfs-iostat rpcctl nfsdclnts nfsrahead $(OPTDIRS)
d068404
+if CONFIG_NFSRAHEAD
d068404
+OPTDIRS += nfsrahead
d068404
+endif
d068404
+
d068404
+SUBDIRS = locktest rpcdebug nlmtest mountstats nfs-iostat rpcctl nfsdclnts $(OPTDIRS)
d068404
 
d068404
 MAINTAINERCLEANFILES = Makefile.in
d068404
diff --git a/tools/nfsrahead/Makefile.am b/tools/nfsrahead/Makefile.am
d068404
index 845ea0d..7e08233 100644
d068404
--- a/tools/nfsrahead/Makefile.am
d068404
+++ b/tools/nfsrahead/Makefile.am
d068404
@@ -1,6 +1,6 @@
d068404
 libexec_PROGRAMS = nfsrahead
d068404
 nfsrahead_SOURCES = main.c
d068404
-nfsrahead_LDFLAGS= -lmount
d068404
+nfsrahead_LDFLAGS= $(LIBMOUNT_LIBS)
d068404
 nfsrahead_LDADD = ../../support/nfs/libnfsconf.la
d068404
 
d068404
 man5_MANS = nfsrahead.man
d068404
diff --git a/utils/blkmapd/device-discovery.c b/utils/blkmapd/device-discovery.c
d068404
index 2736ac8..49935c2 100644
d068404
--- a/utils/blkmapd/device-discovery.c
d068404
+++ b/utils/blkmapd/device-discovery.c
d068404
@@ -462,7 +462,7 @@ static void sig_die(int signal)
d068404
 		unlink(PID_FILE);
d068404
 	}
d068404
 	BL_LOG_ERR("exit on signal(%d)\n", signal);
d068404
-	exit(1);
d068404
+	exit(0);
d068404
 }
d068404
 static void usage(void)
d068404
 {
d068404
diff --git a/utils/exportfs/exportfs.c b/utils/exportfs/exportfs.c
d068404
index 6ba615d..0897b22 100644
d068404
--- a/utils/exportfs/exportfs.c
d068404
+++ b/utils/exportfs/exportfs.c
d068404
@@ -69,14 +69,14 @@ static int _lockfd = -1;
d068404
  * need these additional lockfile() routines.
d068404
  */
d068404
 static void
d068404
-grab_lockfile()
d068404
+grab_lockfile(void)
d068404
 {
d068404
 	_lockfd = open(lockfile, O_CREAT|O_RDWR, 0666);
d068404
 	if (_lockfd != -1)
d068404
 		lockf(_lockfd, F_LOCK, 0);
d068404
 }
d068404
 static void
d068404
-release_lockfile()
d068404
+release_lockfile(void)
d068404
 {
d068404
 	if (_lockfd != -1) {
d068404
 		lockf(_lockfd, F_ULOCK, 0);
d068404
diff --git a/utils/idmapd/idmapd.c b/utils/idmapd/idmapd.c
d068404
index e79c124..cd9a965 100644
d068404
--- a/utils/idmapd/idmapd.c
d068404
+++ b/utils/idmapd/idmapd.c
d068404
@@ -867,7 +867,7 @@ nfsdreopen_one(struct idmap_client *ic)
d068404
 }
d068404
 
d068404
 static void
d068404
-nfsdreopen()
d068404
+nfsdreopen(void)
d068404
 {
d068404
 	nfsdreopen_one(&nfsd_ic[IC_NAMEID]);
d068404
 	nfsdreopen_one(&nfsd_ic[IC_IDNAME]);
d068404
diff --git a/utils/mount/network.c b/utils/mount/network.c
d068404
index ed2f825..01ead49 100644
d068404
--- a/utils/mount/network.c
d068404
+++ b/utils/mount/network.c
d068404
@@ -179,7 +179,7 @@ static const unsigned long probe_mnt3_only[] = {
d068404
 
d068404
 static const unsigned int *nfs_default_proto(void);
d068404
 #ifdef MOUNT_CONFIG
d068404
-static const unsigned int *nfs_default_proto()
d068404
+static const unsigned int *nfs_default_proto(void)
d068404
 {
d068404
 	extern unsigned long config_default_proto;
d068404
 	/*