From owner-freebsd-questions@FreeBSD.ORG Tue Sep 9 19:58:48 2008 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 72A371065672 for ; Tue, 9 Sep 2008 19:58:48 +0000 (UTC) (envelope-from glarkin@FreeBSD.org) Received: from mail1.sourcehosting.net (113901-app1.sourcehosting.net [72.32.213.11]) by mx1.freebsd.org (Postfix) with ESMTP id 5314D8FC15 for ; Tue, 9 Sep 2008 19:58:47 +0000 (UTC) (envelope-from glarkin@FreeBSD.org) Received: from 68-189-244-97.dhcp.oxfr.ma.charter.com ([68.189.244.97] helo=Gregory-Larkins-Computer.local) by mail1.sourcehosting.net with esmtp (Exim 4.69 (FreeBSD)) (envelope-from ) id 1Kd9ML-000EM6-7e; Tue, 09 Sep 2008 15:58:46 -0400 Received: from [127.0.0.1] (fireball.entropy.prv [192.168.1.12]) by Gregory-Larkins-Computer.local (Postfix) with ESMTP id F32C72495721; Tue, 9 Sep 2008 15:58:44 -0400 (EDT) Message-ID: <48C6D575.3080602@FreeBSD.org> Date: Tue, 09 Sep 2008 15:58:45 -0400 From: Greg Larkin Organization: The FreeBSD Project User-Agent: Thunderbird 2.0.0.16 (Windows/20080708) MIME-Version: 1.0 To: Linda Messerschmidt References: <237c27100809091212t3d840b02k4e64e8d718f7ff8d@mail.gmail.com> In-Reply-To: <237c27100809091212t3d840b02k4e64e8d718f7ff8d@mail.gmail.com> X-Enigmail-Version: 0.95.7 OpenPGP: id=1C940290 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam-Score: -1.2 (-) Cc: freebsd-questions@freebsd.org Subject: Re: Local patches to ports? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: glarkin@FreeBSD.org List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Sep 2008 19:58:48 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Linda Messerschmidt wrote: > Hello, > We use Apache 1.3 on FreeBSD and for a long time, we have maintained our own > build process separate from the ports collection because we have some local > patches. > > These are accounting patches, of interest to no one but us, so I have no > chance of getting anyone upstream to ever adopt them, but they are very > important to us. > > After our last upgrade to 7-STABLE (7.1-PRERELEASE) our local build process > started producing broken binaries but the port has patches and one of them > makes it work. So, this seems like a good time to replace our build process > with the ports collection. > > What's the best way to preserve our local patches and our custom > configuration flags, and get them to apply to each new update of the port? > > Thanks! > > -LM Hi Linda, I would recommend setting up a local Tinderbox installation: http://tinderbox.marcuscom.com/ Once you get it installed, you can configure it to call user-defined hook scripts at various points, such as after a ports tree update. When fired, your script can patch in your changes before the build starts. Before I knew about Tinderbox, I once set up a local ports tree in /usr/ports/local. In that directory, I created whatever port directory I needed, such as /usr/ports/local/www/apache13, and created a small Makefile to override some settings and then include the base port Makefile. That worked reasonably well, but I don't think I ever tested whether a local port upgraded cleanly. I'm leaning more and more toward the Tinderbox methodology, especially as I work on a process for auto-provisioning FreeBSD virtual machines. I like the fact that it builds all dependent ports and you can keep multiple build trees for different purposes. All of the packages live in a well-defined area, and portupgrade -PP should work for performing binary upgrades. Hope that helps, Greg - -- Greg Larkin http://www.FreeBSD.org/ - The Power To Serve http://www.sourcehosting.net/ - Ready. Set. Code. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFIxtV10sRouByUApARAlGrAJ9RfslTysp3XIiV/kY3mfBRcuo0SQCfWvcu +d89pMd9zWdLL0+c4kQspH0= =YxFf -----END PGP SIGNATURE-----