summaryrefslogtreecommitdiffstats
path: root/meta/classes/insane.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* insane.bbclass: add QA check: file-rdepsRobert Yang2014-09-101-1/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ipk or deb can't depend on file such as "/bin/bash" or "/usr/bin/perl", so it knows nothing about the pkg depends bash or perl, thus there would be dependencies problems when we run "apt-get install/remove <pkg>" on the target, this check can help us find the issues and then fix them manually. * Benefits: - Help to fix file rdepends issues for ipk and deb - Help to fix abnormal rdepends. - Help to check whether the rdepends is OK or not after build each recipe (don't have to install to the image), for example, a recipe may generate 10 binary packages, only a part of them will be installed to the image by default, we can know whether the rdepends are OK or not for the ones which are installed, but can't know the ones which are not installed, this patch can help check all the 10 binary packages' rdepends. * Basic designs: - Get all the RDEPENDS on the chain. - Get the pkg's FILERPROVIDES from oe.packagedata.read_subpkgdata() and save to set filerdepends. - Get each RPDEPENDS' FILERPROVIDES, RPROVIDES and FILERPROVIDESFLIST, and save to set rdep_rprovides. - Do the set "filerdepends -= rdep_rprovides" and QA issue if filerdepends is not null. [YOCTO #1662] (From OE-Core rev: cd5e0f01cdb4e7c759c01cf3f87952a20253737c) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* test-dependencies, insane.bbclass: improve the messageMartin Jansa2014-08-111-1/+1
| | | | | | | (From OE-Core rev: b73e6159aed1a9768d02d12e7894ca0f1e72be69) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Use a warning for FILEEXTRAPATHS issues for nowRichard Purdie2014-07-251-1/+1
| | | | | | (From OE-Core rev: f907b3a5b414aa53ce8271763f04532d7127006f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: add checking to standardize how .bbappend files do FILESEXTRAPATHSHongxu Jia2014-07-251-0/+13
| | | | | | | | | | | | | | | | | | | When adding patches or config files from bbappend files, it requires the use of FILESEXTRAPATHS, which has been an issue and failure point for people starting to work with bitbake and oe-core. We add checking to standardize how to use FILESEXTRAPATHS. Only the format of: FILESEXTRAPATHS_append := ":${THISDIR}/Your_Files_Path" or FILESEXTRAPATHS_prepend := "${THISDIR}/Your_Files_Path:" is acceptable. [YOCTO #5412] (From OE-Core rev: 69e083237e632f7d84a7b218dd12d1a5ad95a229) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Add build depends checkRichard Purdie2014-07-251-3/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we can get the task dependency tree from bitbake, we can start to use this to strengthen our QA checks. If a dependency is added on something which isn't in our dependency tree, that is obviously a bad thing for example. This patch therefore checks the RDEPENDS against the list of tasks and ensures we do have a dependency present, if not a QA warning or error can be issued through the usual mechanism. The implementation is complicated by needing to resolve the RDEPENDS to a PN using pkgdata. Its possible that can be an RPROVIDES of another package so we need to check that too if it isn't a direct RDEPENDS. To allow this test to work, we need to extend the do_package_qa dependencies to include all RDEPENDS. In practise the do_package_write_* tasks already do this so there should be no new circular dependencies or any issues like that. For now the issues are warnings as there are issues this finds in OE-Core which need to be resolved and certainly will be in other layers too. This change should simplify and assist some of Martin's dependency scripts, the idea for this came from a discussion with Martin. It has changed in that it doesn't just cover shlibs dependencies but checks all dependencies. (From OE-Core rev: f6cb24cf2255297308ef57399a6be407129d9b8f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: avoid QA errors for n32 kernelMing Liu2014-07-191-2/+2
| | | | | | | | | | | | | | | A series of commits had been integrated to avoid qa checking code throwing the bitsize not matched error for x32 kernel files, the same logic is also needed by n32 kernel which was not addressed in that series. This commit extends the condition for n32 kernel files. (From OE-Core rev: 6a169be15439f12169869ecef890594796e70e58) 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>
* classes/insane: Show QA check nameChong Lu2014-07-161-34/+32
| | | | | | | | | | | | | | | | | QA errors/warnings would show the name of the QA failure in the error/warning message. The format is listed: <message> [QA check name] You can see which QA check you need to disable if you want to disable it. [YOCTO #6160] (From OE-Core rev: a5ea622a8e012d3263bc36b6239ee43a4d1fb0ee) Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Ensure do_package_qa happens after do_packagedataRichard Purdie2014-07-111-1/+1
| | | | | | | | | We're relying on the packagedata being available for this task to work correctly so lets ensure it is with the correct dependency. (From OE-Core rev: fa325e44f5b429b4038022b31285af9c94672943) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Split do_package_qa into a separate task (from do_package)Richard Purdie2014-07-101-3/+22
| | | | | | | | | | | | | | | | | | | | Its possible to run the package QA checks as a separate task rather than as part of the do_package task. This offers more parallelism but the fact that made me propose this is that ideally we'd like to access pkgdata to help add new tests and to do that, we need to run later in the task list. We also need to add in RDEPENDS to the task which apply to do_package_write_* but not do_package. See the subsequent patches for why this is desireable. If we split into a separate task, we need to add in calls to read the sub package data, build the cache structure used by do_package and cover the task with sstate (which is empty and just acts as a stamp saying it passed package QA). We also need to handle our own dependencies. (From OE-Core rev: d31f75a72cb2322f753d945da86d5f3287eef06b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* siteinfo, insane: Recognize musl specific tripletsKhem Raj2014-06-011-0/+21
| | | | | | | | | | | We will use '-musl' to identify musl based systems this patch lays the foundation for recognising those and map them to internal variable representations (From OE-Core rev: 9cd77aed67373e33dc69158ab02b94d7045c1119) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Special case kernel modules for x32 targetsNitin A Kamble2014-03-071-2/+2
| | | | | | | | | | | | | | | | The Kernel module packages for x32 target have 64 bit binaries, which breaks the QA_check expecting all the packages to be 32bit. Make a special case for kernel module packages for x32 targets, to avoid this false error. Fixes Bug: [YOCTO #5903] (From OE-Core rev: a4261ab92735abfba835e916931d2e920f335aaa) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: check packages for absolute symlinks to the tmpdirRoss Burton2014-03-071-0/+13
| | | | | | | | | | | Add a sanity test that checks for symlinks in packages that point into the TMPDIR on the host. (From OE-Core rev: 9e28808a6d6f47dc10ad87b878c7e912c2bbe16f) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Fix python function whitespace changesRichard Purdie2014-02-031-96/+96
| | | | | | (From OE-Core rev: 9dee6c2fe0d1882521c0f9a6998257a652845854) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/insane: restore printing LIC_FILES_CHKSUM checksum if not specifiedPaul Eggleton2013-12-211-13/+14
| | | | | | | | | | | | | | | | OE-Core rev ec8590aa81e201e28e500935d31cd7266114471f (by me) unintentionally disabled printing the actual checksum value if no checksum was specified, i.e.: LIC_FILES_CHKSUM = "file://COPYING;md5=" Printing the actual checksum in this case is really useful when writing a new recipe, so put this back in. (From OE-Core rev: e58cdd385584d7449236e6b1dc1bce0cbc8f2a0a) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: handle recursive configures when checking for unknown configure optionsRoss Burton2013-12-161-2/+4
| | | | | | | | | | | | | | Some recipes have configure scripts that recursively call other configure scripts (e.g. dropbear). These multiple-line matches were not being handled correctly, so iterate over every matching line instead of assuming only one line was found. [ YOCTO #5646 ] (From OE-Core rev: b226ab4cf7779f4dfaa78210cb6249766ed564c1) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* xorg-driver: fix qa issue while multilib enabled - contains Xorg driver but ↵Hongxu Jia2013-11-201-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | no xorg-abi ... WARNING: QA Issue: Package lib32-xf86-video-vesa contains Xorg driver (vesa_drv.so) but no xorg-abi- dependencies WARNING: QA Issue: Package lib32-xf86-video-intel contains Xorg driver (intel_drv.so) but no xorg-abi- dependencies WARNING: QA Issue: Package lib32-xf86-video-omap contains Xorg driver (omap_drv.so) but no xorg-abi- dependencies WARNING: QA Issue: Package lib32-xf86-video-vmware contains Xorg driver (vmware_drv.so) but no xorg-abi- dependencies WARNING: QA Issue: Package lib32-xf86-video-fbdev contains Xorg driver (fbdev_drv.so) but no xorg-abi- dependencies WARNING: QA Issue: Package lib32-xf86-video-modesetting contains Xorg driver (modesetting_drv.so) but no xorg-abi- dependencies ... In oe-core 87be2314fe0e67a616b4f713106b4ae46931f5cb, it fixed add_abi_depends issue while enable multilib. We did the same thing for qa check: package_qa_check_xorg_driver_abi. [YOCTO #5545] (From OE-Core rev: 3132d8b52eb05b03df4d4589f94cff38ab69b81d) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/insane: improve LIC_FILES_CHKSUM messagesPaul Eggleton2013-11-141-3/+13
| | | | | | | | | | | | | | * If the md5 parameter is specified with no value, report that the checksum is not specified instead of reporting that it has changed * If the md5 checksum has changed, point directly to the license file in a way that is easy to copy and paste and give the line numbers in an easy to read form, as well as asking the user to verify that the new contents matches the current LICENSE value. (From OE-Core rev: ec8590aa81e201e28e500935d31cd7266114471f) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane, license: Trap MalformedUrl exceptions when parsing LIC_FILES_CHKSUMPhil Blundell2013-11-121-1/+4
| | | | | | | | | | | | | | | | | bb.fetch.decodeurl() will throw if it doesn't like the look of the URL that it's given. (Bitbake's idea of what constitutes a valid URL is somewhat idiosyncratic so it is fairly easy to trip over this by mistake when writing a recipe.) If these exceptions are allowed to propagate all the way up to better_exec() then we will get a large amount of python stack trace spew when they are finally caught. Avoid that by catching them locally and throwing bb.build.FuncFailed() with a suitable explanation instead. (From OE-Core rev: ef35e164c62d89806367b822e3baeff482ec237f) Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: add aarch64_be targetVictor Kamensky2013-10-141-0/+1
| | | | | | | | | | Add big endian ARMv8 target to OE infrastructure (From OE-Core rev: 570ae1afecc88b12a11e62a4341069c125d18403) Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org> Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: configure option checkingRoss Burton2013-10-141-0/+20
| | | | | | | | (From OE-Core rev: 1b51688d2ea5174334cc8a8a559461b2c4a15a77) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Remove double slash from PATH_prepend and PKG_CONFIG_DIRMartin Jansa2013-10-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * we correctly have ${STAGING_DIR_NATIVE}${base_sbindir_native} and then double slash in ${STAGING_DIR_NATIVE}/${base_bindir_native} * similar in PKG_CONFIG_DIR where libdir also starts with slash ${STAGING_DIR_HOST}/${libdir}/pkgconfig * also fix double slash in insane.bbclass and staging.bbclass * I was a bit nervous about staging change (in case the / was important in some weird use-case, but the extra slash is there since following commit where other extra slashes were removed only the one before libdir was kept: commit 6ea78d648951e5bbe9669412c0863daaf7f49ca5 Author: Richard Purdie <rpurdie@linux.intel.com> Date: Mon Nov 2 17:10:51 2009 +0000 autotools.bbclass: Separate out useful staging functions into base.bbclass and call from autotools classes * this isn't fixing any real-world issue AFAIK, I was just trying to debug one weird case where debugedit fails with canonicalization unexpectedly shrank by one character and it's easier to grep for '//' without many harmless instances already in run* scripts etc (From OE-Core rev: 0ddaf52e9e344986ae2b016cc068d9eee71b4347) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: don't abort if workdir is not TMPDIR/workRoss Burton2013-09-221-4/+1
| | | | | | | | | | The BASE_WORKDIR variable can be used instead of enforcing WORKDIR being TMPDIR/work (and aborting the build if it isn't). (From OE-Core rev: 176a36ace1624f3bbe498307aeabbd7935de14e6) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: Don't use deprecated bitbake APIRichard Purdie2013-09-011-1/+1
| | | | | | | | | | These have been deprecated for a long time, convert the remaining references to the correct modules and prepare for removal of the compatibility support from bitbake. (From OE-Core rev: 6a39835af2b2b3c7797fe05479341d71a3f3aaf6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory: use package_qa_handle_error for version-going-backwardsMartin Jansa2013-08-121-0/+1
| | | | | | | | | | | * this way it's easier for distro to select if such issue should be error, warning or ignored and also it gets recorded in qa.log (From OE-Core rev: 44624853de8c88abdcae2ccd0902b390ff546d4c) 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>
* classes/insane: allow libdir QA check to be skipped using INSANE_SKIPPaul Eggleton2013-07-181-14/+24
| | | | | | | | | | | | | | | | | | This path check isn't handled in the normal way where a QA check function is called for every file (there's some minor setup that we want to avoid doing for every file) so we need to check INSANE_SKIP explicitly. In the process, change the code structure a little bit so that we can report the package that contains the errant file. Fixes [YOCTO #4822]. (From OE-Core rev: 3bdbec1bdecc52828cbbf8108786ff076c981845) 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/insane: fix regression in libdir QA regexPaul Eggleton2013-07-181-1/+1
| | | | | | | | | | | There was a slight mistake in the recent change to the lib_re regex - it still needs to begin with a /. (From OE-Core rev: 194e47e6d8d9b9ee98e0203f0ebb574084277c46) 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>
* insane.bbclass: Added QA warning for shipping /usr/share/info/dirMihai Prica2013-07-051-1/+11
| | | | | | | | | | | | | | /usr/share/info/dir should be generated at install time in a postinst. Added QA warning to check at build time for this file. The warning is disabled by default. [YOCTO #3969] (From OE-Core rev: be93fa1d8fd601d95147980938217142c7d98c62) Signed-off-by: Mihai Prica <mihai.prica@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/insane: fix libdir check regexesPaul Eggleton2013-07-051-2/+2
| | | | | | | | | | | | Ensure these do not pick up e.g. /lib/systemd/system/uuidd.socket, but ensure we pickup e.g. /usr/lib/libnss3.so.1d (example from Debian). This also fixes the broken exec_re regex (lib*.). (From OE-Core rev: 391a361190d7da19ad3381121649a41a28516cb5) 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/insane: remove la2 check which no longer exists from ERROR_QAPaul Eggleton2013-06-281-1/+1
| | | | | | | | | | | | | | This check was actually removed a very long time ago in 6656381714c5956f71ca634f5a5f4aa4661bbf7e, before we even changed the QA checks to use names instead of numbers - the name was probably added ERROR_QA mistakenly because it hadn't also been removed from the comment listing the QA checks or the function that determined which ones were errors. (From OE-Core rev: ff65497cd9a96d5ab49b16ba1f7e30a216ff4a42) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: quiet package errors not in *_QAChristopher Larson2013-06-111-2/+4
| | | | | | | | | | | | | | | Currently, if a package QA type from package.bbclass is not listed in ERROR_QA, it gets shown, regardless of whether it's in WARN_QA. This differs from the behavior of the rest of the QA handling (which doesn't call package_qa_handle_error at all if it's in neither _QA variable), and is nonintuitive. Change this to use bb.note() if it's listed neither in ERROR_QA nor WARN_QA, so it ends up in the task logs, but doesn't clutter up the user's output. (From OE-Core rev: 8f5675e6d3eb8473f367de72d2d3d8a702011a47) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane/package: refactor packaging sanity testsRobert Yang2013-06-071-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor packaging sanity tests from package.bbclass to insane.bbclass so that the message can respect WARN_QA (print the warning message and go on the task) and ERROR_QA (print the error message and fail the task). - For the bb.warn(), give it a message name and add it to WARN_QA, then use package_qa_handle_error() to handle it. - For the bb.error(), give it a message name and add it to ERROR_QA, then use package_qa_handle_error() to handle it. - All the bb.warn() and bb.error() have been replaced in package.bbclass. - A few bb.warn() and bb.error() in insane.bbclass have been kept since they can not be replaced or doesn't have to, for example the bb.error() in package_qa_check_license(), it will print the error message and then invoke bb.fatal() to fail the task, I think that we don't have to replace it with package_qa_handle_error(). - Put all the WARN_QA and ERROR_QA in one line, so that they can be redefined by the user easily. [YOCTO #3190] [YOCTO #4396] (From OE-Core rev: 2f117ee615b703db07d3274ac592e2bd653743dd) 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>
* insane/package: let package.bbclass inherit insane.bbclassRobert Yang2013-06-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RP's comment: "What we're trying to do is move everything to use a standard mechanism for reporting issues of this type (do_package). With insane.bbclass, you can elect whether a given type of error is a warning or error and fails the task." * The package.bbclass had used package_qa_handle_error() which is from insane.bbclass, and we will use it for handling other warnings and errors, so let package.bbclass inherit insane.bbclass, this change will make the insane as a requirement (always included). * Change the "PACKAGEFUNCS ?=" to "+=", otherwise there would be an error like: Exception: variable SUMMARY references itself! This is because we let package.bbclass inherit insane.bbclass, and PACKAGEFUNCS has been set in insane.bbclass, so the "PACKAGEFUNCS ?=" will set nothing, then the "emit_pkgdata" doesn't run which will cause this error. * Add a QA_SANE variable in insane.bbclass, once the error type is ERROR_QA, it will fail the task and stop the build. [YOCTO #3190] [YOCTO #4396] (From OE-Core rev: 852dead71387c66ec0cba7c71e3814a74e409560) 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>
* bbclass: bb.fatal() clean upRobert Yang2013-05-161-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bb.fatal() is defined as: def fatal(*args): logger.critical(''.join(args)) sys.exit(1) So anything after bb.fatal() in the same code block doesn't have any effect, e.g.: bb.fatal("%s_%s: %s" % (var, pkg, e)) raise e The "raise e" should be removed. I searched all the files which use bb.fatal(), only the following 3 classes have this issues: insane.bbclass package.bbclass package_rpm.bbclass [YOCTO #4461] (From OE-Core rev: 4c47525c5a171b1282615c9fbc7d84addef85f92) 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>
* classes/insane: add check for PN in OVERRIDESPaul Eggleton2013-05-101-0/+5
| | | | | | | | | | | | | | If a recipe is named such that its PN value matches something already in OVERRIDES (such as when PN happens to be the same as MACHINE or DISTRO), it can have unexpected consequences. Assignments such as FILES_${PN} = "xyz" effectively turn into FILES = "xyz". Implements [YOCTO #4288]. (From OE-Core rev: c331f0a5cac765174a1b5de5c12aec7e965d4158) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* class/lib: Fix up various file access methodsRichard Purdie2013-05-091-11/+14
| | | | | | | | | | | | | | There are various bits of cruft that have built up around our file accesses. This patch cleans some of them up, specifically: * Remove pointless "from __builtin__ import file" * Use open(), not file() * Wrap file usage in a with container to ensure files are closed * Add missing .close() calls in some cases (From OE-Core rev: a43e0a8ecd0441131e929daf998c3cd454d9c8f3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Open file in binary modeRichard Purdie2013-05-091-1/+1
| | | | | | | | | We open the file we're writing to in binary mode so open the input stream with the same mode so things match. This avoids errors with python3. (From OE-Core rev: 4f47b3a4726dd47e8a6db228fcaf25d1890e3e52) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/recipes/lib: Fix various python whitespace issuesRichard Purdie2013-05-091-13/+13
| | | | | | | | | There are some left over tab characters in the python functions. This removes them and resolves python 3 errors. (From OE-Core rev: fafeb381c48291fa65c634c01c244843c8d7fad3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ptest bug fixesBjörn Stenberg2013-04-111-3/+3
| | | | | | | | | | | | | | | | | | | Move ${PN}-ptest to start of PACKAGES to ensure all ptest files are packaged in the -ptest package. Add QA exclusions to insane.bbclass to ensure -ptest packages can contain any files they need. Disable ptest for native packages. Don't emit errors on missing _ptest functions. (From OE-Core rev: 01bea4ef932e46eb2fcc8b4be7ff5e2b5b2a0978) Signed-off-by: Björn Stenberg <bjst@enea.com> Signed-off-by: Anders Roxell <anders.roxell@enea.com> Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Updated MicroBlaze machine definitionsNathan Rossi2013-04-081-2/+2
| | | | | | | | | | | | | | * Removed existing definition with machine 47787, this definition is outdated, a sanity error should occur if an ELF uses this value. * Added new definition with machine 189. This value replaces the existing value since August 2009. See binutils thread for more information. (http://sourceware.org/ml/binutils/2009-08/msg00127.html) (From OE-Core rev: 0c60d3b04eb77629abc3bbc2a6d8a2b8f0a44309) Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Add ALLOW_EMPTY to list of package specific variablesRichard Purdie2013-03-051-1/+1
| | | | | | | | | ALLOW_EMPTY should have a package specified so extend sanity checks to cover it. (From OE-Core rev: 02849a54d38c0b98db7ff6b52b4974ee0d88bfb4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Merge linux-gnu entries in machine dictionary and add sh4 ↵Kyle Farnsworth2013-03-011-3/+2
| | | | | | | | | | machine. (From OE-Core rev: 6e569c1aa66b2496b18d33803a18b99508152064) Signed-off-by: Kyle Farnsworth <kyle@farnsworthtech.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* siteinfo/insane: More n32 fixupsPeter Seebach2013-02-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | For perfectly sound reasons, n32 MIPS is a mips64 subset denoted by an ABI change, thus, "mips64-vendor-linux-gnun32" rather than "mips-vendor-linux-gnu". A previous change had fixed up insane.bbclass to recognize these, which mostly worked, but left SITEINFO_BITS set to 64. Since bit-32 is processed first, and there are specific checks for linux-gnun32, modify the mips64-linux-gnun32 lines to specify "bit-32", so things that check SITEINFO_BITS get the right answer. Also, drop the mips{,el}-linux-gnun32 lines, because that's not a valid combination; n32 only makes sense for mips64. Also, the insane.bbclass change spelled "mips64el" as "mipsel64", which no one noticed because no one's using little-endian n32, apparently. (From OE-Core rev: 0c243a550f5a0e539823fe168bcc7b2bbb9f19e1) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: remove unused variableRoss Burton2013-02-141-1/+0
| | | | | | | (From OE-Core rev: 1165a0b161ffc32258b0726e6ef3082d97dfb32a) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Add missing R* variables to pkgvarcheckMartin Jansa2013-02-061-1/+1
| | | | | | | | | * check also RSUGGESTS, RCONFLICTS, RPROVIDES, RREPLACES (From OE-Core rev: 63d9926dde562fd2447fc26482745c3b6f232c12) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging/insane.bbclass: Move legacy do_stage check iinto insane.bbclassRichard Purdie2013-02-061-0/+3
| | | | | | | | We might as well put all the sanity checks in one place. (From OE-Core rev: 05be11c7508984cc4aa757becb7a8f47c5b7e919) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Add documentation headers for logical code blocksRichard Purdie2013-02-061-0/+17
| | | | | | (From OE-Core rev: ac24487a05834cc9c02a95bbd281927d98c5886e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Add pkgvarcheck to check for suboptimal usages of variablesRichard Purdie2013-02-061-1/+9
| | | | | | | | | | | | | | | Check through the variables: 'RDEPENDS', 'RRECOMMENDS', 'FILES', 'pkg_preinst', 'pkg_postinst', 'pkg_prerm', 'pkg_postrm' and if there is a variable set which isn't package specific, inform the user of this. Using these variables without a package suffix is bad practise and complicates dependencies of packages unnecessarily as well as complicates the code. Lets convert the remaining issues and then we can take the small performance gain. (From OE-Core rev: 316228948e65f376f6c5be13ccd0c964ea630edf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package: Create global package file list and use throughout PACKAGEFUNCSRichard Purdie2013-02-011-3/+1
| | | | | | | | | | | | | Currently we do a signficant amount of tree traversal in many different places which in inefficient. We can assume that the files don't change and cache the file list which gives an efficiency improvement which this patch does using a global variable. (From OE-Core rev: 2d7608842d2dab07065e60aab729a5c8fd6b7907) (From OE-Core rev: 5c7c8347eb1bc25d194be6f4be142ba0924e2600) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: removing outdated commentLukas Bulwahn2013-02-011-2/+0
| | | | | | | | | | | | This commit removes an outdated comment that recorded an issue that has been resolved in the commits 1c75a5df6845090480deff20f469f177501d2182 and d2d5456cd3b3bd3e52a5dedccca4d46e3a7986d1. Probably, the comment was missed when changing the behavior in those commits. (From OE-Core rev: fb1b51e902186b6a7d05e511fe3c3f03c10e3444) Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: Fix incorrect getVar callRichard Purdie2013-01-301-1/+1
| | | | | | | | | | | | | On a trace I was a bit puzzled why getVar was making 180 calls to len(d). This is an expensive operation that should be very rarely called and certainly not by getVar. In perl's do_package it was resulting in ~1.5 million function calls from those 180 cases. Ultimately this typo was why. Lets fix it and save the CPU cyles. (From OE-Core rev: a8ba821d0002e4395fc5c80649fe14f93a7971fe) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>