Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 May 2014 08:28:44 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Stefan Esser <se@freebsd.org>
Cc:        "current@freebsd.org" <current@freebsd.org>, Trond.Endrestol@fagskolen.gjovik.no
Subject:   Re: buildworld fails (missing /usr/share/mk/src.opts.mk)
Message-ID:  <A26A2F43-8D2D-4384-8AC0-349225376244@bsdimp.com>
In-Reply-To: <5368ED8C.5040402@freebsd.org>
References:  <5368B0C5.6040309@freebsd.org> <5368C675.1070700@freebsd.org> <alpine.BSF.2.00.1405061344040.27459@mail.fig.ol.no> <5368D7F1.4040009@freebsd.org> <B33911D1-AFD8-491F-A59D-33C3E9DE1696@bsdimp.com> <AADBE4D1-F3FB-4F54-B4FF-1B02D8397EF0@bsdimp.com> <5368ED8C.5040402@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_CAA55270-FF1F-4D47-A2B6-EDC02749B69A
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=windows-1252

First off, thanks for looking into this. Build issues are no fun. :(

On May 6, 2014, at 8:11 AM, Stefan Esser <se@freebsd.org> wrote:

> Am 06.05.2014 15:18, schrieb Warner Losh:
>>=20
>> On May 6, 2014, at 7:16 AM, Warner Losh <imp@bsdimp.com> wrote:
>>=20
>>>=20
>>> On May 6, 2014, at 6:39 AM, Stefan Esser <se@freebsd.org> wrote:
>>>=20
>>>> Am 06.05.2014 13:44, schrieb Trond Endrest=F8l:
>>>>> On Tue, 6 May 2014 13:24+0200, Stefan Esser wrote:
>>>>>> Am 06.05.2014 11:52, schrieb Stefan Esser:
>>>>>>> Hi Warner,
>>>>>>>=20
>>>>>>> as already reported by Jenkins, HEAD does not build.
>>>>>>>=20
>>>>>>> Seems that this is caused by src.opts.mk missing in
>>>>>>> /usr/share/mk during the cleandir phase. I guess this is
>>>>>>> kind of a bootstrap issue - the definitions are looked up
>>>>>>> in the installed base, not in the src tree - but did not
>>>>>>> verify this assumption.
>>>>>>>=20
>>>>>>> A work-around is to manually install src.opts.mk:
>>>>>>>=20
>>>>>>> # make -C /usr/src/share/mk install
>>>>>>>=20
>>>>>>> (which might deserve an UPDATING entry). Falling back on
>>>>>>> the file in the src directory might be a better solution
>>>>>>> ...
>>>>>>>=20
>>>>>>> Regards, STefan
>>>>>>=20
>>>>>> Following up to my earlier mail:
>>>>>>=20
>>>>>> The diagnosis was wrong - the main Makefiles include
>>>>>> src.opts.mk from the source directory. But two sub-ordinate
>>>>>> Makefiles missed to include the new options file
>>>>>> (sys/conf/kmod.mk and sys/modules/drm2/Makefile).
>>>>>>=20
>>>>>> I committed a fix/work-around to stop the flood of
>>>>>> tinderbox messages (r265433).
>>>>>=20
>>>>> tinderbox still complains about usr.bin/bmake/Makefile.inc.
>>>>=20
>>>> Hmmm, I managed to buildworld -HEAD after this patch, but it
>>>> is possible, that I had src.opts.mk installed in /usr/share/mk
>>>> when I started the build.
>>>>=20
>>>> (I later deleted it, to be sure that the version in the source=20
>>>> directory was found and used when building modules, which the=20
>>>> commit actually fixed.)
>>>>=20
>>>> I guess the remaining problem is caused by
>>>>=20
>>>> .include "src.opts.mk"
>>>>=20
>>>> in line 3 of src/usr.bin/bmake/Makefile.inc
>>>>=20
>>>> Changing this line to read ".include <src.opts.mk>" seems to
>>>> fix it on my system.
>>>>=20
>>>> --- usr.bin/bmake/Makefile.inc~ +++ usr.bin/bmake/Makefile.inc=20
>>>> @@ -1,6 +1,6 @@ # $FreeBSD$
>>>>=20
>>>> -.include "src.opts.mk" +.include <src.opts.mk>

This change I think actually is right. And it needs to be an =91sinclude=92=

to support the fmake upgrade path, but I need to double check that
can=92t be worked around in the environment.

>>>> .if defined(.PARSEDIR) # make sure this is available to
>>>> unit-tests/Makefile
>>>>=20
>>>> It is possible, that the build will still fail at a latter
>>>> stage, though (buildworld is still running).
>>>>=20
>>>> I committed the above patch, since it gets buildworld through
>>>> the bmake subdirectory at least (r265436). If buildworld fails
>>>> again, then I'll commit any further missing fixes in one go.
>>>> I'll know in some 20 minutes.
>>>=20
>>> What is your source system? This is absolutely the wrong change,
>>> and shouldn=92t be necessary at all. These changes survived a
>>> universe run and a few build worlds on other systems.
>=20
> I'm on a fresh -CURRENT (built the previous day) and with sources
> as of r265439.

OK. My current is a bit dated, so I=92ll spin up a new one.

> I agree, that the change to bmake/Makefile.inc was wrong - though
> it was needed to get a "make cleandir" working in that directory.

Yea, I=92m trying to get one that works all the time=85 I think I have =
it
which should silence the tinderboxes=85  In hind sight, perhaps
I should have pushed this in first thing this morning rather than
last thing last night...

>> <hit send too fast>
>>=20
>> so I=92d like to know how to recreate it, since I didn=92t see this =
in
>> any of my testing over the last two weeks...
>=20
> The tinderbox builds all fail in bmake, and while I changed
> Makefile.inc to fix just that kind of problem on my system, it
> may have worked by accident (because of a forgotten src.opts.mk
> in /usr/share/mk - it had been installed by a previous attempt
> to work around these problems).

The initial bootstrap of bmake, or the later build of bmake? I was
able to reproduce the former, but haven=92t seen the latter fail.

> To recapitulate the order of events:
>=20
> 1) make buildkernel failed due to 2 missing includes of
>   src.opts.mk. The affected files files were:
>=20
> 	sys/conf/kmod.mk
> 	sys/modules/drm2/Makefile
>=20
>   Adding an .include <src.opts.mk> seems to have fixed this
>   problem. Maybe "src.opts.mk" would have been more correct,
>   but I checked without src.opts.mk in /usr/share/mk and the
>   file was found in src/share/mk.

I=92ll look at these. I might have introduced the issues after I stopped
building the 75 kernels in make universe after I made it through once.
My bad...

> 2) tinderbox still complained about the test for MK_SHARED_TOOLCHAIN
>   in bmake/Makefile.inc (I deleted the mails and thus cannot
>   easily quote the exact error message). I tried to fix this by
>   changing the include syntax in bmake/Makefile.inc, but have
>   just reverted this change. It made buildworld complete on my
>   system, but tinderbox complains loudly.

I=92ll look at this as well...

> A work-around for the second problem is to manually install
> src.opts.mk in /usr/share/mk before attempting to build bmake.

Yea, and we don=92t really want to do that. The other workaround is
mentioned in updating=85 Setting MAKESYSPATH. I need to make
sure my testing wasn=92t contaminated with this somehow.

Warner


--Apple-Mail=_CAA55270-FF1F-4D47-A2B6-EDC02749B69A
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJTaPGcAAoJEGwc0Sh9sBEATOkP/j+b92dFAsRMFOiaah0UzxuJ
boNHenGift52ghmEdvuBKznyCE/s2ZRZzHP0Neu3zkCMW/sIj1wGD0QkyinZvPh4
PRNXprXd3fBfMRg94TMgKsYOsxUK/1v+b4wN/VJa4EuLz943k7GMA5rgWjPkkxBI
nsdL1JYVSQ0j2iuClwNBr9PhiChp60NrjCXpWqrGSx8ZWbV2GNWSLrD8UXMbXVdU
hoWwZEnAOcW1s4u5Vo1rJaO3TXi7e3sWKCwsyIGVMrbZ5fqFgo2fKNzlwey8kr1W
pC8NtxHjzgEmsGsQHVolM7Q6zlxzFbfi30Oy6LrHNU23+KqZJQxM0Dl+LlHgdCF8
o84xCSRm70ieQoB+cbHTVc128nUaoUKFXW8XBH2Edb5yW68NcUlPqoWEq0mY1Xll
HV6d2i5aCww7B1V7vrh+kO4VIXsONe9vJXGUW0Cd4++y+8mS6VOMLr/4pVPqcxDk
z2ArFY8cw8AOcQ4so8qprleILLGSYLAnMwUXr4wkfT8LtJeyjGKEROKjT51SQevg
a72ArwdM47H84xYhHmGyvOas6JsK5TpAwT4HPOMIa2V4lZDqCwsTb1EUph7eJlzp
QeBw+frrtkbf32EOhoLZ1O32gRvbZoCuTt3DUZTPmbsormkWZdGUwJQqXAoYVV/d
7msfek/QNQ9cIXmV8IDA
=ERjC
-----END PGP SIGNATURE-----

--Apple-Mail=_CAA55270-FF1F-4D47-A2B6-EDC02749B69A--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?A26A2F43-8D2D-4384-8AC0-349225376244>