summaryrefslogtreecommitdiff
path: root/mk/krb5.buildlink3.mk
diff options
context:
space:
mode:
authorjlam <jlam>2004-03-18 09:12:08 +0000
committerjlam <jlam>2004-03-18 09:12:08 +0000
commitebf3829f4422892d1f0ea61c260c7ea75b17e446 (patch)
tree98bc5d9451729f031998fd23ac3319a5618c75b0 /mk/krb5.buildlink3.mk
parentb9177e774988930983450205b7ad45b8cd1b36d2 (diff)
downloadpkgsrc-ebf3829f4422892d1f0ea61c260c7ea75b17e446.tar.gz
Fix serious bug where BUILDLINK_PACKAGES wasn't being ordered properly
by moving the inclusion of buildlink3.mk files outside of the protected region. This bug would be seen by users that have set PREFER_PKGSRC or PREFER_NATIVE to non-default values. BUILDLINK_PACKAGES should be ordered so that for any package in the list, that package doesn't depend on any packages to the left of it in the list. This ordering property is used to check for builtin packages in the correct order. The problem was that including a buildlink3.mk file for <pkg> correctly ensured that <pkg> was removed from BUILDLINK_PACKAGES and appended to the end. However, since the inclusion of any other buildlink3.mk files within that buildlink3.mk was in a region that was protected against multiple inclusion, those dependencies weren't also moved to the end of BUILDLINK_PACKAGES.
Diffstat (limited to 'mk/krb5.buildlink3.mk')
-rw-r--r--mk/krb5.buildlink3.mk36
1 files changed, 18 insertions, 18 deletions
diff --git a/mk/krb5.buildlink3.mk b/mk/krb5.buildlink3.mk
index 993fa87ea26..4f2ed7cc0d1 100644
--- a/mk/krb5.buildlink3.mk
+++ b/mk/krb5.buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: krb5.buildlink3.mk,v 1.5 2004/02/06 18:45:03 jlam Exp $
+# $NetBSD: krb5.buildlink3.mk,v 1.6 2004/03/18 09:12:13 jlam Exp $
#
# This Makefile fragment is meant to be included by packages that
# require a Kerberos 5 implementation. krb5.buildlink3.mk will:
@@ -19,7 +19,7 @@ KRB5_BUILDLINK3_MK:= ${KRB5_BUILDLINK3_MK}+
.include "../../mk/bsd.prefs.mk"
-.if !empty(KRB5_BUILDLINK3_MK)
+.if !empty(KRB5_BUILDLINK3_MK:M+)
KRB5_DEFAULT?= # empty
KRB5_ACCEPTED?= ${_KRB5_PKGS}
@@ -47,21 +47,21 @@ MAKEFLAGS+= _KRB5_INSTALLED.${_krb5_}=${_KRB5_INSTALLED.${_krb5_}}
. endif
. endfor
-. if !defined(_KRB5)
+. if !defined(_KRB5_TYPE)
#
# Prefer the default one if it's accepted,...
#
. if !empty(_KRB5_DEFAULT) && \
defined(_KRB5_OK.${_KRB5_DEFAULT}) && \
!empty(_KRB5_OK.${_KRB5_DEFAULT}:M[yY][eE][sS])
-_KRB5= ${_KRB5_DEFAULT}
+_KRB5_TYPE= ${_KRB5_DEFAULT}
. endif
#
# ...otherwise, use one of the installed Kerberos 5 packages,...
#
. for _krb5_ in ${_KRB5_ACCEPTED}
. if !empty(_KRB5_INSTALLED.${_krb5_}:M[yY][eE][sS])
-_KRB5?= ${_krb5_}
+_KRB5_TYPE?= ${_krb5_}
. else
_KRB5_FIRSTACCEPTED?= ${_krb5_}
. endif
@@ -70,31 +70,31 @@ _KRB5_FIRSTACCEPTED?= ${_krb5_}
# ...otherwise, just use the first accepted Kerberos 5 package.
#
. if defined(_KRB5_FIRSTACCEPTED)
-_KRB5?= ${_KRB5_FIRSTACCEPTED}
+_KRB5_TYPE?= ${_KRB5_FIRSTACCEPTED}
. endif
-_KRB5?= none
-MAKEFLAGS+= _KRB5=${_KRB5}
+_KRB5_TYPE?= none
+MAKEFLAGS+= _KRB5_TYPE=${_KRB5_TYPE}
. endif
-KRB5_TYPE= ${_KRB5}
+KRB5_TYPE= ${_KRB5_TYPE}
BUILD_DEFS+= KRB5_TYPE
-. if ${KRB5_TYPE} == "none"
+.endif # KRB5_BUILDLINK3_MK
+
+.if ${KRB5_TYPE} == "none"
PKG_FAIL_REASON= "No acceptable Kerberos 5 implementation found."
-. else
+.else
#
# Packages that use Kerberos are automatically categorized as restricted
# packages.
#
CRYPTO+= uses Kerberos encryption code
-. if ${KRB5_TYPE} == "heimdal"
+. if ${KRB5_TYPE} == "heimdal"
KRB5BASE= ${BUILDLINK_PREFIX.heimdal}
-. include "../../security/heimdal/buildlink3.mk"
-. elif ${KRB5_TYPE} == "mit-krb5"
+. include "../../security/heimdal/buildlink3.mk"
+. elif ${KRB5_TYPE} == "mit-krb5"
KRB5BASE= ${BUILDLINK_PREFIX.mit-krb5}
-. include "../../security/mit-krb5/buildlink3.mk"
-. endif
+. include "../../security/mit-krb5/buildlink3.mk"
. endif
+.endif
BUILD_DEFS+= KRB5BASE
-
-.endif # KRB5_BUILDLINK3_MK