why does buildworld fail on stable/11 ?

Ian Lepore ian at freebsd.org
Thu Jan 25 15:13:30 UTC 2018


On Thu, 2018-01-25 at 00:25 -0600, Scott Bennett wrote:
> Ian Lepore <ian at freebsd.org> wrote:
> 
> > 
> > On Wed, 2018-01-24 at 12:39 +0100, Dimitry Andric wrote:
> > > 
> > > On 24 Jan 2018, at 09:51, Scott Bennett <bennett at sdf.org> wrote:
> > > > 
> > > > 
> > > > 
> > > > Subject: Re: why does buildworld fail on stable/11 ?
> > > > 
> > > > ????I wrote:
> > > > > 
> > > > > 
> > > > > ???On Mon, 22 Jan 2018 12:42:58 +0000 lists  wrote:
> > > > > > 
> > > > > > 
> > > > > > On 22/01/2018 09:17, Scott Bennett wrote:
> > > > > > > 
> > > > > > > 
> > > > > > > ???Anyway, I'm stuck.??Can someone please tell me what is going wrong and
> > > > > > > how to fix it???I'd really like to be able to update my system, not only to
> > > > > > > keep it reasonably current, but also to be able to customize a kernel.??Thanks
> > > > > > > in advance for any suggestions/solutions.
> > > > ????[much deleted??--SB]
> > > > > 
> > > > > 
> > > > > > 
> > > > > > 
> > > > > > then
> > > > > > 
> > > > > > [/usr/src #] make cleandir && make clean && make buildworld && make
> > > > > > buildkernel && make installkernel && mergemaster -p
> > > > > ???At this point, that looks very optimistic, to say the least. :-)??I've
> > > > > tried "make cleanworld" (with /etc/make.conf still in place), and it failed
> > > > > exactly like the buildworld example I posted before.
> > > > ????Okay.??Here's what happened.
> > > > 
> > > > Script started on Wed Jan 24 02:17:30 2018
> > > > hellas#	mv /etc/make.conf{,.save}
> > > > hellas#	mv /etc/src.conf{,.save}
> > > > hellas#	cd /usr/src
> > > > hellas#	make cleandir
> > > > "/usr/src/share/mk/local.sys.mk", line 51: Malformed conditional (${.MAKE.MODE:Mmeta*} != "")
> > > > "/usr/src/share/mk/local.sys.mk", line 58: Malformed conditional (${.MAKE.MODE:Mnofilemon} == "")
> > > > "/usr/src/share/mk/local.sys.mk", line 76: if-less else
> > > > "/usr/src/share/mk/local.sys.mk", line 79: if-less endif
> > > > "/usr/src/share/mk/sys.mk", line 476: if-less endif
> > > > bmake: fatal errors encountered -- cannot continue
> > > Looks like your make is broken.??What is the output of "which make"?
> > > 
> > > -Dimitry
> > > 
> > And also the output of "make -V MAKE_VERSION". ?To me, this looks a lot
> > like what happens when you try to use old fmake from freebsd 8 to build
> > modern freebsd source.
> > 
> hellas# make -V MAKE_VERSION
> 20170720
> hellas#

Well, that kills the wrong-version theory.  The thing I would try next
is setting some make debug flags, but it'll generate a ton of output.

I'd start with "make -dlp cleandir" that should list everything it's
doing while reading makefiles, and list any commands it executes.
 Capture that output (stdout and stderr), then a good first-look at the
file might be something like "grep -v ParseReadLine make.log", that
should show us what files it's reading from which directories.  My
theory is maybe it's picking up a wrong include file somehow which
leads it astray.  If that's not it, we may need to also examine all the
ParseReadLine stuff, or add some other debug flags.

-- Ian


More information about the freebsd-stable mailing list