---
 sbin/mount/Makefile   |    2 +-
 sbin/mount/mount.c    |   23 +++++++++++++----------
 sbin/mount/mount_fs.c |    2 +-
 3 files changed, 15 insertions(+), 12 deletions(-)

--- a/sbin/mount/mntopts.h
+++ b/sbin/mount/mntopts.h
@@ -37,6 +37,10 @@
 	int m_altloc;		/* 1 => set bit in altflags */
 };
 
+#ifndef MNT_NFS4ACLS
+#define  MNT_NFS4ACLS    0x00000010
+#endif
+
 /* User-visible MNT_ flags. */
 #define MOPT_ASYNC		{ "async",	0, MNT_ASYNC, 0 }
 #define MOPT_NOATIME		{ "atime",	1, MNT_NOATIME, 0 }
Index: b/sbin/mount/mount_fs.c
===================================================================
--- a/sbin/mount/mount_fs.c
+++ b/sbin/mount/mount_fs.c
@@ -52,7 +52,7 @@
 #include <sys/mount.h>
 
 #include <err.h>
-#include <getopt.h>
+#include <bsd/getopt.h>
 #include <libgen.h>
 #include <stdio.h>
 #include <stdlib.h>
Index: b/sbin/mount/mount.c
===================================================================
--- a/sbin/mount/mount.c
+++ b/sbin/mount/mount.c
@@ -58,6 +58,8 @@
 #include <unistd.h>
 #include <libutil.h>
 
+#include <bsd/string.h>
+
 #include "extern.h"
 #include "mntopts.h"
 #include "pathnames.h"
@@ -159,6 +161,7 @@
 static int
 exec_mountprog(const char *name, const char *execname, char *const argv[])
 {
+	char buf[256];
 	pid_t pid;
 	int status;
 
@@ -167,13 +170,11 @@
 		warn("fork");
 		exit (1);
 	case 0:					/* Child. */
-		/* Go find an executable. */
-		execvP(execname, _PATH_SYSPATH, argv);
+		/* Mount programs are located in /sbin. */
+		snprintf(buf, sizeof(buf), "/sbin/%s", execname);
+		execv(buf, argv);
 		if (errno == ENOENT) {
 			warn("exec %s not found", execname);
-			if (execname[0] != '/') {
-				warnx("in path: %s", _PATH_SYSPATH);
-			}
 		}
 		exit(1);
 	default:				/* Parent. */
@@ -250,7 +251,7 @@
 	options = NULL;
 	vfslist = NULL;
 	vfstype = "ufs";
-	while ((ch = getopt(argc, argv, "adF:flo:prt:uvw")) != -1)
+	while ((ch = getopt(argc, argv, "adflo:prt:uvw")) != -1)
 		switch (ch) {
 		case 'a':
 			all = 1;
@@ -258,9 +259,6 @@
 		case 'd':
 			debug = 1;
 			break;
-		case 'F':
-			setfstab(optarg);
-			break;
 		case 'f':
 			init_flags |= MNT_FORCE;
 			break;
@@ -645,11 +643,13 @@
 			(void)printf(", reads: sync %ju async %ju",
 			    (uintmax_t)sfp->f_syncreads,
 			    (uintmax_t)sfp->f_asyncreads);
+#ifdef __FreeBSD__
 		if (sfp->f_fsid.val[0] != 0 || sfp->f_fsid.val[1] != 0) {
 			printf(", fsid ");
 			for (i = 0; i < sizeof(sfp->f_fsid); i++)
 				printf("%02x", ((u_char *)&sfp->f_fsid)[i]);
 		}
+#endif
 	}
 	(void)printf(")\n");
 }
@@ -839,7 +839,7 @@
 {
 
 	(void)fprintf(stderr, "%s\n%s\n%s\n",
-"usage: mount [-adflpruvw] [-F fstab] [-o options] [-t ufs | external_type]",
+"usage: mount [-adflpruvw] [-o options] [-t ufs | external_type]",
 "       mount [-dfpruvw] special | node",
 "       mount [-dfpruvw] [-o options] [-t ufs | external_type] special node");
 	exit(1);
@@ -856,7 +856,7 @@
 
 	if (strncmp(ent->f_mntfromname, "<below>", 7) == 0 ||
 	    strncmp(ent->f_mntfromname, "<above>", 7) == 0) {
-		strcpy(ent->f_mntfromname, (strnstr(ent->f_mntfromname, ":", 8)
+		strcpy(ent->f_mntfromname, (memchr(ent->f_mntfromname, ':', 8)
 		    +1));
 	}
 
Index: b/sbin/mount/Makefile
===================================================================
--- a/sbin/mount/Makefile
+++ b/sbin/mount/Makefile
@@ -8,6 +8,6 @@
 # We do NOT install the getmntopts.3 man page.
 
 DPADD=	${LIBUTIL}
-LDADD=	-lutil
+LDADD=	-lutil -lbsd
 
 .include <bsd.prog.mk>
