Date: Thu, 26 Feb 2004 23:49:31 +0100 From: Oliver Eikemeier <eikemeier@fillmore-labs.com> To: Ion-Mihai Tetcu <itetcu@apropo.ro> Cc: Kris Kennaway <kris@obsecurity.org> Subject: Re: one or more patch files / optional patch ? Message-ID: <403E77FB.60605@fillmore-labs.com> In-Reply-To: <20040227001224.6eba2542@it.buh.cameradicommercio.ro> References: <20040226232358.71a31aa5@it.buh.cameradicommercio.ro> <20040226212536.GA7216@xor.obsecurity.org> <20040227001224.6eba2542@it.buh.cameradicommercio.ro>
next in thread | previous in thread | raw e-mail | index | archive | help
Ion-Mihai Tetcu wrote: > On Thu, 26 Feb 2004 13:25:36 -0800 > Kris Kennaway <kris@obsecurity.org> wrote: > >>On Thu, Feb 26, 2004 at 11:23:58PM +0200, Ion-Mihai Tetcu wrote: >> >>>Hi, >>> >>>The Porters Handbook says "To make fixes and upgrades easier, you >>>should avoid having more than one patch fix the same file"; I'm in >>>the reverse situation, e.g. I have to patch 4 files for adding a >>>feature to a port. It will only make sense to patch all the files or >>>none. Should the patch be split in 4 files or not ? >> >>Yes, I think this is also documented in the porter's handbook. It's a >>real pain in the ass to update patches when there's more than one >>patch per file. >> >>>I also want to use OPTIONS to allow the user to choose if he wants >>>this feature or not. How can I integrate this with patch target >>>(e.g. having the patch in files/ but only applied if WITH_ is set) ? >> >>EXTRA_PATCHES > > Thanks. > > That's what I thought, but I wasn't sure enough of my english. So I > name them extrapatch-feature_name-file_name and they are applied only if > I have them in EXTRA_PATCHES. OK, but what if there is a regular patch > that applies to one of the files also modified by one of my > extra_patches ? Since the "regular" patch is applied after the extras, > will it still work ? I could include them in my patches, but I see no > way in bsd.port.mk not to apply them. one way would be to do .if defined(WITH_A) EXTRA_PATCHES+= extrapatch-path::file::with_a .else EXTRA_PATCHES+= extrapatch-path::file::without_a .endif or whatever naming convention you prefer. Another option is to check if you could use sed to do the extra modifications. And if anything else fails: sometimes you have to patch a file twice at a last resort. Oliver
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?403E77FB.60605>