distfiles handling patch for review / testing
Oliver Eikemeier
eikemeier at fillmore-labs.com
Mon May 24 01:05:02 PDT 2004
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
More information about the freebsd-ports
mailing list