From owner-freebsd-ports@FreeBSD.ORG Sat Jun 16 10:23:15 2007 Return-Path: X-Original-To: ports@FreeBSD.org Delivered-To: freebsd-ports@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D94F516A469 for ; Sat, 16 Jun 2007 10:23:15 +0000 (UTC) (envelope-from boris@brooknet.com.au) Received: from pecan.exetel.com.au (pecan.exetel.com.au [220.233.0.17]) by mx1.freebsd.org (Postfix) with ESMTP id 7B74913C448 for ; Sat, 16 Jun 2007 10:23:15 +0000 (UTC) (envelope-from boris@brooknet.com.au) Received: from 28.201.233.220.exetel.com.au ([220.233.201.28] helo=[192.168.100.148]) by pecan.exetel.com.au with esmtp (Exim 4.63) (envelope-from ) id 1HzVR3-0007CP-5Y; Sat, 16 Jun 2007 20:23:13 +1000 In-Reply-To: <4673B0DB.3040100@sasktel.net> References: <4673B0DB.3040100@sasktel.net> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: Content-Transfer-Encoding: 7bit From: Sam Lawrance Date: Sat, 16 Jun 2007 20:22:56 +1000 To: Stephen Hurd X-Mailer: Apple Mail (2.752.3) Cc: ports@FreeBSD.org Subject: Re: Clarification on fetch/extract targets 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: Sat, 16 Jun 2007 10:23:15 -0000 On 16/06/2007, at 7:43 PM, Stephen Hurd wrote: > So, I created a new port (ports/113608) for Code::Blocks which has > not had a source code release for almost two years despite constant > development. However, the currently correct way to get the source > is via subversion. The port currently does this, but I'm unsure of > exactly what is required by the fetch and extract targets, so I'm > not sure what the "right" thing to do here is. I can think of a > few possibilities: > > 1) The fetch target is intended to do all the steps which require a > network connection and extract is intended to places the files into > WRKSRC > - In this case, the fetch target would use svn co to WRKSRC and the > extract target would do nothing. This is what the port currently > does. > > 2) The fetch target is intended to place source archives into > DISTDIR and extract is intended to place them into WRKSRC > - In this case, the extract target would use svn co to WRKSRC and > the fetch target would do nothing. > > 3) The fetch target is intended to place a source archive in > DISTDIR and the extract target is intended to extract that archive > into WRKSRC > - Here I would need to do the svn checkout in the fetch target, > archive it, then delete it. > > 4) The fetch target retrieves sources in the distribution format > and extract places them into WRKSRC > - In this case, you would svn co to a DIST_SUBDIR in fetch, then > extract would copy that to WRKSRC > > 5) fetch *MUST* fetch a source archive into DISTDIR. None of this > svn/CVS checkout stuff in the ports tree. > - Hrmph. So rather than bumping PORTREVISION to the desired > subversion revision and having it Just Work, one needs to make a > source archive and host it somewhere himself and be responsible for > updating it himself too. In the past, it has been easiest if the maintainer (you) creates an archive of the source and either puts it up for download, or asks for it to be mirrored as a local distfile (the committer who deals with the PR will do this for you). To make it easier for yourself, you might create a "roll-tarball" target in the port, which you (or future maintainers) can use to automatically fetch the source from subversion and create a new source archive.