summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwiz <wiz>2001-12-02 21:29:20 +0000
committerwiz <wiz>2001-12-02 21:29:20 +0000
commit38046aaeed6ae0a39f644b370c8a038652617c85 (patch)
treef7ce0ddbe46080299cbfd902be941d9728c1e4d5
parent2da56316c18e63413a48defc07512b65830717b2 (diff)
downloadpkgsrc-38046aaeed6ae0a39f644b370c8a038652617c85.tar.gz
Add support for distfile-specific master sites, as requested in pkg/7471.
Syntax: MASTER_SITES_completefilename= http://specific.master/site and similarly for PATCH_SITES. Convert print/ghostscript-nox11 and x11/kterm to take advantage of this.
-rw-r--r--Packages.txt6
-rw-r--r--mk/bsd.pkg.mk90
-rw-r--r--print/ghostscript-nox11/Makefile.common18
-rw-r--r--x11/kterm/Makefile8
4 files changed, 63 insertions, 59 deletions
diff --git a/Packages.txt b/Packages.txt
index 141896e4cc4..f06d3117a32 100644
--- a/Packages.txt
+++ b/Packages.txt
@@ -1,4 +1,4 @@
-# $NetBSD: Packages.txt,v 1.217 2001/11/30 01:26:32 wiz Exp $
+# $NetBSD: Packages.txt,v 1.218 2001/12/02 21:29:20 wiz Exp $
###########################################################################
==========================
@@ -595,6 +595,10 @@ a subdirectory:
(Note the trailing slash after the subdirectory name.) Use of the deprecated
MASTER_SITE_SUBDIR will not work.
+If the package has multiple DISTFILES from different MASTER_SITES, set
+ MASTER_SITE_name_of_file-0.1.2.tar.gz= ftp://some.url/path/
+for all except the first distribution file, to speed up fetching the files.
+
Currently the following values are available for CATEGORIES. If more than
one is used, they need to be separated by spaces:
diff --git a/mk/bsd.pkg.mk b/mk/bsd.pkg.mk
index 1467701216b..cec99823907 100644
--- a/mk/bsd.pkg.mk
+++ b/mk/bsd.pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.pkg.mk,v 1.872 2001/12/02 03:11:35 jlam Exp $
+# $NetBSD: bsd.pkg.mk,v 1.873 2001/12/02 21:29:21 wiz Exp $
#
# This file is in the public domain.
#
@@ -857,7 +857,7 @@ PATCH_SITES+= ${_MASTER_SITE_BACKUP}
MASTER_SITES:= ${_MASTER_SITE_OVERRIDE} ${MASTER_SITES}
PATCH_SITES:= ${_MASTER_SITE_OVERRIDE} ${PATCH_SITES}
.endif
-
+
# Derived names so that they're easily overridable.
DISTFILES?= ${DISTNAME}${EXTRACT_SUFX}
.if defined(PKGREVISION) && ${PKGREVISION} != ""
@@ -1229,20 +1229,22 @@ _FETCH_FILE= \
CKSUM=`${DIGEST} $$alg < ${_DISTDIR}/$$bfile`; \
CKSUM2=`${AWK} '$$1 == "'$$alg'" && $$2 == "('$$file')" {print $$4;}' <${DISTINFO_FILE}`; \
if [ "$$CKSUM" = "$$CKSUM2" -o "$$CKSUM2" = "IGNORE" ]; then \
- continue 2; \
+ break; \
else \
${ECHO_MSG} "=> Checksum failure - trying next site."; \
fi; \
elif [ ! -f ${_DISTDIR}/$$bfile ]; then \
${ECHO_MSG} "=> FTP didn't fetch expected file, trying next site." ; \
else \
- continue 2; \
+ break; \
fi; \
fi \
done; \
- ${ECHO_MSG} "=> Couldn't fetch $$bfile - please try to retrieve this";\
- ${ECHO_MSG} "=> file manually into ${_DISTDIR} and try again."; \
- exit 1; \
+ if [ ! -f ${_DISTDIR}/$$bfile ]; then \
+ ${ECHO_MSG} "=> Couldn't fetch $$bfile - please try to retrieve this";\
+ ${ECHO_MSG} "=> file manually into ${_DISTDIR} and try again."; \
+ exit 1; \
+ fi; \
fi
_CHECK_DIST_PATH= \
@@ -1277,23 +1279,25 @@ SORTED_PATCH_SITES_CMD= ${ECHO} '${PATCH_SITES}' | ${AWK} '${MASTER_SORT_AWK}'
.if !target(do-fetch)
do-fetch:
${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${_DISTDIR}
+.for fetchfile in ${_DISTFILES}
${_PKG_SILENT}${_PKG_DEBUG}cd ${_DISTDIR}; \
- sites=`${SORTED_MASTER_SITES_CMD}`; \
- for file in "" ${_DISTFILES}; do \
- if [ "X$$file" = X"" ]; then continue; fi; \
- bfile=`${BASENAME} $$file`; \
- ${_CHECK_DIST_PATH}; \
- ${_FETCH_FILE} \
- done
+ sortedsites=`${SORTED_MASTER_SITES_CMD}`; \
+ sites="${MASTER_SITES_${fetchfile:T}} $$sortedsites"; \
+ file="${fetchfile}"; \
+ bfile="${fetchfile:T}"; \
+ ${_CHECK_DIST_PATH}; \
+ ${_FETCH_FILE}
+.endfor
. if defined(_PATCHFILES)
+.for fetchfile in ${_PATCHFILES}
${_PKG_SILENT}${_PKG_DEBUG}cd ${_DISTDIR}; \
- sites=`${SORTED_PATCH_SITES_CMD}`; \
- for file in "" ${_PATCHFILES}; do \
- if [ "X$$file" = X"" ]; then continue; fi; \
- bfile=`${BASENAME} $$file`; \
- ${_CHECK_DIST_PATH}; \
- ${_FETCH_FILE} \
- done
+ sortedsites=`${SORTED_PATCH_SITES_CMD}`; \
+ sites="${PATCH_SITES_${fetchfile:T}} $$sortedsites"; \
+ file="${fetchfile}"; \
+ bfile="${fetchfile:T}"; \
+ ${_CHECK_DIST_PATH}; \
+ ${_FETCH_FILE}
+.endfor
. endif
.endif
@@ -1989,7 +1993,7 @@ show-shlib-type:
${ECHO} "$$sotype"; \
${RM} -f a.$$$$.c a.$$$$.out
.endif
-
+
################################################################
# Skeleton targets start here
@@ -2482,33 +2486,29 @@ fetch-list-one-pkg:
@${MKDIR} ${_DISTDIR}
@[ -z "${_DISTDIR}" ] || ${ECHO} "${MKDIR} ${_DISTDIR}"
. if defined(DISTFILES)
+.for fetchfile in ${DISTFILES}
@(cd ${_DISTDIR}; \
- for file in "" ${DISTFILES}; do \
- if [ "X$$file" = X"" ]; then continue; fi; \
- bfile=`${BASENAME} $$file`; \
- if [ ! -f $$file -a ! -f $$bfile ]; then \
- ${ECHO} -n "cd ${_DISTDIR} && [ -f $$file -o -f $$bfile ] || "; \
- for site in "" `${SORTED_MASTER_SITES_CMD}`; do \
- if [ "X$$site" = X"" ]; then continue; fi; \
- ${ECHO} -n ${FETCH_CMD} ${FETCH_BEFORE_ARGS} "'"$${site}$${file}"'" "${FETCH_AFTER_ARGS}" '|| '; \
- done; \
- ${ECHO} "${ECHO} $${file} not fetched"; \
- fi \
- done)
+ if [ ! -f ${fetchfile} -a ! -f ${fetchfile:T} ]; then \
+ ${ECHO} -n "cd ${_DISTDIR} && [ -f ${fetchfile} -o -f ${fetchfile:T} ] || "; \
+ for site in "" ${MASTER_SITES_${fetchfile:T}} `${SORTED_MASTER_SITES_CMD}`; do \
+ if [ "X$$site" = X"" ]; then continue; fi; \
+ ${ECHO} -n ${FETCH_CMD} ${FETCH_BEFORE_ARGS} "'"$${site}${fetchfile}"'" "${FETCH_AFTER_ARGS}" '|| '; \
+ done; \
+ ${ECHO} "${ECHO} ${fetchfile} not fetched"; \
+ fi)
+.endfor
. endif # DISTFILES
. if defined(PATCHFILES)
+.for fetchfile in ${PATCHFILE}
@(cd ${_DISTDIR}; \
- for file in "" ${PATCHFILES}; do \
- if [ "X$$file" = X"" ]; then continue; fi; \
- bfile=`${BASENAME} $$file`; \
- if [ ! -f $$file -a ! -f $$bfile ]; then \
- ${ECHO} -n "cd ${_DISTDIR} && [ -f $$file -o -f $$bfile ] || "; \
- for site in `${SORTED_PATCH_SITES_CMD}`; do \
- ${ECHO} -n ${FETCH_CMD} ${FETCH_BEFORE_ARGS} $${site}$${file} "${FETCH_AFTER_ARGS}" '|| '; \
- done; \
- ${ECHO} "${ECHO} $${file} not fetched"; \
- fi \
- done)
+ if [ ! -f ${fetchfile} -a ! -f ${fetchfile:T} ]; then \
+ ${ECHO} -n "cd ${_DISTDIR} && [ -f ${fetchfile} -o -f ${fetchfile:T} ] || "; \
+ for site in ${PATCH_SITES_${fetchfile:T}} `${SORTED_PATCH_SITES_CMD}`; do \
+ ${ECHO} -n ${FETCH_CMD} ${FETCH_BEFORE_ARGS} $${site}$${fetchfile} "${FETCH_AFTER_ARGS}" '|| '; \
+ done; \
+ ${ECHO} "${ECHO} $${fetchfile} not fetched"; \
+ fi)
+.endfor
. endif # defined(PATCHFILES)
.endif # !target(fetch-list-one-pkg)
diff --git a/print/ghostscript-nox11/Makefile.common b/print/ghostscript-nox11/Makefile.common
index 0d59d4fa21b..ed173489b88 100644
--- a/print/ghostscript-nox11/Makefile.common
+++ b/print/ghostscript-nox11/Makefile.common
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.21 2001/11/01 09:41:13 jlam Exp $
+# $NetBSD: Makefile.common,v 1.22 2001/12/02 21:29:21 wiz Exp $
DISTNAME= ghostscript-${GS_VERS}
GS_VERS= 6.01
@@ -19,8 +19,8 @@ DISTFILES+= ${GS_SOURCES}
# Adobe's JPEG implementation in their PDF/PS documents is non-standard,
# so we can't use an already installed libjpeg.so.
#
-MASTER_SITES+= ftp://ftp.uu.net/graphics/jpeg/
JPEG_SOURCES= jpegsrc.v6b.tar.gz
+MASTER_SITES_${JPEG_SOURCES}= ftp://ftp.uu.net/graphics/jpeg/
DISTFILES+= ${JPEG_SOURCES}
EXTRACT_LIST+= ${JPEG_SOURCES}
@@ -30,19 +30,19 @@ PATCHFILES= gs${GS_VERS}-jpdf-exp.patch.gz
PATCH_DIST_STRIP= -p1
# PostScript source to decode encrypted PDF files
-MASTER_SITES+= http://www.ozemail.com.au/~geoffk/pdfencrypt/
PDF_SEC= pdf_sec.ps
+MASTER_SITES_${PDF_SEC}= http://www.ozemail.com.au/~geoffk/pdfencrypt/
DISTFILES+= ${PDF_SEC}
# Additional driver for several HP deskjets
-MASTER_SITES+= ftp://ftp.sbs.de/pub/graphics/ghostscript/pcl3/
HPDJ_DRV= hpdj-2.6
+MASTER_SITES_${HPDJ_DRV}.tar.gz= ftp://ftp.sbs.de/pub/graphics/ghostscript/pcl3/
DISTFILES+= ${HPDJ_DRV}.tar.gz
EXTRACT_LIST+= ${HPDJ_DRV}.tar.gz
# I don't know the primary destribution sites of these drivers....
-MASTER_SITES+= ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/
DMPRT_DRV= dmprt-2.01
+MASTER_SITES_${DMPRT_DRV}.tar.gz= ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/
DISTFILES+= ${DMPRT_DRV}.tar.gz
EXTRACT_LIST+= ${DMPRT_DRV}.tar.gz
@@ -61,26 +61,26 @@ DISTFILES+= ${MD5000_DRV}.tar.gz
EXTRACT_LIST+= ${MD5000_DRV}.tar.gz
# Alps MD-2000/2010/4000/1300/1500/5000
-MASTER_SITES+= http://plaza26.mbn.or.jp/~higamasa/gdevmd2k/
MD2000_DRV= gdevmd2k-0.2a
+MASTER_SITES_${MD2000_DRV}.tar.gz= http://plaza26.mbn.or.jp/~higamasa/gdevmd2k/
DISTFILES+= ${MD2000_DRV}.tar.gz
EXTRACT_LIST+= ${MD2000_DRV}.tar.gz
# Canon LIPS II+, III, IV; EPSON ESC/Page; NEC NPDL drivers
-MASTER_SITES+= http://www.bukka.p.chiba-u.ac.jp/~ohmori/gs/
LIPS_DRV= gdevlips-2.3.6
+MASTER_SITES_${LIPS_DRV}.tar.gz= http://www.bukka.p.chiba-u.ac.jp/~ohmori/gs/
DISTFILES+= ${LIPS_DRV}.tar.gz
EXTRACT_LIST+= ${LIPS_DRV}.tar.gz
# Ricoh RPDL
-MASTER_SITES+= http://home.jp.FreeBSD.org/~mita/LOCAL_PORTS/
RPDL_DRV= gdevrpdl
+MASTER_SITES_${RPDL_DRV}.tar.gz= http://home.jp.FreeBSD.org/~mita/LOCAL_PORTS/
DISTFILES+= ${RPDL_DRV}.tar.gz
EXTRACT_LIST+= ${RPDL_DRV}.tar.gz
# Kyocera Prescribe
-MASTER_SITES+= ${MASTER_SITE_LOCAL}
PRESCR_DRV= gdevprsc-0.3
+MASTER_SITES_${PRESCR_DRV}.tar.gz= ${MASTER_SITE_LOCAL}
DISTFILES+= ${PRESCR_DRV}.tar.gz
EXTRACT_LIST+= ${PRESCR_DRV}.tar.gz
diff --git a/x11/kterm/Makefile b/x11/kterm/Makefile
index 96d26e24c6b..c90561d3e7e 100644
--- a/x11/kterm/Makefile
+++ b/x11/kterm/Makefile
@@ -1,11 +1,11 @@
-# $NetBSD: Makefile,v 1.15 2001/08/23 04:26:55 jlam Exp $
+# $NetBSD: Makefile,v 1.16 2001/12/02 21:29:21 wiz Exp $
DISTNAME= kterm-6.2.0
CATEGORIES= x11
MASTER_SITES= ${MASTER_SITE_XCONTRIB:=applications/}
# the following patch includes NFS xauth patch, and kamo's wd0.2 patch.
-PATCH_SITES+= ftp://ftp.kame.net/pub/kame/misc/
+PATCH_SITES= ftp://ftp.kame.net/pub/kame/misc/
PATCHFILES+= kterm-620-0213-20010706.diff.gz
PATCH_DIST_STRIP= -p1
@@ -20,13 +20,13 @@ BUILD_DEFS+= KTERM_USE_WALLPAPER
.if defined(KTERM_USE_WALLPAPER)
.if ${KTERM_USE_WALLPAPER} == "imlib"
-PATCH_SITES+= http://delegate.uec.ac.jp:8081/club/mma/%7Etakkun/fun/handling/
+PATCH_SITES_KTerm-BGP-Imlib-1.0.patch.gz= http://delegate.uec.ac.jp:8081/club/mma/%7Etakkun/fun/handling/
PATCHFILES+= KTerm-BGP-Imlib-1.0.patch.gz
BUILDLINK_DEPENDS.imlib?= imlib>=1.9.4
USE_CONFIG_WRAPPER= YES
.include "../../graphics/imlib/buildlink.mk"
.elif ${KTERM_USE_WALLPAPER} == "YES"
-PATCH_SITES+= http://delegate.uec.ac.jp:8081/club/mma/%7Etakkun/fun/handling/
+PATCH_SITES_KTerm-BGP-1.0.patch.gz= http://delegate.uec.ac.jp:8081/club/mma/%7Etakkun/fun/handling/
PATCHFILES+= KTerm-BGP-1.0.patch.gz
.include "../../graphics/xpm/buildlink.mk"
.endif