From owner-freebsd-ports Sun Oct 29 7: 0: 6 2000 Delivered-To: freebsd-ports@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 2B8FE37B4D7 for ; Sun, 29 Oct 2000 07:00:02 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id HAA60758; Sun, 29 Oct 2000 07:00:02 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from mail.ruhr.de (www.ruhr.de [212.23.134.2]) by hub.freebsd.org (Postfix) with SMTP id 7A60237B479 for ; Sun, 29 Oct 2000 06:51:40 -0800 (PST) Received: (qmail 11656 invoked by alias); 29 Oct 2000 14:56:52 -0000 Received: (from ue@localhost) by nathan.ruhr.de (8.11.0/8.11.0) id e9TEn4b28623; Sun, 29 Oct 2000 15:49:04 +0100 (CET) (envelope-from ue) Message-Id: <200010291449.e9TEn4b28623@nathan.ruhr.de> Date: Sun, 29 Oct 2000 15:49:04 +0100 (CET) From: ue@nathan.ruhr.de Reply-To: ue@nathan.ruhr.de To: FreeBSD-gnats-submit@freebsd.org Cc: wosch@freebsd.org X-Send-Pr-Version: 3.2 Subject: ports/22396: portcheckout fails with new port layout Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 22396 >Category: ports >Synopsis: portcheckout fails with new port layout >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Oct 29 07:00:01 PST 2000 >Closed-Date: >Last-Modified: >Originator: Udo Erdelhoff >Release: FreeBSD 5.0-CURRENT i386 >Organization: >Environment: Portcheckout Version 2.0 ports tree as of right now (29-OCT-2000, 12:52 CET) >Description: portcheckout uses cvs checkout to extract the port directories. The last change of the port layout removed the pkg directory. cvs checkout creates an empty pkg directory. The result: bash# portcheckout portcheckout | sh [...] Error: your port uses an old layout. Please update it to match this bsd.port.mk. >How-To-Repeat: Use portcheckout to check out a port with the new structure and run make. >Fix: portcheckout should use "cvs checkout -P" to force cvs to prune the empty directory. I've included a patch for portcheckout below. The patch adds -P to all invocations of cvs checkout (including those in the manual page). It can be used as a patch for portcheckout (the author has been CCed) or as FreeBSD-specific patch. --- portcheckout.orig Sun Oct 29 12:29:55 2000 +++ portcheckout.pl Sun Oct 29 12:31:40 2000 @@ -94,14 +94,14 @@ PORTSDIR="/tmp/ports"; export PORTSDIR # checkout FreeBSD ports system Makefiles - cvs checkout ports/Mk + cvs checkout -P ports/Mk ################################################## # checkout port: de-dict-1.1 - cvs checkout ports/german/dict + cvs checkout -P ports/german/dict # de-dict-1.1 depend on port: agrep-2.04 - cvs checkout ports/textproc/agrep + cvs checkout -P ports/textproc/agrep ################################################## # Compile and install de-dict-1.1 @@ -328,7 +328,7 @@ #print qq{DISTDIR="/usr/ports/distfiles"; export DISTDIR\n}; print "\n# checkout FreeBSD ports system Makefiles\n"; -print "cvs checkout $release ports/Mk\n\n"; +print "cvs checkout -P $release ports/Mk\n\n"; # list of dependings ports @@ -338,7 +338,7 @@ print "#" x 50, "\n"; print "# checkout port: $distributionname\n"; - print "cvs checkout $release ", $obj->{$distributionname}{portpath}, "\n\n"; + print "cvs checkout -P $release ", $obj->{$distributionname}{portpath}, "\n\n"; $ports_depends{$distributionname} = 1; foreach my $depends ( @@ -355,7 +355,7 @@ $ports_depends{$depends} = 1; print "# $distributionname depend on port: $depends\n"; - print "cvs checkout $release ", $obj->{$depends}{portpath}, "\n\n"; + print "cvs checkout -P $release ", $obj->{$depends}{portpath}, "\n\n"; } } >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message