svn commit: r314693 - head/usr.sbin/rmt

Baptiste Daroussin bapt at freebsd.org
Sun Mar 5 13:42:27 UTC 2017


On Sun, Mar 05, 2017 at 05:19:28AM -0800, Rodney W. Grimes wrote:
> -- Start of PGP signed section.
> > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote:
> > > Author: rgrimes
> > > Date: Sun Mar  5 04:09:18 2017
> > > New Revision: 314693
> > > URL: https://svnweb.freebsd.org/changeset/base/314693
> > > 
> > > Log:
> > >   Change /etc/rmt symlink from absolute to relative path,
> > >   correcting the mistake made in r6499
> > >   
> > >   Approved by:	grehan
> > >   MFC after:	1 week
> > > 
> > > Modified:
> > >   head/usr.sbin/rmt/Makefile
> > > 
> > > Modified: head/usr.sbin/rmt/Makefile
> > > ==============================================================================
> > > --- head/usr.sbin/rmt/Makefile	Sun Mar  5 04:02:47 2017	(r314692)
> > > +++ head/usr.sbin/rmt/Makefile	Sun Mar  5 04:09:18 2017	(r314693)
> > > @@ -7,6 +7,6 @@ MAN=	rmt.8
> > >  # called from /usr/src/etc/Makefile
> > >  etc-rmt:
> > >  	rm -f ${DESTDIR}/etc/rmt
> > > -	ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt
> > > +	ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt
> > 
> > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt
> 
> find /usr/src | xargs grep INSTALL_RSYM
> (no results)
> 
> Sorry, no prior work does this, perhaps once I get done sweeping the
> absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to
> sweep all ln -s out and propage this internal bsd.lib.mk function out
> to the rest of the source tree?

There is also no Makefiles that do ls -sf directly beside that one.
INSTALL_RSYMLINK has exactly be done to be use everywhere it is needed. (I wrote
it for that exact reason :))
> 
> find /usr/share/mk/ | xargs grep INSTALL_RSYM
> /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?=     ${INSTALL} ${RSYMLINK}
> /usr/share/mk/bsd.lib.mk:       ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK}
> /usr/share/mk/bsd.lib.mk:       ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \
> /usr/share/mk/bsd.lib.mk:       ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \
> /usr/share/mk/bsd.lib.mk:       ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \
> 
> This is called from within bsd.lib.mk only, do we want to use this for
> all symbolics links in the source tree?  If so I would of though the
> person adding this functionality to the .mk files would of made
> a tree sweeping looking for that and making those changes as well.

When I did it only bsd.lib.mk was using it iirc
> 
> > The rm -f before can then be removed, the symlink will be relative and the
> > METALOG will be respected 
> 
> METALOG?  The only documentation I can find on this seems to be part of
> src/tootls/tools/makeroot.8.
> 
> It appears that something in Makefile.inc uses it and there are references
> to it in etc/Makefile.
> 
> Where is this METALOG documented?  

It is really badly documented and should be :( it is a mtree file that is
generated when built is done via -DNO_ROOT for the purpose of being able to
generate disk with makefs as a user

I have reused it for packaging base.

This was designed IIRC by adrian and brooks iirc.

Embedded people relies a lot on it.
Everything not going though the install(1) command is not tracked that is why
this is an issue.

Best regards,
Bapt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20170305/a8622718/attachment.sig>


More information about the svn-src-head mailing list