Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > 07e56ec36f5b6db53acae40086fcf8ad > files > 29

rpm-4.4.2.3-20mnb2.src.rpm

You must also do: rm -rf db db3 rpmdb/db.h

diff -p -up rpm-4.4.2.3/Makefile.am.pix rpm-4.4.2.3/Makefile.am
--- rpm-4.4.2.3/Makefile.am.pix	2008-09-05 16:15:26.000000000 +0200
+++ rpm-4.4.2.3/Makefile.am	2008-09-05 16:22:16.000000000 +0200
@@ -6,7 +6,7 @@ LINT = splint
 
 EXTRA_DIST = CHANGES ChangeLog CREDITS Doxyheader GROUPS README.amiga INSTALL \
 	autodeps/none autodeps/*.prov autodeps/*.req autogen.sh \
-	config.site db db3/configure installplatform platform* \
+	config.site installplatform platform* \
 	po/*.in po/*.po po/rpm.pot \
 	rpm.magic rpmpopt-$(VERSION) rpmqv.c 
 
diff -p -up rpm-4.4.2.3/configure.ac.pix rpm-4.4.2.3/configure.ac
--- rpm-4.4.2.3/configure.ac.pix	2008-09-05 15:59:58.000000000 +0200
+++ rpm-4.4.2.3/configure.ac	2008-09-05 16:21:05.000000000 +0200
@@ -588,14 +588,33 @@ AC_SUBST(WITH_POPT_LIB)
 
 #=================
 
-dnl ------------------ with    internal db
 AC_DEFINE(HAVE_DB3_DB_H, 1, [Define if you have the <db3/db.h> header file])
-WITH_DB_SUBDIR=db3
-WITH_INTERNAL_DB=1
 DBLIBSRCS="db3.c"
 
+  AC_CHECK_HEADER([db.h],[
+    save_LIBS="$LIBS"
+    AC_CHECK_LIB([db],[db_create],[],[
+      AC_MSG_ERROR([missing db_create in libdb])
+      ])
+    AC_CHECK_LIB([db],[db_env_create],[],[
+      AC_MSG_ERROR([missing db_env_create in libdb])
+      ])
+    AC_CHECK_LIB([db],[db_env_set_func_fsync],[],[
+      AC_MSG_ERROR([missing db_env_set_func_fsync in libdb])
+      ])
+    AC_CHECK_LIB([db],[db_strerror],[],[
+      AC_MSG_ERROR([missing db_strerror in libdb])
+      ])
+    WITH_DB_LIB=-ldb
+    LIBS="$save_LIBS"
+  ],[
+    AC_MSG_ERROR([missing required header db.h])
+  ])
+
+AC_SUBST([WITH_DB_LIB])
 AC_SUBST(WITH_DB_SUBDIR)
-AC_SUBST(WITH_INTERNAL_DB)
+AM_CONDITIONAL([WITH_INTERNAL_DB],[test "$with_internal_db" = yes])
+
 
 #=================
 # Check for sqlite3 library. Prefer external, then internal, otherwise none.
diff -p -up rpm-4.4.2.3/rpmdb/Makefile.am.pix rpm-4.4.2.3/rpmdb/Makefile.am
--- rpm-4.4.2.3/rpmdb/Makefile.am.pix	2008-04-01 09:28:22.000000000 +0200
+++ rpm-4.4.2.3/rpmdb/Makefile.am	2008-09-05 16:09:13.000000000 +0200
@@ -25,21 +25,27 @@ tjfn_LDFLAGS = @LDFLAGS_STATIC@
 tjfn_LDADD = librpmdb.la
 
 pkgincdir = $(pkgincludedir)
-pkginc_HEADERS = db.h header.h hdrinline.h rpmdb.h rpmhash.h
+pkginc_HEADERS = header.h hdrinline.h rpmdb.h rpmhash.h
 noinst_HEADERS = fprint.h header_internal.h legacy.h
 
 pkgbindir = @RPMCONFIGDIR@
+if WITH_INTERNAL_DB
 pkgbin_PROGRAMS = \
 	rpmdb_archive rpmdb_checkpoint rpmdb_deadlock rpmdb_dump rpmdb_load \
 	rpmdb_printlog rpmdb_recover rpmdb_svc rpmdb_stat rpmdb_upgrade \
 	rpmdb_verify 
+endif
 
 mylibs = librpmdb.la
 
 LIBS =
 
+if WITH_INTERNAL_DB
 # XXX watchout, ../db3/libdb.la created by this Makefile may surprise
 libdb_la = $(top_builddir)/$(WITH_DB_SUBDIR)/libdb.la
+else
+libdb_la = @WITH_DB_LIB@
+endif
 
 # XXX grrr, RPM_BUILD_ROOT prevents build pollution if/when -lrpm different
 LDFLAGS = -L$(RPM_BUILD_ROOT)$(usrlibdir) -L$(DESTDIR)$(usrlibdir)
@@ -59,9 +65,6 @@ librpmdb_la_LDFLAGS = -release 4.4 \
 librpmdb_la_LIBADD = $(DBLIBOBJS) $(libdb_la)
 librpmdb_la_DEPENDENCIES = $(DBLIBOBJS) $(libdb_la)
 
-# XXX make sure that db.h symlink is generated
-dbconfig.c $(DBLIBSRCS): db.h
-
 tagtbl.c: Makefile.am $(top_srcdir)/lib/rpmlib.h 
 	@echo '/*@-bounds@*/' > $@
 	@echo '#include "system.h"' >> $@
@@ -80,9 +83,7 @@ tagtbl.c: Makefile.am $(top_srcdir)/lib/
 	@echo 'const int rpmTagTableSize = sizeof(rpmTagTbl) / sizeof(rpmTagTbl[0]) - 1;' >> $@
 	@echo '/*@=bounds@*/' >> $@
 
-db.h:
-	@ln -sf ../$(WITH_DB_SUBDIR)/db.h $@
-
+if WITH_INTERNAL_DB
 # XXX grrr, force noinst libdb.la for db3.
 $(libdb_la):
 	sed -e"/^libdir=/s/^.*$$/libdir=''/" < $(top_builddir)/$(WITH_DB_SUBDIR)/libdb-4.3.la > $(libdb_la)
@@ -172,9 +173,10 @@ rpmdb_verify_LDADD = \
 	$(top_builddir)/$(WITH_DB_SUBDIR)/util_cache.o \
 	$(top_builddir)/$(WITH_DB_SUBDIR)/util_sig.o \
 	librpmdb.la
+endif
 
 clean-local:
-	rm -f *.o db.h $(libdb_la)
+	rm -f *.o $(libdb_la)
 
 BUILT_SOURCES = tagtbl.c