From owner-freebsd-hackers@FreeBSD.ORG Fri Sep 3 06:49:03 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BBDDC16A4CE; Fri, 3 Sep 2004 06:49:03 +0000 (GMT) Received: from tigra.ip.net.ua (tigra.ip.net.ua [82.193.96.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id AC13F43D1F; Fri, 3 Sep 2004 06:49:02 +0000 (GMT) (envelope-from ru@ip.net.ua) Received: from heffalump.ip.net.ua (heffalump.ip.net.ua [82.193.96.213]) by tigra.ip.net.ua (8.12.11/8.12.11) with ESMTP id i836mt6Y081880 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 3 Sep 2004 09:48:55 +0300 (EEST) (envelope-from ru@ip.net.ua) Received: (from ru@localhost) by heffalump.ip.net.ua (8.13.1/8.13.1) id i836mtho004748; Fri, 3 Sep 2004 09:48:55 +0300 (EEST) (envelope-from ru) Date: Fri, 3 Sep 2004 09:48:55 +0300 From: Ruslan Ermilov To: ctodd@chrismiller.com Message-ID: <20040903064854.GE32264@ip.net.ua> References: <200409021538.26944.jhb@FreeBSD.org> <200409021619.18602.jhb@FreeBSD.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="3XA6nns4nE4KvaS/" Content-Disposition: inline In-Reply-To: <200409021619.18602.jhb@FreeBSD.org> User-Agent: Mutt/1.5.6i X-Virus-Scanned: by amavisd-new cc: freebsd-hackers@freebsd.org Subject: Re: How to customize a release? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Sep 2004 06:49:04 -0000 --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/ so that it can be booted from the : loader via ``boot ''. > > > 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/--