From owner-freebsd-ports@FreeBSD.ORG Mon May 24 01:05:02 2004 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 95B0516A4CE for ; Mon, 24 May 2004 01:05:02 -0700 (PDT) Received: from fillmore.dyndns.org (port-212-202-49-130.reverse.qsc.de [212.202.49.130]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1941043D45 for ; Mon, 24 May 2004 01:05:02 -0700 (PDT) (envelope-from eikemeier@fillmore-labs.com) Received: from [172.16.0.2] (helo=fillmore-labs.com) by fillmore.dyndns.org with esmtp (Exim 4.34; FreeBSD) id 1BSARo-000HcY-Pm for ports@FreeBSD.org; Mon, 24 May 2004 10:04:39 +0200 Message-ID: <40B1AC91.3040105@fillmore-labs.com> Date: Mon, 24 May 2004 10:04:33 +0200 From: Oliver Eikemeier Organization: Fillmore Labs GmbH - http://www.fillmore-labs.com/ MIME-Version: 1.0 To: FreeBSD ports Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit User-Agent: KMail/1.5.9 Subject: distfiles handling patch for review / testing X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2004 08:05:02 -0000 Dear port users, I've just put my work-in-progress distfiles handling patch on http://people.freebsd.org/~eik/patches/distfiles/ This replaces do-fetch/checksum/makesum targets in bsd.port.mk with a shell script with some added functionality. In case you need to fall back to the old routines, just say make OLD_DISTFILES_HANDLING=yes ... Since distfile handling is not time crtitical I did not try to optimize the routines speed-wise. New features: - sort MASTER_SITES by table lookup (PR 63933) - refetch from all mirrors in case of failure (enable with REFETCH_ALL) - randomize MASTER_SITES by default (disable with KEEP_MASTER_SITE_ORDER) - calculate size of missing distribution files (PR 62271) - new target checkdistfiles, a brute-force distfile survery for home use (PR 64157) - support for integrating distinfo into the ports Makefile (experimental) - support for SHA1 and RMD160 (PR 56641) - support for MASTER_SITES that do not end with a slash - support for %FILE% in MASTER_SITES Known issues: The ports devel/ruby-cvs devel/ruby-tzfile don't fetch. A work around is to do sed -i '.bak' -E '/^DISTNAME=/s/\\//g' Makefile which will break `make distclean'. How to use: cd /usr/ports; fetch -o - http://people.freebsd.org/~eik/patches/distfiles/bsd.port.mk.patch | patch # MD5 (bsd.port.mk.patch) = 2b3dcb361edca0b78e278ac773949d88 cd Tools/scripts; fetch http://people.freebsd.org/~eik/patches/distfiles/distfiles.sh # MD5 (distfiles.sh) = f8f35680217e5c397cdd721bf9f76935 Feedback / patches welcome. -Oliver