Skip to contentSkip to conversation

Fix buildtools issue preventing eSDK + ipk working

PATCH New Paul Eggleton 1 participant 2 messages Apr 18, 2016

lore
Share & tools
lore
#0 lore raw

cover Fix buildtools issue preventing eSDK + ipk working

The following changes since commit 37aac647d510557323083c77c3114476440a325d:

fs-perms.txt: fix ROOT_HOME's permission (2016-04-15 06:58:49 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib paule/buildtools-perl-fix
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/buildtools-perl-fix

Paul Eggleton (1):
buildtools-tarball: fix perl being included when building with ipk

 meta/recipes-core/meta/buildtools-tarball.bb              | 2 +-
 meta/recipes-core/meta/nativesdk-buildtools-perl-dummy.bb | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)
Signature · 1 line
2.5.5
#1 lore raw

PATCH 1/1 buildtools-tarball: fix perl being included when building with ipk

Due to some logic within opkg, a package with the name matching a dependency will always win over a package with that name in RPROVIDES - even if there is an RCONFLICTS (which is silently ignored), higher feed priority and version. The end result is that buildtools gets perl installed instead of the nativesdk-buildtools-perl-dummy package and that perl (with missing dependencies) gets used in preference to the host one, which is precisely what we were trying to avoid.

This is almost certainly a bug in opkg, especially as the other package's dependencies aren't properly installed under these circumstances either. However, specifying RREPLACES works around this, and with no apparent side-effects is probably the safest solution for now.

At the same time I noticed that in prepending to SDK_PACKAGE_ARCHS we were actually ending up with a low priority for the dummy package feed rather than a high one, so change to append it instead. This has no effect on the packages that get installed at the moment, but should be done in case the package manager behaviour changes to factor in the feed priority in future.

Fixes [YOCTO #9469].

---
 meta/recipes-core/meta/buildtools-tarball.bb              | 2 +-
 meta/recipes-core/meta/nativesdk-buildtools-perl-dummy.bb | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)
meta/recipes-core/meta/buildtools-tarball.bb +1 -1
index 7186ac4..20e2c9b87 100644
@@ -26,7 +26,7 @@ TOOLCHAIN_HOST_TASK ?= "\
     nativesdk-texinfo \
     "
 
-SDK_PACKAGE_ARCHS =+ "buildtools-dummy-${SDKPKGSUFFIX}"
+SDK_PACKAGE_ARCHS += "buildtools-dummy-${SDKPKGSUFFIX}"
 
 TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-buildtools-nativesdk-standalone-${DISTRO_VERSION}"
 
meta/recipes-core/meta/nativesdk-buildtools-perl-dummy.bb +2 -1
index 90784a9..2b96111 100644
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda
 
 inherit allarch
 
-PR = "r1"
+PR = "r2"
 
 python() {
     # Put the package somewhere separate to ensure it's never used except
@@ -22,5 +22,6 @@ ALLOW_EMPTY_${PN} = "1"
 python populate_packages_prepend() {
     d.appendVar(d.expand('RPROVIDES_${PN}'), '${PERLPACKAGES}')
     d.appendVar(d.expand('RCONFLICTS_${PN}'), '${PERLPACKAGES}')
+    d.appendVar(d.expand('RREPLACES_${PN}'), '${PERLPACKAGES}')
 }
 
Signature · 1 line
2.5.5