summaryrefslogtreecommitdiffstats
path: root/meta/classes/sanity.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* sanity.bbclass: fix logging of an errorMarkus Lehtonen2016-11-151-1/+1
| | | | | | | | Fixes a crash in exception handler. All bb logging functions need an string instances as arguments. Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: split out config re-parse checkMarkus Lehtonen2016-09-161-15/+12
| | | | | | | | | | | | | | | Split out the functionality doing configuration re-parse check into a separate event handler that is hooked into ConfigParsed event. This will make config re-parsing actually work. Re-parsing in bitbake is triggered by setting BB_INVALIDCONF whose value is checked after configuration has been parsed (after ConfigParsed event). However, previously BB_INVALIDCONF was set in SanityCheck event handler which caused re-parsing never to happen. [YOCTO #10188] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: fix hardcoded references to gccJérémy Rosen2016-09-131-7/+7
| | | | | Signed-off-by: Jérémy Rosen <jeremy.rosen@smile.fr> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: Ensure we expand BUILD_PREFIXRichard Purdie2016-08-201-3/+3
| | | | | | | | This likely used to work when we expanded python functions and broke when we stopped. Since it defaults to "", it never caused an issue but is incorrect usage so fix it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Only verify /bin/sh link if it's a linkOlof Johansson2016-08-171-4/+5
| | | | | | | | If /bin/sh is a regular file (and not a symlink), we assume it's a reasonable shell and allow it. Signed-off-by: Olof Johansson <olof.johansson@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity: Switch urlparse to urllib.parseJeremy Puhlman2016-06-021-3/+3
| | | | | | | urlparse is replaced with urllib.parse functionality in python3 Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/lib: Convert to use python3 octal syntaxRichard Purdie2016-06-021-2/+2
| | | | | | The syntax for octal values changed in python3, adapt to it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Drop setting C localeRichard Purdie2016-06-011-1/+0
| | | | | | | | We really want the en_US locale as per the configuration and previous patches. Don't set it back to C as things will break under python3. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: check that the en_US.UTF-8 locale existsRoss Burton2016-05-301-0/+13
| | | | Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity: allow sftp and ssh mirrorsRoss Burton2016-04-131-1/+1
| | | | | | | | | | URLs in MIRRORS and PREMIRRORS are vetted against a hard-coded list of protocols which were missing sftp: and ssh:, so add them. [ YOCTO #9444 ] Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: fix a hardcode in check_path_length()Robert Yang2016-04-061-1/+1
| | | | | | | | * Fixed: 410 -> limit Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Increase minimum git version to 1.8.3.1Richard Purdie2016-04-051-2/+4
| | | | | | | | | | | | | The kernel tools assume git > 1.7.9.5, I'm unsure of the exact version but the oldest in our infrastructure is 1.8.3.1. The git fetcher also currently has nasty workarounds for git < 1.7.9.2. Moving to 1.8.3.1 as our minimum version seems sane at this point as the oldest we're testing/supporting. [YOCTO #6162] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Use pythonexception to raise real exceptions without backtracesRichard Purdie2016-03-301-2/+2
| | | | | | | | | | | | | If the sanity code encounters a version change is doesn't understand, the current output is unreadable and confusing for the user, particularly due to the presence of the backtrace. Use improved functionality in bitbake to improve this and correctly pass python exceptions around. [YOCTO #9291] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: use proper multi-line string literalsPaul Eggleton2016-03-261-4/+4
| | | | | | | | A python string literal isn't meant to be split over multiple lines unless it is explicitly multi-line. Use three quotes to indicate that. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: check host tool dependencies on change in NATIVELSBSTRINGBill Randle2016-03-241-3/+10
| | | | | | | | | | | | | When a user upgrades their host distro, it may no longer have all the required tools installed, but this won't be caught by bitbake resulting in possible build errors. Rather than check for installed tools on every startup, use the NATIVELSBSTRING change as indicator to rescan for host tool dependencies. Store the NATIVELSBSTRING in the sanity_info file. [YOCTO #8585] Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass cleanupBill Randle2016-03-241-3/+6
| | | | | | | | | | | | | | | Limit search for a version var name to start at the beginning of a line, otherwise, if the var name is used in a comment, that comment line will be replaced, rather than the desired assignment line. Move bblayer update message into function where it's actually updated, rather than assuming all successful config file update are to the bblayers.conf file. Replace a stray tab with spaces for consistency. [Fixes YOCTO #9318] Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: allow customizing config file update error messagesPatrick Ohly2016-03-201-3/+8
| | | | | | | | | The default file pattern may be amiguous and "meld" might not always be the preferred tool, so allow distros to override those parts of the error messages. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: fix success message when config file was updatedPatrick Ohly2016-03-201-1/+1
| | | | | | | | The code now iterates over different config files, but always printed a message about conf/bblayers.conf for each file. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: expand error messages for version checksPatrick Ohly2016-03-201-2/+5
| | | | | | | | | | | | | | | | | | | The ${WORKDIR} variable was not getting expanded (anymore?), leading to less helpful error messages like: Exception: NotImplementedError: Your version of bblayers.conf has the wrong LCONF_VERSION (has 7, expecting 8). Please compare your file against bblayers.conf.sample and merge any changes before continuing. "meld conf/bblayers.conf ${COREBASE}/meta*/conf/bblayers.conf.sample" is a good way to visualise the changes. ERROR: Execution of event handler 'check_sanity_eventhandler' failed After adding expansion, embedding ${LCONF_VERSION} and ${LAYER_CONF_VERSION} in the error message seems a bit more readable and consistent. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity: Do not mistake meta-yocto-bsp for meta-yoctoPeter Kjellerstedt2016-03-021-6/+12
| | | | | | | | | | | | | | | The code in oecore_update_bblayers() handling the transition from meta-yocto to meta-poky was not very resilient. It would, e.g., mistake meta-yocto-bsp for meta-yocto if the former occurred before the latter in BBLAYERS. The code also failed to update multiple existences of meta-yocto in the bblayers.conf file, e.g., if it was present in BBLAYERS_NON_REMOVABLE in addition to BBLAYERS (which it is by default). Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: remove conflict checking for image vm and liveRobert Yang2016-03-021-12/+0
| | | | | | | [YOCTO #9161] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity: Fix int verses string referenceRichard Purdie2016-02-281-2/+2
| | | | | | The sanity update code needs to be passed an int, not string. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mirrors/own-mirrors/sanity: Updates after npm fetcher additionRichard Purdie2016-02-281-1/+1
| | | | | | | Update the classes after the addition of the npm fetcher to match the other fetcher additions. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Improve configuration upgrade capabilities (support meta-yocto -> ↵Richard Purdie2016-02-281-33/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | poky transition) Right now, only one configuration file can be processed (conf/bblayers.conf) and it can only have one version number. This is a cause of immense friction between OE-Core and Poky since if one needs a version change, it shouldn't be forced on the other. We'd like to rename the meta-yocto layer (within the meta-yocto repository) to meta-poky. To do this, we need to correct the bblayers.conf file and that means changing the sanity version. After the pain this caused the last time, Paul made me promise never to have them out of sync between OE-Core and Poky, equally, having every distro changing config update OE-Core isn't scalable either. This patch changes the sanity upgrade method to list a more generic format: <config file>:<current version variable name>:<required version variable name>:<upgrade function> This in theory allows us to support upgrades to any of the core configuration files, and allow layers to extend them as needed. Files with the same name can be handled in different layers by setting a unique version name variable in the file itself. The upgrade code is only called if the version variable is set. To allow us to make the poky name change and use a new configuration file name, one last version bump is included for poky to handle the transition. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: check_perl_modules provide output when failAníbal Limón2016-02-111-2/+4
| | | | | | | | When check_perl_modules fail is a good idea to print perl interpeter output for debug purposes. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: add more information to error message about TUNE_PKGARCH ↵Martin Jansa2016-01-071-1/+2
| | | | | | | | | | | | missing in PACKAGE_ARCHS * sometimes it's hard to see what's wrong here * error message: Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (cortexa7t2hfhf-vfp-vfpv4-neon). doesn't help much to understand what exactly went wrong and where Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity: don't enforce DISPLAY for testimageRoss Burton2015-12-011-8/+0
| | | | | | | Now that qemurunner doesn't need DISPLAY set, let whether DISPLAY is set be up to the user. Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity: check that the host has file installedRoss Burton2015-10-241-1/+1
| | | | | | Now that file-native is ASSUME_PROVIDED, check that it's actually present. Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: expand warning when chmod failsAlex Franco2015-10-211-2/+2
| | | | | | | | | | As suggested, add exception message to warning in sanity.bbclass when chmod fails on TMPDIR. [YOCTO #7669] Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: show warning when chmod failsAlex Franco2015-09-281-3/+6
| | | | | | | | | | | | * for some reason this part of: http://patchwork.openembedded.org/patch/102561/ wasn't ever merged. [YOCTO #7669] Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: remove abspath warning for SSTATE_MIRRORSChristopher Larson2015-09-111-2/+0
| | | | | | | | | The sstate URI is relative to begin with, so it's completely valid to want to alter it in a way that keeps it relative using a mirror, and I have real world cases where this is causing issues. Remove the warning. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* Fix mode +st on TMPDIR when creating itAlex Franco2015-08-311-0/+5
| | | | | | | | | | | | | A sanity check fails when TMPDIR has setuid, setgid set. It was proposed to fix this on TMPDIR creation instead of failing with a sanity test only. This patch handles removal of those special bits (and additonally, the sticky bit) from BUILDDIR and TMPDIR when these directories are created. [YOCTO #7669] Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: check SSTATE_DIR, DL_DIR and *MIRROR for broken symlinksMikko Rapeli2015-08-111-2/+19
| | | | | | | | | | This change makes broken symlinks stand out clearly instead of bitbake failing with odd error messages. Tested locally with broken symlink as SSTATE_DIR, DL_DIR and SSTATE_MIRROR. Change-Id: I2e92702237ab3bdb897d0bdefcf33480aabbc288 Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
* image: Support for qcow2Christian Ziethén2015-07-241-0/+4
| | | | | | | | Add support for qcow2 image format. Implemented in the same way as the previously existing vmdk and vdi solutions. Signed-off-by: Christian Ziethén <christian.ziethen@linaro.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: Remove check if /tmp is writableMariano Lopez2015-07-211-14/+0
| | | | | | | | | | | The check would be managed using BB_DISKMON_DIRS so this removes the check from the sanity class. [YOCTO #8000] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Check if /tmp is writableMariano Lopez2015-07-161-6/+7
| | | | | | | | | | | Used mkstemp instead of raw open file call. Also added the exception message to the output of the sanity check. [YOCTO #7922] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: Check if /tmp is writableMariano Lopez2015-07-021-0/+13
| | | | | | | | | | If /tmp can't be written, bitbake gaves an unrelated error. This checks if /tmp can be written in every build. [YOCTO #7922] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: check /bin/sh is dash or bashRobert Yang2015-06-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The build would fail when /bin/sh links to ksh or csh, we only test dash and bash AFAIK. * When /bin/sh -> csh: $ bitbake quilt-native $ bitbake quilt-native -cfetch Illegal variable name. Illegal variable name. [snip] uname: extra operand `2' Try `uname --help' for more information. * When /bin/sh -> ksh: If there are only a few tasks running, for example, "bitbake quilt-native", the build would be OK, but it would fail if we run "bitbake world" for a while, there would be a lot of "Broken pipe" errors: Exception: CalledProcessError: Command 'cd /path/to/xx; find . -type d -print | tar -cf - -C /path/to/sysroot-destdir -p --files-from - --no-recursion | tar -xf - -C /path/to/xxx' returned non-zero exit status 2 with output tar: This does not look like a tar archive tar: Exiting with failure status due to previous errors find: `standard output': Broken pipe find: write error [YOCTO #7917] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: Add explict getVar param for (non) expansionRichard Purdie2015-06-231-1/+1
| | | | | | | | | | | | Rather than just use d.getVar(X), use the more explict d.getVar(X, False) since at some point in the future, having the default of expansion would be nice. This is the first step towards that. This patch was mostly made using the command: sed -e 's:\(getVar([^,()]*\)\s*):\1, False):g' -i `grep -ril getVar *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Prevent 'vdi' and 'live' to be built togetherJuro Bystricky2015-06-111-0/+5
| | | | | | | Same reason and check as for vmdk. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* xserver-xorg: Upgrade 1.16.3 -> 1.17.1 (OELAYOUT_ABI change)Jussi Kukkonen2015-06-031-0/+6
| | | | | | | | | | | | | | | | * Increase OELAYOUT_ABI: this is required because the xf86-video-modesetting package moves from its own recipe to xserver-xorg and sanity check cannot handle that currently. The upgrade will delete old xf86-video-modesetting files from sysroots. * Remove upstreamed xserver-xorg patches * Remove xf86-video-modesetting recipe: the driver is now included in xserver-xorg recipe, which now produces the xf86-video-modesetting package. The package version changes from 0.9 to 1.17.1 * Update xserver-xorg license checksum: modesetting license info (another MIT one) has been added to the file Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
* sanity.bbclass: import subprocess in correct functionJussi Kukkonen2015-05-211-2/+2
| | | | | | | | check_sanity() no longer needs the subprocess module but sanity_handle_abichanges() does use subprocess.call(). Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* sanity.bbclass: improve the sanity check for PATH and BBPATHShiqun Lin2015-05-201-4/+4
| | | | | | | | | | | | | | Build fails if "./" is in the PATH To reproduce the issue: $ export PATH="./:$PATH" $ make -C build-tools elfutils Error: ./ld: unrecognized option '--sysroot=/' Signed-off-by: Shiqun Lin <Shiqun.Lin@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Increased verbosity for connectivity checkMariano Lopez2015-05-141-2/+2
| | | | | | | | | | | | | The connectivity sanity error doesn't tell you which URL failed to fetch nor how it failed. This provides the URL that failed and why it failed using BBFetchException messages during the connectivity check. [YOCTO #7592] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* mirrors.bbclass: drop support for svk sourcesAndre McCurdy2015-05-051-1/+1
| | | | | | | | The svk fetcher was removed from bitbake 1.22, so svk support should logically have been removed from oe-core Daisy onwards. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: vmdk and live can't be built togetherRobert Yang2015-03-211-0/+4
| | | | | | | | | | | | | | | | | | | | Both vmdk and live use syslinux, but they have different/conflicted configurations, the main conflictions are: vmdk live SYSLINUX_ROOT root=/dev/sda2 root=/dev/ram0 SYSLINUX_LABELS boot boot install INITRD No yes So it would make the boot menu strange and vmdk can't be boot, we need add a few extra vars to fix the problem such as SYSLINUX_ROOT_VMDK SYSLINUX_ROOT_LIVE, but that needs a lot of changes in the code, so just add a sanity checking for it. [YOCTO #6889] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: avoid bblayers version issue when switching between poky and ↵Paul Eggleton2015-02-231-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | other DISTRO values If you create a build directory with poky, or set DISTRO to "poky" and run bitbake, you'll get a bblayers.conf file with LCONF_VERSION set to 6. If you then set DISTRO to any other value where the new distro config doesn't pull in poky's config, e.g. "nodistro", you would then get a bblayers.conf version error which didn't immediately make sense. (The layer versions have been out-of-step ever since meta-yocto-bsp was split out of meta-yocto several years ago). This is just painful and we'd rather users didn't have to deal with it. Obviously it isn't an OE-Core problem per se, but a simple way to resolve it for everyone is to bump OE-Core's version to 6 with an automatic no-op upgrade. Also ensure that multiple upgrade functions (such as the poky one) have a chance to execute by not breaking out of the loop as we were before. Fixes [YOCTO #6139]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: TMPDIR ABI change for kernel processRichard Purdie2014-12-201-0/+10
| | | | | | | | | | The kernel source is being moved into the sysroot, to do this and preserve previous builds, we need to change the TMPDIR ABI and provide a function to uninstall all kernels from the sysroot. This change adds code to do that and increases the ABI number. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: refactor mirrors checks to be more pythonicChristopher Larson2014-08-271-38/+35
| | | | | | | | | | | - Use clearer variable names - Use variable unpacking to reference elements by name rather than index - Sacrifice a small amount of time (iterate over protocols twice per entry rather than once) for clarity: use readable generator expressions with any() rather than maintaining state. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: fix support for regex schemes in mirrors checkChristopher Larson2014-08-271-2/+10
| | | | | Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>