Age | Commit message (Collapse) | Author | Files | Lines |
|
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
|
|
of the order in which buildlink3.mk files are (recursively) included
by a package Makefile.
|
|
should be used, and to motivate the "use only the default version"
approach. Based on private email with jlam@, but of course errors are mine.
|
|
"db2" as the "BUILDLINK_PACKAGES" variable. Drop the use of
_BDB_PKGBASE.*. This fixes the settings for BDBBASE and BDB_LIBS if
BDB_DEFAULT is "db2".
|
|
for all Berkeley DB dependencies instead of choosing the best installed
DB package by default:
1. BDB_DEFAULT is set in /etc/mk.conf for the life of pkgsrc and
represents the package we use when either (1) a db-1.85 interface
isn't required, or (2) a db-1.85 interface *is* required, but it's
not builtin. It defaults to "db4" but can be any of db[234].
2. BDB185_DEFAULT is set in /etc/mk.conf for the life of pkgsrc and
represents the package we use when a db-1.85 interface is required.
It defaults to "db1" if it's builtin, or to ${BDB_DEFAULT}
otherwise.[**]
3. If we want db1, then we use the package named in BDB185_DEFAULT.
If we don't want db1, then we use the package named in BDB_DEFAULT.
4. If ${BDB_DEFAULT} isn't listed in BDB_ACCEPTED for a package, then
that package will be marked with PKG_FAIL_REASON as "${BDB_DEFAULT}
not a supported Berkeley DB type for ${PKGNAME}."
Using the above scheme, on NetBSD, the default of BDB_DEFAULT=db4 and
BDB185_DEFAULT=db1 will cause db1 to be used whenever we want a db-1.85
interface and db4 to be used for all other packages.
|
|
* Add a db1.builtin.mk file that detects whether DB-1.85 functionality
exists in the base system, and remove the distinction between
"native" and the other Berkeley DB packages -- we now refer to
db[1234]. This paves the way for any future databases/db1 package.
* USE_DB185 shouldn't need to be set by any packages -- its correct
value is now automatically determined by bdb.buildlink3.mk depending
on whether we explicitly request db1 or not. By default, if you
include bdb.buildlink3.mk, you want DB-1.85 functionality and
USE_DB185 defaults to "yes", but if you explicitly remove db1 from
the list of acceptable DBs, then USE_DB185 defaults to "no".
* Set BDB_LIBS to the library options needed to link against the DB
library when bdb.buildlink3.mk is included.
* We only add the DB library to the linker command automatically if
we want DB-1.85 functionality; otherwise assume that the package
configure process can figure out how to probe for the correct
headers and libraries.
Edit package Makefiles to nuke redundant settings of USE_DB185.
|
|
implementation is being used, including native. tested on NetBSD with
db1 in libc, Linux with db1 in libdb, db2, db3 and db4.
|
|
IRIX using the first BDB_ACCEPTED.
|
|
|
|
buildlink3.mk for inclusion. Remove reference to BUILDLINK_PREFIX.db2
which doesn't exist (fixed by using the table).
|
|
"^\#define.*HASHVERSION.*2$" is found.
|
|
|
|
|
|
"yes" and packages that can't use the DB-1.85 API should set it to "no".
This makes the native DB the preferred DB if it exists.
|
|
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.
|
|
a pasto that caused using the native bdb to also depend on db4.
|
|
use by pkgsrc. It will automatically depend on either db, db3, or db4
if the native one isn't sufficient. The two variables that control its
behaviour are:
BDB_DEFAULT is a user-settable variable whose value is the default
Berkeley DB implementation to use.
BDB_ACCEPTED is a package-settable list of Berkeley DB implementations
that may be used by the package.
E.g., if you always want to use DB4 as the Berkeley DB for all of the
packages, then you can just set:
BDB_DEFAULT= db4
in your /etc/mk.conf.
Packages that currently include db*/buildlink3.mk should be made to
include bdb.buildlink3.mk instead.
|