diff options
author | Mark Hatle <mark.hatle@windriver.com> | 2012-12-11 08:09:40 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-12-17 17:24:52 +0000 |
commit | e1345b76c04b5a829b7219c12772bec1fb301850 (patch) | |
tree | 793cf4775df349af9db83230272ea6d7bcc8b840 /meta/recipes-devtools/rpm/rpm_5.4.9.bb | |
parent | 8b671644e1fa5cb4e4d8b6b0dc26a4b08e7485b7 (diff) | |
download | poky-e1345b76c04b5a829b7219c12772bec1fb301850.tar.gz |
rpm/smart: Fix runtime-relocation issues w/ RPM and Smart
Fix runtime-relocation issues with the RPM and Smart wrappers.
In addition the patches were necessary to fix related problems.
The changes to the includes three categories of issues:
*) Incorrect pathname evaluations
*) Incorrect evaluation of the /etc/rpm/platform file contents
*) Confusing vendor #define checks
Finally, a simple way to debug the platformScore was added as
that is necessary to debug how this works and into the smart system.
(From OE-Core rev: 355a621caca66ed393d36fff6be8918921cf45ae)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/rpm/rpm_5.4.9.bb')
-rw-r--r-- | meta/recipes-devtools/rpm/rpm_5.4.9.bb | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.9.bb b/meta/recipes-devtools/rpm/rpm_5.4.9.bb index 7311d0e015..be76f2470a 100644 --- a/meta/recipes-devtools/rpm/rpm_5.4.9.bb +++ b/meta/recipes-devtools/rpm/rpm_5.4.9.bb | |||
@@ -43,7 +43,7 @@ LICENSE = "LGPLv2.1" | |||
43 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1" | 43 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1" |
44 | 44 | ||
45 | DEPENDS = "libpcre attr acl popt ossp-uuid file bison-native" | 45 | DEPENDS = "libpcre attr acl popt ossp-uuid file bison-native" |
46 | PR = "r58" | 46 | PR = "r59" |
47 | 47 | ||
48 | # rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed | 48 | # rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed |
49 | # in order to extract the distribution SRPM into a format we can extract... | 49 | # in order to extract the distribution SRPM into a format we can extract... |
@@ -86,6 +86,11 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.9-0.20120508.src.rpm;ex | |||
86 | file://rpm-platform2.patch \ | 86 | file://rpm-platform2.patch \ |
87 | " | 87 | " |
88 | 88 | ||
89 | # Uncomment the following line to enable platform score debugging | ||
90 | # This is useful when identifying issues with Smart being unable | ||
91 | # to process certain package feeds. | ||
92 | #SRC_URI += "file://rpm-debug-platform.patch" | ||
93 | |||
89 | SRC_URI[md5sum] = "60d56ace884340c1b3fcac6a1d58e768" | 94 | SRC_URI[md5sum] = "60d56ace884340c1b3fcac6a1d58e768" |
90 | SRC_URI[sha256sum] = "bac7cc5bd9d0e8262fdc0099349924608da8f680f5cb243751f696552239dde8" | 95 | SRC_URI[sha256sum] = "bac7cc5bd9d0e8262fdc0099349924608da8f680f5cb243751f696552239dde8" |
91 | 96 | ||
@@ -150,7 +155,7 @@ PACKAGECONFIG[tcl] = "--with-tcl,--without-tcl,tcl," | |||
150 | PACAKGECONFIG[augeas] = "--with-augeas,--without-augeas,augeas," | 155 | PACAKGECONFIG[augeas] = "--with-augeas,--without-augeas,augeas," |
151 | 156 | ||
152 | EXTRA_OECONF += "--verbose \ | 157 | EXTRA_OECONF += "--verbose \ |
153 | --sysconfdir=/etc \ | 158 | --sysconfdir=${sysconfdir} \ |
154 | --with-file \ | 159 | --with-file \ |
155 | --with-path-magic=%{_usrlibrpm}/../../share/misc/magic.mgc \ | 160 | --with-path-magic=%{_usrlibrpm}/../../share/misc/magic.mgc \ |
156 | --with-syck=internal \ | 161 | --with-syck=internal \ |
@@ -226,7 +231,7 @@ FILES_${PN}-dbg += "${libdir}/rpm/.debug \ | |||
226 | 231 | ||
227 | FILES_${PN}-common = "${bindir}/rpm2cpio \ | 232 | FILES_${PN}-common = "${bindir}/rpm2cpio \ |
228 | ${bindir}/gendiff \ | 233 | ${bindir}/gendiff \ |
229 | /etc/rpm \ | 234 | ${sysconfdir}/rpm \ |
230 | /var/spool/repackage \ | 235 | /var/spool/repackage \ |
231 | " | 236 | " |
232 | 237 | ||
@@ -444,30 +449,30 @@ do_install_append() { | |||
444 | 449 | ||
445 | do_install_append_class-native() { | 450 | do_install_append_class-native() { |
446 | create_wrapper ${D}/${bindir}/rpm \ | 451 | create_wrapper ${D}/${bindir}/rpm \ |
447 | RPM_USRLIBRPM=${STAGING_LIBDIR_NATIVE}/rpm \ | 452 | RPM_USRLIBRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir', True), d.getVar('bindir', True))}/rpm \ |
448 | RPM_ETCRPM=${STAGING_ETCDIR_NATIVE}/rpm \ | 453 | RPM_ETCRPM='$'{RPM_ETCRPM-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir', True), d.getVar('bindir', True))}/rpm} \ |
449 | RPM_LOCALEDIRRPM=${STAGING_DATADIR_NATIVE}/locale | 454 | RPM_LOCALEDIRRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir', True), d.getVar('bindir', True))}/locale |
450 | 455 | ||
451 | create_wrapper ${D}/${bindir}/rpm2cpio \ | 456 | create_wrapper ${D}/${bindir}/rpm2cpio \ |
452 | RPM_USRLIBRPM=${STAGING_LIBDIR_NATIVE}/rpm \ | 457 | RPM_USRLIBRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir', True), d.getVar('bindir', True))}/rpm \ |
453 | RPM_ETCRPM=${STAGING_ETCDIR_NATIVE}/rpm \ | 458 | RPM_ETCRPM='$'{RPM_ETCRPM-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir', True), d.getVar('bindir', True))}/rpm} \ |
454 | RPM_LOCALEDIRRPM=${STAGING_DATADIR_NATIVE}/locale | 459 | RPM_LOCALEDIRRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir', True), d.getVar('bindir', True))}/locale |
455 | 460 | ||
456 | create_wrapper ${D}/${bindir}/rpmbuild \ | 461 | create_wrapper ${D}/${bindir}/rpmbuild \ |
457 | RPM_USRLIBRPM=${STAGING_LIBDIR_NATIVE}/rpm \ | 462 | RPM_USRLIBRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir', True), d.getVar('bindir', True))}/rpm \ |
458 | RPM_ETCRPM=${STAGING_ETCDIR_NATIVE}/rpm \ | 463 | RPM_ETCRPM='$'{RPM_ETCRPM-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir', True), d.getVar('bindir', True))}/rpm} \ |
459 | RPM_LOCALEDIRRPM=${STAGING_DATADIR_NATIVE}/locale | 464 | RPM_LOCALEDIRRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir', True), d.getVar('bindir', True))}/locale |
460 | 465 | ||
461 | create_wrapper ${D}/${bindir}/rpmconstant \ | 466 | create_wrapper ${D}/${bindir}/rpmconstant \ |
462 | RPM_USRLIBRPM=${STAGING_LIBDIR_NATIVE}/rpm \ | 467 | RPM_USRLIBRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir', True), d.getVar('bindir', True))}/rpm \ |
463 | RPM_ETCRPM=${STAGING_ETCDIR_NATIVE}/rpm \ | 468 | RPM_ETCRPM='$'{RPM_ETCRPM-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir', True), d.getVar('bindir', True))}/rpm} \ |
464 | RPM_LOCALEDIRRPM=${STAGING_DATADIR_NATIVE}/locale | 469 | RPM_LOCALEDIRRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir', True), d.getVar('bindir', True))}/locale |
465 | 470 | ||
466 | for rpm_binary in ${D}/${libdir}/rpm/bin/rpm*; do | 471 | for rpm_binary in ${D}/${libdir}/rpm/bin/rpm*; do |
467 | create_wrapper $rpm_binary | 472 | create_wrapper $rpm_binary |
468 | RPM_USRLIBRPM=${STAGING_LIBDIR_NATIVE}/rpm \ | 473 | RPM_USRLIBRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir', True), d.getVar('bindir', True))}/rpm \ |
469 | RPM_ETCRPM=${STAGING_ETCDIR_NATIVE}/rpm \ | 474 | RPM_ETCRPM='$'{RPM_ETCRPM-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir', True), d.getVar('bindir', True))}/rpm} \ |
470 | RPM_LOCALEDIRRPM=${STAGING_DATADIR_NATIVE}/locale | 475 | RPM_LOCALEDIRRPM='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir', True), d.getVar('bindir', True))}/locale |
471 | done | 476 | done |
472 | 477 | ||
473 | # Adjust popt macros to match... | 478 | # Adjust popt macros to match... |