Author: rmeggins
Update of /cvs/dirsec/ldapserver/m4
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv20058/ldapserver/m4
Modified Files:
db.m4
Log Message:
Resolves: bug 340361
Bug Description: build links wrong libdb on 64-bit systems
Reviewed by: nhosoi (Thanks!)
Fix Description: Once again, libtool attempts to be helpful but is instead harmful. If
you have both db4-devel.i386 and db4-devel.x86_64 installed, this will install
/usr/lib/libdb-4.N.la. If you use libtool to link with -ldb-4.N, and you do not specify a
search path, libtool will attempt to find this library in it's default search path,
which is something like /usr/lib/gcc/x86_64/blahblahblah/../../../lib. This will find
/usr/lib/libdb-4.N.la and will use the information in that file and link the object with
/usr/lib/libdb-4.N.so, instead of just passing -ldb-4.N through to the linker which is
what it ought to do (darn libtool). In order to make libtool do the right thing, we must
pass in -L$libdir -ldb-4.N to libtool so that it will use $libdir first in its search
path.
Platforms tested: RHEL5 x86_64, RHEL4 x86_64
Flag Day: yes - autotool file changes
Doc impact: no
Index: db.m4
===================================================================
RCS file: /cvs/dirsec/ldapserver/m4/db.m4,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- db.m4 20 Aug 2007 17:49:17 -0000 1.9
+++ db.m4 19 Oct 2007 20:05:12 -0000 1.10
@@ -30,6 +30,8 @@
if test -f "/usr/include/db.h"; then
db_incdir="/usr/include"
db_inc="-I/usr/include"
+ db_lib='-L$(libdir)'
+ db_libdir='$(libdir)'
else
AC_MSG_ERROR([db.h not found])
fi
@@ -59,6 +61,8 @@
AC_MSG_RESULT([using /usr/include/db.h])
db_incdir="/usr/include"
db_inc="-I/usr/include"
+ db_lib='-L$(libdir)'
+ db_libdir='$(libdir)'
else
AC_MSG_RESULT(no)
AC_MSG_ERROR([db not found, specify with --with-db.])
Show replies by date