[Fedora-directory-commits] ldapserver/m4 db.m4, 1.3, 1.4 mozldap.m4, 1.5, 1.6 svrcore.m4, 1.2, 1.3

Richard Allen Megginson (rmeggins) fedora-directory-commits at redhat.com
Fri Jan 12 16:18:22 UTC 2007

Author: rmeggins

Update of /cvs/dirsec/ldapserver/m4
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv10897/ldapserver/m4

Modified Files:
	db.m4 mozldap.m4 svrcore.m4 
Log Message:
Resolves: bug 222398
Bug Description: Allow building on Fedora
Reviewed by: nhosoi (Thanks!)
Fix Description: There are a few issues with building on Fedora (5 or later):
1) Need to be able to build with db4.2, db4.3, db4.4, etc.  This version
auto-detects the db version from the db.h file it finds.  In order to use a
different db version, just use configure --with-db=path or --with-db-inc=path that points to a
different db.h
2) mozldap and svrcore are now part of Fedora, so we need to look for those
components.  Look for mozldap6 first to allow building on RHEL-4 as well.
mozldap now includes libldif, so add that to the link line.
svrcore-devel is now just svrcore - a svrcore runtime package and a
svrcore-devel build time package.
3) FHS means FHS - /etc, /var/, prefix=/usr and exec_prefix=/usr.  It doesn't
make any sense to talk about FHS under a prefix.  This means the default build
will do /opt/fedora-ds/etc, var, lib, bin, share, and so on instead of /opt/fedora-ds/usr/etc.  --with-fhs resets prefix=/usr and exec_prefix=/usr, and overrides the default settings for sysconfdir and localstatedir
So, different build types:
FHS - use configure --with-fhs - uses /etc, /var, /usr/lib, /usr/share, etc.
Nothing - configure - uses /opt/fedora-ds/etc/, var/, bin/, lib/, etc.
GNU style - configure --prefix=/usr/local - /usr/local/etc, /usr/local/bin, /usr/local/var, and so on

Developers can use configure --prefix=/home/user/fds && make && make install to install local versions
Platforms tested: FC-6
Flag Day: no
Doc impact: no

Index: db.m4
RCS file: /cvs/dirsec/ldapserver/m4/db.m4,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- db.m4	25 Oct 2006 20:36:45 -0000	1.3
+++ db.m4	12 Jan 2007 16:18:15 -0000	1.4
@@ -65,3 +65,13 @@
     AC_MSG_ERROR([db not found, specify with --with-db.])
+dnl figure out which version of db we're using from the header file
+db_ver_maj=`grep DB_VERSION_MAJOR $db_incdir/db.h | awk '{print $3}'`
+db_ver_min=`grep DB_VERSION_MINOR $db_incdir/db.h | awk '{print $3}'`
+db_ver_pat=`grep DB_VERSION_PATCH $db_incdir/db.h | awk '{print $3}'`
+dnl libname is libdb-maj.min e.g. libdb-4.2
+dnl make sure the lib is available
+AC_CHECK_LIB([db-$db_libver], [db_create], [],
+  [AC_MSG_ERROR([$db_incdir/db.h is version $db_libver but libdb-$db_libver not found])])

Index: mozldap.m4
RCS file: /cvs/dirsec/ldapserver/m4/mozldap.m4,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- mozldap.m4	22 Nov 2006 03:00:30 -0000	1.5
+++ mozldap.m4	12 Jan 2007 16:18:15 -0000	1.6
@@ -77,14 +77,17 @@
   AC_PATH_PROG(PKG_CONFIG, pkg-config)
   if test -n "$PKG_CONFIG"; then
     if $PKG_CONFIG --exists mozldap6; then
-      ldapsdk_inc=`$PKG_CONFIG --cflags-only-I mozldap6`
-      ldapsdk_lib=`$PKG_CONFIG --libs-only-L mozldap6`
-      ldapsdk_libdir=`$PKG_CONFIG --libs-only-L mozldap6 | sed -e s/-L// | sed -e s/\ *$//`
-      ldapsdk_bindir=`$PKG_CONFIG --variable=bindir mozldap6`
-      AC_MSG_RESULT([using system mozldap6])
+	mozldappkg=mozldap6
+    elif $PKG_CONFIG --exists mozldap; then
+	mozldappkg=mozldap
       AC_MSG_ERROR([LDAPSDK not found, specify with --with-ldapsdk[-inc|-lib].])
+    ldapsdk_inc=`$PKG_CONFIG --cflags-only-I $mozldappkg`
+    ldapsdk_lib=`$PKG_CONFIG --libs-only-L $mozldappkg`
+    ldapsdk_libdir=`$PKG_CONFIG --libs-only-L $mozldappkg | sed -e s/-L// | sed -e s/\ *$//`
+    ldapsdk_bindir=`$PKG_CONFIG --variable=bindir $mozldappkg`
+    AC_MSG_RESULT([using system $mozldappkg])
 if test -z "$ldapsdk_inc" -o -z "$ldapsdk_lib"; then
@@ -92,7 +95,11 @@
 dnl default path for the ldap c sdk tools (see [210947] for more details)
 if test -z "$ldapsdk_bindir" ; then
-  ldapsdk_bindir=$libdir/mozldap6
+  if [ -d $libdir/mozldap6 ] ; then
+    ldapsdk_bindir=$libdir/mozldap6
+  else
+    ldapsdk_bindir=$libdir/mozldap
+  fi
 dnl make sure the ldap sdk version is 6 or greater - we do not support

Index: svrcore.m4
RCS file: /cvs/dirsec/ldapserver/m4/svrcore.m4,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- svrcore.m4	19 Oct 2006 16:53:05 -0000	1.2
+++ svrcore.m4	12 Jan 2007 16:18:15 -0000	1.3
@@ -68,9 +68,9 @@
   AC_MSG_CHECKING(for svrcore with pkg-config)
   AC_PATH_PROG(PKG_CONFIG, pkg-config)
   if test -n "$PKG_CONFIG"; then
-    if $PKG_CONFIG --exists svrcore-devel; then
-      svrcore_inc=`$PKG_CONFIG --cflags-only-I svrcore-devel`
-      svrcore_lib=`$PKG_CONFIG --libs-only-L svrcore-devel`
+    if $PKG_CONFIG --exists svrcore; then
+      svrcore_inc=`$PKG_CONFIG --cflags-only-I svrcore`
+      svrcore_lib=`$PKG_CONFIG --libs-only-L svrcore`
       AC_MSG_RESULT([using system svrcore])

More information about the Fedora-directory-commits mailing list