summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2001-12-02 21:29:20 +0000
committerwiz <wiz@pkgsrc.org>2001-12-02 21:29:20 +0000
commit1a9a466f05678b5f420b8f16c03b0957882c9536 (patch)
treef7ce0ddbe46080299cbfd902be941d9728c1e4d5 /mk
parent02a3c0b4175ce1cd6d9bc45b4d40707e86f247b4 (diff)
downloadpkgsrc-1a9a466f05678b5f420b8f16c03b0957882c9536.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.
Diffstat (limited to 'mk')
-rw-r--r--mk/bsd.pkg.mk90
1 files changed, 45 insertions, 45 deletions
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)