Fix: https://marc.info/?l=openbsd-tech&m=152382801821823&w=2
On Sun, Apr 15, 2018 at 4:42 PM, IL Ka <kazakevichi...@gmail.com> wrote: > Hi, > config(8) gives following example to build kernel > > # cd /somedir > # cp /usr/src/sys/arch/somearch/conf/SOMEFILE . > # vi SOMEFILE (to make any changes) > # config -s /usr/src/sys -b . SOMEFILE > # make > > It will produce kernel named "somedir": > kern.version will have (somedir) ...:/somedir > kern.osversion will be somedir#1 > > I believe that is because of "-b ." config option. > > Default is ../compile/SOMEFILE which is ok, but can't be used > if I rebuild kernel from readonly sources (or just want to build it in my > homedir). > > The main problem is that "make install" installs relink stuff to > /usr/share/relink/kernel/SOMEFILE > while /usr/libexec/reorder_kernel reads "kern.osversion" and uses > /usr/share/relink/kernel/somedir > > You reboot, and oops: "relinking failed". > Since "reorder_kernel" does not have man page, user will have to read its > source to understand > why make failed to find "newbsd" target:) > > I suggest following fix: > -# cd /somedir > +# mkdir /somedir/SOMEFILE > +# cd /somedir/SOMEFILE > > It also may be good idea to document how config creates kernel > identification in config(8). > Documenting reorder_kernel (or relink?) is, probably also worth doing > > Ilya >