Date: Fri, 3 Sep 2004 09:48:55 +0300 From: Ruslan Ermilov <ru@freebsd.org> To: ctodd@chrismiller.com Cc: freebsd-hackers@freebsd.org Subject: Re: How to customize a release? Message-ID: <20040903064854.GE32264@ip.net.ua> In-Reply-To: <200409021619.18602.jhb@FreeBSD.org> References: <Pine.BSI.4.58L.0409021203480.12150@vp4.netgate.net> <200409021538.26944.jhb@FreeBSD.org> <Pine.BSI.4.58L.0409021258160.12150@vp4.netgate.net> <200409021619.18602.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--3XA6nns4nE4KvaS/ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi Chris, On Thu, Sep 02, 2004 at 04:19:18PM -0400, John Baldwin wrote: > On Thursday 02 September 2004 04:07 pm, ctodd@chrismiller.com wrote: > > John, > > Thanks for the quick reply. > > > > > There is a 'KERNELS' variable that is helpful. > > > > I see this in the Makefile, but if I were to use KERNELS=3DMYKERNEL will > > that prevent the other standard kernels from being built? > > Let me know if you believe this is unclear and should be improved (from the release(7) manpage): : release.3 Makes and installs the GENERIC kernel as well as any ^^^^^^^ ^^^^^^^^^^^^^^ : other kernels listed in KERNELS. ^^^^^^^^^^^^^ ^^^^^^^^^^ :=20 : KERNELS Specifies a list of additional kernel configura- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ : tions to compile and install into the ``base'' dis- : tribution. Each kernel is installed into : /boot/<config> so that it can be booted from the : loader via ``boot <config>''. > > > Also, look at LOCAL_PATCHES and LOCAL_SCRIPTS as far as how to patch a > > > release build. Note that you can include patches to > > > src/release/Makefile in LOCAL_PATCHES if need be. :) > > > > LOCAL_PATCHES is what I'm using now (waiting for build to finish to see > > how it worked). I was hoping for a way to populate the src tree without > > doing a full release so I could create the patches, then run make relea= se > > only once (it took 5 hours on my devel system last time). At this point > > I've already done that, but for the next time I'd like to work more > > efficiently. > > What do you mean, I don't get it? > > BTW, I see I overlooked the RELEASENOUPDATE variable in the man page, so > > that answers my question about preventing CVS updates on "make rereleas= e". > > Unfortunately make rerelease didn't rebuild anything in /R/stage (I got > > "ftp.1 is up to date"). Am I supposed to delete the stage directories to > > force a rebuild, or do I need to do a full release to incorporate any > > minor changes? >=20 > I just delete the files in ${CHROOTDIR}/usr/obj/usr/src/release to get it= to=20 > rebuild the targets I want. >=20 So do I. One more hint: suppose you want to rebuild world inside the chroot. Then you have two options with "make rerelease": one is to *not* use RELEASENOUP= DATE -- it will then use CVS to update your source tree (beware this doesn't work if you ran "make release" with EXTSRCDIR). Another is to run "make rerelea= se" with RELEASENOUPDATE and remove ${CHROOTDIR}/tmp/.world_done before doing i= t. In any case, buildworld will be rebuilt with -DNOCLEAN, which should be fas= t. To force rebuild of other stages, you need to remove particular files under ${CHROOTDIR}/usr/obj/usr/src/release/ (as has been already mentioned). Cheers, --=20 Ruslan Ermilov ru@FreeBSD.org FreeBSD committer --3XA6nns4nE4KvaS/ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (FreeBSD) iD8DBQFBOBPWqRfpzJluFF4RAlP+AJ9DDKJ/R2w53dutphNa5qsKv2hD/ACdHKfQ VetB+gqx9bsw6A0Q/QEI1Wc= =j+tU -----END PGP SIGNATURE----- --3XA6nns4nE4KvaS/--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040903064854.GE32264>