summaryrefslogtreecommitdiffstats
path: root/meta/classes/rootfs_rpm.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* rootfs_*: Also depend on do_package_qaTom Rini2018-10-091-1/+1
| | | | | | | | | | Make sure that we don't create images that have QA problems with their package files by adding do_package_qa to do_rootfs[recrdeptask]. (From OE-Core rev: 4ee2f87f0c9540c7e2c866dbc9739e21a618bddf) Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dnf: move the entire dnf/rpm4 stack to Python 3Alexander Kanavin2017-03-281-2/+2
| | | | | | | | | [YOCTO #11180] (From OE-Core rev: bedcdc4cf921b70a8cfb16c6684668d0ac9e1942) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* run-postinsts: simplify the logic of whether to install it to imagesAlexander Kanavin2017-03-141-1/+0
| | | | | | | | | | The logic is scattered all over the place, but amounts to "install, unless the rootfs is read only". Let's express that directly. (From OE-Core rev: 697804229a172125ce7d3bfc9b343812d6fe3240) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: migrate image creation to dnfAlexander Kanavin2017-03-141-11/+10
| | | | | | | | | To properly look at this patch, you probably need a side-by-side diff viewing tool. (From OE-Core rev: 65581c68d130fa74d703f6c3c92560e053857ac7) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: remove True option to getVarFlag callsJoshua Lock2016-12-161-1/+1
| | | | | | | | | | | | | | | getVarFlag() now defaults to expanding by default, thus remove the True option from getVarFlag() calls with a regex search and replace. Search made with the following regex: getVarFlag ?\(( ?[^,()]*, ?[^,()]*), True\) (From OE-Core rev: 2dea9e490a98377010b3d4118d054814c317a735) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: remove True option to getVar callsJoshua Lock2016-12-161-1/+1
| | | | | | | | | | | | | getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) (From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Allow for simultaneous do_rootfs tasks with rpmuninative-1.3Stephano Cetola2016-08-121-5/+0
| | | | | | | | | | | | | | | | | | | | | | Give each rootfs its own RPM channel to use. This puts the RPM metadata in a private subdirectory of $WORKDIR, rather than living in DEPLOY_DIR where other tasks may race with it. This allows us to reduce the time that the rpm.lock is held to only the time needed to hardlink the RPMs, allowing the majority of the rootfs operation to run in parallel. Also, this fixes the smart tests by generating an index for all packages at the time of the test, rather than using the one provided by the rootfs process. Original credit for the enhancement should go to Steven Walter stevenrwalter@gmail.com. (From OE-Core rev: a92c196449c516fe51786d429078bbb1213bb029) Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm: Increase rootfs sizeSaul Wold2016-06-201-2/+2
| | | | | | | | | | | | This doubles the amount of extra space that is provided for SMART and RPM, as they consume more disk space during qa testing via testimage [YOCTO #9800] (From OE-Core rev: 2d636068d9d3a1ea2db3ace49462be13ba9ef125) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/lib: Add expand parameter to getVarFlagRichard Purdie2016-02-041-1/+1
| | | | | | | | | | | | | | | | This sets the scene for removing the default False for expansion from getVarFlag. This would later allow True to become the default. On the most part this is an automatic translation with: sed -e 's:\(\.getVarFlag([^,()]*, [^,()]*\)):\1, True):g' -i `grep -ril getVar *` In this case, the default was False, but True was used since in most cases here expansion would be expected. (From OE-Core rev: 42a10788e89b07b14a150ced07113566cf99fcdd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*.bbclass: don't add BUILDNAME to do_rootfs vardepsexcludeMartin Jansa2015-11-241-1/+0
| | | | | | | | | | * rootfs_*.bbclass doesn't use this variable anymore, so we can drop it (From OE-Core rev: bf91547d887aee2893e26e6073e12c540222b422) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*: Refactor common depends/lockfile task flagsRichard Purdie2014-08-151-20/+9
| | | | | | (From OE-Core rev: 96427656ef73bb50753a33ec6ad5e73de711ceb3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Combine rootfs_<pkgtype> and populate_sdk_<pkgtype>Richard Purdie2014-08-151-0/+16
| | | | | | | | | | | There is no real reason to have these separate files any longer. It does mean in meta-toolchain type recipes some extra variables are defined but it also means the common code can be grouped and maintained together which I believe is more beneficial. We therefore merge the classes. (From OE-Core rev: 2cf42b49003494e1b10775523c9a2547eaf16ea4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Globally replace 'base_contains' calls with 'bb.utils.contains'Otavio Salvador2014-04-251-1/+1
| | | | | | | | | | | 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. (From OE-Core rev: d83b16dbf0862be387f84228710cb165c6d2b03b) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* do_rootfs: Add PACKAGE_FEED_URIS as a vardepDavid Nyström2014-03-071-0/+1
| | | | | | | | | | | | | A bit uncertain on where to put this, suggestions welcome. Needed to automatically rebuild do_rootfs when PACKAGE_FEED_URIS change. (From OE-Core rev: c779bf78f2e1f66f3c8a6b02054e39bee4ea88a5) Signed-off-by: David Nyström <david.c.nystrom@gmail.com> Signed-off-by: David Nyström <david.nystrom@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Cleanup rootfs_rpm,package_rpm bbclass filesHongxu Jia2014-02-111-184/+0
| | | | | | | | | | This commit cleans up the functions that were ported to python. (From OE-Core rev: a4fe5263a683b73d0318fe3c0c55382c084f25b5) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*.bbclass: List which post-install scripts can not be runJeffrey C Honig2013-11-221-2/+3
| | | | | | | | | | | | When preping a read-only rootfs and finding some post-install scripts that can not be run, list the names of said scripts to avoid having to look around the rootfs to find a list. (From OE-Core rev: 0188120691f433fdccf71b92618115195278c0af) Signed-off-by: Jeffrey C Honig <jeffrey.honig@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Remove references to _remove in function names since this may ↵Richard Purdie2013-08-261-1/+1
| | | | | | | | | | | | | | become a bitbake keyword There is a good chance we might want to support a bitbake operator "_remove" which works in a similar way to _append and _prepend. As such, we can't use those keywords in function or variable names. (From OE-Core rev: 491fde8cd3fd493f9fec2fd434fe1be547f66148) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_rpm: implement BAD_RECOMMENDATIONS for RPMPaul Eggleton2013-07-291-2/+1
| | | | | | | | | | | | | | | | | | | | Add support for the BAD_RECOMMENDATIONS variable that can be used to prevent specific packages from being installed via an RRECOMMENDS relationship when using the RPM backend. (Previously this functionality was only available when using ipk packaging.) In the process this moves the defaulting of BAD_RECOMMENDATIONS (as empty) to bitbake.conf since it is no longer specific to the ipk backend, as well as unifying some of the code that creates the configuration for smart for use on the host and target. Fixes [YOCTO #3916]. (From OE-Core rev: 4e85129a7d47baf3e32b815cbc277bff84e085a0) 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>
* rootfs_rpm.bbclass: switch to using run-postinstsLaurentiu Palcu2013-06-111-1/+1
| | | | | | | | | | Since run-postinsts was made generic, use it for RPM too. (From OE-Core rev: 1ba44302f522a42535c9ad7d2fcccc06ba4c20b3) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*.bbclass: add some helper functionsLaurentiu Palcu2013-06-111-2/+25
| | | | | | | | | | | | | | | | | | | | This patch adds the following helper functions: * delayed_postinsts - outputs the list of delayed postinstalls; * save_postinsts - this will save the delayed postinstalls for ipk/deb in /etc/(ipk|deb)_postinsts; * rootfs_remove_packages - removes packages from an image; Additionaly, this patch will remove a piece of code in rootfs_ipk_do_rootfs which will be moved to image.bbclass and used for all backends; [YOCTO #4484] (From OE-Core rev: 928df79cd3964f775c4c6e4283ef84b8882f9328) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rpm: split out run-postinstsZhenhua Luo2013-03-291-3/+1
| | | | | | | | | | | | 1. Split out run-postinsts script into separated package, sometimes only the postinsts script is required to run all postinsts scripts in /etc/rpm-postinsts/ instead of the whole rpm package. 2. Set ROOTFS_PKGMANAGE_BOOTSTRAP to rpm-postinsts (From OE-Core rev: 056490ddbfdbb6cc6fa0d8ff8716d64819d6b16c) Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: implement history collection for SDKsPaul Eggleton2013-03-231-16/+0
| | | | | | | | | | | | | | | | | | | | | | SDKs are constructed in a similar manner to images, and the contents can be influenced by a number of different factors, thus tracking the contents of produced SDKs when buildhistory is enabled can help detect the same kinds of issues as with images. This required adding POPULATE_SDK_POST_HOST_COMMAND and SDK_POSTPROCESS_COMMAND variables so that data collection functions can be injected at the appropriate points in the SDK construction process, as well as moving the list_installed_packages and rootfs_list_installed_depends functions from the rootfs_{rpm,ipk,deb} to the package_{rpm,ipk,deb} classes so they can also be called during do_populate_sdk as well as do_rootfs. Implements [YOCTO #3964]. (From OE-Core rev: c3736064483d4840e38cb1b8c13d2dd3a26b36aa) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_xxx.bbclass: fix bitbake -S hashes mismatch errorRobert Yang2013-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bitbake -S <image> has errors, e.g.: NOTE: Reparsing files to collect dependency data ERROR: Bitbake's cached basehash does not match the one we just generated (/buildarea/lyang1/poky/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)! ERROR: The mismatched hashes were 8e44f2296f2d6cdf2ccb0236910ef59b and 46357d5e36713646b47b0fe2233e3c8c This is caused by the BUILDNAME which is defined in cooker.py: if not self.configuration.data.getVar("BUILDNAME"): self.configuration.data.setVar("BUILDNAME", time.strftime('%Y%m%d%H%M')) The time changes during the first parsing and reparsing, so there is the error, we already have: do_rootfs[vardepsexclude] += "BUILDNAME" but what we need is rootfs_xxx_do_rootfs[vardepsexclude] += "BUILDNAME" The do_rootfs doesn't depend on BUILDNAME directly, but indirectly, the depends tree is: do_rootfs -> rootfs_xxx_do_rootfs -> BUILDNAME So add BUILDNAME to rootfs_xxx_do_rootfs[vardepsexclude] would fix the problem. [YOCTO #3299] (From OE-Core rev: 9d039f482c84dde264564fde93f39764113cc0d3) 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>
* rootfs_rpm: move run-postinsts scripts to rpm recipeKang Kai2013-03-011-23/+0
| | | | | | | | | | | Move run-postinsts scripts from rootfs_rpm.bbclass to rpm recipe. That is the same way for dpkg and opkg to deal the post install scripts. (From OE-Core rev: 04607b0cd496837f10ef78cf43597ec1d2e13f2e) Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: Handle multilib configures with different OS valuesMark Hatle2013-02-221-10/+27
| | | | | | | | | | | | | | | [ CQID: WIND00404082 ] It is possible for the TARGET_OS to change dependending on the multilib used for a given package build. mips64 has two potential TARGET_OS values: linux and linux-gnun32. The RPM and Smart setup needs to distinguish between the two otherwise packages of the "non-default" TARGET_OS may be ignored as incompatible. (From OE-Core rev: aa760ff7dee4029c30c9de9fc0b640149e4a4c77) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: Reorder feed priority based on multilib image settingMark Hatle2013-02-221-2/+11
| | | | | | | | | | | | | | | | [ YOCTO #3915 ] [ CQID: WIND00404309 ] When doing a multilib image build, such as bitbake lib32-core-image-sato, the system needs to reorder the priority level of the feeds. If it does not reorder the priorities, then 64-bit items can be selected by the automatic dependency resolution in Smart. (From OE-Core rev: dfbb1aa184955923b85b81aabf944de8f1a1e4b5) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_(ipk|deb|rpm).bbclass: check package installation status after ↵Laurentiu Palcu2013-02-131-10/+10
| | | | | | | | | | | | | ROOTFS_POSTPROCESS_COMMAND Since the intercept fall-back procedure will change the package installation status, do the checking after ROOTFS_POSTPROCESS_COMMAND ends. (From OE-Core rev: 414c3918baccc2166bba536c956eebaeb49aace3) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm: Escape the backtick to ensure the ls runs on the targetSaul Wold2013-01-301-1/+1
| | | | | | | | | | | | | | | | | | This change ensures that the ls /etc/rpm-postinsts runs in the target at first boot time, rather than at the creation time of the script on the host. This was causing the following error in the rootfs log: + install -d /srv/ssd/sgw/machines/fri2/tmp/work/fri2-poky-linux/core-image-minimal/1.0-r0/rootfs//etc/rcS.d + i= + ls /etc/rpm-postinsts/ ls: cannot access /etc/rpm-postinsts/: No such file or directory (From OE-Core rev: e893cf0b3843701e80f5c9f47be04d1a88e5ed68) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: fix the unexpected postinst errorChen Qi2013-01-221-1/+2
| | | | | | | | | | | | | | | | If the /etc/rpm-postinsts/ directory was empty, the following error would occur at system startup. ERROR: postinst /etc/rpm-postinsts/* failed This patch fixes this issue. [YOCTO #3767] (From OE-Core rev: 202263aeca837dc7b6615a3dc34569c199163733) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_*: error out if postinstalls exist with read-only rootfsPaul Eggleton2013-01-181-0/+9
| | | | | | | | | | | | | | | | | If there are postinstall scripts to be run on first boot and IMAGE_FEATURES contains "read-only-rootfs", we know this will fail on the target device so just error out during do_rootfs. This check was already implemented for ipk, so add it to the deb and rpm backends. Also make all backends use bberror rather than just echo to display the error. Fixes [YOCTO #3407]. (From OE-Core rev: 510e377f252dece8850487c30482f83df4a89c7e) 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>
* rootfs_rpm.bbclass: export INSTALL_PLATFORM_EXTRA_RPMChen Qi2013-01-101-1/+1
| | | | | | | | | | | | Export this variable because package_rpm.bbclass needs it. [YOCTO #3682] (From OE-Core rev: 64b01c6c945346b661f294fc8a49bf04a72da3c0) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: remove debug codeMark Hatle2012-12-191-3/+3
| | | | | | | | | | Debugging code was accidently left in the previous commit. Remove the code as it prevents multiple concurrent bitbake builds. (From OE-Core rev: bbd55cc34ca893c7202634fe138cedb2f380be56) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*.bbclass: exclude BUILDNAME var dependency from do_rootfsMartin Jansa2012-12-191-0/+1
| | | | | | | | | | | | | | | | * I have kernel recipe which depends on other recipe to build tiny initramfs image, without this change it rebuilds not only that initramfs image but also whole kernel when DATE or TIME is changed and OEBasicHash enabled * also resolves ERROR shown when bitbake -S is used for image: ERROR: Bitbake's cached basehash does not match the one we just generated (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)! ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc (From OE-Core rev: a78d2d21fffd646a0d6e0f02a8355be010a7bd28) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm: Update the way the multilib package names are translatedMark Hatle2012-12-171-24/+23
| | | | | | | | | | | | | | | | | | | | The variable MULTILIB_PACKAGE_ARCHS has been removed in favor of a repurposed MULTILIB_PREFIX_LIST. The format of this item is now <libid>:<arch>:<arch1>:...:<archN>. This ensures that we can correctly translate the libid to one of the supported archs in a tri-lib system. All of the users of MULTILIB_PREFIX_LIST and MULTILIB_PACKAGE_ARCHS have been modified accordingly. Also change the way attempted packages are installed, verify the package exists in the translate functions, then perform the install in one single operation. This results in a significantly faster install time. (From OE-Core rev: ffe6cf3a1c57defdbe8531bdeb588e199177bb6c) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_rpm: install smart instead of zypper in rpm-based imagesPaul Eggleton2012-12-171-3/+3
| | | | | | | | | | Switch over to smart on the target when package-management is enabled. (From OE-Core rev: 69f258a2422e6a6ae71834dd097ffa00a1784d9e) 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>
* classes/*_rpm: integrate Smart into RPM filesystem constructionPaul Eggleton2012-12-171-16/+18
| | | | | | | | | | | | | | | | | | | | Use Smart to construct the root filesystem for images and the contents of SDKs rather than the custom scripts around rpm we had previously. This ensures the result when producing an updated image will be the same as upgrading to the same package versions from an older image on the target, as well as allowing us to remove a substantial amount of code making the rpm classes much easier to follow. Some bugfixes from Bogdan Marinescu <bogdan.marinescu@intel.com>. SDK implementation and testing as well as a number of bugfixes from Mark Hatle <mark.hatle@windriver.com>. (From OE-Core rev: a726ae7c032fac1aa49ce34180fa2ed2dcaf87d3) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: Revert to default shell logging behaviorMark Hatle2012-12-131-2/+0
| | | | | | | | | Remove the set +x, and revert to the normal logging behavior. (From OE-Core rev: e799d771c9ed9e41a900e2e96c23d4ae35d5fe08) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: fix a regression introduced by list_installed_packages ↵Ming Liu2012-12-031-1/+1
| | | | | | | | | | | | | | | | change A regression was introduced by commit:190cb591 that it doesn't consider the situation that some archs contain "_" originally, so it results in issues when dealing with archs like qemux86_64, x85_64. Added a conditional statment in to handle that case. (From OE-Core rev: 8567991639fda8d2a1e88169b86c72e14cc6c82d) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: normalize arch output of list_installed_packagesMing Liu2012-12-031-1/+1
| | | | | | | | | | | | | | | | | | list_installed_packages should output uniform formatted archs for all packaging system(deb, rpm and ipk), for they are used by common code to grab the package infos. Otherwise, it will lead some -dbg packages to be missed processing in come cases. It's introduced by commit: fc985f51, package_rpm.bbclass: fix the arch (replace "-" with "_"). Fixed by replacing "_" back to "-" in list_installed_packages, make it output real arch values which can be safely used. (From OE-Core rev: 554f2436435bf96c6735827f491c1b78b198c016) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: maybe no rpm postinst scriptRobert Yang2012-10-241-1/+3
| | | | | | | | | | | | | | | | | There maybe no rpm postinst script (e.g., core-image-minimal), then the "*" is not expanded, and there would be error: head: cannot open `rpm-postinsts/*' for reading: No such file or directory Check whether it exists or not will fix the problem. [YOCTO #3172] (From OE-Core rev: 966c72e00c8d378d7d189f0e4b626f6782d23a25) 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>
* rootfs_rpm: Add Multilib prefix to installed_packages listSaul Wold2012-09-191-5/+14
| | | | | | | | | | | | | | | RPM does not name it's packages with the Multilib prefix, but the rootfs_rpm class keeps track of the Multilib prefixs in a list. Use that list to re-attach the prefix for use with the license bbclass, buildhistory bbclass will also use this and make it more accurate between multilib and non-multilib. Use the embedded "Platform" information to ensure we get all the correct matching. (From OE-Core rev: f72abd80b0cc9d27aad2e31ecb548b4ab0fd8f67) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rpmresolve: improve debug outputPaul Eggleton2012-08-151-1/+1
| | | | | | | | | | | | | Rename rpmresolve's -d option to -t and make -d enable debug output; add a -o option to specify the output file (so rpm debug output doesn't go to the output file) and also add a little more detail to some of the error messages. (From OE-Core rev: 163dd734d79fd7040b48b10bca6fde28460ac20c) 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>
* createrepo 0.4.11: add rpm-createsolvedb.pyRobert Yang2012-08-011-1/+1
| | | | | | | | | | | | | Move scripts/rpm-createsolvedb.py to meta/recipes-support/createrepo/createrepo/ since we should wrap it to use the native python. [YOCTO #2822] (From OE-Core rev: 72d673bef385e756bd858f9eca7fe419efaceb39) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory: improve performance of image info collectionPaul Eggleton2012-07-291-29/+4
| | | | | | | | | | | Reduce the number of calls to the packaging tool, especially in the case of rpm, using helper utilities to gather the required information more efficiently where possible. (From OE-Core rev: d0b8a98c5b46c305afd389fc862b3bf0c6f1eaab) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Rework installation of dev, dbg, doc, and locale packagesPaul Eggleton2012-07-291-17/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a similar mechanism that was previously used to install locales at rootfs generation time to install other "complementary" packages (e.g. *-dev packages) - i.e. install all of the explicitly requested packages and their dependencies, then get a list of the packages that were installed, and use that list to install the complementary packages. This has been implemented by using a list of globs which should make it easier to extend in future. The previous locale package installation code assumed that the locale packages did not have any dependencies that were not already installed; now that we are installing non-locale packages this is no longer correct. In practice only the rpm backend actually made use of this assumption, so it needed to be changed to call into the existing package backend code to do the complementary package installation rather than calling rpm directly. This fixes the doc-pkgs IMAGE_FEATURES feature to work correctly, and also ensures that all dev/dbg packages get installed for dev-pkgs/dbg-pkgs respectively even if the dependency chains between those packages was not ensuring that already. The code has also been adapted to work correctly with the new SDK-from-image functionality. To that end, an SDKIMAGE_FEATURES variable has been added to allow specifying what extra image features should go into the SDK (extra, because by virtue of installing all of the packages in the image into the target part of the SDK, we already include all of IMAGE_FEATURES) with a default value of "dev-pkgs dbg-pkgs". Fixes [YOCTO #2614]. (From OE-Core rev: 72d1048a8381fa4a8c4c0d082047536727b4be47) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_rpm: improve speed of RPM rootfs constructionPaul Eggleton2012-07-291-0/+1
| | | | | | | | | | | | | Improve the performance of the RPM backend during do_rootfs by performing most of the package name to file resolution in a separate utility written in C, processing the entire list of packages at once rather than running rpm on the command line which loads the RPM database for every package. (From OE-Core rev: 9135d351ba7cb21e50239d2b310565680bd4fdca) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_rpm: Sync multilib configuration with rootfs_rpmMark Hatle2012-07-091-0/+1
| | | | | | | | | | | | An anonymous python chunk configures some multilib settings for both populate_sdk_rpm and rootfs_rpm. The two classes should contain identical versions to ensure that the generated multilib configuration is the same for the SDK and the rootfs. (From OE-Core rev: 0f60722ef460fa826e4f02e7457004e64ca41d76) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: Update database configuration fileMark Hatle2012-06-121-31/+0
| | | | | | | | | | | Move the creation of the database configuration files to just before we perform the install actions. This ensures they will exist even in SDK or other non-target filesystem images. (From OE-Core rev: 113e015afd46e46c9ba0413ca15f0316fa2eec24) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rpm: Upgrade RPM to 5.4.8 (db to 5.3.15)Mark Hatle2012-06-121-10/+12
| | | | | | | | | RPM 5.4.8 requires db 5.3.x, so both are upgraded together. (From OE-Core rev: c5898ef3fc3820ff9c44bc5b1b16e5def64aa877) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: save rpmlib rather than remove itRobert Yang2012-06-081-1/+5
| | | | | | | | | | | | | | | | | The rpmlib was removed when images that add "remove_packaging_data_files" to ROOTFS_POSTPROCESS_COMMAND, which would make the increment rpm image generation doesn't work in the second build, since list_installed_packages would get incorrect value in the second build, move the rpmlib to ${T} rather than remove it, and move it back when INC_RPM_IMAGE_GEN =1. [YOCTO #2440] (From OE-Core rev: c30e79510c06701f10f659eedaa0fe785538ac17) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>