]> code.ossystems Code Review - openembedded-core.git/commitdiff
opkg: fix ptest packaging when OPKGLIBDIR == libdir
authorMartin Jansa <martin.jansa@gmail.com>
Fri, 10 May 2019 18:20:18 +0000 (18:20 +0000)
committerArmin Kuster <akuster808@gmail.com>
Sat, 11 May 2019 14:40:10 +0000 (07:40 -0700)
there is small issue with ptest packaging in cases where
OPKGLIBDIR is set to /usr/lib.

Then all ptest files get packaged in libopkg instead of opkg-ptest and correct QA error is triggered:
ERROR: QA Issue: /usr/lib/opkg/ptest/tests/opkgcl.py contained in package libopkg requires /usr/bin/python3, but no providers found in RDEPENDS_libopkg? [file-rdeps]

  # $FILES_libopkg
  #   set /jenkins/mjansa/build-webos-master/oe-core/meta/recipes-devtools/opkg/opkg_0.4.0.bb:62
  #     "${libdir}/*.so.* ${OPKGLIBDIR}/opkg/"
  FILES_libopkg="/usr/lib/*.so.* /usr/lib/opkg/"

  # $FILES_opkg-ptest [2 operations]
  #   set /jenkins/mjansa/build-webos-master/oe-core/meta/classes/ptest.bbclass:9
  #     "${PTEST_PATH}"
  #   rename from FILES_${PN}-ptest data.py:117 [expandKeys]
  #     "${PTEST_PATH}"
  # pre-expansion value:
  #   "${PTEST_PATH}"
  FILES_opkg-ptest="/usr/lib/opkg/ptest"

  # $PACKAGES [4 operations]
  #   set /jenkins/mjansa/build-webos-master/oe-core/meta/conf/bitbake.conf:292
  #     "${PN}-src ${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}"
  #   set /jenkins/mjansa/build-webos-master/oe-core/meta/conf/documentation.conf:314
  #     [doc] "The list of packages to be created from the recipe."
  #   prepend /jenkins/mjansa/build-webos-master/oe-core/meta/classes/ptest.bbclass:20
  #     "${@bb.utils.contains('PTEST_ENABLED', '1', '${PN}-ptest', '', d)}"
  #   prepend /jenkins/mjansa/build-webos-master/oe-core/meta/recipes-devtools/opkg/opkg_0.4.0.bb:60
  #     "libopkg"
  # pre-expansion value:
  #   "libopkg ${@bb.utils.contains('PTEST_ENABLED', '1', '${PN}-ptest', '', d)} ${PN}-src ${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}"
  PACKAGES="libopkg opkg-ptest opkg-src opkg-dbg opkg-staticdev opkg-dev opkg-doc opkg-locale  opkg"

The easiest fix should be to reorder PACKAGES (the _prepends) so that ${PN}-ptest is prepended later -> ends before libopkg).

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
meta/recipes-devtools/opkg/opkg_0.4.0.bb

index 20c2e0b72acb5c9305490d198ea6b103d2b2d4c2..e2305d096a4da72f329ddb8f8f75b42369acd8b6 100644 (file)
@@ -23,6 +23,11 @@ SRC_URI = "http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz
 SRC_URI[md5sum] = "ae51d95fee599bb4dce08453529158f5"
 SRC_URI[sha256sum] = "f6c00515d8a2ad8f6742a8e73830315d1983ed0459cba77c4d656cfc9e7fe6fe"
 
+# This needs to be before ptest inherit, otherwise all ptest files end packaged
+# in libopkg package if OPKGLIBDIR == libdir, because default
+# PTEST_PATH ?= "${libdir}/${BPN}/ptest"
+PACKAGES =+ "libopkg"
+
 inherit autotools pkgconfig systemd ptest
 
 target_localstatedir := "${localstatedir}"
@@ -57,8 +62,6 @@ RREPLACES_${PN} = "opkg-nogpg opkg-collateral"
 RCONFLICTS_${PN} = "opkg-collateral"
 RPROVIDES_${PN} = "opkg-collateral"
 
-PACKAGES =+ "libopkg"
-
 FILES_libopkg = "${libdir}/*.so.* ${OPKGLIBDIR}/opkg/"
 
 BBCLASSEXTEND = "native nativesdk"