summaryrefslogtreecommitdiff
path: root/mk/buildlink3
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2006-07-10 17:06:26 +0000
committerjlam <jlam@pkgsrc.org>2006-07-10 17:06:26 +0000
commitd25e37d084d3acb5c8661d71637e6a933430c660 (patch)
tree60aa875a22a22b5fe43ab3e7a94641b63656733b /mk/buildlink3
parent7490797f992f41d739adbb03882ed82033cce2ae (diff)
downloadpkgsrc-d25e37d084d3acb5c8661d71637e6a933430c660.tar.gz
Always add dependencies for packages pulled in indirectly buildlink3 that
are build dependencies. This should fix PR pkg/33940. Thanks to Joerg for the debugging hint.
Diffstat (limited to 'mk/buildlink3')
-rw-r--r--mk/buildlink3/bsd.buildlink3.mk35
1 files changed, 13 insertions, 22 deletions
diff --git a/mk/buildlink3/bsd.buildlink3.mk b/mk/buildlink3/bsd.buildlink3.mk
index 8e5417d1651..cb3ebcac634 100644
--- a/mk/buildlink3/bsd.buildlink3.mk
+++ b/mk/buildlink3/bsd.buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.buildlink3.mk,v 1.182 2006/07/08 23:11:17 jlam Exp $
+# $NetBSD: bsd.buildlink3.mk,v 1.183 2006/07/10 17:06:26 jlam Exp $
#
# Copyright (c) 2004 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -132,35 +132,26 @@ _BLNK_PACKAGES+= ${_pkg_}
. endif
.endfor
-# _BLNK_RECURSIVE_DEPENDS lists all of the packages that this package
-# directly or indirectly depends on.
-#
-_BLNK_RECURSIVE_DEPENDS= # empty
+# By default, every package receives a full dependency.
.for _pkg_ in ${_BLNK_PACKAGES}
-USE_BUILTIN.${_pkg_}?= no
-. if empty(_BLNK_RECURSIVE_DEPENDS:M${_pkg_}) && \
- !empty(USE_BUILTIN.${_pkg_}:M[nN][oO])
-_BLNK_RECURSIVE_DEPENDS+= ${_pkg_}
-. endif
+BUILDLINK_DEPMETHOD.${_pkg_}?= full
.endfor
-# _BLNK_DEPENDS contains all of the elements of BUILDLINK_DEPENDS that
-# shouldn't be skipped and that name packages for which we aren't using
-# the built-in software and hence need to add a dependency.
+# _BLNK_DEPENDS contains all of the elements of _BLNK_PACKAGES for which
+# we must add a dependency. We add a dependency if we aren't using the
+# built-in version of the package, and the package was either explictly
+# requested as a dependency (BUILDLINK_DEPENDS) or is a build dependency
+# somewhere in the chain.
#
_BLNK_DEPENDS= # empty
-.for _pkg_ in ${BUILDLINK_DEPENDS}
+.for _pkg_ in ${_BLNK_PACKAGES}
USE_BUILTIN.${_pkg_}?= no
. if empty(_BLNK_DEPENDS:M${_pkg_}) && !defined(IGNORE_PKG.${_pkg_}) && \
- !empty(_BLNK_PACKAGES:M${_pkg_}) && \
- !empty(USE_BUILTIN.${_pkg_}:M[nN][oO])
+ !empty(USE_BUILTIN.${_pkg_}:M[nN][oO]) && \
+ (!empty(BUILDLINK_DEPENDS:M${_pkg_}) || \
+ !empty(BUILDLINK_DEPMETHOD.${_pkg_}:Mbuild))
_BLNK_DEPENDS+= ${_pkg_}
-. endif
-.endfor
-
-# By default, every package receives a full dependency.
-.for _pkg_ in ${_BLNK_PACKAGES}
-BUILDLINK_DEPMETHOD.${_pkg_}?= full
+. endif
.endfor
# Add the proper dependency on each package pulled in by buildlink3.mk