summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* base.bbclass: replace COMMERCIAL_LICENSE code with LICENSE_FLAGS codeTom Zanussi2012-01-241-6/+6
| | | | | | | | | | | The COMMERCIAL_LICENSE mechanism has been superseded by LICENSE_FLAGS so remove the code that implements COMMERCIAL_LICENSE and replace it with the corresponding LICENSE_FLAGS version. (From OE-Core rev: 3735716996ec11691054d7f03db873afde89b143) Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: add support for LICENSE_FLAGSTom Zanussi2012-01-241-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LICENSE_FLAGS are a per-recipe replacement for the COMMERCIAL_LICENSE mechanism. In the COMMERCIAL_LICENSE mechanism, any package name mentioned in the global COMMERCIAL_LICENSE list is 'blacklisted' from being included in an image. To allow the blacklisted package into the image, the corresponding packages need to be removed from the COMMERCIAL_LICENSE list. This mechanism relies on a global list defined in default-distrovars.inc. The LICENSE_FLAGS mechanism essentially implements the same thing but turns the global blacklist into a per-recipe whitelist. Any recipe can optionally define one or more 'license flags'; if defined, each of the license flags defined for a recipe must have matching entries in a global LICENSE_FLAGS_WHITELIST variable. The definition of 'matching' is simple, but there are a couple things users need to know in order to correctly and effectively use it. Before we test a flag against the whitelist, we append _${PN} to it, thus automatically making each LICENSE_FLAG recipe-specific. We then try to match that string against the whitelist. So if the user specifies LICENSE_FLAGS = 'commercial' for recipe 'foo', the string 'commercial_foo' should be specified in the whitelist in order for it to match. However, the user can also broaden the match by putting any '_'-separated beginning subset of a LICENSE_FLAG in the whitelist, which will also match e.g. simply specifying 'commercial' in the whitelist would match any expanded LICENSE_FLAG starting with 'commercial' such as 'commercial_foo' and 'commercial_bar' which are the strings that would have been automatically generated if those recipes had simply specified LICENSE_FLAGS = 'commercial' This allows for a range of specificity for the items in the whitelist, from more general to perfectly specific. So users have the choice of exhaustively enumerating each license flag in the whitelist to allow only those specific recipes into the image, or of using a more general string to pick up anything matching just the first component(s). Note that this scheme works even if the flag already has _pn appended - the extra _pn is redundant, but doesn't affect the outcome e.g. a license flag of 'commercial_1.2_foo' would turn into 'commercial_1.2_foo_foo' and would match both the general 'commercial' and the specific 'commercial_1.2_foo' as expected (it would also match commercial_1.2_foo_foo' and 'commercial_1.2', which don't make much sense as far as something a user would think of specifying in the whitelist). For a versioned string, the user could instead specify 'commercial_foo_1.2', which would turn into 'commercial_foo_1.2_foo', but which would as expected allow the user to pick up this package along with anything else 'commercial' by specifying 'commercial' in the whitelist, or anything with a 'commercial_foo' license regardless of version by using 'commercial_foo' in the whitelist, or 'commercial_foo_1.1' to be completely specific about package and version. The current behavior of COMMERCIAL_LICENSE is replicated as mentioned above by having the current set of COMMERCIAL_LICENSE flags implemented using LICENSE_FLAGS = "commercial". That being the case, the current COMMERCIAL_LICENSE can equivalently be specified in the new scheme by putting the below in local.conf: # This is a list of packages that require a commercial license to ship # product. If shipped as part of an image these packages may have # implications so they are disabled by default. To enable them, # un-comment the below as appropriate. #LICENSE_FLAGS_WHITELIST = "commercial_gst-fluendo-mp3 \ # commercial_gst-openmax \ # commercial_gst-plugins-ugly \ # commercial_lame \ # commercial_libmad \ # commercial_libomxil \ # commercial_mpeg2dec \ # commercial_qmmp" The above allows all of the current COMMERCIAL_LICENSE packages in - to disallow a particular package from appearing in the image, simply remove it from the whitelist. To allow them all in, you could also specify LICENSE_FLAGS_WHITELIST = "commercial". (From OE-Core rev: a2760661b8c7a4a1b6f2e556853b3a9ae38cbcb5) Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oe: Add sstatesig, OE specific signature generator classesRichard Purdie2012-01-231-1/+1
| | | | | | | | | | | | | | | This patch adds SignatureGenerator classes specific to OE. For now, these emulate the previous behaviour with the exception that dependencies on quilt-native are now ignored for checksum purposes. The intent is to allow easier experimentation and customisation of this code in future as a result of these changes. Note that these changes require pending bitbake patches. (From OE-Core rev: cb73cf4299a192e6065d567fae700987c3f937aa) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/patch: avoid backtrace when patch does not applyPaul Eggleton2012-01-191-1/+4
| | | | | | | | | | | | | | We don't need to see a Python stack backtrace when a patch does not apply, just the error output from patch, so trap these kinds of errors and ensure that we display the message and fail the task and nothing else. Fixes [YOCTO #1143] (From OE-Core rev: ce6c80a1e68c2af0b4b5fa27582ad9c9f119e5c1) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory: record additional image infoPaul Eggleton2012-01-191-0/+18
| | | | | | | | | | | | | | | | | Record some additional information about images - the uncompressed size of the final image as well as the values of various variables that may have influenced its contents. This is recorded in a machine-readable "image-info.txt" file similar in structure to the package history files. Also add some code to analyse changes to these values. (Most of the variable values aren't monitored directly but will be used as contextual information when they change at the same time as the content of the image changing.) (From OE-Core rev: 459ed6759a307b389f6ec1874136ec9aa0749120) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto: restore WORKDIR as a patch source directoryBruce Ashfield2012-01-191-0/+2
| | | | | | | | | | | | In the switch to using src_patches and using patches in their source directory, the scanning of WORKDIR migrated items like config fragments was dropped. Adding WORKDIR back as a patch directory restores the old functionality. (From OE-Core rev: fd46d2ec75a53a02464ab2f0bc69eb1971432c9a) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Add support for filenames with spacesMark Hatle2012-01-171-4/+4
| | | | | | | | | | Files with spaces must be fully quoted in an RPM spec file. It was easier to quote all file paths, then to do it selectively. (From OE-Core rev: a0f5dd25a37fe3b8664c2133e80b6214559f93f6) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/packagehistory: remove now obsolete classPaul Eggleton2012-01-171-249/+0
| | | | | | | | | | | packagehistory.bbclass has been superseded by buildhistory.bbclass, which gives more detailed output (including information on produced images) as well as other enhanced functionality. (From OE-Core rev: d07bd704e2c0624deba10f33ccc946bd1338855c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/package: remove out-of-date notice referring to the OE bugtrackerPaul Eggleton2012-01-171-3/+0
| | | | | | | | | | | OpenEmbedded doesn't officially use a bug tracker anymore, and a message asking the user to fix the metadata could be applied to almost any error that occurs, so just remove the whole message. (From OE-Core rev: ee486e30432ffd3ef97ba16511a9a1a38bad3826) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/base: note variable name in COMPATIBLE_* skip messagesPaul Eggleton2012-01-171-2/+2
| | | | | | | | | | When raising SkipPackage for COMPATIBLE_MACHINE and COMPATIBLE_HOST exceptions, include the name of the variable as a hint to the user. (From OE-Core rev: c9f6fd20cf65799714b45a7bdfc3dd022b3d79cd) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: quote pathname given to objdumpEnrico Scholz2012-01-171-2/+2
| | | | | | | | | | Packaging will fail with executable files containing spaces in their names. Patch quotes the parameter passed to 'objdump'. (From OE-Core rev: 7f7db286ca0b70bd5cce643c3b84f77ad45cc786) Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types_uboot.bbclass: Add uncompressed ext2 image optionMatthew McClintock2012-01-171-1/+5
| | | | | | | (From OE-Core rev: 1a8e02fee858fa9569f2e980ebff0698e4a53d36) Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types.bbclass: Fix generating uncompressed ext2 imagesMatthew McClintock2012-01-171-1/+6
| | | | | | | (From OE-Core rev: d0687295456bcf240be657e6b5b508f718ca9ebd) Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg: Account for FAT filesystem overhead in image sizeDarren Hart2012-01-171-9/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #1852] The bootimg class wasn't accounting for non-trivial amount of space required by the directory entries and FATs for the FAT filesystem. This patch attempts to make an accurate prediction of FAT overhead and adjusts the image size accordingly. It assumes no more than 16 directory entries per directory (which fit in a single sector). It also assumes 8.3 filenames. With the ceiling functions rounding up to full sectors and tracks, these assumptions seem reasonable. In order to ensure the calculations are accurate, this patch forces the FAT size to 32, rather than allowing mkdosfs to automatically select 12, 16, or 32 depending on the image being built. Tested by setting BOOTIMG_EXTRA_SPACE=0 and building core-image-minimal and core-image-sato for fri2-noemgd from meta-intel. (From OE-Core rev: 68aa18609c10a3ae2f738930c933fa2a95ce8959) Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe.license: avoid the need to catch SyntaxErrorChristopher Larson2012-01-171-3/+1
| | | | | | | (From OE-Core rev: cace9ddc0edd654877d968643960fa4343472b58) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe.license: add is_included convenience functionChristopher Larson2012-01-171-19/+4
| | | | | | | | | | | | | | | | | | | | | | Given a license string and whitelist and blacklist, determine if the license string matches the whitelist and does not match the blacklist. When encountering an OR, it prefers the side with the highest weight (more included licenses). It then checks the inclusion of the flattened list of licenses from there. Returns a tuple holding the boolean state and a list of the applicable licenses which were excluded (or None, if the state is True) Examples: is_included, excluded = oe.license.is_included(licensestr, ['GPL*', 'LGPL*']) is_included, excluded = oe.license.is_included(licensestr, blacklist=['Proprietary', 'CLOSED']) (From OE-Core rev: 7903433898b4683a1c09cc9a6a379421bc9bbd58) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* copyleft_compliance: add debug message with the reason for exclusionChristopher Larson2012-01-171-7/+17
| | | | | | | (From OE-Core rev: 02101bbe08a5cd6e5eecb21f2095c15ebfe9287f) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* copyleft_compliance: add control of recipe types to includeChristopher Larson2012-01-171-3/+18
| | | | | | | | | | | In this context, recipe "type" refers to whether it is 'target', 'native', 'cross', etc. COPYLEFT_RECIPE_TYPES is a space separated list of types to include. It defaults to 'target'. (From OE-Core rev: 045e8a409ffe23d4f562b2982bfeee6e45f3c0d9) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: fix elf.arch not matching error for x32 kernelNitin A Kamble2012-01-171-1/+2
| | | | | | | | | | | | | For x32 the user space is 32bit and the kernel is 64bit. So the elf.arch for vmlinuz is x86_64 and not x86. This commit fixes this QA error thrown for x32 kernel. | ERROR: QA Issue: Architecture did not match (62 to 3) on /work/qemux86_64-poky-linux-gnux32/linux-korg-3.1+git1+e2bf8464ddbf5da24d3d320cded5691828a91a0b-r1/packages-split/kernel-vmlinux/boot/vmlinux-3.1.0-yocto-standard-01628-ge2bf846 (From OE-Core rev: 74686edafa241839d3880e06740ee7450ff94fd8) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* locale: fix package's "provides" tagNitin A Kamble2012-01-171-3/+0
| | | | | | | | | | | | | | | | | | | | | Fixes this bug: [YOCTO #1874] Fixes an issue where a locale package depends on one package while it also provides the same, as seen bellow. Package: locale-base-de-de Version: 2.12-r19 Depends: eglibc-binary-localedata-de-de Provides: virtual-locale-de-de, virtual-locale-de, eglibc-binary-localedata-de-de Actually the eglibc-binary-localedata-de-de is ia separate package, and it should not be part of provides of the locale-base-de-de. (From OE-Core rev: 49c5ff7197b44c7d29d31506c2425b86bc2c1ff6) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildstats: tolerate absence of /proc/diskstatsJean-François Dagenais2012-01-161-10/+15
| | | | | | | | | | | | | In OpenVZ containers (and probably lx containers as well), the diskstats entry is not even present. Use the "NoLogicalDrive" introduced by Elizabeth Flanagan in such case. This allows the bitbaking to occure within such containers. (From OE-Core rev: 16e09b850dcb44cb1afe411439e40a4bae7e8002) Signed-off-by: Jean-François Dagenais <jeff.dagenais@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* patch.bbclass: Ensure the DATE and SRCDATE variable exclusions apply to the ↵Richard Purdie2012-01-131-1/+3
| | | | | | | | | | | | | correct function People have noticed that sstate is now getting invalidated very readily. The issue is that the code using these variables was factored into a new function but the variable exclusion was not. This patch moves the variable exclusion to the correct place allowing the sstate checksums to work correctly. (From OE-Core rev: bd047935305c872b565f30b46c94b7077e5fb3a2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: per recipe PRSERV_HOST supportLianhao Lu2012-01-111-0/+8
| | | | | | | | | | [YOCTO #1126] Added per recipe PRSERV_HOST PRSERV_PORT support. (From OE-Core rev: d5b8caac0e7fc4b05c76b4d3da0508e2a53f28cd) Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta/PRService: Added export/import fuctions.Lianhao Lu2012-01-114-25/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [YOCTO #1556] - Modified meta/class/package.bbclass and prserv.bbclass according to the change in PR service by adding PACKAGE_ARCH into the query tuple. - Added prexport.bbclass, primport.bbclass to export/import AUTOPR values from/to PRService. - Move PR service related common code to lib/oe/prservice.py. - Supported reading the AUTOPR values from the exported .inc file instead of reading it from remote PR service. - Created a new script bitbake-prserv-tool to export/import the AUTOPR values from/to the PR service. Typical usage scenario of the export/import is: 1. bitbake-prserv-tool export <file> to export the AUTOPR values from the current PR service into an exported .inc file. 2. Others may use that exported .inc file(to be included in the local.conf) to lockdown and reproduce the same AUTOPR when generating package feeds. 3. Others may "bitbake-prserv-tool import <file>" to import the AUTOPR values into their own PR service and the AUTOPR values will be incremented from there. (From OE-Core rev: 9979107d8eaf503efd921564385859b1e83dbb3c) Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Incremental rpm image generationRobert Yang2012-01-113-13/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Incremental rpm image generation, the rootfs would be totally removed and re-created in the second generation by default, but with INC_RPM_IMAGE_GEN = "1", the rpm based rootfs would be kept, and will do update(remove/add some pkgs) on it. NOTE: This is not suggested when you want to create a productive rootfs For example: 1) Add the follow config option to a conf file: INC_RPM_IMAGE_GEN = "1" 2) bitbake core-image-sato modify a package bitbake core-image-sato The rootfs would not be totally removed and re-created in the second generation, it would be simply updated based on the "package". Implatation: 1) Figure out the pkg which need to be removed or re-installed, then use 'rpm -e to remove the old one. Use the rpm's BUILDTIME to determine which pkg has been rebuilt. 2) Figure out the pkg which is newly added, and use 'rpm -U' to install it. This only for the rpm based rootfs, the deb and ipk based rootfs would be done later. [YOCTO #1651] (From OE-Core rev: 575ba3c9e153a1d8ac228a99a03ca2df5fbca151) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass base.bbclass: support for 'or' operand in LICENSE and for ↵Andrei Gherzan2012-01-102-2/+46
| | | | | | | | | | | | | | | | | | SPDX license names A new function was defined in license.bbclass in order to correctly exclude packages where OE-Style licence naming is used. In this way licenses as GPL-3, GPLv3, GPLv3.0 etc will be excluded from a non-GPLv3 build. This function takes into consideration if 'or' operand is used. The function defined in license.bbclass is called in base.bbclass where packages are excluded based on INCOMPATIBLE_LICENSE variable. [YOCTO #1884] [YOCTO #1844] (From OE-Core rev: 28456593be0b7e15bb51595d547d7e5347cce24b) Signed-off-by: Andrei Gherzan <andrei at gherzan.ro> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools.bbclass: Introduce CACHED_CONFIGUREVARSKhem Raj2012-01-101-1/+1
| | | | | | | | | | | | | | | | | | This variable is for holding the cached configure variables to be specified in recipes. e.g. CACHED_CONFIGUREVARS += "ac_cv_foo=yes ac_cv_bar=no" This will make sure that the variables are not detected by configure. This is useful in cross builds where some features can not be detected correctly by configure and having it as a variables gives us capability to override it (From OE-Core rev: e48fd42e047f46399828a074c5125a0ce9c3f56f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gtk-icon-cache.bbclass: add -f option to gtk-update-icon-cache in postinstSteve Sakoman2012-01-101-1/+1
| | | | | | | | | | | | | The gtk-update-icon-cache utility does not create a cache file if one does not already exist. Since some packages (notably gnome-icon-theme) do not ship a cache file by default, the results of the utility are not saved. Adding the force option writes out the cache even if there wasn't a default cache in the package. (From OE-Core rev: b3bb99c6faaf5c1613246309fd05cd95c39c77f4) Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* add sysroot support for meta-ide-support which is the toolchain within build ↵Jessica Zhang2012-01-101-4/+5
| | | | | | | | | env case (From OE-Core rev: 3b2bbbf965f31088bcb796e8a55966a2fc180349) Signed-off-by: Jessica Zhang <jessica.zhang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: Use ?= to set LINGUAS_INSTALLDongxiao Xu2012-01-061-1/+1
| | | | | | | | | | Hob may dynamically sets BBLAYERS to bitbake server, thus we need a flexible way to load LINGUAS_INSTALL value. (From OE-Core rev: c5c3689b7102cc0c281de736c215d66dd4f1e874) Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qt4x11.bbclass: add QT_BASE_NAME for use in recipesOtavio Salvador2012-01-061-0/+1
| | | | | | | (From OE-Core rev: 4cda1fcae29dfbe494033bac1256f6bc5cd298e0) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qt4e.bbclass: add QT_BASE_NAME for use in recipesOtavio Salvador2012-01-061-0/+1
| | | | | | | (From OE-Core rev: 45ee6b25c6e15f562207e97690f8cae7123102f8) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto: use src_patches for out of tree kernel feature supportBruce Ashfield2012-01-061-2/+65
| | | | | | | | | | | | | | | To support larger out of tree kernel features and enhanced patching schemes, this changeset modifies the linux-yocto patching routines to call the recently factored out 'src_patches' routine. Using the returned list of local URIs for all valid patches, the logic can then determine whether or not patches can be used in place, or need to be migrated and have re-usable kernel features created. The results are then fed to the existing infrastructure to be applied and commited to the tree. (From OE-Core rev: dca97bbdbfc88c91287e74eb6a3974277f1028b7) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: remove redundant package history checking stubPaul Eggleton2012-01-061-11/+0
| | | | | | | | | | | | The code that would have gone here has been superseded by the buildhistory analysis functionality implemented in meta/lib/oe/buildhistory_analysis.py and scripts/buildhistory-diff, so remove it. (From OE-Core rev: 5c8d583a12c507788c746637d5b4ddea62b0a629) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: make the package version backwards error non-fatalPaul Eggleton2012-01-061-1/+1
| | | | | | | | | | | Just make it a bb.error when a package version goes backwards, it doesn't make sense to fail the build immediately; the error(s) will still be reflected in bitbake's exit code. (From OE-Core rev: d3e70e0ed1ece5c8eb7f9c1c8140d3bd7b4333cf) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: add hostname to commit messagePaul Eggleton2012-01-061-1/+2
| | | | | | | | | | If we're building on multiple hosts then it's useful to have the hostname in the commit message. (From OE-Core rev: abf3e7f7f56cc8bcdf104d8e27e7e366b0619ed6) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-mklibs/package_ipk: Remove bashismsRichard Purdie2012-01-052-3/+7
| | | | | | | | | We now support using dash but these bashisms triggered build failures for me when using it. This replaces the code with something which works on dash. (From OE-Core rev: 4a85312568a6bb052cc511c15b4ae842ff7f8e59) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: use bb.process.Popen instead of subprocess.check_outputScott Garman2012-01-051-10/+6
| | | | | | | | | | | | | | | | | | | | subprocess.check_output was only introduced in Python v2.7, so we cannot use it. This refactors the QA test to use bb.process.Popen instead. This fixes the error: AttributeError: 'module' object has no attribute 'check_output' It no longer checks the return status of prelink-rtld, as that case was simply adding noise. This QA test is intended to only warn about specific paths that binaries could be linking to, not handle the case where there is a missing library. (From OE-Core rev: 0443487fe0bc628db9b03306bdc9dcdb39a121dc) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib: Abstract class extension code into classextend.pyRichard Purdie2012-01-052-80/+26
| | | | | | (From OE-Core rev: 563828bad19a242bba9ce3db461bb5807037dfdf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* native.bbclass: Fix variable remapping coverageRichard Purdie2012-01-051-1/+1
| | | | | | | | | | | | | | | | | When looking for RDEPENDS to process, bitbake iterates through PACKAGES *and* PN. Since native.bbclass sets PACKAGES to be empty, its pointless remapping the list of PACKAGES since this does nothing. There is a problem since *_${PN} are used by bitbake but not remapped by the native.bbclass class extension code. This changes the code to remap _${PN} in both expanded and unexpanded forms. As a result of this, various surprising dependencies are uncovered and the patch rectifies those. These are real bugs since they're injecting unneeded (unremapped) dependencies into the dependency chain. (From OE-Core rev: 0f485bfd6fc82a109b9da629e464fca1e90faec3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: add QA tests for unsafe references to exec_prefixScott Garman2012-01-051-2/+109
| | | | | | | | | | | | | | | | | | | | | | Files under exec_prefix (commonly /usr) may not be available during system recovery. exec_prefix may also be kept on a separate partition that is mounted late in the boot process. This QA test throws an warning if a binary in base_[bindir|sbindir|libdir] is dynamically linked to a file under exec_prefix. The intention is to turn this into an error in the near future. It also checks executable non-binaries (e.g, shell scripts) in the above base directories with a simple grep test to look for references to exec_prefix. This test only produces a warning, since false positives are likely. This fixes [YOCTO #1008] (From OE-Core rev: 3e9c368a8045044736fc7e348404060498c7491b) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types: Fix rootfs size calcuationSaul Wold2012-01-051-1/+1
| | | | | | | | | | | | The ROOTFS_SIZE calculation was not correctly taking into account the IMAGE_ROOTFS_EXTRA_SPACE variable, it would only be applied if the size as determined by the ((du * overhead) + extra space) was greater than the IMAGE_ROOTFS_SIZE, so if the du * overhead was smaller (From OE-Core rev: 73db21a65fbdaf0886a01bcd98ee66e73a7465b8) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/update-alternatives: fix typos and grammarPaul Eggleton2012-01-051-6/+6
| | | | | | | (From OE-Core rev: b63fd2c71b9d5d3bcaa98fe08b2e65db8c2bf6d1) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: remove some redundant/unnecessary variable exportsPhil Blundell2012-01-042-0/+3
| | | | | | | | | | | | | | Specifically... SLOT: apparently redundant, deleted. STAGING_IDLDIR: likewise QMAKE_MKSPEC_PATH: no longer exported, moved to qmake_base.bbclass STAGING_SIPDIR: no longer exported, moved to sip.bbclass (From OE-Core rev: 3dcbc8a700a3e7474026e858b1d20e9ff89a5eb1) Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_ipk.bbclass: Ensure the correct environment is setup for ↵Richard Purdie2012-01-041-0/+5
| | | | | | | | | | | | | | | postinstalls Without this, various postinstalls get run with incorrect environments leading to various failures when building the toolchains. This adds some duplication and some variables we'd be better off removing. It does unbreak the SDK ipk code for now though. This needs revisiting. (From OE-Core rev: c5e6a533eab2f5af4a52d22f8efe5b49b77cd26c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory: improve git commit robustnessPaul Eggleton2012-01-031-4/+17
| | | | | | | | | | | | | | * Check if BUILDHISTORY_DIR exists before doing anything with it, in case no tasks that would have created it have executed * Ensure the git repo in BUILDHISTORY_DIR is initialised with "git init" before attempting to do anything with it * Check if any files have been added or changed before adding and committing, to avoid an error from "git commit" (From OE-Core rev: 8eff4fea13317a741114f2a2e8e228d0155ba64c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools.bbclass: fix cp error for empty dirNitin A Kamble2012-01-031-1/+3
| | | | | | | | | | | | | | | | | the .../usr/share/aclocal is empty for build from scratch. so avoid cp error if the directory is empty. Fixes this error, which is thrown before pseudo is built: | cp: cannot stat `/builddisk/build/build0/tmp/sysroots/x86_64-linux/usr/share/aclocal/*': No such file or directory NOTE: package libtool-native-2.4.2-r0.0: task do_configure: Failed (From OE-Core rev: f4ffe39450c3da33b24766a5f83ad06cc8ff950c) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types: Ensure /init exists for cpio rootfs archivesDarren Hart2012-01-031-2/+8
| | | | | | | | | | | | | | In order for the kernel to accept an initramfs as a rootfs, it must have /init - even if it is an empty file. Touch /init to ensure it exists for cpio and cpio.gz image types. When used with initrd and rootfs=/dev/ram0, this allows the cpio and cpio.gz images to be used as the rootfs. (From OE-Core rev: 849b9aadae41d9b6777787213556bc538858b49a) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rpm: Fix rpm database files capacity issue.Mei Lei2012-01-031-0/+3
| | | | | | | | | | | | Tune the __db* size in DB_CONFIG. This will reduce the __db* size from 62MB to 26MB in qemu. [YOCTO #1769] (From OE-Core rev: 32d308bb38612cef2a98a4c40f058b4db50787aa) Signed-off-by: Mei Lei <lei.mei@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: implement generic locale package installationPaul Eggleton2012-01-034-55/+84
| | | | | | | | | | | | | | | | | | | | | | 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>