[squid-dev] [PATCH] configure.ac cleanup of BerkleyDB related checks

Eliezer Croitoru eliezer at ngtech.co.il
Fri Mar 31 01:56:26 UTC 2017


Eliezer Croitoru
Linux System Administrator
Mobile: +972-5-28704261
Email: eliezer at ngtech.co.il

-----Original Message-----
From: squid-dev [mailto:squid-dev-bounces at lists.squid-cache.org] On Behalf Of Amos Jeffries
Sent: Monday, March 27, 2017 4:58 PM
To: Squid Developers <squid-dev at lists.squid-cache.org>
Subject: [squid-dev] [PATCH] configure.ac cleanup of BerkleyDB related checks

While looking into the last remaining bits of bug 4610 I have found that most of what we were doing for libdb / -ldb is not necessary any longer.

Most of the logic seems to be hangovers from when session helper was using the BerkleyDB v1.85 compatibility interface. Some of it is possibly still necessary for the time_quota helper, but that helper has not been using it so far and needs an upgrade to match what happened to session helper.


* The helpers needing -ldb will not be built unless the library and headers are available. So we can drop the Makefile LIB_DB substitutions and always just link -ldb explicitly to these helpers.

NP: Anyone who needs small minimal binaries, can build with the --as-needed linker flag, or without these helpers. This change has no effect on other helpers or the main squid binary.

* Since we no longer need to check if -ldb is necessary, we can drop the configure.ac and acinclude logic detecting that.

* Remove unused AC_CHECK_DECL(dbopen, ...)
 - resolves one "FIXME"

* Fix the time_quota helper check to only scan db.h header file contents if that file is existing, and if the db_185.h file is not being used instead.

* Fix the session helper check to only try compiling with the db.h header if that header actually exists.

* De-duplicate the library header file detection shared by configure.ac and the helpers required.m4 files (after the above two changes).

* Remove unused DBLIB variable from configure.ac.


More information about the squid-dev mailing list