This is a discussion on Re: [courier-users] Patch to configure Berkeley DB4 in authlib within the Courier-Imap forums, part of the Mail Servers and Related category; Sam Varshavchik writes: > Alessandro Vesely writes: > >> Sam, >> AC_CHECK_FUNC looks for functions and explicitly avoids ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Sam Varshavchik writes:
> Alessandro Vesely writes: > >> Sam, >> AC_CHECK_FUNC looks for functions and explicitly avoids macros, >> which fails with BDB 4.xx versions that decorate function names and >> #define db_env_create db_env_create_40xx. >> >> The patch attached apparently works fine, after installing both >> http://ac-archive.sourceforge.net/In..._path_bdb.html >> http://ac-archive.sourceforge.net/Mi...e_version.html > > Well, I'm not going to install this stuff. That's just adding more > stuff that can break. And, I'm sure this will break configure for BDB < 4. Please think twice. Detecting BDB is often a nuisance when building various packages. Besides Courier, Apache, Xemacs, and OpenLDAP have their own more or less complicated m4 macros. Spreading those resources does not improve the overall quality of Autoconf generated scripts. > This is what happens when BDB changes APIs several times a year. Yes, the cat never sleeps... I complained about that to their feedback mailbox (and still CC to them) and got a reply from former CEO Mike Olson. He agrees that they should produce an m4 macro to support Autoconf. IMHO, the macros above are a good start and I sent those pointers also to him. (There is a different approach: enumerating each known version. It won't work with _future_ versions, but that's what do Apache and the reusable http://autoconf-archive.cryp.to/berkeley_db.html ) > Configure works for me for bdb 4.3. If it breaks when I upgrade to a > newer BDB, I'll fix it then. It doesn't work with 4.1 and 4.2: I get the following... $ strings /usr/lib/libdb3.so.3.0.2 | grep db_env_create __db_env_create_1 db_env_create $ strings /usr/lib/libdb-4.1.so | grep db_env_create __db_env_create_4001 $ strings /usr/lib/libdb-4.2.so | grep db_env_create __db_env_create_4002 $ strings /usr/lib/libdb-4.3.so | grep db_env_create __db_env_create_4003 db_env_create ....and cannot guess the trend. In case Courier-authlib is updated less often than BDB, as it should, its configure script must be able to handle new BDB versions. Those were future at script generation time. An "official" m4 macro should not break when a new version is compatible with the old client source. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?p...rge&CID=DEVDEV _______________________________________________ courier-users mailing list courier-users@lists.sourceforge.net Unsubscribe: https://lists.sourceforge.net/lists/.../courier-users |