summaryrefslogtreecommitdiff
path: root/mk/bdb.buildlink3.mk
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2004-03-18 09:12:08 +0000
committerjlam <jlam@pkgsrc.org>2004-03-18 09:12:08 +0000
commit7db11b582a4d621362622fad99df1da62e930ffa (patch)
tree98bc5d9451729f031998fd23ac3319a5618c75b0 /mk/bdb.buildlink3.mk
parent46cf8098c1fdcd3f6e05f41ed78671dfaa7ae192 (diff)
downloadpkgsrc-7db11b582a4d621362622fad99df1da62e930ffa.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/bdb.buildlink3.mk')
-rw-r--r--mk/bdb.buildlink3.mk42
1 files changed, 21 insertions, 21 deletions
diff --git a/mk/bdb.buildlink3.mk b/mk/bdb.buildlink3.mk
index 066cf9dd064..24d3a9a4936 100644
--- a/mk/bdb.buildlink3.mk
+++ b/mk/bdb.buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bdb.buildlink3.mk,v 1.2 2004/03/11 08:33:52 jlam Exp $
+# $NetBSD: bdb.buildlink3.mk,v 1.3 2004/03/18 09:12:13 jlam Exp $
#
# This Makefile fragment is meant to be included by packages that
# require a Berkeley DB implementation. db.buildlink3.mk will:
@@ -19,7 +19,7 @@ BDB_BUILDLINK3_MK:= ${BDB_BUILDLINK3_MK}+
.include "../../mk/bsd.prefs.mk"
-.if !empty(BDB_BUILDLINK3_MK)
+.if !empty(BDB_BUILDLINK3_MK:M+)
BDB_DEFAULT?= # empty
BDB_ACCEPTED?= ${_BDB_PKGS}
@@ -68,21 +68,21 @@ _BDB_TRANSFORM= l:db:db1
. endif
. endif
-. if !defined(_BDB)
+. if !defined(_BDB_TYPE)
#
# Prefer the default one if it's accepted,...
#
. if !empty(_BDB_DEFAULT) && \
defined(_BDB_OK.${_BDB_DEFAULT}) && \
!empty(_BDB_OK.${_BDB_DEFAULT}:M[yY][eE][sS])
-_BDB= ${_BDB_DEFAULT}
+_BDB_TYPE= ${_BDB_DEFAULT}
. endif
#
# ...otherwise, use one of the installed Berkeley DB packages,...
#
. for _bdb_ in ${_BDB_ACCEPTED}
. if !empty(_BDB_INSTALLED.${_bdb_}:M[yY][eE][sS])
-_BDB?= ${_bdb_}
+_BDB_TYPE?= ${_bdb_}
. else
_BDB_FIRSTACCEPTED?= ${_bdb_}
. endif
@@ -91,19 +91,21 @@ _BDB_FIRSTACCEPTED?= ${_bdb_}
# ...otherwise, just use the first accepted Berkeley DB package.
#
. if defined(_BDB_FIRSTACCEPTED)
-_BDB?= ${_BDB_FIRSTACCEPTED}
+_BDB_TYPE?= ${_BDB_FIRSTACCEPTED}
. endif
-_BDB?= none
-MAKEFLAGS+= _BDB=${_BDB}
+_BDB_TYPE?= none
+MAKEFLAGS+= _BDB_TYPE=${_BDB_TYPE}
. endif
-BDB_TYPE= ${_BDB}
+BDB_TYPE= ${_BDB_TYPE}
BUILD_DEFS+= BDB_TYPE
-. if ${BDB_TYPE} == "none"
+.endif # BDB_BUILDLINK3_MK
+
+.if ${BDB_TYPE} == "none"
PKG_FAIL_REASON= "No acceptable Berkeley DB implementation found."
-. else
-. if ${BDB_TYPE} == "native"
+.else
+. if ${BDB_TYPE} == "native"
IS_BUILTIN.db-native= yes
USE_BUILTIN.db-native= yes
BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Ndb-native}
@@ -111,17 +113,15 @@ BUILDLINK_PACKAGES+= db-native
BUILDLINK_INCDIRS.db-native?= ${_BDB_INCDIRS}
BUILDLINK_TRANSFORM?= ${_BDB_TRANSFORM}
BDBBASE= ${BUILDLINK_PREFIX.db-native}
-. elif ${BDB_TYPE} == "db4"
+. elif ${BDB_TYPE} == "db4"
BDBBASE= ${BUILDLINK_PREFIX.db4}
-. include "../../databases/db4/buildlink3.mk"
-. elif ${BDB_TYPE} == "db3"
+. include "../../databases/db4/buildlink3.mk"
+. elif ${BDB_TYPE} == "db3"
BDBBASE= ${BUILDLINK_PREFIX.db3}
-. include "../../databases/db3/buildlink3.mk"
-. elif ${BDB_TYPE} == "db"
+. include "../../databases/db3/buildlink3.mk"
+. elif ${BDB_TYPE} == "db"
BDBBASE= ${BUILDLINK_PREFIX.db2}
-. include "../../databases/db/buildlink3.mk"
-. endif
+. include "../../databases/db/buildlink3.mk"
. endif
+.endif
BUILD_DEFS+= BDBBASE
-
-.endif # BDB_BUILDLINK3_MK