From owner-freebsd-ports@FreeBSD.ORG Tue May 17 21:28:54 2011 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D30101065674 for ; Tue, 17 May 2011 21:28:54 +0000 (UTC) (envelope-from matt@conundrum.com) Received: from coke.conundrum.com (coke.conundrum.com [216.235.9.139]) by mx1.freebsd.org (Postfix) with ESMTP id 979DF8FC1D for ; Tue, 17 May 2011 21:28:54 +0000 (UTC) Received: from bawls.conundrum.com (bawls.corp.conundrum.com [216.235.8.92] (may be forged)) by coke.conundrum.com (8.13.1/8.12.6) with ESMTP id p4HLCuOd023267 for ; Tue, 17 May 2011 17:12:56 -0400 (EDT) (envelope-from matt@conundrum.com) Received: from [216.235.10.38] ([216.235.10.38]) (authenticated bits=0) by bawls.conundrum.com (8.14.3/8.14.3) with ESMTP id p4H4WTb5047710; Tue, 17 May 2011 00:32:30 -0400 (EDT) (envelope-from matt@conundrum.com) From: Matthew Pounsett Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Date: Tue, 17 May 2011 00:32:14 -0400 To: freebsd-ports@freebsd.org Message-Id: <958AF7F7-AD80-4F01-8F1D-E9E262B953F6@conundrum.com> Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) Subject: Complicated patching X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 May 2011 21:28:54 -0000 Hi. In a (possibly foolish) attempt to add a third-party patch to an = application I use *without* abandoning the ports tree for this app, I'm = trying to make a local modification to the port to download and include = the patch in the build process. The problem I'm running into is that it = is distributed from a source distribution site that uses a downloads CGI = rather than a direct URL to distribution files, and the URI has nothing = whatsoever to do with the name of the resulting file. This, obviously, = breaks MASTER_SITES and DISTFILES because what I have to put in = DISTFILES doesn't match what would go in the distinfo file. I'm poking around at possible alternatives, but nothing really stands = out in the reading I've done. Is this sort of thing supported by the = ports system at all, or should I just abandon this completely and switch = to fully manual builds? I briefly looked at downloading the patch file, splitting it up (it = includes several patches) and including the resulting files in = files/patch-*. This would be worth the work, but I'm also toying with = eventually submitting my changes as a patch to the port with a line in = OPTIONS to include/ignore the 3rd party patches and I can't find a way = to wrap an ifdef around patch-* files in the Makefile, since they seem = to be auto-discovered and acted on. =20 If anyone has any advice on how to handle this in a way that solves both = problems, I'd appreciate it. Thanks in advance! Matt Pounsett