Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Sep 2004 10:48:50 +0100
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        antenneX <antennex@swbell.net>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Upgrading Sendmail's DB
Message-ID:  <20040925094850.GB2060@happy-idiot-talk.infracaninophile.co.uk>
In-Reply-To: <037801c4a2a8$5e20cd70$0200000a@SAGEAME>
References:  <037801c4a2a8$5e20cd70$0200000a@SAGEAME>

next in thread | previous in thread | raw e-mail | index | archive | help

--jq0ap7NbKX2Kqbes
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Sep 24, 2004 at 09:35:48PM -0500, antenneX wrote:
> Running FBSD-4.10p2/Sendmail-8.12.11
>=20
> I want to upgrade the Sendmail's Berkley DB to 4.2x, but since Sendmail
> is part of my base OS, what is best way to recompile Sendmail with the
> new DB?
>=20
> BTW, I use sources if not evident.
>=20
> Do I need to recompile the whole OS which includes Sendmail or is there
> an easier way to just update the Sendmail?
>=20
> The Sendmail site is not very clear on this. It does say if the new DB
> 4.2x is installed and the new libraries  are there, it will find it and
> use it instead of the old DB2 & that NEWDB takes care of it if it can
> find the library named libdba.a or libdb.so.
>=20
> Advice needed and appreciated.....

There is no simple way to do this with the sendmail that is part of
the base system.  The system is set up to use the bdb-1.65 stuff which
is a standard part of the base system, and it will take hacking on the
Makefiles in /usr/src/usr.sbin/sendmail/ or /usr/src/contrib/sendmail/

There isn't a separate libdb.so.X in the base system -- all of the BDB
functions are integrated into the central libc.so.{4,5}.

If you install one of the databases/dbXX ports, you'll end up a
library called, eg:

    /usr/local/lib/libdb-4.2.so.2

which comes from the db42-4.2.52_3 package.  (The package version
number is included in the shlib name so that you can install several
different BDB versions simultaneously).=20

Similarly there's a /usr/local/include/db42 directory with all of the
headers from that package.

So to make your customised sendmail link against the latest BDB, you
need to modify the list of C-include flags by adding
-I/usr/local/include/db42 and you need to add -ldb-4.2 to the list of
libraries to link against.

Hmmm... you might find it more convenient to modify the mail/sendmail
port to support the 'WITH_DBXX' flags like the databases/ruby-bdb and
submit the diffs back to the project.

	Cheers,

	Matthew

--=20
Dr Matthew J Seaman MA, D.Phil.                       26 The Paddocks
                                                      Savill Way
PGP: http://www.infracaninophile.co.uk/pgpkey         Marlow
Tel: +44 1628 476614                                  Bucks., SL7 1TH UK

--jq0ap7NbKX2Kqbes
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (FreeBSD)

iD8DBQFBVT8CiD657aJF7eIRAg2TAJ0eN4K8I6Qjvr8j3E6NDwZ4jN6I2ACgsjL8
675XJqD+IhkzWBMoKW6cAzE=
=gk/q
-----END PGP SIGNATURE-----

--jq0ap7NbKX2Kqbes--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040925094850.GB2060>