summaryrefslogtreecommitdiffstats
path: root/meta/classes/rootfs_deb.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* classes/buildhistory: implement history collection for SDKsPaul Eggleton2013-03-231-27/+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_deb: remove run-postinsts from ROOTFS_PKGMANAGEKang Kai2013-03-011-1/+1
| | | | | | | | | | | | Remove package run-postinsts from ROOTFS_PKGMANAGE. run-postinsts has already added in ROOTFS_PKGMANAGE_BOOTSTRAP and then added to rootfs conditionally by checking image feature "package-management". (From OE-Core rev: 41aad841e93daaf5d174b14b2fec60b786ead4b3) 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_(ipk|deb|rpm).bbclass: check package installation status after ↵Laurentiu Palcu2013-02-131-7/+7
| | | | | | | | | | | | | 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>
* classes/rootfs_*: error out if postinstalls exist with read-only rootfsPaul Eggleton2013-01-181-0/+7
| | | | | | | | | | | | | | | | | 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_*.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>
* rootfs generation: export two new variables to postinst scriptletsLaurentiu Palcu2012-12-061-0/+2
| | | | | | | | | | | | | | In order for the postinst scriptlets to be able to run once we need to export the location of the intercept scripts and also the location of native sysrootfs. The gdk-pixbuf binaries will need the latter because in order to generate the loaders.cache it will need to scan some shared libraries that must be native. Even though the output is a text file. (From OE-Core rev: 927fabf549bb79cc179d2cb0a953dcd515acf464) 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_deb: move the lock from WORKDIR to DEPLOY_DIR_DEBRobert Yang2012-08-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * There would be race issue if we put the lock to the WORKDIR, for example: bitbake core-image-sato core-image-sato-sdk If the lock is in their own WORKDIR, the apt-rootfs.conf and Packages.gz maybe be written by two tasks at the same time, which would cause unexpected errors. * Create ${target_rootfs}/etc since the "tar -C" needs it. Note: * The rpm has put the lock to DEPLOY_DIR_RPM * The ipk doesn't need it since it has locks for each deploy directory and put the opkg.conf in his own WORKDIR, which doesn't like deb put the apt-rootfs.conf in ${STAGING_ETCDIR_NATIVE}/apt/. [YOCTO #2495] (From OE-Core rev: 23ac392f8b868296eb9e7cd840f9b28ed6917b27) 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>
* buildhistory: improve performance of image info collectionPaul Eggleton2012-07-291-15/+13
| | | | | | | | | | | 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-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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_deb: use more reliable check for package existencePaul Eggleton2012-07-171-1/+1
| | | | | | | | | | | | | It turns out "apt-cache showpkg" does return some information when a package does not exist but another package recommends it, which can occur for empty *-dev packages; so use "apt-cache policy" with a different line count instead. (From OE-Core rev: ac62761a9cacdfd0225d2db5a75584e6c85469a8) 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>
* image.bbclass: Add support to build the SDK in parallel with the imageMark Hatle2012-07-031-0/+2
| | | | | | | | | | | | | | | | | | When building an image recipe, you can now build a companion SDK by calling the populate_sdk task: bitbake -c populate_sdk core-image-minimal Note: there are still issues w/ the SDK not working completely with multilibs. A lock is required between rootfs and populate_sdk activities to prevent configuration file clashes and similar package management problems in ipk and deb based systems. (RPM already had a lock for a different reason.) (From OE-Core rev: a0de2a56f19ae4d8cd88e46e96917a7a019fe1ab) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_*: fix splitting package dependency stringsPaul Eggleton2012-05-131-2/+2
| | | | | | | | | | | | | | | | If a + character appears in a version specification within the list of package dependencies, the version will not be removed from the list in list_package_depends/recommends leading to garbage appearing in the dependency graphs generated by buildhistory. To avoid any future problems due to unusual characters appearing in versions, change the regex to match almost any character. Fixes [YOCTO #2451]. (From OE-Core rev: 36d1717e2ad4ca1620ee9f01b524b5ff2f499b26) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: implement generic locale package installationPaul Eggleton2012-01-031-10/+27
| | | | | | | | | | | | | | | | | | | | | | Let each package-specific rootfs implementation provide basic functions to query the existence of a package and install a list of packages and then have a generic install function so this logic is in one place. Note: unlike previous versions of this code in OE-Core this uses the IMAGE_LINGUAS variable and not IMAGE_LOCALES - note that IMAGE_LINGUAS was what was used in OE-Classic and it is already used in OE-Core in order to install locale-base-*. This will mean that if IMAGE_LINGUAS is left at the default you will now get more packages installed. If you don't want these language support packages then you should set IMAGE_LINGUAS explicitly. This restores locale installation to the same state as OE-Classic, only we now support all the packaging backends. (From OE-Core rev: c0fc36f8629a6abb9a7b542df8a2857526547a31) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_deb: implement query functions for buildhistoryPaul Eggleton2011-12-101-0/+23
| | | | | | | | | | Implement the functions required for buildhistory to be able to query installed packages, get dependencies etc. for deb-based images. (From OE-Core rev: 58fbb430040c9cce9f2c5f1515a4453dd49032cc) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* deb packages support: switch from /var/dpkg to /var/lib/dpkgDexuan Cui2011-09-211-10/+10
| | | | | | | | | | | | [YOCTO #1086] The pach was backported from OE: http://git.openembedded.net/cgit.cgi/openembedded/commit/?id=41e0fbf792037f249d1b8d283b3de81718887c9f (From OE-Core rev: d1e6f49a6473df3c626100ba01b27485f735c33b) Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_deb/package_deb.bbclass: move func from rootfs_deb to package_debLianhao Lu2011-02-011-75/+16
| | | | | | | | | | | | | | | package_deb.bbclass: 1. Added new function package_update_index_deb() to generate package index files. 2. Added new function package_install_internal_deb() to install a list deb packages to a specified root directory, with the specified package architecutre information. rootfs_deb.bbclass: Used the above new functions to install the rootfs. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
* image/package_xx/rootfs_xx.bbclass: move rootfs_xx_log_check().Lianhao Lu2011-01-311-20/+0
| | | | | | | Move function rootfs_xx_log_check() from rootfs_xx.bbclass to relevant package_xx.bbclass. (Where xx is rpm/ipk/deb). Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
* rootfs: Update ROOTFS_PKGMANAGE to include atp/zypperRichard Purdie2010-10-111-1/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* rootfs_deb: Fix problem with pseduo and rootfs locationSaul Wold2010-10-081-0/+1
| | | | | | This address [BUGID #401] to complete dpkg rootfs support Signed-off-by: Saul Wold <Saul.Wold@intel.com>
* rootfs_deb: fix parsing a shell cmdSaul Wold2010-10-041-1/+1
| | | | | | | This fixes [BUGID #360] parsing failure when using package_dep as rootfs generator. Signed-off-by: Saul Wold <Saul.Wold@intel.com>
* opkg: finalize the change to var directoryKevin Tian2010-08-261-5/+7
| | | | | | | | | | | commit 1d0757f16beb31551733d9d755d72337ccda9642 changes opkg run state from /usr/lib/opkg to /var/lib/opkg, which however is incomplete and still many important information is kept under old directory including postinst methods. This makes latest boot into a mess. So finalize this movement to /var here. Fix [BUGID #229] Signed-off-by: Kevin Tian <kevin.tian@intel.com>
* bitbake.conf/base.bbclass: Rename the staging directory to sysroots and the ↵Richard Purdie2009-11-131-1/+1
| | | | | | | | | | | | | populate_staging task to populate_sysroot This change makes the purpose of the staging directory more obvious and the taskname more true to what it now actually does. The layout version number is increased due to the change in layout but code to convert existing directories and insert a symlink for backwards compatibility is included. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* meta/classes/rootfs_*.bbclass: Fix unset variableRichard Purdie2008-11-071-1/+1
|
* classes: Add mechanism to install packages into images only if they've been ↵Richard Purdie2008-11-061-3/+11
| | | | built
* rootfs_deb: use dpkg-scanpackages as our apt-native does not have ↵Marcin Juszkiewicz2008-06-301-1/+1
| | | | | | apt-ftparchive anymore git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4749 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Use DPKG_ARCH for the architecture field, not ↵Richard Purdie2008-05-211-1/+1
| | | | | | TARGET_ARCH since it breaks x86 git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4520 311d38ba-8fff-0310-9ca6-ca027cbcb966
* poky-image.bbclass: Correctly handle inserting package-managers into images ↵Richard Purdie2008-05-201-0/+3
| | | | | | by making it an image feature git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4517 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Use /var/dpkg for dpkg status dataRichard Purdie2008-05-201-11/+8
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4511 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb: Export OPKG_OFFLINE_ROOT for update-alternatives fixing dpkg ↵Richard Purdie2008-05-201-0/+1
| | | | | | rootfs generation git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4506 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: s/ipkg/opkg/ - spotten by Koen KooiMarcin Juszkiewicz2008-03-181-6/+6
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4043 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Make sure alternatives path existsRichard Purdie2007-11-121-0/+2
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3119 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb: Fix hardcoded etc references, add missing mkdirRichard Purdie2007-11-051-8/+9
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3074 311d38ba-8fff-0310-9ca6-ca027cbcb966
* classes: Sync with OERichard Purdie2007-09-011-8/+10
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2630 311d38ba-8fff-0310-9ca6-ca027cbcb966
* packaging: Split deb and ipk creation into separate tasks so changing the ↵Richard Purdie2007-08-211-0/+1
| | | | | | packaging type means the new type of packages are automatically generated. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2526 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Remove spurious mkdir, I needed this because my deploy/ ↵Ross Burton2007-08-171-1/+0
| | | | | | was hosed git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2508 311d38ba-8fff-0310-9ca6-ca027cbcb966
* Create usr/lib/ipkg in the rootfs before putting symlinks in itRoss Burton2007-08-171-0/+1
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2506 311d38ba-8fff-0310-9ca6-ca027cbcb966
* Instead of exit 0, do exit 1. 0 is 0, so this doesn't work as intendedRoss Burton2007-08-171-4/+4
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2505 311d38ba-8fff-0310-9ca6-ca027cbcb966
* Don't use a bashism when creating directoriesRoss Burton2007-08-071-1/+2
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2380 311d38ba-8fff-0310-9ca6-ca027cbcb966
* package_deb/rootfs_deb.bbclass: Add fix from OE, add copyright noticeRichard Purdie2007-08-071-0/+3
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2377 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs classes: added remove_packaging_data_files() function to be used in ↵Marcin Juszkiewicz2007-06-261-0/+4
| | | | | | minimal images git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2007 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: removed usage of /dev/null as stdin as BitBake do that ↵Marcin Juszkiewicz2007-06-121-3/+3
| | | | | | now by default git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1919 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: updated to works with APT 0.6Marcin Juszkiewicz2007-06-121-3/+3
| | | | | | | | | APT 0.6 require repositories to be GPG signed but Poky have them unsigned. Second problem is that APT tries to read something from stdin (even when forced to choose 'Yes') so it now gets /dev/null as stdin. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1916 311d38ba-8fff-0310-9ca6-ca027cbcb966
* classes: Rework core dependencies to work properly at the task levelRichard Purdie2007-04-031-2/+2
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1427 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb: Catch all error codes and return themRichard Purdie2007-03-301-4/+4
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1416 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_(deb|ipk).bbclass: Fix bashism so works on dashRichard Purdie2006-12-051-1/+1
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1002 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Add sanity checkRichard Purdie2006-12-011-1/+3
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@991 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Reverse sources.list file to correct repository ↵Richard Purdie2006-11-291-4/+8
| | | | | | priorities. Add Release file to sources giving a Label. Update preferences file to use source labels instead of paths git-svn-id: https://svn.o-hand.com/repos/poky/trunk@976 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb.bbclass: Mark packages as installed/unpacked correctly. Add in ↵Richard Purdie2006-11-271-1/+17
| | | | | | hacks to work around /var being tmpfs and to enable ipkg to handle the postinsts on device (for now) git-svn-id: https://svn.o-hand.com/repos/poky/trunk@966 311d38ba-8fff-0310-9ca6-ca027cbcb966
* rootfs_deb: Set Architecture correctly in a copy of apt.conf in stagingRichard Purdie2006-11-271-1/+3
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@965 311d38ba-8fff-0310-9ca6-ca027cbcb966