Date: Fri, 19 Mar 2004 06:49:05 +0300 From: Igor Pokrovsky <tiamat@comset.net> To: freebsd-stable@freebsd.org Subject: Re: building CURRENT release on STABLE box Message-ID: <20040319034905.GA975@doom.homeunix.org> In-Reply-To: <20040318073330.GE72197@ip.net.ua> References: <20040318040816.GA1175@doom.homeunix.org> <6.0.1.1.1.20040318041014.03e10230@imap.sfu.ca> <20040318073330.GE72197@ip.net.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 18, 2004 at 09:33:30AM +0200, Ruslan Ermilov wrote: > On Thu, Mar 18, 2004 at 04:10:56AM +0000, Colin Percival wrote: > > At 04:08 18/03/2004, Igor Pokrovsky wrote: > > >I would like to to try building CURRENT release on STABLE (i386) box. > > >Is it technically possible? If so, are there any caveats awaiting me? > > > > Not possible. The release-building code needs to chroot into the > > -CURRENT world, and that will fail if you're not running a -CURRENT > > kernel. > > > Actually, it should be well possible. No, you don't need to chroot > into the -CURRENT world. Instead, a chroot is populated by a copy > of your running world (4.9-STABLE). > > Then snapshot building of -CURRENT looks pretty like you'd do a cross > build of the -CURRENT world (actually, it does just that as the first > step) plus a few additional steps, the most entertaining of them is > creating bootable floppies. > > I haven't checked it for a while (will do it shortly), but it was > possible last year, and src/release/scripts/doFS.sh still has support > for 4.x. Thanks all for useful hints. The way Chris suggested really works. Here is the exact steps I took to build CURRENT release on STABLE box: mkdir /usr/src4 cvs -R co -rRELENG_4 -d/usr/src4 src mkdir -p /usr/src5/release cvs -R co -d/usr/src5/release release cd /usr/src4 make buildworld cd release make -f /usr/src5/release/Makefile release \ CHROOTDIR=/home/build \ CVSROOT=/home/ncvs \ WORLD_FLAGS=-j4 \ ALLLANG=no \ MAKE_ISOS=yes \ DOCDISTFILES=/usr/ports/distfiles \ NO_PREFETCHDISTFILES=yes \ NO_PF=yes However build was interrupted two times because of minor errors, which was very easy to fix. First of all I added NO_PF=yes to skip checking of existance of proxy user (I don't need PF). The following two patches are fixing build problems. --- release/Makefile.old Wed Feb 4 01:05:55 2004 +++ release/Makefile Thu Mar 18 20:49:56 2004 @@ -1070,7 +1070,7 @@ ${RD}/floppyset/${FLOPPYBASE} ${FLPSPLITSIZE} "${FLOPPYDESC}" ( splitfile=${SPLITDIR}/`basename ${SPLITFILE}`.split ; \ lines=`cat $${splitfile} | wc -l`; \ - lines=$$((lines - 1)) ; \ + lines=$$((${lines} - 1)) ; \ for line in `jot $$lines`; do \ file=`head -n $$(($${line} + 1)) $${splitfile} | tail -1 | cut -f 1 -d ' '` ; \ sh -e ${DOFS_SH} ${RD}/floppies/${FLOPPYBASE}$${line}.flp \ --- release/scripts/split-file.sh.old Mon Jan 26 22:45:09 2004 +++ release/scripts/split-file.sh Thu Mar 18 20:48:47 2004 @@ -35,5 +35,5 @@ i=1 for file in ${files}; do echo `basename ${file}` "\"${DESCR} floppy ${i}\"" >> ${DEST}/${prefix}.split - i=$((i + 1)) + i=$((${i} + 1)) done It looks like some changes were made to sh syntax in CURRENT? -ip -- Incompetence knows no barriers of time or place.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040319034905.GA975>