[patch] Proposal: move getmntopts(3) into libutil

Konstantin Belousov kostikbel at gmail.com
Tue Feb 26 12:20:44 UTC 2013

On Tue, Feb 26, 2013 at 02:39:26PM +0300, Sergey Kandaurov wrote:
> Hi.
> The functions from sbin/mount/getmntopts.c are used in a bunch of other
> stuff like mount_* utilities which have to suck them in as their own
> functions in quite a hackish way. getmntopts.c copies are compiled in to
> an every utility-consumer instead of being present in one place.  Looks
> like getmntopts.c was brought together with mount_ufs.c in 4.4BSD-Lite.
> After that other mount_* were converted to use getmntopts().
Yes, this is ugly. On the other hand, compiling the functions into
mount binaries makes them not to depend on the yet another library.
It cannot be an argument for rejecting your patch, only a point to

> The utilities consuming getmntopts.c as currently present in HEAD:
> mount_smbfs
> fsck_ffs
> growfs
> mksnap_ffs
> mount
> mount_cd9660
> mount_ext2fs
> mount_fusefs
> mount_hpfs
> mount_msdosfs
> mount_nfs
> mount_nullfs
> mount_reiserfs
> mount_std
> mount_udf
> mount_unionfs
> mount_nwfs
> mount_portalfs
> mount_smbfs
> mountd
> External mount-like utilities may also have difficulties with building
> to get getmntopts.c source as this requires /usr/src presence which is
> in sync with installed world. Look how mount_fusefs from ports compiles:
> # mount_fusefs needs mntopts.h and getmntopts.c from src/sbin/mount/
> The attached patch moves them to the IMHO architecturally more correct
> place: a separate library -lutil.
> sbin/mount/mntopts.h            -> include/mntopts.h
I think the mntopts.h should be moved to lib/libutil then, and installed
by libutil Makefile.

> sbin/mount/getmntopts.[3c]      -> lib/libutil/getmntopts.[3c]
I assume that the move is done by 'svn mv' to preserve the history.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-current/attachments/20130226/537fd283/attachment.sig>

More information about the freebsd-current mailing list