First, sorry for the bogus formatting in my previous email... 
hopefully, this one is better.

It turns out that I needed to manually delete the ".depend" file from 
a previous kernel build in my local build directory. The makefile has 
only this under the "depend" target:

    touch $@

and 'make clean' didn't delete '.depend' as I would expect it should. 
It looks like a new ".depend" file is not written out, but the old 
one was recognized and used which caused my problems.

Nice "gotcha"!  Shouldn't this be documented? Also, what happened to 
the FAQ text about non-root kernel build procedures??

On 24 Dec 2011 at 18:10, misc@openbsd.org wrote:

> Some strange things going on...
> 
> Running OpenBSD 5.0 on an x86 32 bit, upgraded smoothly from 4.9 aside
> from at upgrade from 4.9 to 5.0, the upgrade failed at first trying to
> start the network with this hostname.if file for my external facing
> interface: up dhcp -inet6
> 
> ... complaining that it is an invalid hostname file. This worked just
> fine in 4.9. After scratching my head for a long time, I changed it to
> be: up -inet6 dhcp .. and it worked... looks like /etc/netstart
> changed how it parses hostname.if files but there is no documentation
> about this.
> 
> Once I had a working system again after completing the full upgrade
> process, I primed my source directories by removing /usr/src/*,
> /usr/xenocara, and /usr/ports.
> 
> I then downloaded the 4 source tarballs from 
> http://ftp5.usa.openbsd.org/pub/OpenBSD/5.0/*.tar.gz, unpacked them
> into the proper places and ran "cvs update" on them (using the proper
> options for the -stable branch, of course, as per the FAQ). There were
> no updates patched into the trees.
> 
> The patch for the bind DoS
> (http://ftp.openbsd.org/pub/OpenBSD/patches/5.0/common/001_bind.patch)
> specifically was not in the CVS stable branch, almost a month after
> the patch came out.  I had to add it manually to the tree.
> 
> I then tried to build the kernel as a regular user following this
> text: "Variation on above process: Read-only source tree Sometimes,
> you may wish to ensure your /usr/src/sys directory remains untouched.
> This can be done by using the following process:
> 
>     $ cd /somewhere
>     $ cp /usr/src/sys/arch/i386/conf/GENERIC .
>     $ config -s /usr/src/sys -b . GENERIC
>     $ make clean && make depend && make
>        ... lots of output ..."
> ... which is missing now from the latest FAQ page 
> (http://www.openbsd.org/faq/faq5.html#BldKernel)... I had to search
> the internet to find this text again.  It still _does_say: "Note that
> you can build a kernel without root access, but you must have root to
> install the kernel." but the procedure on how to do it is gone. 
> 
> When I try to build the kernel in an empty limited user directory
> after the config command above, I get the following error: $ make
> clean && make depend && make rm -f eddep *bsd *bsd.gdb tags *.[dio]
> [a-z]*.s  [Ee]rrs linterrs assym.h make: don't know how to make
> /usr/src/sys/uvm/uvm_pglist.h. Stop in /home/xxxx/kernel-build. $
> 
> Can anybody tell me what is going on or what I'm missing or did wrong?
>  Is building a kernel from read-only sources now not supported??  I
> didn't try to build this as root yet, figuring I have some sort of
> borked system.
> 
> Any insight welcomed.  I don't follow the maling lists too regularly
> so I must have missed something.

Reply via email to