diff options
Diffstat (limited to 'yocto-poky/meta/recipes-devtools/rpm')
6 files changed, 41 insertions, 6 deletions
diff --git a/yocto-poky/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch b/yocto-poky/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch new file mode 100644 index 000000000..7894a4263 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/rpm/rpm/configure.ac-check-for-both-gpg2-and-gpg.patch @@ -0,0 +1,29 @@ +configure.ac: search for both gpg2 and gpg + +On some platforms the GnuPG binary is named 'gpg2' whereas others have 'gpg'. +This patch increases compatibility by searching for 'gpg' in addition to +'gpg2'. + +Upstream-Status: Pending + +Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 6746b4c..f6922ae 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -562,7 +562,7 @@ AC_PATH_PROG(__DIFF, diff, /bin/diff, $MYPATH) + AC_PATH_PROG(__DITTO, ditto, %{_bindir}/ditto, $MYPATH) + AC_PATH_PROG(__FILE, file, %{_bindir}/file, $MYPATH) + AC_PATH_PROG(__GIT, git, %{_bindir}/git, $MYPATH) +-AC_PATH_PROG(__GPG, gpg2, %{_bindir}/gpg2, $MYPATH) ++AC_PATH_PROGS(__GPG, [gpg2 gpg], %{_bindir}/gpg2, $MYPATH) + AC_PATH_PROG(__GSR, gsr, %{_bindir}/gsr, $MYPATH) + AC_PATH_PROG(__GST_INSPECT, gst-inspect-0.10, %{_bindir}/gst-inspect-0.10, $MYPATH) + AC_PATH_PROG(__GZIP, gzip, /bin/gzip, $MYPATH) +-- +2.1.4 + diff --git a/yocto-poky/meta/recipes-devtools/rpm/rpm/rpm-check-rootpath-reasonableness.patch b/yocto-poky/meta/recipes-devtools/rpm/rpm/rpm-check-rootpath-reasonableness.patch index 398603066..3d8d645a7 100644 --- a/yocto-poky/meta/recipes-devtools/rpm/rpm/rpm-check-rootpath-reasonableness.patch +++ b/yocto-poky/meta/recipes-devtools/rpm/rpm/rpm-check-rootpath-reasonableness.patch @@ -37,7 +37,7 @@ index 40c42bd..88d85ab 100644 + int ret,rootdir_len; + + if(rootdir == NULL) { -+ return; ++ return -1; + } + + rootdir_len = strlen(rootdir); diff --git a/yocto-poky/meta/recipes-devtools/rpm/rpm_4.11.2.bb b/yocto-poky/meta/recipes-devtools/rpm/rpm_4.11.2.bb index 210c9433d..f4a2110ae 100644 --- a/yocto-poky/meta/recipes-devtools/rpm/rpm_4.11.2.bb +++ b/yocto-poky/meta/recipes-devtools/rpm/rpm_4.11.2.bb @@ -22,7 +22,8 @@ HOMEPAGE = "http://www.rpm.org" LICENSE = "GPL-2.0+" LIC_FILES_CHKSUM ??= "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" -DEPENDS = "db libxml2 xz findutils file popt nss bzip2 elfutils patch attr zlib acl gzip make binutils python" +DEPENDS = "db libxml2 xz findutils file popt nss bzip2 elfutils attr zlib acl gzip python" +DEPENDS_append_class-native = " file-replacement-native" SRC_URI += "http://rpm.org/releases/rpm-4.11.x/${BP}.tar.bz2 \ file://use-pkgconfig-for-python.patch \ diff --git a/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4+cvs.bb b/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4+cvs.bb index 8903f3bc3..951b2517f 100644 --- a/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4+cvs.bb +++ b/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4+cvs.bb @@ -43,6 +43,7 @@ LICENSE = "LGPLv2.1" LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1" DEPENDS = "libpcre attr acl popt ossp-uuid file byacc-native" +DEPENDS_append_class-native = " file-replacement-native" S = "${WORKDIR}/rpm" diff --git a/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4.14.bb b/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4.14.bb index 1f9a4bd97..73b3734d5 100644 --- a/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4.14.bb +++ b/yocto-poky/meta/recipes-devtools/rpm/rpm_5.4.14.bb @@ -41,6 +41,7 @@ LICENSE = "LGPLv2.1" LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1" DEPENDS = "libpcre attr acl popt ossp-uuid file byacc-native" +DEPENDS_append_class-native = " file-replacement-native" # 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... @@ -98,6 +99,7 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.14-0.20131024.src.rpm;e file://rpm-check-rootpath-reasonableness.patch \ file://rpm-macros.in-disable-external-key-server.patch \ file://rpm-opendb-before-verifyscript-to-avoid-null-point.patch \ + file://configure.ac-check-for-both-gpg2-and-gpg.patch \ " # Uncomment the following line to enable platform score debugging diff --git a/yocto-poky/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c b/yocto-poky/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c index 7f4caf988..c0b4d567f 100644 --- a/yocto-poky/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c +++ b/yocto-poky/meta/recipes-devtools/rpm/rpmresolve/rpmresolve.c @@ -42,7 +42,7 @@ FILE *outf; int getPackageStr(rpmts ts, const char *NVRA, rpmTag tag, char **value) { int rc = -1; - rpmmi mi = rpmtsInitIterator(ts, RPMTAG_NVRA, NVRA, 0); + rpmmi mi = rpmmiInit(rpmtsGetRdb(ts), RPMTAG_NVRA, NVRA, 0); Header h; if ((h = rpmmiNext(mi)) != NULL) { HE_t he = (HE_t) memset(alloca(sizeof(*he)), 0, sizeof(*he)); @@ -225,7 +225,7 @@ int processPackages(rpmts *ts, int tscount, const char *packagelistfn, int ignor int lookupProvider(rpmts ts, const char *req, char **provider) { int rc = 0; - rpmmi provmi = rpmtsInitIterator(ts, RPMTAG_PROVIDENAME, req, 0); + rpmmi provmi = rpmmiInit(rpmtsGetRdb(ts), RPMTAG_PROVIDENAME, req, 0); if(provmi) { Header h; if ((h = rpmmiNext(provmi)) != NULL) { @@ -266,7 +266,7 @@ int printDepList(rpmts *ts, int tscount) HE_t he = (HE_t) memset(alloca(sizeof(*he)), 0, sizeof(*he)); int nkeys = argvCount(keys); for(i=0; i<nkeys; i++) { - rpmmi mi = rpmtsInitIterator(ts[0], RPMTAG_NVRA, keys[i], 0); + rpmmi mi = rpmmiInit(db, RPMTAG_NVRA, keys[i], 0); Header h; if ((h = rpmmiNext(mi)) != NULL) { /* Get name of package */ @@ -280,6 +280,8 @@ int printDepList(rpmts *ts, int tscount) printf("DEBUG: %s requires null\n", name); } rc = 0; + free(name); + (void)rpmmiFree(mi); continue; } ARGV_t reqs = (ARGV_t)he->p.ptr; @@ -412,7 +414,7 @@ int main(int argc, char **argv) } for(i=0; i<tscount; i++) - (void) rpmtsCloseDB(ts[i]); + (void)rpmtsFree(ts[i]); free(ts); if( outfile ) { |