svn commit: r333407 - head/share/mk

Brad Davis brd at FreeBSD.org
Fri May 25 21:16:23 UTC 2018


On Fri, May 25, 2018, at 3:10 PM, Bryan Drewery wrote:
> On 5/9/2018 6:44 AM, Brad Davis wrote:
> > Author: brd
> > Date: Wed May  9 13:44:54 2018
> > New Revision: 333407
> > URL: https://svnweb.freebsd.org/changeset/base/333407
> > 
> > Log:
> >   Enable directory creation with FILESDIR.
> >   
> >   This is part of packaging base work.
> >   
> >   Reviewed by:	will
> >   Approved by:	bapt (mentor), allanjude (mentor)
> >   Differential Revision:	https://reviews.freebsd.org/D15130
> > 
> 
> Please update share/mk/bsd.README too.
> 
> I know I haven't been very responsive but it's partly because I'm still
> fundamentally against this feature. It's adding a mechanism to replace
> mtree without considering the whole picture and only binding it to FILES
> rather than a bsd.dirs.mk; It doesn't actually satisfy replacing mtree
> files since it only works if there is a FILESGROUP used (FILES must be
> non-empty). So what's the point? My major concern is added confusion.
> The creation of directories for installing is a pain point at work for
> developers but I don't think this is enough. I liked the idea of
> `install "-D"` but I know it's not efficient and had some implementation
> issues.
> 
> More below...

Funny that you mention bsd.dirs.mk because that is coming.. after a reorg to fix a few other issues that will make this a lot easier..

> > Modified:
> >   head/share/mk/bsd.files.mk
> >   head/share/mk/bsd.own.mk
> > 
> > Modified: head/share/mk/bsd.files.mk
> > ==============================================================================
> > --- head/share/mk/bsd.files.mk	Wed May  9 12:25:23 2018	(r333406)
> > +++ head/share/mk/bsd.files.mk	Wed May  9 13:44:54 2018	(r333407)
> > @@ -67,7 +67,7 @@ STAGE_AS_${file:T}= ${${group}NAME_${file:T}}
> >  STAGE_DIR.${file:T}= ${STAGE_OBJTOP}${${group}DIR_${file:T}}
> >  stage_as.${file:T}: ${file}
> >  
> > -installfiles-${group}: _${group}INS_${file:T}
> > +installfiles-${group}: installdirs-${group} _${group}INS_${file:T}
> >  _${group}INS_${file:T}: ${file}
> >  	${INSTALL} ${${group}TAG_ARGS} -o ${${group}OWN_${.ALLSRC:T}} \
> >  	    -g ${${group}GRP_${.ALLSRC:T}} -m ${${group}MODE_${.ALLSRC:T}} \
> > @@ -77,10 +77,24 @@ _${group}INS_${file:T}: ${file}
> >  _${group}FILES+= ${file}
> >  .endif
> >  .endfor
> > +
> > +
> > +installdirs-${group}:
> > +	@echo installing dirs ${group}DIR ${${group}DIR}
> > +.for dir in ${${group}DIR}
> > +.if defined(NO_ROOT)
> > +	${INSTALL} ${${group}TAG_ARGS} -d ${DESTDIR}${dir}
> > +.else
> > +	${INSTALL} ${${group}TAG_ARGS} -d -o ${DIROWN} -g ${DIRGRP} \
> > +		-m ${DIRMODE} ${DESTDIR}${dir}
> 
> I missed this before but the OWN/GRP/MODE usage needs to be per group
> just like the FILES group ones are above; it needs to be able to modify
> the permissions per group rather than only using the globals.

This is part of the coming bsd.dirs.mk work.  I need to whack the last few bugs and push it for review.


Regards,
Brad Davis


More information about the svn-src-head mailing list