aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
AgeCommit message (Collapse)Author
2014-10-24python-smartpm: Add checking for "rpm-ignoresize" optionChong Lu
The do_rootfs takes a very long time when build host has mounted many NFS devices. syscall lstat() was being called on every filesystem mounted on the build host during building. The reason for the lstat() is that rpm is verifying that enough free disk space is available to do the install. However, since the install is into the target rootfs it should not matter how much free space there is in the host mounts. Add checking for "rpm-ignoresize", by it, smart can make whether RPM skip checking for diskspace when install a rpm package. Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-09-30python-smartpm: Add patches for rpm4Saul Wold
Add DEPENDS for python-rpm package from either rpm4 or rpm5 Extend the smart-dflags patch to catch an exception if the api does exist Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25Globally replace 'base_contains' calls with 'bb.utils.contains'Otavio Salvador
The base_contains is kept as a compatibility method and we ought to not use it in OE-Core so we can remove it from base metadata in future. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-18smartpm: Add nativesdk in BBCLASSEXTENDDavid Nyström
Signed-off-by: David Nyström <david.nystrom@enea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-17python-smartpm: truncate the filename to meet NAME_MAXRobert Yang
There is a "File name too long" error when len(TMPDIR) = 410, this is because the function getLocalPath() converts the filepath into the filename, so there would be the error when len(filename) > NAME_MAX, truncate the filename to meet NAME_MAX will fix the problem. [YOCTO #5201] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-11python-smartpm: Add an attempt install modeMark Hatle
[ YOCTO #3723 ] Add a mode to smart that will allow an installation to continue, instead of failure in the case that one or more items is uninstallable. Uninstallable packages are simply ignored, and no error is generated. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-22python-smartpm: Add support to disable installing recommendsMark Hatle
In order to attempt to reduce image sizes by skipping recommended packages, a new mode was added to smart that only evaluates required packaged. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-08-22python-smartpm: Add support for excluding package from the installMark Hatle
Update smart to support a mechanism for excluding specific packages from the install process. An error will be generated if this package is required. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-07-27python-smartpm: add ignore-recommends package flagPaul Eggleton
Adds support for a flag that is saved into Smart's configuration against a package that says it should not be installed if it is only recommended by a package being installed rather than required. This will enable us to add BAD_RECOMMENDATIONS support for RPM. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-07-27python-smartpm: fix sometimes reporting no provider instead of conflictPaul Eggleton
If a requirement of a package is conflicted, depending on how the solution is reached, Smart's transaction code may eliminate all providers of the requirement and then error out because nothing provides them without saying why. To work around this, store a reason and report that back if we need to, so for example instead of: error: Can't install packagegroup-core-ssh-dropbear-1.0-r1@all: no package provides dropbear we will now get: error: Can't install packagegroup-core-ssh-dropbear-1.0-r1@all: unable to install provider for dropbear: error: dropbear-2013.58-r1.0@armv5te is conflicted by openssh-sshd-6.2p2-r0@armv5te Fixes [YOCTO #4305]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-05-30python-smartpm: add gettext-native to DEPENDSPaul Eggleton
Fixes the following failure at do_install building python-smartpm-native if gettext-native has not already been built and gettext tools are not installed on the host: | compiling locale/it/LC_MESSAGES/smart.po -> locale/it/LC_MESSAGES/smart.mo | sh: msgfmt: command not found ... | creating $D/usr/share/share/locale/it/LC_MESSAGES | error: can't copy 'locale/it/LC_MESSAGES/smart.mo': doesn't exist or not a regular file Note that we need gettext-native in DEPENDS and not "inherit gettext" here because for native variants, gettext.bbclass instead adds gettext-minimal-native to DEPENDS and that does not provide the msgfmt command. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-29python-smartpm: fix HOMEPAGE and adjust DESCRIPTIONPaul Eggleton
* HOMEPAGE was incorrect * We're not really interested in the fact that Smart works across different distros. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-04-08smart: disable CHANNELSDIRBogdan Marinescu
Make CHANNELSDIR in smart empty, since this causes host contamination issues on some RPM-based hosts on which smart is already installed. [YOCTO #3881] Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-11python-smartpm: show friendly error if YAML output requested without PyYAMLPaul Eggleton
Instead of a python backtrace, tell the user they need to install PyYAML if they wish to use the --yaml output options. Fixes [YOCTO #3768]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-01python-smartpm: multilib fixesBogdan Marinescu
To fix some multilib issues, change the way the RPM backend decides if two packages can coexist: if they have a different architecture, automatically assume that they can coexist (which is fundamental for multilib). [YOCTO #3681] (From OE-Core rev: 05fd850f09c58dba8f64f3fe1de28ed9f21890a2) Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09python-smartpm: add dependency on python-pprintBogdan Marinescu
smart's "config" command uses the Python pprint module. If it is not present, "config" fails with this error: ############# # smart config --help error: Invalid command 'config' ############# This patch adds a dependency on python-pprint which fixes the error. Tested on qemux86/core-image-sato-sdk. [YOCTO #3643] Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-19python-smartpm: improve error reportingBogdan Marinescu
Add code to check proper command line arguments for various smart commands. Exit with error if erroneous/additional arguments are given in the command line. Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-14rpm/smart: Fix runtime-relocation issues w/ RPM and SmartMark Hatle
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. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: don't try to remove /usr/share/share twiceMartin Jansa
* distutils.bbclass now removes that directory Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Conflicts: meta/recipes-devtools/python/python-smartpm_1.4.1.bb
2012-12-06python-smartpm: Fix incorrect comparison argumentsMark Hatle
Built-in provides were not being compared properly within smart. This was caused by an incorrect argument to the match function. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: allow setting arbitrary macros in smart configPaul Eggleton
Add support for an rpm-extra-macros config option which can be used to define some extra macros that need to be set for rootfs construction to work on the host and that don't really warrant their own specific named config options to be created. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: support nolinktos and noparentdirs rpm optionsPaul Eggleton
Allowing us to turn on these options enables installation of base-files which contains a symlink to /proc/mounts which is auto-detected as a dependency and isn't provided by any other package. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: don't create /var/tmp on every rpm database openPaul Eggleton
This directory if present in the rootfs interferes with proper installation of base-files and doesn't seem to need to be there for smart/rpm to work in any case. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: fix package metadata not being read from rpm-md feedsPaul Eggleton
The XML indexes in rpm-md were being parsed incorrectly leading to the package metadata (e.g. dependencies) not being read. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: style fixesPaul Eggleton
* Use ${PN} instead of python-smartpm * Use multi-line strings instead of multiple single line += (also avoiding the confusing "_append +=") * Use class-native instead of virtclass-native - no difference in behaviour, but this keeps things consistent if we have to add any target overrides in future. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06python-smartpm: add support for recommendsPaul Eggleton
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. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-11-22python-smart-backend: Remove bogus runtime virtual/Richard Purdie
At runtime virtual/ providers make *no* sense at all. They also break debian packaging since the "/" character is not allowed in debian package names. This patch removes this runtime provider selection code since it is not workable and breaks builds. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14python-smartpm: Add basic knowledge of RPMSENSE_MISSINGOKMark Hatle
Currently smart does not support recommend dependencies. Add the first set of 'support' for RPMSENSE_MISSINGOK (the flag that makes something a recommend). This initial support ends up ignoring the recommendation, but is written in a way that it will be the basis of eventual support. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-11-14python-smartpm: Add smartpm recipeMark Hatle
This is the initial integration, basic functionality such as 'smart query' has been tested. Active use of remote feeds and such has not yet been verified. Thanks to Paul Eggleton for corrections and bug fixes for the initial integration. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>