summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authortv <tv@pkgsrc.org>2005-10-16 17:35:25 +0000
committertv <tv@pkgsrc.org>2005-10-16 17:35:25 +0000
commitea9310e16a8e654524108f3eb6b584f81011d596 (patch)
treea012948b97738ff1e8ae5bf8beedfb0dd4b61a04 /mk
parenteef5114c0b039826c0147cabdc9b4fab21e07f57 (diff)
downloadpkgsrc-ea9310e16a8e654524108f3eb6b584f81011d596.tar.gz
Add USE_BULK_BROKEN_CHECK variable, default 'yes'; if set to 'no', skips
the extra BROKEN/PKG_FAIL_REASON/PKG_SKIP_REASON checks when marking dependent packages as broken.
Diffstat (limited to 'mk')
-rw-r--r--mk/bulk/bsd.bulk-pkg.mk18
1 files changed, 13 insertions, 5 deletions
diff --git a/mk/bulk/bsd.bulk-pkg.mk b/mk/bulk/bsd.bulk-pkg.mk
index ca0c864e2a5..4cb48295957 100644
--- a/mk/bulk/bsd.bulk-pkg.mk
+++ b/mk/bulk/bsd.bulk-pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.bulk-pkg.mk,v 1.85 2005/08/25 22:57:29 reed Exp $
+# $NetBSD: bsd.bulk-pkg.mk,v 1.86 2005/10/16 17:35:25 tv Exp $
#
# Copyright (c) 1999, 2000 Hubert Feyrer <hubertf@NetBSD.org>
@@ -62,6 +62,12 @@ _SORT?= ${SORT}
# they're known to exist and be up to date, don't use them.
USE_BULK_CACHE?= no
+# If set to 'yes', avoids inflating the 'breaks' column of the final report
+# by not counting dependent packages that are broken all by themselves.
+# If set to 'no', may speed up building on some platforms where fork() is slow.
+# (Only takes effect if USE_BULK_CACHE=yes.)
+USE_BULK_BROKEN_CHECK?= yes
+
# This variable may be set to 'no' to avoid automatic rebuilding of dependent
# packages based solely on timestamps of the package's pkgsrc files and/or
# its dependency binary packages. This will cause rebuilding only when the
@@ -419,14 +425,16 @@ bulk-package:
pkgname=`${GREP} "^$$pkgdir " ${INDEXFILE} | ${AWK} '{print $$2}'` ;\
if [ -z "$$pkgname" ]; then pkgname=unknown ; fi ; \
${ECHO_MSG} "BULK> marking package that requires ${PKGNAME} as broken: $$pkgname ($$pkgdir)";\
- pkgerr="-1"; \
- pkgignore=`(cd ${PKGSRCDIR}/$$pkgdir && ${MAKE} show-var VARNAME=PKG_FAIL_REASON)`; \
- pkgskip=`(cd ${PKGSRCDIR}/$$pkgdir && ${MAKE} show-var VARNAME=PKG_SKIP_REASON)`; \
+ pkgerr='-1'; pkgignore=''; pkgskip=''; \
+ if [ "${USE_BULK_BROKEN_CHECK}" = 'yes' ]; then \
+ pkgignore=`(cd ${PKGSRCDIR}/$$pkgdir && ${MAKE} show-var VARNAME=PKG_FAIL_REASON)`; \
+ pkgskip=`(cd ${PKGSRCDIR}/$$pkgdir && ${MAKE} show-var VARNAME=PKG_SKIP_REASON)`; \
+ fi; \
if [ ! -z "$${pkgignore}$${pkgskip}" -a ! -f ${PKGSRCDIR}/$$pkgdir/${BROKENFILE} ]; then \
${ECHO_MSG} "BULK> $$pkgname ($$pkgdir) may not be packaged because:" >> ${PKGSRCDIR}/$$pkgdir/${BROKENFILE};\
${ECHO_MSG} "BULK> $$pkgignore" >> ${PKGSRCDIR}/$$pkgdir/${BROKENFILE};\
${ECHO_MSG} "BULK> $$pkgskip" >> ${PKGSRCDIR}/$$pkgdir/${BROKENFILE};\
- if [ -z "`(cd ${PKGSRCDIR}/$$pkgdir && ${MAKE} show-var VARNAME=BROKEN)`" ]; then \
+ if [ "${USE_BULK_BROKEN_CHECK}" != 'yes' ] || [ -z "`(cd ${PKGSRCDIR}/$$pkgdir && ${MAKE} show-var VARNAME=BROKEN)`" ]; then \
pkgerr="0"; \
else \
pkgerr="1"; \