Poldek i rpm 4.0.4

Artur Frysiak wiget w pld.org.pl
Pon, 25 Lut 2002, 09:58:58 CET


Witam.
W weekend zrobiłem patcha na configure.in aby można było skompilować
poldka z rpmem 4.0.4-0.29. Jest jednak mały problem. Rpm 4.0.4 może być
skompilowany z dołączoną lub systemową db4. rpm 4.0.2 jest skompilowany
z systemową db3. Bardzo trudno jest sprawdzić z która tak właściwie był
kompilowany rpm. W praktyce jednak gcc radzi sobie samo z tym, gdyż
librpm*so meldują z czym sa linkowane. Tak jednak jest chyba tylko na
Linuksie. Jeśli zakładamy że poldek jest tylko Linuksowym narzędziem to
możemy odpuścić sobie sprawdzanie z jakim db był kompilowany rpm.
Co Ty na to Paweł?

Pozdrawiam
-- 
Artur Frysiak
http://www.pld.org.pl/
-------------- następna część ---------
Index: configure.in
===================================================================
RCS file: /cvsroot/installer/poldek/configure.in,v
retrieving revision 1.36
diff -u -r1.36 configure.in
--- configure.in	21 Feb 2002 23:24:43 -0000	1.36
+++ configure.in	25 Feb 2002 08:44:27 -0000
@@ -188,19 +188,23 @@
 dnl Checks for libraries.
 AC_CHECK_LIB(z, gzopen)
 AC_CHECK_LIB(bz2, BZ2_bzCompress)
-AC_CHECK_LIB(db, db_create)
+DBLIB=""
+AC_CHECK_LIB(db-4.0, db_create,[DBLIB=-ldb-4.0],[
+	AC_CHECK_LIB(db, db_create, [DBLIB=-ldb],,[$LIBS])],
+	[$LIBS])
 AC_CHECK_LIB(popt, poptReadConfigFile)
 
 if test ${is_rpm4}. = yes. ; then
-	AC_CHECK_LIB(rpmio, rpmCleanPath,,AC_MSG_ERROR("rpmio not found"),
-		    -lpopt -ldb -lz -lbz2 -lrpm)
+	AC_CHECK_LIB(rpmio, rpmCleanPath,,AC_MSG_ERROR("rpmio not found"))
 fi
 
-AC_CHECK_LIB(rpm, rpmReadPackageInfo,,AC_MSG_ERROR("rpmlib not found"),
-	    -lpopt -ldb -lz -lbz2)
+AC_CHECK_LIB(rpm, rpmReadPackageInfo,[LIBS="$LIBS -lrpm $DBLIB"],
+	AC_CHECK_LIB(rpm, rpmReadPackageHeader,[LIBS="$LIBS -lrpm -lrpmdb $DBLIB"],
+		AC_MSG_ERROR("rpmlib not found"),
+		[$DBLIB -lrpmdb]),
+	    [$DBLIB])
 
-AC_CHECK_FUNCS(rpmMachineScore,, AC_MSG_ERROR("rpmlib not found"),
-	    -lpopt -ldb -lz -lbz2)
+AC_CHECK_FUNCS(rpmMachineScore,, AC_MSG_ERROR("rpmlib not found"))
 
 dnl trullib 0.43.4 has n_hash_size
 dnl test if linked with system copy only
@@ -244,4 +248,4 @@
 	sed 's/^all:/all: all-trurlib/' Makefile > Makefile-$$ && \
         mv -f Makefile-$$ Makefile
 fi
-	
\ No newline at end of file
+	


Więcej informacji o liście dyskusyjnej pld-installer