From owner-freebsd-ports@FreeBSD.ORG Sun Sep 9 15:56:07 2007 Return-Path: Delivered-To: ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A565F16A41A for ; Sun, 9 Sep 2007 15:56:07 +0000 (UTC) (envelope-from kris@FreeBSD.org) Received: from weak.local (hub.freebsd.org [IPv6:2001:4f8:fff6::36]) by mx1.freebsd.org (Postfix) with ESMTP id ED35E13C442; Sun, 9 Sep 2007 15:56:06 +0000 (UTC) (envelope-from kris@FreeBSD.org) Message-ID: <46E41795.3060304@FreeBSD.org> Date: Sun, 09 Sep 2007 17:56:05 +0200 From: Kris Kennaway User-Agent: Thunderbird 2.0.0.6 (Macintosh/20070728) MIME-Version: 1.0 To: Luigi Rizzo References: <20070909065432.A33424@xorpc.icir.org> In-Reply-To: <20070909065432.A33424@xorpc.icir.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: ports@freebsd.org Subject: Re: any standard method to fetch a port's sources from svn (or cvs, etc) ? 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: Sun, 09 Sep 2007 15:56:07 -0000 Luigi Rizzo wrote: > as the subject says, i was wondering if there is any standard method > to fetch the sources for a port from a Subversion (or CVS or other > scm) repository. > > Right now i am doing it with the following sequence > (the use of update vs checkout is because originally i > fetched into distfiles, not ${WRKSRC}, and later copied > the source to WRKSRC) > > REMOTE_REPO= http://svn.foo.bar/svn/xyz > REPO_CMD= \ > if [ -f xyz ] ; then \ > svn update ${REMOTE_REPO} . ; else \ > svn checkout ${REMOTE_REPO} . ; fi > > do-fetch: > ${MKDIR} -p ${WRKSRC} > (cd ${WRKSRC}; ${REPO_CMD} ) > > but there might be better ways, and perhaps if this is a common > pattern it may be worth having generic support for it ? It is recommended not to do this. Some of our users are behind firewalls and cannot fetch except via HTTP and FTP. Instead, you need to create your own tarball of the sources checked out from the VCS, possibly using a "helper" makefile target that fetches from VCS and creates the tarball for republication by you on MASTER_SITE_LOCAL. Kris