Date: Fri, 29 Sep 2006 21:21:56 +0200 From: Uwe Doering <gemini@geminix.org> To: Ruslan Ermilov <ru@FreeBSD.org> Cc: Christer Solskogen <solskogen@carebears.mine.nu>, stable@FreeBSD.org Subject: Re: buildworld fails after patch (FreeBSD-SA-06:23.openssl) Message-ID: <451D7254.50807@geminix.org> In-Reply-To: <20060929185615.GA38232@rambler-co.ru> References: <3466.62.97.242.158.1159516687.squirrel@carebears.mine.nu> <451D3E74.6030805@geminix.org> <20060929181806.GF37741@rambler-co.ru> <451D6735.70401@geminix.org> <20060929185615.GA38232@rambler-co.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
Ruslan Ermilov wrote:
> On Fri, Sep 29, 2006 at 08:34:29PM +0200, Uwe Doering wrote:
>> Ruslan Ermilov wrote:
>>> On Fri, Sep 29, 2006 at 05:40:36PM +0200, Uwe Doering wrote:
>>> [...]
>>>> The same happened on my workstation, which runs 4.11. The cause of this
>>>> problem is that the openssl sources under '/usr/src' apparently use some
>>>> include files installed under '/usr/include/openssl' instead of those in
>>>> the '/usr/src' tree.
>>>>
>>>> The fix for me was to copy the '*.h' files that changed into
>>>> '/usr/include/openssl' by hand. Afterwards things worked as expected.
>>>> This is of course just a workaround. The proper fix would be to modify
>>>> the respective makefiles to add all the directories where there are
>>>> header files to the list of include directories given to 'cc' with '-I'
>>>> options. This apparently hasn't been done so far. At least not
>>>> completely.
>>>>
>>> No. The correct way is to either do a full build (aka buildworld),
>>> or a partial build by first installing headers, and then doing the
>>> library build.
>> ??????
>>
>> Did you notice the subject of this thread? The problem occured while
>> running 'buildworld'.
>>
> It doesn't matter. What you suggest is not the correct way.
> Perhaps the buildworld is broken, but that's a separate issue.
>
>> My understanding so far is that the files under
>> '/usr/include' don't get touched until I run 'installworld'. So the
>> 'buildworld' universe has to be self-contained. That's what I was
>> trying to point out.
>>
> Yes, they are not touched. During buildworld, a special version
> of the compiler is built that looks headers up in the temporary
> location, normally /usr/obj/usr/src/tmp/usr/include. Then all
> (new) headers are installed there, then new libraries are built,
> then all the rest. If buildworld touched /usr/include, you
> could easily end up with a partially upgraded system, e.g. if
> build failed in the middle. If it still fails for you (the
> buildworld), please collect and put the full combiled stdout +
> stderr output from running "make buildworld" available somewhere
> for download and analysis. Colin said he did build all worlds,
> on all patched branches.
Unfortunately I can no longer reproduce the error because I fixed the
problem by hand, as pointed out above. Sorry.
> OK, you had 4.11 and what were you trying to build? RELENG_4?
> So I can try to reproduce the problem here.
Yes, I use RELENG_4. Thanks for your help.
Regards,
Uwe
--
Uwe Doering | EscapeBox - Managed On-Demand UNIX Servers
gemini@geminix.org | http://www.escapebox.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?451D7254.50807>
