Files
poky/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
Paul Eggleton 69b9c6bd0c python-smartpm: add support for recommends
Implement support within Smart for handling RRECOMMENDS relationships
between RPM packages as used by OE. This includes support within the
base system for caching and resolving these relationships as well as
specific support in the RPM backend for reading the information from
packages, and reading the "missingok" flag added to createrepo for
rpm-md feeds.

(From OE-Core rev: 35e3bc90ec3bae824804bd176b3128efdb5b4e2b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:05 +00:00

120 lines
4.6 KiB
BlitzBasic

SUMMARY = "The Smart Package Manager"
DESCRIPTION = "The Smart Package Manager project has the ambitious objective of creating \
smart and portable algorithms for solving adequately the problem of managing software \
upgrades and installation. This tool works in all major distributions and will bring \
notable advantages over native tools currently in use (APT, APT-RPM, YUM, URPMI, etc)."
HOMEPAGE = "http://smartpm.org/"
SECTION = "devel/python"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=393a5ca445f6965873eca0259a17f833"
DEPENDS = "python rpm"
PR = "r1"
SRCNAME = "smart"
SRC_URI = "\
http://launchpad.net/smart/trunk/${PV}/+download/${SRCNAME}-${PV}.tar.bz2 \
file://smartpm-rpm5-nodig.patch \
file://smart-rpm-root.patch \
file://smart-recommends.patch \
"
SRC_URI[md5sum] = "573ef32ba177a6b3c4bf7ef04873fcb6"
SRC_URI[sha256sum] = "b1d519ddb43d60f293b065c28870a5d9e8b591cd49e8c68caea48ace91085eba"
S = "${WORKDIR}/${SRCNAME}-${PV}"
# Options - rpm, qt4, gtk
PACKAGECONFIG ??= "rpm"
RPM_RDEP = "python-smartpm-backend-rpm"
QT_RDEP = "python-smartpm-interface-qt4"
GTK_RDEP = "python-smartpm-interface-gtk"
RPM_RDEP_virtclass-native = ""
QT_RDEP_virtclass-native = ""
GTK_RDEP_virtclass-native = ""
PACKAGECONFIG[rpm] = ",,rpm,${RPM_RDEP}"
PACKAGECONFIG[qt4] = ",,qt4-x11,${QT_RDEP}"
PACKAGECONFIG[gtk] = ",,gtk+,${GTK_RDEP}"
inherit distutils
do_install_append() {
# Cleanup unused item...
rmdir ${D}${datadir}/share
# We don't support the following items
rm -rf ${D}${libdir}/python*/site-packages/smart/backends/slack
rm -rf ${D}${libdir}/python*/site-packages/smart/backends/arch
rm -rf ${D}${libdir}/python*/site-packages/smart/interfaces/qt
# Temporary, debian support in OE is missing the python module
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/aptchannelsync.py*
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/debdir.py*
rm -rf ${D}${libdir}/python*/site-packages/smart/backends/deb
# Disable automatic channel detection
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/detectsys.py*
# Disable landscape support
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/landscape.py*
# Disable urpmi channel support
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/urpmichannelsync.py*
# Disable yum channel support
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/yumchannelsync.py*
# Disable zypper channel support
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/zyppchannelsync.py*
if [ -z "${@base_contains('PACKAGECONFIG', 'rpm', 'rpm', '', d)}" ]; then
rm -f ${D}${libdir}/python*/site-packages/smart/plugins/rpmdir.py*
rm -rf ${D}${libdir}/python*/site-packages/smart/backends/rpm
fi
if [ -z "${@base_contains('PACKAGECONFIG', 'qt4', 'qt4', '', d)}" ]; then
rm -rf ${D}${libdir}/python*/site-packages/smart/interfaces/qt4
fi
if [ -z "${@base_contains('PACKAGECONFIG', 'gtk+', 'gtk', '', d)}" ]; then
rm -rf ${D}${libdir}/python*/site-packages/smart/interfaces/gtk
fi
}
PACKAGES = "python-smartpm-dev python-smartpm-dbg python-smartpm-doc smartpm"
PACKAGES += "${@base_contains('PACKAGECONFIG', 'rpm', 'python-smartpm-backend-rpm', '', d)}"
PACKAGES += "${@base_contains('PACKAGECONFIG', 'qt4', 'python-smartpm-interface-qt4', '', d)}"
PACKAGES += "${@base_contains('PACKAGECONFIG', 'gtk', 'python-smartpm-interface-gtk', '', d)}"
PACKAGES += "python-smartpm-interface-images"
PACKAGES += "python-smartpm"
RDEPENDS_smartpm = 'python-smartpm'
RDEPENDS_python-smartpm_append = " python-smartpm-backend-rpm python-codecs python-textutils python-xml"
RDEPENDS_python-smartpm_append += " python-fcntl python-pickle python-crypt python-compression python-shell"
RDEPENDS_python-smartpm_append += " python-resource python-netclient python-threading python-unixadmin"
#RDEPENDS_python-smartpm_append += " python-modules"
RDEPENDS_python-smartpm-backend-rpm = 'python-rpm'
RDEPENDS_python-smartpm-interface-qt4 = 'qt4-x11 python-smartpm-interface-images'
RDEPENDS_python-smartpm-interface-gtk = 'gtk+ python-smartpm-interface-images'
FILES_smartpm = "${bindir}/smart"
FILES_${PN}-dbg += "${libdir}/python*/site-packages/smart/backends/rpm/.debug"
FILES_python-smartpm-backend-rpm = "${libdir}/python*/site-packages/smart/backends/rpm"
FILES_python-smartpm-interface-qt4 = "${libdir}/python*/site-packages/smart/interfaces/qt4"
FILES_python-smartpm-interface-gtk = "${libdir}/python*/site-packages/smart/interfaces/gtk"
FILES_python-smartpm-interface-images = "${datadir}/${baselib}/python*/site-packages/smart/interfaces/images"
BBCLASSEXTEND = "native"