mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
Update python dependencies to be simply to "python"
Previously python dependencies were of the format "python(abi) = ..." This format is not yet supportable within OE, so revert to a form we know we can handle. Introduce a change to package.bbclass that ensures it will causes the sstate-cache's "package" to invalidate. Since pythondeps changed, the output of rpmdeps changes, which causes the per-file dependency information to change.... thus we need to invalidate the cache! (From OE-Core rev: 30064a98dc9049db4a37f119d15fbb59aa3c8377) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
d380bb126a
commit
737f8bbb4f
@@ -1652,6 +1652,12 @@ PACKAGEFUNCS ?= "package_get_auto_pr \
|
|||||||
emit_pkgdata"
|
emit_pkgdata"
|
||||||
|
|
||||||
python do_package () {
|
python do_package () {
|
||||||
|
# Change the following version to cause sstate to invalidate the package
|
||||||
|
# cache. This is useful if an item this class depends on changes in a
|
||||||
|
# way that the output of this class changes. rpmdeps is a good example
|
||||||
|
# as any change to rpmdeps requires this to be rerun.
|
||||||
|
# PACKAGE_BBCLASS_VERSION = "1"
|
||||||
|
|
||||||
packages = (bb.data.getVar('PACKAGES', d, True) or "").split()
|
packages = (bb.data.getVar('PACKAGES', d, True) or "").split()
|
||||||
if len(packages) < 1:
|
if len(packages) < 1:
|
||||||
bb.debug(1, "No packages to build, skipping do_package")
|
bb.debug(1, "No packages to build, skipping do_package")
|
||||||
|
|||||||
Executable
+16
@@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
[ $# -ge 1 ] || {
|
||||||
|
cat > /dev/null
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
-R|--requires)
|
||||||
|
shift
|
||||||
|
grep "/usr/\(lib[^/]*\|share\)/python[^/]*/" >/dev/null && echo "python"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
@@ -45,7 +45,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
|
|||||||
DEPENDS = "bzip2 zlib db openssl elfutils expat libpcre attr acl popt ${extrarpmdeps}"
|
DEPENDS = "bzip2 zlib db openssl elfutils expat libpcre attr acl popt ${extrarpmdeps}"
|
||||||
extrarpmdeps = "python perl"
|
extrarpmdeps = "python perl"
|
||||||
extrarpmdeps_virtclass-native = ""
|
extrarpmdeps_virtclass-native = ""
|
||||||
PR = "r20"
|
PR = "r21"
|
||||||
|
|
||||||
# rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed
|
# 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...
|
# in order to extract the distribution SRPM into a format we can extract...
|
||||||
@@ -63,6 +63,7 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.0-0.20101229.src.rpm;ex
|
|||||||
file://rpm-fileclass.patch \
|
file://rpm-fileclass.patch \
|
||||||
file://rpm-canonarch.patch \
|
file://rpm-canonarch.patch \
|
||||||
file://rpm-no-loopmsg.patch \
|
file://rpm-no-loopmsg.patch \
|
||||||
|
file://pythondeps.sh \
|
||||||
"
|
"
|
||||||
|
|
||||||
# file://rpm-autoconf.patch \
|
# file://rpm-autoconf.patch \
|
||||||
@@ -352,6 +353,7 @@ do_install_append() {
|
|||||||
# Enable Debian style arbitrary tags...
|
# Enable Debian style arbitrary tags...
|
||||||
sed -i -e 's,%_arbitrary_tags[^_].*,%_arbitrary_tags %{_arbitrary_tags_debian},' ${D}/${libdir}/rpm/macros
|
sed -i -e 's,%_arbitrary_tags[^_].*,%_arbitrary_tags %{_arbitrary_tags_debian},' ${D}/${libdir}/rpm/macros
|
||||||
|
|
||||||
|
install -m 0755 ${WORKDIR}/pythondeps.sh ${D}/${libdir}/rpm/pythondeps.sh
|
||||||
install -m 0755 ${WORKDIR}/perfile_rpmdeps.sh ${D}/${libdir}/rpm/perfile_rpmdeps.sh
|
install -m 0755 ${WORKDIR}/perfile_rpmdeps.sh ${D}/${libdir}/rpm/perfile_rpmdeps.sh
|
||||||
|
|
||||||
# Remove unpackaged files (based on list in rpm.spec)
|
# Remove unpackaged files (based on list in rpm.spec)
|
||||||
|
|||||||
Reference in New Issue
Block a user