Subject: Re: read only /usr/src & build.sh
To: None <netbsd-help@NetBSD.org>
From: Jukka Salmi <j+nbsd@2007.salmi.ch>
List: netbsd-help
Date: 11/11/2007 12:04:12
Aleksey Cheusov --> netbsd-help (2007-11-11 12:14:07 +0200):
> Ok. I don't know what I did, but now
> ./build.sh -O /srv/obj -u tools
> works fine.
>
> But now I have
> 0 src>./build.sh -O /srv/obj -T /srv/obj/tools kernel=GENERIC
> ===> build.sh command: ./build.sh -O /srv/obj -T /srv/obj/tools kernel=GENERIC
> ===> build.sh started: Sun Nov 11 12:09:43 EET 2007
> ===> NetBSD version: 4.0_RC4
> ===> MACHINE: i386
> ===> MACHINE_ARCH: i386
> ===> Build platform: NetBSD 4.0_RC3 i386
> ===> HOST_SH: /bin/sh
> ===> TOOLDIR path: /srv/obj/tools
> ===> DESTDIR path: /srv/obj/destdir
> ===> RELEASEDIR path: /srv/obj/release
> ===> makewrapper: /srv/obj/tools/bin/nbmake-i386
> ===> Updated /srv/obj/tools/bin/nbmake-i386
> ===> Building kernel without building new tools
> ===> Building kernel: GENERIC
> ===> Build directory: /srv/src/sys/arch/i386/compile/GENERIC
> mkdir: /srv/src/sys/arch/i386/compile/GENERIC: Read-only file system
>
> ERROR: Cannot mkdir: /srv/src/sys/arch/i386/compile/GENERIC
> *** BUILD ABORTED ***
> 1 src>
Hmm, this also works fine here (on -current, with a basically empty
/etc/mk.conf):
$ mount | grep /usr/src
/a/src/nbsd/c on /usr/src type null (read-only, nosuid, nodev, local)
$ cd /usr/src
$ ./build.sh -O ~/temp2/obj -T ~/temp2/obj/tools tools
[...]
$ ./build.sh -O ~/temp2/obj -T ~/temp2/obj/tools kernel=GENERIC
===> build.sh command: ./build.sh -O /home/jukka/temp2/obj -T /home/jukka/temp2/obj/tools kernel=GENERIC
===> build.sh started: Sun Nov 11 11:48:33 CET 2007
===> NetBSD version: 4.99.35
===> MACHINE: i386
===> MACHINE_ARCH: i386
===> Build platform: NetBSD 4.99.34 i386
===> HOST_SH: /bin/sh
===> TOOLDIR path: /home/jukka/temp2/obj/tools
===> DESTDIR path: /home/jukka/temp2/obj/destdir.i386
===> RELEASEDIR path: /home/jukka/temp2/obj/releasedir
===> makewrapper: /home/jukka/temp2/obj/tools/bin/nbmake-i386
===> Updated /home/jukka/temp2/obj/tools/bin/nbmake-i386
===> Building kernel without building new tools
# objdir /home/jukka/temp2/obj/sys/arch/i386/compile
===> Building kernel: GENERIC
===> Build directory: /home/jukka/temp2/obj/sys/arch/i386/compile/GENERIC
rm -f a.out [Ee]rrs mklog core *.core .gdbinit
Build directory is /home/jukka/temp2/obj/sys/arch/i386/compile/GENERIC
Don't forget to run "make depend"
[...]
> P.S.
> I whould prefer to use MAKEOBJDIR=/srv/obj in mk.conf
> instead of ./build.sh -O but this doesn't work :-( Is this bug-o-feature?
See the description of .OBJDIR in the make(1) manpage.
Cheers, Jukka
--
bashian roulette:
$ ((RANDOM%6)) || rm -rf ~