mirror of
https://git.freebsd.org/src.git
synced 2026-01-11 19:57:22 +00:00
Move mntopts(3) suppport into libutil
Many programs use this functionality so it should be available centrally rather than compiled into each program independently. This has the modest downside of adding libutil dependencies to some mount_<foo> programs, but many (plus mount(8)) already have those depndencies so this shouldn't be a major imposition. In commit906c312bbf, Kirk said this could be done once the change was merged to FreeBSD 13. That happened in commit668dfa0166in 2023. While here perform related tidying including removing SRCS where the only entry is ${PROG}.c rendering it unnecessary. Reviewed by: olce, dim, emaste Differential Revision: https://reviews.freebsd.org/D49951
This commit is contained in:
parent
5842658903
commit
cda23fc36d
22 changed files with 51 additions and 118 deletions
|
|
@ -16,9 +16,10 @@ SRCS= _secure_path.c auth.c cpuset.c expand_number.c flopen.c fparseln.c \
|
|||
kinfo_getvmobject.c kld.c \
|
||||
login_auth.c login_cap.c \
|
||||
login_class.c login_crypt.c login_ok.c login_times.c login_tty.c \
|
||||
mntopts.c \
|
||||
pidfile.c property.c pty.c pw_scan.c pw_util.c quotafile.c \
|
||||
realhostname.c stub.c trimdomain.c uucplock.c
|
||||
INCS= libutil.h login_cap.h
|
||||
INCS= libutil.h login_cap.h mntopts.h
|
||||
|
||||
CFLAGS+= -DNO__SCCSID
|
||||
|
||||
|
|
@ -32,7 +33,8 @@ MAN+= cpuset.3 expand_number.3 flopen.3 fparseln.3 ftime.3 getlocalbase.3 \
|
|||
hexdump.3 humanize_number.3 kinfo_getallproc.3 kinfo_getfile.3 \
|
||||
kinfo_getproc.3 kinfo_getvmmap.3 kinfo_getvmobject.3 kld.3 \
|
||||
login_auth.3 login_cap.3 \
|
||||
login_class.3 login_ok.3 login_times.3 login_tty.3 pidfile.3 \
|
||||
login_class.3 login_ok.3 login_times.3 login_tty.3 mntopts.3 \
|
||||
pidfile.3 \
|
||||
property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \
|
||||
_secure_path.3 trimdomain.3 uucplock.3 pw_util.3
|
||||
MAN+= login.conf.5
|
||||
|
|
@ -54,6 +56,14 @@ MLINKS+=login_times.3 in_lt.3 login_times.3 in_ltm.3 \
|
|||
login_times.3 in_ltms.3 \
|
||||
login_times.3 in_lts.3 \
|
||||
login_times.3 parse_lt.3
|
||||
MLINKS+=mntopts.3 getmntopts.3 \
|
||||
mntopts.3 getmntpoint.3 \
|
||||
mntopts.3 chkdoreload.3 \
|
||||
mntopts.3 build_iovec.3 \
|
||||
mntopts.3 build_iovec_argf.3 \
|
||||
mntopts.3 free_iovec.3 \
|
||||
mntopts.3 checkpath.3 \
|
||||
mntopts.3 rmslashes.3
|
||||
MLINKS+=pidfile.3 pidfile_close.3 \
|
||||
pidfile.3 pidfile_fileno.3 \
|
||||
pidfile.3 pidfile_open.3 \
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd January 19, 2023
|
||||
.Dd April 21, 2025
|
||||
.Dt MNTOPTS 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
|
|
@ -35,6 +35,8 @@
|
|||
.Nm checkpath ,
|
||||
.Nm rmslashes
|
||||
.Nd "mount point operations"
|
||||
.Sh LIBRARY
|
||||
.Lb libutil
|
||||
.Sh SYNOPSIS
|
||||
.In mntopts.h
|
||||
.Ft void
|
||||
|
|
@ -69,18 +71,6 @@
|
|||
The
|
||||
.Nm mntopts
|
||||
functions support operations associated with a mount point.
|
||||
For historic reasons are in a file in the sources for the
|
||||
.Xr mount 8
|
||||
program.
|
||||
Thus, to access them the following lines need to be added to the
|
||||
.Nm Makefile
|
||||
of the program wanting to use them:
|
||||
.Bd -literal
|
||||
SRCS+= getmntopts.c
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
\&.PATH: ${MOUNT}
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Fn getmntopts
|
||||
|
|
@ -326,7 +316,7 @@ flag, would also have an
|
|||
entry.
|
||||
This can be declared and used as follows:
|
||||
.Bd -literal
|
||||
#include "mntopts.h"
|
||||
#include <mntopts.h>
|
||||
|
||||
struct mntopt mopts[] = {
|
||||
MOPT_STDOPTS,
|
||||
|
|
@ -377,3 +367,11 @@ and
|
|||
.Fn chkdoreload
|
||||
functions were added in
|
||||
.Fx 13.2 .
|
||||
.Pp
|
||||
Historically, these functions were found in getmntopts.c in the sources for the
|
||||
.Xr mount 8
|
||||
program.
|
||||
As of
|
||||
.Fx 15.0
|
||||
they are part of
|
||||
.Nm libutil .
|
||||
|
|
@ -29,6 +29,9 @@
|
|||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _MNTOPTS_H_
|
||||
#define _MNTOPTS_H_
|
||||
|
||||
struct mntopt {
|
||||
const char *m_option; /* option name */
|
||||
int m_inverse; /* if a negative option, e.g. "atime" */
|
||||
|
|
@ -107,3 +110,5 @@ extern int getmnt_silent;
|
|||
void build_iovec(struct iovec **iov, int *iovlen, const char *name, void *val, size_t len);
|
||||
void build_iovec_argf(struct iovec **iov, int *iovlen, const char *name, const char *fmt, ...);
|
||||
void free_iovec(struct iovec **iovec, int *iovlen);
|
||||
|
||||
#endif /* !_MNTOPTS_H_ */
|
||||
|
|
@ -3,10 +3,7 @@
|
|||
PACKAGE=runtime
|
||||
PROG= fsck
|
||||
SRCS= fsck.c fsutil.c preen.c
|
||||
SRCS+= getmntopts.c
|
||||
MAN= fsck.8
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
.PATH: ${MOUNT}
|
||||
LIBADD= util
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@ LINKS+= ${BINDIR}/fsck_ffs ${BINDIR}/fsck_4.2bsd
|
|||
MAN= fsck_ffs.8
|
||||
MLINKS= fsck_ffs.8 fsck_ufs.8 fsck_ffs.8 fsck_4.2bsd.8
|
||||
SRCS= dir.c ea.c fsutil.c inode.c main.c pass1.c pass1b.c pass2.c pass3.c \
|
||||
pass4.c pass5.c setup.c suj.c utilities.c gjournal.c getmntopts.c \
|
||||
pass4.c pass5.c setup.c suj.c utilities.c gjournal.c \
|
||||
globs.c
|
||||
LIBADD= ufs
|
||||
LIBADD= ufs util
|
||||
WARNS?= 2
|
||||
CFLAGS+= -I${.CURDIR} -I${.CURDIR:H}/mount
|
||||
CFLAGS+= -I${.CURDIR}
|
||||
|
||||
.PATH: ${SRCTOP}/sys/ufs/ffs ${.CURDIR:H}/mount
|
||||
.PATH: ${SRCTOP}/sys/ufs/ffs
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -3,13 +3,10 @@
|
|||
|
||||
.include <src.opts.mk>
|
||||
|
||||
.PATH: ${.CURDIR:H}/mount
|
||||
|
||||
PACKAGE=ufs
|
||||
PROG= growfs
|
||||
SRCS= growfs.c getmntopts.c
|
||||
SRCS= growfs.c
|
||||
MAN= growfs.8
|
||||
CFLAGS+=-I${.CURDIR:H}/mount
|
||||
|
||||
.if defined(GFSDBG)
|
||||
SRCS+= debug.c
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
CONFGROUPS= CONFTTYS
|
||||
PACKAGE=runtime
|
||||
PROG= init
|
||||
SRCS= init.c getmntopts.c
|
||||
MAN= init.8
|
||||
PRECIOUSPROG=
|
||||
INSTALLFLAGS=-b -B.bak
|
||||
|
|
@ -11,11 +10,6 @@ LIBADD= util crypt
|
|||
CONFTTYSNAME= ttys
|
||||
CONFTTYS+= ttys
|
||||
|
||||
# Needed for getmntopts.c
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
CFLAGS+=-I${MOUNT}
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
NO_SHARED?= YES
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -2,11 +2,10 @@
|
|||
|
||||
PACKAGE=ufs
|
||||
PROG= mksnap_ffs
|
||||
SRCS= mksnap_ffs.c getmntopts.c
|
||||
LIBADD= util
|
||||
MAN= mksnap_ffs.8
|
||||
|
||||
WARNS?= 2
|
||||
CFLAGS+=-I${.CURDIR:H}/mount
|
||||
|
||||
.if defined(NOSUID)
|
||||
BINMODE=554
|
||||
|
|
|
|||
|
|
@ -1,15 +1,7 @@
|
|||
PACKAGE=runtime
|
||||
PROG= mount
|
||||
SRCS= mount.c mount_fs.c getmntopts.c vfslist.c
|
||||
MAN= mntopts.3 mount.8
|
||||
MLINKS+= mntopts.3 getmntopts.3
|
||||
MLINKS+= mntopts.3 getmntpoint.3
|
||||
MLINKS+= mntopts.3 chkdoreload.3
|
||||
MLINKS+= mntopts.3 build_iovec.3
|
||||
MLINKS+= mntopts.3 build_iovec_argf.3
|
||||
MLINKS+= mntopts.3 free_iovec.3
|
||||
MLINKS+= mntopts.3 checkpath.3
|
||||
MLINKS+= mntopts.3 rmslashes.3
|
||||
SRCS= mount.c mount_fs.c vfslist.c
|
||||
MAN= mount.8
|
||||
|
||||
LIBADD= util xo
|
||||
|
||||
|
|
|
|||
|
|
@ -1,16 +1,10 @@
|
|||
PACKAGE=runtime
|
||||
PROG= mount_cd9660
|
||||
SRCS= mount_cd9660.c getmntopts.c
|
||||
MAN= mount_cd9660.8
|
||||
LIBADD= kiconv
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
LIBADD= kiconv util
|
||||
|
||||
# Needs to be dynamically linked for optional dlopen() access to
|
||||
# userland libiconv
|
||||
NO_SHARED?= NO
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -20,12 +20,7 @@ DEBUG_FLAGS+= -DFUSE4BSD_VERSION="\"${F4BVERS}\""
|
|||
|
||||
PACKAGE=runtime
|
||||
PROG= mount_fusefs
|
||||
SRCS= mount_fusefs.c getmntopts.c
|
||||
MAN8= mount_fusefs.8
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
LIBADD= util
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,19 +1,10 @@
|
|||
#
|
||||
#
|
||||
|
||||
PACKAGE=runtime
|
||||
PROG= mount_msdosfs
|
||||
SRCS= mount_msdosfs.c getmntopts.c
|
||||
MAN= mount_msdosfs.8
|
||||
LIBADD= kiconv
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
LIBADD= kiconv util
|
||||
|
||||
# Needs to be dynamically linked for optional dlopen() access to
|
||||
# userland libiconv
|
||||
NO_SHARED?= NO
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
PACKAGE=nfs
|
||||
PROG= mount_nfs
|
||||
SRCS= mount_nfs.c getmntopts.c mounttab.c
|
||||
SRCS= mount_nfs.c mounttab.c
|
||||
MAN= mount_nfs.8
|
||||
LIBADD= util
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
UMNTALL= ${SRCTOP}/usr.sbin/rpc.umntall
|
||||
CFLAGS+= -DNFS -I${MOUNT} -I${UMNTALL}
|
||||
CFLAGS+= -DNFS -I${UMNTALL}
|
||||
|
||||
.PATH: ${MOUNT} ${UMNTALL}
|
||||
.PATH: ${UMNTALL}
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,11 +1,6 @@
|
|||
PACKAGE=runtime
|
||||
PROG= mount_nullfs
|
||||
SRCS= mount_nullfs.c getmntopts.c
|
||||
MAN= mount_nullfs.8
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
CFLAGS+=-I${MOUNT}
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
LIBADD= util
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,12 +1,7 @@
|
|||
PACKAGE=runtime
|
||||
PROG= mount_udf
|
||||
SRCS= mount_udf.c getmntopts.c
|
||||
MAN= mount_udf.8
|
||||
LIBADD= kiconv
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
CFLAGS+= -I${MOUNT} -I${SRCTOP}/sys
|
||||
.PATH: ${MOUNT}
|
||||
LIBADD= kiconv util
|
||||
|
||||
# Needs to be dynamically linked for optional dlopen() access to
|
||||
# userland libiconv
|
||||
|
|
|
|||
|
|
@ -1,11 +1,6 @@
|
|||
PACKAGE=runtime
|
||||
PROG= mount_unionfs
|
||||
SRCS= mount_unionfs.c getmntopts.c
|
||||
MAN= mount_unionfs.8
|
||||
|
||||
MOUNT= ${.CURDIR:H}/mount
|
||||
CFLAGS+=-I${MOUNT}
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
LIBADD= util
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,13 +1,8 @@
|
|||
PACKAGE=ufs
|
||||
PROG= tunefs
|
||||
SRCS= tunefs.c getmntopts.c
|
||||
LIBADD= ufs
|
||||
LIBADD= ufs util
|
||||
MAN= tunefs.8
|
||||
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
WARNS?= 3
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -55,7 +55,6 @@ GTESTS+= xattr
|
|||
|
||||
.for p in ${GTESTS}
|
||||
SRCS.$p+= ${p}.cc
|
||||
SRCS.$p+= getmntopts.c
|
||||
SRCS.$p+= mockfs.cc
|
||||
SRCS.$p+= utils.cc
|
||||
.endfor
|
||||
|
|
@ -68,7 +67,6 @@ TEST_METADATA.nfs+= required_user="root"
|
|||
TEST_METADATA+= timeout=10
|
||||
|
||||
FUSEFS= ${SRCTOP}/sys/fs/fuse
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
# Suppress warnings that GCC generates for the libc++ and gtest headers.
|
||||
CXXWARNFLAGS.gcc+= -Wno-placement-new -Wno-attributes
|
||||
# Suppress Wcast-align for readdir.cc, because it is unavoidable when using
|
||||
|
|
@ -87,8 +85,6 @@ CXXWARNFLAGS+= -Wno-vla-cxx-extension
|
|||
.endif
|
||||
CXXFLAGS+= -I${SRCTOP}/tests
|
||||
CXXFLAGS+= -I${FUSEFS}
|
||||
CXXFLAGS+= -I${MOUNT}
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
LIBADD+= pthread
|
||||
LIBADD+= gmock gtest
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ SRCS+= automountd.c
|
|||
SRCS+= autounmountd.c
|
||||
SRCS+= common.c
|
||||
SRCS+= defined.c
|
||||
SRCS+= getmntopts.c
|
||||
SRCS+= log.c
|
||||
SRCS+= popen.c
|
||||
SRCS+= token.l
|
||||
|
|
@ -18,15 +17,9 @@ MAN= automount.8 automountd.8 autounmountd.8 auto_master.5
|
|||
|
||||
LIBADD= util
|
||||
|
||||
# Needed for getmntopts.c
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
CFLAGS+=-I${MOUNT}
|
||||
|
||||
LINKS= ${BINDIR}/automountd ${BINDIR}/automount
|
||||
LINKS+= ${BINDIR}/automountd ${BINDIR}/autounmountd
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
SUBDIR= autofs
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
PROG= mount_smbfs
|
||||
PACKAGE= smbutils
|
||||
SRCS= mount_smbfs.c getmntopts.c
|
||||
MAN= mount_smbfs.8
|
||||
|
||||
MOUNTDIR= ${SRCTOP}/sbin/mount
|
||||
CONTRIBDIR= ${SRCTOP}/contrib/smbfs
|
||||
CFLAGS+= -DSMBFS -I${MOUNTDIR} -I${CONTRIBDIR}/include
|
||||
CFLAGS+= -DSMBFS -I${CONTRIBDIR}/include
|
||||
|
||||
LIBADD= smb
|
||||
LIBADD= smb util
|
||||
|
||||
.PATH: ${CONTRIBDIR}/mount_smbfs
|
||||
.PATH: ${MOUNTDIR}
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
|
|
@ -1,13 +1,8 @@
|
|||
PROG= mountd
|
||||
SRCS= mountd.c getmntopts.c
|
||||
MAN= exports.5 netgroup.5 mountd.8
|
||||
|
||||
MOUNT= ${SRCTOP}/sbin/mount
|
||||
CFLAGS+= -I${MOUNT}
|
||||
WARNS?= 2
|
||||
|
||||
.PATH: ${MOUNT}
|
||||
|
||||
LIBADD= util
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue