[OE-core] [PATCH 2/5 v2] rpm: Upgrade RPM to 5.4.9
Mark Hatle
mark.hatle at windriver.com
Thu May 24 19:01:11 UTC 2012
On 5/23/12 6:14 PM, Saul Wold wrote:
> On 05/17/2012 04:46 PM, Mark Hatle wrote:
>> Beside upreving RPM, add necessary integration pathces to libzypp.
>>
>> Also change the configuration of RPM to support PACKAGECONFIG flags.
>> RPM is highly configurable, the default configuration is good for
>> minimal OE-Core use.
>>
> Mark,
>
> I have been having an issue with the do_install seeming to hang for
> rpm-native, I am still digging into this to see if it's a Bitbake issue
> or something else with RPM.
>
> A 'ps' shows the make install running, but not activity in the log file.
I made one last minute change, which didn't fail here.. but I wonder if it's the
problem. Can you go into the rpm recipe, do_configure, and remove the comment...
do_configure() {
# Disable tests!
#echo "all:" > tests/Makefile.am
./autogen.sh
...on the echo "all:" line? I'm wondering if the tests are activating and it's
attempting to do remote network access to test various things.
--Mark
> Sau!
>
>> Signed-off-by: Mark Hatle<mark.hatle at windriver.com>
>> ---
>> meta/recipes-devtools/rpm/rpm/rpm-lua.patch | 29 +++++
>> .../rpm/rpm/rpm-scriptletexechelper.patch | 33 +++---
>> meta/recipes-devtools/rpm/rpm/rpmdeps-oecore.patch | 26 ++---
>> .../rpm/{rpm_5.4.8.bb => rpm_5.4.9.bb} | 124 +++++++++-----------
>> .../libzypp/libzypp/libzypp-rpm549.patch | 28 +++++
>> meta/recipes-extended/libzypp/libzypp_git.bb | 3 +-
>> 6 files changed, 142 insertions(+), 101 deletions(-)
>> create mode 100644 meta/recipes-devtools/rpm/rpm/rpm-lua.patch
>> rename meta/recipes-devtools/rpm/{rpm_5.4.8.bb => rpm_5.4.9.bb} (82%)
>> create mode 100644 meta/recipes-extended/libzypp/libzypp/libzypp-rpm549.patch
>>
>> diff --git a/meta/recipes-devtools/rpm/rpm/rpm-lua.patch b/meta/recipes-devtools/rpm/rpm/rpm-lua.patch
>> new file mode 100644
>> index 0000000..980e1b1
>> --- /dev/null
>> +++ b/meta/recipes-devtools/rpm/rpm/rpm-lua.patch
>> @@ -0,0 +1,29 @@
>> +Add support for cross compiling lua
>> +
>> +Signed-off-by: Mark Hatle<mark.hatle at windriver.com>
>> +
>> +diff -ur rpm-5.4.9.orig/configure.ac rpm-5.4.9/configure.ac
>> +--- rpm-5.4.9.orig/configure.ac 2012-05-16 12:16:36.589813548 -0500
>> ++++ rpm-5.4.9/configure.ac 2012-05-16 12:26:01.070813518 -0500
>> +@@ -120,6 +120,9 @@
>> +
>> + AC_PATH_PROG(AS, as, as)
>> +
>> ++CC_FOR_BUILD=${CC_FOR_BUILD-\$(CC)}
>> ++AC_SUBST(CC_FOR_BUILD)
>> ++
>> + dnl # GCC specifics
>> + AC_PROG_GCC_TRADITIONAL
>> + AC_ARG_ENABLE(build-pic,
>> +diff -ur rpm-5.4.9.orig/lua/Makefile.am rpm-5.4.9/lua/Makefile.am
>> +--- rpm-5.4.9.orig/lua/Makefile.am 2012-04-07 19:15:25.000000000 -0500
>> ++++ rpm-5.4.9/lua/Makefile.am 2012-05-16 12:26:19.556856688 -0500
>> +@@ -40,7 +40,7 @@
>> +
>> + # --- bin2c doesn't need anything but a compiler
>> + bin2c$(EXEEXT): bin2c.c
>> +- $(CC) -o $@ $<
>> ++ $(CC_FOR_BUILD) -o $@ $<
>> +
>> + liblua_la_SOURCES =
>> + liblua_la_CFLAGS = @WITH_LUA_SUBDIR_DEF@
>> diff --git a/meta/recipes-devtools/rpm/rpm/rpm-scriptletexechelper.patch b/meta/recipes-devtools/rpm/rpm/rpm-scriptletexechelper.patch
>> index e4db0e4..8a9e712 100644
>> --- a/meta/recipes-devtools/rpm/rpm/rpm-scriptletexechelper.patch
>> +++ b/meta/recipes-devtools/rpm/rpm/rpm-scriptletexechelper.patch
>> @@ -12,10 +12,11 @@ Upstream-Status: Pending
>>
>> Signed-off-by: Mark Hatle<mark.hatle at windriver.com>
>>
>> -diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> ---- rpm-5.4.0.orig/lib/psm.c 2010-12-29 07:42:11.000000000 -0600
>> -+++ rpm-5.4.0/lib/psm.c 2011-11-08 13:38:48.132791154 -0600
>> -@@ -792,6 +792,10 @@
>> +Index: rpm-5.4.9/lib/psm.c
>> +===================================================================
>> +--- rpm-5.4.9.orig/lib/psm.c
>> ++++ rpm-5.4.9/lib/psm.c
>> +@@ -801,6 +801,10 @@ static rpmRC runScript(rpmpsm psm, Heade
>> int xx;
>> int i;
>>
>> @@ -26,23 +27,23 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> if (psm->sstates != NULL&& ix>= 0&& ix< RPMSCRIPT_MAX)
>> ssp = psm->sstates + ix;
>> if (ssp != NULL)
>> -@@ -858,14 +862,29 @@
>> +@@ -867,14 +871,29 @@ assert(he->p.str != NULL);
>> (F_ISSET(psm, UNORDERED) ? "a" : ""));
>>
>> if (Phe->p.argv == NULL) {
>> -- argv = alloca(5 * sizeof(*argv));
>> +- argv = (const char **) alloca(5 * sizeof(*argv));
>> - argv[0] = "/bin/sh";
>> - argc = 1;
>> -+ argv = alloca(7 * sizeof(*argv));
>> ++ argv = (const char **) alloca(7 * sizeof(*argv));
>> + argc = 0;
>> + } else {
>> -+ argv = alloca((Phe->c + 6) * sizeof(*argv));
>> ++ argv = (const char **) alloca((Phe->c + 6) * sizeof(*argv));
>> + argc = 0;
>> + }
>> +
>> +#ifdef RPM_VENDOR_POKY
>> + if (scriptletWrapper&& *scriptletWrapper) {
>> -+ argv[argc++] = scriptletWrapper;
>> ++ argv[argc++] = scriptletWrapper;
>> + argv[argc] = rpmtsRootDir(ts);
>> + if (!argv[argc] || !*argv[argc])
>> + argv[argc] = "/";
>> @@ -51,10 +52,10 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> +#endif
>> +
>> + if (Phe->p.argv == NULL) {
>> -+ argv[argc++] = "/bin/sh";
>> ++ argv[argc++] = "/bin/sh";
>> ldconfig_done = 0;
>> } else {
>> -- argv = alloca((Phe->c + 4) * sizeof(*argv));
>> +- argv = (const char **) alloca((Phe->c + 4) * sizeof(*argv));
>> - memcpy(argv, Phe->p.argv, Phe->c * sizeof(*argv));
>> - argc = Phe->c;
>> + memcpy((argv + argc), Phe->p.argv, Phe->c * sizeof(*argv));
>> @@ -62,7 +63,7 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> ldconfig_done = (ldconfig_path&& !strcmp(argv[0], ldconfig_path)
>> ? 1 : 0);
>> }
>> -@@ -916,7 +935,12 @@
>> +@@ -925,7 +944,12 @@ assert(he->p.str != NULL);
>> goto exit;
>>
>> if (rpmIsDebug()&&
>> @@ -76,7 +77,7 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> {
>> static const char set_x[] = "set -x\n";
>> nw = Fwrite(set_x, sizeof(set_x[0]), sizeof(set_x)-1, fd);
>> -@@ -1051,12 +1075,22 @@
>> +@@ -1060,12 +1084,22 @@ assert(he->p.str != NULL);
>>
>> { const char * rootDir = rpmtsRootDir(ts);
>> if (!rpmtsChrootDone(ts)&& rootDir != NULL&&
>> @@ -99,7 +100,7 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> xx = Chdir("/");
>> rpmlog(RPMLOG_DEBUG, D_("%s: %s(%s)\texecv(%s) pid %d\n"),
>> psm->stepName, sln, NVRA,
>> -@@ -2961,6 +2995,13 @@
>> +@@ -2977,6 +3011,13 @@ assert(psm->te != NULL);
>> case PSM_SCRIPT: /* Run current package scriptlets. */
>> /* XXX running %verifyscript/%sanitycheck doesn't have psm->te */
>> { rpmtxn _parent = (psm&& psm->te ? psm->te->txn : NULL);
>> @@ -113,7 +114,7 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> xx = rpmtxnBegin(rpmtsGetRdb(ts), _parent, NULL);
>> rc = runInstScript(psm);
>> if (rc)
>> -@@ -2968,11 +3009,24 @@
>> +@@ -2984,11 +3025,24 @@ assert(psm->te != NULL);
>> else
>> xx = rpmtxnCommit(rpmtsGetRdb(ts)->db_txn);
>> rpmtsGetRdb(ts)->db_txn = NULL;
>> @@ -138,7 +139,7 @@ diff -ur rpm-5.4.0.orig/lib/psm.c rpm-5.4.0/lib/psm.c
>> break;
>> case PSM_IMMED_TRIGGERS:
>> /* Run triggers in this package other package(s) set off. */
>> -@@ -2982,7 +3036,18 @@
>> +@@ -2998,7 +3052,18 @@ assert(psm->te != NULL);
>> F_SET(psm, GOTTRIGGERS);
>> }
>> if (psm->triggers != NULL)
>> diff --git a/meta/recipes-devtools/rpm/rpm/rpmdeps-oecore.patch b/meta/recipes-devtools/rpm/rpm/rpmdeps-oecore.patch
>> index 1667901..f29866b 100644
>> --- a/meta/recipes-devtools/rpm/rpm/rpmdeps-oecore.patch
>> +++ b/meta/recipes-devtools/rpm/rpm/rpmdeps-oecore.patch
>> @@ -16,20 +16,20 @@ RP 2012/2/7
>> 2 files changed, 152 insertions(+), 1 deletions(-)
>> create mode 100644 tools/rpmdeps-oecore.c
>>
>> -diff --git a/tools/Makefile.am b/tools/Makefile.am
>> -index f520843..2eba9bf 100644
>> ---- a/tools/Makefile.am
>> -+++ b/tools/Makefile.am
>> +Index: rpm-5.4.9/tools/Makefile.am
>> +===================================================================
>> +--- rpm-5.4.9.orig/tools/Makefile.am
>> ++++ rpm-5.4.9/tools/Makefile.am
>> @@ -58,7 +58,7 @@ pkgbin_PROGRAMS = \
>> @WITH_AUGEAS_AUGTOOL@ chroot cp @WITH_CUDF_CUDFTOOL@ find mtree \
>> @WITH_SEMANAGE_SEMODULE@ wget \
>> rpmcache rpmdigest rpmrepo rpmspecdump \
>> - rpmcmp rpmdeps sqlite3 @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@
>> + rpmcmp rpmdeps rpmdeps-oecore sqlite3 @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@
>> - dist_man_MANS = rpmgrep.1
>> -
>> - augtool_SOURCES = augtool.c
>> -@@ -155,6 +155,10 @@ rpmdeps_SOURCES = rpmdeps.c
>> + if WITH_DB
>> + pkgbin_PROGRAMS += dbconvert
>> + endif
>> +@@ -168,6 +168,10 @@ rpmdeps_SOURCES = rpmdeps.c
>> rpmdeps_LDFLAGS = @LDFLAGS_STATIC@ $(LDFLAGS)
>> rpmdeps_LDADD = $(RPM_LDADD_COMMON)
>>
>> @@ -40,11 +40,10 @@ index f520843..2eba9bf 100644
>> rpmdigest_SOURCES = rpmdigest.c
>> rpmdigest_LDFLAGS = @LDFLAGS_STATIC@ $(LDFLAGS)
>> rpmdigest_LDADD = $(RPMIO_LDADD_COMMON)
>> -diff --git a/tools/rpmdeps-oecore.c b/tools/rpmdeps-oecore.c
>> -new file mode 100644
>> -index 0000000..e646da9
>> +Index: rpm-5.4.9/tools/rpmdeps-oecore.c
>> +===================================================================
>> --- /dev/null
>> -+++ b/tools/rpmdeps-oecore.c
>> ++++ rpm-5.4.9/tools/rpmdeps-oecore.c
>> @@ -0,0 +1,147 @@
>> +#include "system.h"
>> +const char *__progname;
>> @@ -193,6 +192,3 @@ index 0000000..e646da9
>> + optCon = rpmcliFini(optCon);
>> + return ec;
>> +}
>> ---
>> -1.7.4.1
>> -
>> diff --git a/meta/recipes-devtools/rpm/rpm_5.4.8.bb b/meta/recipes-devtools/rpm/rpm_5.4.9.bb
>> similarity index 82%
>> rename from meta/recipes-devtools/rpm/rpm_5.4.8.bb
>> rename to meta/recipes-devtools/rpm/rpm_5.4.9.bb
>> index a7458b6..3c22f22 100644
>> --- a/meta/recipes-devtools/rpm/rpm_5.4.8.bb
>> +++ b/meta/recipes-devtools/rpm/rpm_5.4.9.bb
>> @@ -42,14 +42,12 @@ HOMEPAGE = "http://rpm5.org/"
>> LICENSE = "LGPLv2.1"
>> LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
>>
>> -DEPENDS = "beecrypt bzip2 zlib db openssl elfutils expat libpcre attr acl popt ${extrarpmdeps}"
>> -extrarpmdeps = "python perl file"
>> -extrarpmdeps_virtclass-native = "python-native file-native"
>> -PR = "r37"
>> +DEPENDS = "libpcre attr acl popt file"
>> +PR = "r38"
>>
>> # rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed
>> # in order to extract the distribution SRPM into a format we can extract...
>> -SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.8-0.20120401.src.rpm;extract=rpm-5.4.8.tar.gz \
>> +SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.9-0.20120508.src.rpm;extract=rpm-5.4.9.tar.gz \
>> file://rpm-log-auto-rm.patch \
>> file://rpm-db-reduce.patch \
>> file://perfile_rpmdeps.sh \
>> @@ -68,10 +66,11 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.8-0.20120401.src.rpm;ex
>> file://rpmdeps-oecore.patch \
>> file://rpm-resolvedep.patch \
>> file://rpm-no-perl-urpm.patch \
>> + file://rpm-lua.patch \
>> "
>>
>> -SRC_URI[md5sum] = "424b60bf2e0a624a218440d943861644"
>> -SRC_URI[sha256sum] = "56eb5033d4de98c217475fb34d466d551f8912959389e7854a806e2bd9e13380"
>> +SRC_URI[md5sum] = "60d56ace884340c1b3fcac6a1d58e768"
>> +SRC_URI[sha256sum] = "bac7cc5bd9d0e8262fdc0099349924608da8f680f5cb243751f696552239dde8"
>>
>> inherit autotools gettext
>>
>> @@ -81,63 +80,74 @@ acpaths = "-I ${S}/db/dist/aclocal -I ${S}/db/dist/aclocal_java"
>> rpm_macros = "%{_usrlibrpm}/macros:%{_usrlibrpm}/poky/macros:%{_usrlibrpm}/poky/%{_target}/macros:%{_etcrpm}/macros.*:%{_etcrpm}/macros:%{_etcrpm}/%{_target}/macros:~/.oerpmmacros"
>> rpm_macros_virtclass-native = "%{_usrlibrpm}/macros:%{_usrlibrpm}/poky/macros:%{_usrlibrpm}/poky/%{_target}/macros:~/.oerpmmacros"
>>
>> -# Configure values taken from rpm.spec
>> -WITH_BZIP2 = "--with-bzip2"
>> +# sqlite lua tcl augeas nss gcrypt neon xz xar keyutils perl selinux
>>
>> -WITH_XZ = "--with-xz=none"
>> +# Note: perl and sqlite w/o db specified does not currently work.
>> +# tcl, augeas, nss, gcrypt, xar and keyutils support is untested.
>> +PACKAGECONFIG_virtclass-native ??= "db bzip2 zlib beecrypt openssl libelf python"
>> +PACKAGECONFIG ??= "db bzip2 zlib beecrypt openssl libelf python"
>>
>> -WITH_Z = "--with-zlib $WITH_BZIP2 $WITH_XZ"
>> +PACKAGECONFIG[bzip2] = "--with-bzip2,--without-bzip2,bzip2,"
>> +PACKAGECONFIG[xz] = "--with-xz,--without-xz,xz,"
>> +PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib,"
>> +PACKAGECONFIG[xar] = "--with-xar,--without-xar,xar,"
>>
>> -WITH_PYTHON = " --with-python=${PYTHON_BASEVERSION} \
>> +WITH_PYTHON = " --with-python=${PYTHON_BASEVERSION} \
>> --with-python-inc-dir=${STAGING_INCDIR}/python${PYTHON_BASEVERSION} \
>> --with-python-lib-dir=${libdir}/python${PYTHON_BASEVERSION} \
>> - --without-pythonembed \
>> - "
>> + --without-pythonembed"
>> +PACKAGECONFIG[python] = "${WITH_PYTHON},--without-python,python,"
>>
>> # Perl modules are not built, but they could be enabled fairly easily
>> # the perl module creation and installation would need to be patched.
>> # (currently has host perl contamination issues)
>> -#WITH_PERL = " --with-perl --without-perlembed"
>> -WITH_PERL = " --without-perl --without-perl-urpm"
>> +WITH_PERL = "--with-perl --without-perlembed --without-perl-urpm"
>> +WITHOUT_PERL = "--without-perl --without-perl-urpm"
>> +PACKAGECONFIG[perl] = "${WITH_PERL},${WITHOUT_PERL},perl,"
>>
>> -WITH_PERL_virtclass-native = " --without-perl --without-perl-urpm"
>> +# The --with-dbsql will only tell RPM to check for support, db
>> +# may or may not be built w/ the dbsql support.
>> +WITH_DB = "--with-db --with-dbsql --without-db-tools-integrated"
>> +PACKAGECONFIG[db] = "${WITH_DB},--without-db,db,"
>>
>> -WITH_DB = "--with-db --with-dbsql --without-db-tools-integrated --without-sqlite"
>> +PACKAGECONFIG[sqlite] = "--with-sqlite,--without-sqlite,sqlite3,"
>>
>> -WITH_CRYPTO = "--with-beecrypt --with-openssl --without-nss --without-gcrypt"
>> +PACKAGECONFIG[beecrypt] = "--with-beecrypt,--without-beecrypt,beecrypt,"
>> +PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl,"
>> +PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss,"
>> +PACKAGECONFIG[gcrypt] = "--with-gcrypt,--without-gcrypt,gcrypt,"
>> +PACKAGECONFIG[keyutils] = "--with-keyutils,--without-keyutils,keyutils,"
>> +PACKAGECONFIG[libelf] = "--with-libelf,--without-libelf,elfutils,"
>>
>> -WITH_KEYUTILS = "--without-keyutils"
>> -WITH_LIBELF = "--with-libelf"
>> -WITH_SELINUX = "--without-selinux --without-sepol --without-semanage"
>> -#WITH_NEON = "--with-neon=internal --without-libproxy --with-expat --without-gssapi"
>> -WITH_NEON = "--without-neon --without-libproxy --without-expat --without-gssapi"
>> +WITH_SELINUX = "--with-selinux --with-sepol --with-semanage"
>> +WITHOUT_SELINUX = "--without-selinux --without-sepol --without-semanage"
>> +PACKAGECONFIG[selinux] = "${WITH_SELINUX},${WITHOUT_SELINUX},selinux,"
>>
>> -EXTRA_OECONF = "--verbose \
>> +WITH_NEON = "--with-neon --with-libproxy --with-expat --without-gssapi"
>> +WITHOUT_NEON = "--without-neon --without-libproxy --without-expat --without-gssapi"
>> +PACKAGECONFIG[neon] = "${WITH_NEON},${WITHOUT_NEON},neon,"
>> +
>> +PACKAGECONFIG[lua] = "--with-lua,--without-lua,"
>> +PACKAGECONFIG[tcl] = "--with-tcl,--without-tcl,tcl,"
>> +
>> +PACAKGECONFIG[augeas] = "--with-augeas,--without-augeas,augeas,"
>> +
>> +EXTRA_OECONF += "--verbose \
>> --sysconfdir=/etc \
>> - ${WITH_DB} \
>> - ${WITH_Z} \
>> --with-file \
>> --with-path-magic=%{_usrlibrpm}/../../share/misc/magic.mgc \
>> - --without-lua \
>> - --without-tcl \
>> --with-syck=internal \
>> --without-readline \
>> - --without-augeas \
>> - ${WITH_CRYPTO} \
>> --without-libtasn1 \
>> --without-pakchois \
>> --without-gnutls \
>> - ${WITH_NEON} \
>> --with-pcre \
>> --enable-utf8 \
>> --without-uuid \
>> --with-attr \
>> --with-acl \
>> - --without-xar \
>> --with-popt=external \
>> - ${WITH_KEYUTILS} \
>> --with-pthreads \
>> - ${WITH_LIBELF} \
>> --without-cudf \
>> --without-ficl \
>> --without-aterm \
>> @@ -146,14 +156,11 @@ EXTRA_OECONF = "--verbose \
>> --without-rc \
>> --without-js \
>> --without-gpsee \
>> - ${WITH_PYTHON} \
>> - ${WITH_PERL} \
>> --without-ruby \
>> --without-squirrel \
>> --with-build-extlibdep \
>> --with-build-maxextlibdep \
>> --without-valgrind \
>> - --without-xz \
>> --disable-openmp \
>> --enable-build-pic \
>> --enable-build-versionscript \
>> @@ -165,7 +172,7 @@ EXTRA_OECONF = "--verbose \
>> --with-bugreport=http://bugzilla.yoctoproject.org \
>> --program-prefix="
>>
>> -CFLAGS_append = " -DRPM_VENDOR_WINDRIVER -DRPM_VENDOR_POKY"
>> +CFLAGS_append = " -DRPM_VENDOR_WINDRIVER -DRPM_VENDOR_POKY -DRPM_VENDOR_OE"
>>
>> PACKAGES = "${PN}-dbg ${PN} ${PN}-doc ${PN}-libs ${PN}-dev ${PN}-staticdev ${PN}-common ${PN}-build python-rpm-dbg python-rpm-staticdev python-rpm perl-module-rpm perl-module-rpm-dev ${PN}-locale"
>>
>> @@ -173,7 +180,7 @@ SOLIBS = "5.4.so"
>>
>> # Based on %files section in the rpm.spec
>>
>> -FILES_${PN} = "${bindir}/rpm \
>> +FILES_${PN} = "${bindir}/rpm \
>> ${bindir}/rpmconstant \
>> ${libdir}/rpm/rpm.* \
>> ${libdir}/rpm/tgpg \
>> @@ -191,15 +198,10 @@ FILES_${PN} = "${bindir}/rpm \
>> ${libdir}/rpm/bin/rpmspecdump \
>> ${libdir}/rpm/bin/wget \
>> /var/lib/rpm \
>> + /var/cache/rpm \
>> + /var/volatile/cache/rpm \
>> "
>>
>> -# ${libdir}/rpm/magic
>> -# ${libdir}/rpm/magic.mgc
>> -# ${libdir}/rpm/magic.mime
>> -# ${libdir}/rpm/magic.mime.mgc
>> -# ${libdir}/rpm/bin/db_*
>> -# ${libdir}/rpm/bin/grep
>> -
>> FILES_${PN}-dbg += "${libdir}/rpm/.debug \
>> ${libdir}/rpm/bin/.debug \
>> "
>> @@ -218,12 +220,6 @@ FILES_${PN}-libs = "${libdir}/librpm-*.so \
>> ${libdir}/librpmbuild-*.so \
>> "
>>
>> -###%{_rpmhome}/lib/libxar.so.*
>> -###%{_rpmhome}/lib/libjs.so.*
>> -###%{_rpmhome}/lib/librpmjsm.so.*
>> -###%{_rpmhome}/lib/rpmjsm.so
>> -
>> -
>> FILES_${PN}-build = "${prefix}/src/rpm \
>> ${bindir}/rpmbuild \
>> ${libdir}/rpm/brp-* \
>> @@ -269,8 +265,6 @@ FILES_${PN}-build = "${prefix}/src/rpm \
>> ${libdir}/rpm/bin/rpmlua \
>> ${libdir}/rpm/bin/rpmluac \
>> ${libdir}/rpm/bin/sqlite3 \
>> - ${libdir}/rpm/lib/liblua.a \
>> - ${libdir}/rpm/lib/liblua.la \
>> ${libdir}/rpm/macros.d/cmake \
>> ${libdir}/rpm/macros.d/java \
>> ${libdir}/rpm/macros.d/libtool \
>> @@ -291,9 +285,6 @@ FILES_${PN}-build = "${prefix}/src/rpm \
>> "
>> RDEPENDS_${PN}-build = "file"
>>
>> -#%rpmattr %{_rpmhome}/gem_helper.rb
>> -#%rpmattr %{_rpmhome}/symclash.*
>> -
>> FILES_python-rpm-dbg = "${libdir}/python*/rpm/.debug/_*"
>> FILES_python-rpm-staticdev = "${libdir}/python*/rpm/*.a"
>> FILES_python-rpm = "${libdir}/python*/rpm"
>> @@ -317,6 +308,7 @@ FILES_${PN}-dev = "${includedir}/rpm \
>> ${libdir}/librpmmisc.so \
>> ${libdir}/librpmbuild.la \
>> ${libdir}/librpmbuild.so \
>> + ${libdir}/rpm/lib/liblua.la \
>> ${libdir}/pkgconfig/rpm.pc \
>> "
>>
>> @@ -327,25 +319,17 @@ FILES_${PN}-staticdev = " \
>> ${libdir}/librpmio.a \
>> ${libdir}/librpmmisc.a \
>> ${libdir}/librpmbuild.a \
>> + ${libdir}/rpm/lib/liblua.a \
>> "
>>
>> -###%{_rpmhome}/lib/libxar.a
>> -###%{_rpmhome}/lib/libxar.la
>> -###%{_rpmhome}/lib/libxar.so
>> -###%{_rpmhome}/lib/libjs.a
>> -###%{_rpmhome}/lib/libjs.la
>> -###%{_rpmhome}/lib/libjs.so
>> -###%{_rpmhome}/lib/librpmjsm.a
>> -###%{_rpmhome}/lib/librpmjsm.la
>> -###%{_rpmhome}/lib/librpmjsm.so
>> -
>> do_configure() {
>> # Disable tests!
>> - echo "all:"> tests/Makefile.am
>> + #echo "all:"> tests/Makefile.am
>>
>> ./autogen.sh
>>
>> export varprefix=${localstatedir}
>> + export CC_FOR_BUILD="${BUILD_CC}"
>> oe_runconf
>> }
>>
>> @@ -422,6 +406,8 @@ do_install_append() {
>> rm -f ${D}/${libdir}/rpm/bin/dbconvert
>> rm -f ${D}/${libdir}/rpm/bin/pom2spec
>>
>> + rm -rf ${D}/var/lib/wdj ${D}/var/cache/wdj
>> + rm -f ${D}/usr/lib/rpm/bin/api-sanity-checker.pl
>> }
>>
>> do_install_append_virtclass-native() {
>> diff --git a/meta/recipes-extended/libzypp/libzypp/libzypp-rpm549.patch b/meta/recipes-extended/libzypp/libzypp/libzypp-rpm549.patch
>> new file mode 100644
>> index 0000000..8268a2d
>> --- /dev/null
>> +++ b/meta/recipes-extended/libzypp/libzypp/libzypp-rpm549.patch
>> @@ -0,0 +1,28 @@
>> +commit 6c47ad415246cc3a3edac2e1637106d330574c85
>> +Author: Mark Hatle<mark.hatle at windriver.com>
>> +Date: Fri May 11 19:05:09 2012 -0500
>> +
>> + RpmHeader.cc: RPM 5.4.9 integration
>> +
>> + _RPMVSF_xxx - NODIGEST, NOSIGNATURES, NOHEADER, and NOPAYLOAD
>> + are now obsolete and no longer supported.
>> +
>> + Signed-off-by: Mark Hatle<mark.hatle at windriver.com>
>> +
>> +diff --git a/zypp/target/rpm/RpmHeader.cc b/zypp/target/rpm/RpmHeader.cc
>> +index 1224ecd..c96dae6 100644
>> +--- a/zypp/target/rpm/RpmHeader.cc
>> ++++ b/zypp/target/rpm/RpmHeader.cc
>> +@@ -230,10 +230,12 @@ RpmHeader::constPtr RpmHeader::readPackage( const Pathname& path_r,
>> + librpmDb::globalInit();
>> + rpmts ts = ::rpmtsCreate();
>> + unsigned vsflag = RPMVSF_DEFAULT;
>> ++#if !defined(_RPM_5)
>> + if ( verification_r& NODIGEST )
>> + vsflag |= _RPMVSF_NODIGESTS;
>> + if ( verification_r& NOSIGNATURE )
>> + vsflag |= _RPMVSF_NOSIGNATURES;
>> ++#endif
>> + ::rpmtsSetVSFlags( ts, rpmVSFlags(vsflag) );
>> +
>> + Header nh = 0;
>> diff --git a/meta/recipes-extended/libzypp/libzypp_git.bb b/meta/recipes-extended/libzypp/libzypp_git.bb
>> index 3c3a9f0..c5761d5 100644
>> --- a/meta/recipes-extended/libzypp/libzypp_git.bb
>> +++ b/meta/recipes-extended/libzypp/libzypp_git.bb
>> @@ -11,7 +11,7 @@ DEPENDS = "rpm boost curl libxml2 zlib sat-solver expat openssl udev libproxy"
>> S = "${WORKDIR}/git"
>> SRCREV = "15b6c52260bbc52b3d8e585e271b67e10cc7c433"
>> PV = "0.0-git${SRCPV}"
>> -PR = "r20"
>> +PR = "r21"
>>
>> SRC_URI = "git://github.com/openSUSE/libzypp.git;protocol=git \
>> file://no-doc.patch \
>> @@ -23,6 +23,7 @@ SRC_URI = "git://github.com/openSUSE/libzypp.git;protocol=git \
>> file://fix_for_compile_wth_gcc-4.6.0.patch \
>> file://hardcode-lib-fix.patch \
>> file://close.patch \
>> + file://libzypp-rpm549.patch \
>> "
>>
>> SRC_URI_append_mips = " file://mips-workaround-gcc-tribool-error.patch"
More information about the Openembedded-core
mailing list