On Thu, Nov 21, 2019 at 04:13:37PM +0000, Glen Barber wrote:
> On Wed, Nov 20, 2019 at 06:36:58PM +0000, Brooks Davis wrote:
> > Author: brooks
> > Date: Wed Nov 20 18:36:58 2019
> > New Revision: 354909
> > URL: https://svnweb.freebsd.org/changeset/base/354909
> > 
> > Log:
> >   Make the warning for deprecated NO_ variables an error.
> >   
> >   Support for NO_CTF, NO_DEBUG_FILES, NO_INSTALLLIB, NO_MAN, NO_PROFILE,
> >   and NO_WARNS as deprecated in 2014 with a warning added for each one
> >   found. Turn these into error in preperation for removal of compatability
> >   support before FreeBSD 13.
> >   
> >   Reviewed by:      imp
> >   Relnotes: yes
> >   Sponsored by:     DARPA, AFRL
> >   Differential Revision:    https://reviews.freebsd.org/D22448
> > 
> 
> > Modified: head/share/mk/bsd.opts.mk
> > ==============================================================================
> > --- head/share/mk/bsd.opts.mk       Wed Nov 20 18:12:01 2019        
> > (r354908)
> > +++ head/share/mk/bsd.opts.mk       Wed Nov 20 18:36:58 2019        
> > (r354909)
> > @@ -100,7 +100,7 @@ __DEFAULT_DEPENDENT_OPTIONS = \
> >      PROFILE \
> >      WARNS
> >  .if defined(NO_${var})
> > -.warning "NO_${var} is defined, but deprecated. Please use MK_${var}=no 
> > instead."
> > +.error "NO_${var} is defined, but deprecated. Please use MK_${var}=no 
> > instead."
> >  MK_${var}:=no
> >  .endif
> >  .endfor
> > 
> 
> Had this been exp-run tested?  This breaks at least the
> net/bsdec2-image-upload port, which does *not* set NO_MAN explicitly in
> its Makefile.  I suspect at least several other ports are now implicitly
> broken as result of this change.

No, it wasn't.  I didn't realize it was needed.  I could revert if
there's significant fallout.  I've patched net/bsdec2-image-upload and
I'm testing a patch for emulators/open-vm-tools.

In general the issue is people putting NO_MAN= in Makefiles that
the freebsd build infrastructure and then never looking at build
output.  In some cases it's clearly blind copy-and-paste (e.g.
emulators/open-vm-tools sets NO_MAN and NOMAN in a kmod Makefile where
they do nothing).

Ideally I'd like to suppress these errors in ports unless DEVELOPER is
defined, but I'm not sure how best to do that.

-- Brooks

Attachment: signature.asc
Description: PGP signature

Reply via email to