Commit message (Collapse)AuthorAgeFilesLines
* nativesdk-qt4-tools: depend on nativesdk-qt4-tools only if DISTRO_FEATURES ↵Pascal Bach2015-07-271-1/+1
| | | | | | | | | | includes x11 Currently nativesdk-qt4-tools can't be built if the DISTRO_FEATURES doesn't contain x11. To make it build we add a dependency to x11 only if the feature is activated. Signed-off-by: Pascal Bach <pascal.bach@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* security-flags: Disable PIE for coreutils, elfutils, gcc, iptablesRichard Purdie2015-07-271-2/+4
| | | | | | | With gcc 5, we need to disable the PIE flags for more recipes in order to have successful builds. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemurunner: Show last 25 line of log, not 5Richard Purdie2015-07-271-2/+2
| | | | | | | For debugging purposes, 5 lines often isn't useful as it doesn't even cover a full backtrace. Show 25 instead. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* targetcontrol: Improve logs by outputting qemu boot log in case of failureRichard Purdie2015-07-271-0/+3
| | | | | | | | We've had a few cases on the autobuilder where we've lost logs of the boot and been unable to debug it further. Show this information onto the console to be more useful. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/devtool: use new runqemu functionPaul Eggleton2015-07-271-38/+34
| | | | | | | | | | | | Use the common code we now have to run QEMU instead of running it ourselves, avoiding reliance on the machine showing up at This also makes a copy of the image rather than using -snapshot so if we need to inspect the image after a failure, we can. Fixes [YOCTO #7928]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/imagefeatures: remove gummiboot testsPaul Eggleton2015-07-271-75/+0
| | | | | | | | | | | | | | | These tests were _deleting_ meta-intel if it happened to appear under COREBASE, which could have been catastrophic if there was any work in progress in that directory. It turns out we don't even need meta-intel, but we do need a machine that's set up appropriately (e.g. genericx86-64). Tests that involve layers outside of OE-Core don't really belong in OE-Core, and genericx86-64 is in meta-yocto-bsp; however we will soon have the capability to have selftest tests in other layers, so remove this here so we can add a fixed version in meta-yocto-bsp after that happens. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/imagefeatures: fix RPM4 testPaul Eggleton2015-07-271-31/+44
| | | | | | | | | | | | | | | | | | * Use our new runqemu function * Don't hard-code the RPM4 version * Double-check the native version is RPM4 * Check that an rpm 4.x package is in the image manifest (this isn't strictly necessary, but "belt-and-braces" and it serves as an example of how to do that) * Check that the database is working on the target * Ensure the image actually has openssh in it so we can connect to it Initial runqemu adaptation by Richard Purdie <richard.purdie@linuxfoundation.org> Part of the fix for [YOCTO #7994]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/imagefeatures: fix SSH without password testsRichard Purdie2015-07-271-4/+9
| | | | | | | | | | | | | * We need to set EXTRA_IMAGE_FEATURES outright or existing values will affect the test * For test case 1107 we need "empty-root-password" to match the behaviour described in the test case * For test case 1115 we shouldn't be able to connect as root with the features we are setting Test cases 1107 and 1115 have been updated in Testopia to match. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/imagefeatures: Use QemuTarget codeRichard Purdie2015-07-272-78/+67
| | | | | | | | | | | | | | | | | | | Create a runqemu function which uses the QemuTarget() code from oeqa.targetcontrol to setup the QEMU instance, with all of the added robustness that that gives us. To do this, a datastore is needed for the recipe in question (core-image-minimal) so we do the work needed to set this up. We then use this runqemu function within the imagefeatures tests instead of a hand-rolled implementation. We can then use SSHControl to run the SSH tests rather than rolling our own code to do that as an added bonus. Fixed and extended by Paul Eggleton <paul.eggleton@linux.intel.com>. Part of the fix for [YOCTO #7994]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/targetcontrol: write QemuRunner log output to a filePaul Eggleton2015-07-271-0/+11
| | | | | | | | | | If we use this outside of testimage we don't have a task log; so let's just explicitly write the log output to a file all the time so it's always there to look at (particularly useful when runqemu exits immediately with an error.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/qemurunner: fix error handling if runqemu exits with an errorPaul Eggleton2015-07-271-1/+14
| | | | | | | | | | * Don't wait for QEMU to start if it's never going to (because runqemu exited with an error) * Don't error out if killing the process fails with "no such process" (we don't care if it's already dead) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/qemurunner: avoid blocking on stty when running under oe-selftestPaul Eggleton2015-07-271-1/+5
| | | | | | | | | | | | | | | | | | | | | runqemu-internal runs stty to return the terminal to its previous state in case QEMU hasn't done that properly (which it at least used to do when it crashed). For some reason I have yet to determine, stty blocks (on tcsetattr() according to gdb) when run within QemuRunner() under oe-selftest, with the result that we always wait until the timeout and then we kill the script, which adds an extra delay after QEMU is stopped. Naturally you would assume that this is something to do with the nature of the terminal under which it is being run; however no amount of playing around with stdin/stdout/stderr seemed to fix the issue, apart from passing in subprocess.PIPE as stdin which makes stty error out with "stty: standard input: Inappropriate ioctl for device". I was also unable to come up with a reliable test for the terminal which we could use inside runqemu-internal to avoid calling stty. For now, go with the stdin=subprocess.PIPE workaround to at least avoid the delay with minimal ill effect. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/qemurunner: fix loggingPaul Eggleton2015-07-271-25/+24
| | | | | | | | | | | | | | | | | | | | | | OE-Core commit 519e381278d40bdac79add340e4c0460a9f97e17 unfortunately broke logging in two different ways: 1) it prevented logging to the task log from working within bitbake -c testimage. This is due to the logger object being set up too early which interferes with BitBake's own logging. If we prefix the name with "BitBake." everything works (and we don't need to set the logging level). 2) Additionally because it called the log functions on the logging module and not the logger object it set up, this caused the oe-selftest logging to start printing everything from that point forward. Fix these two issues and return us to the desired behaviour for do_testimage. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/targetcontrol: create test directory before copying rootfs imagePaul Eggleton2015-07-271-0/+1
| | | | | | | | The test directory might not exist at this point so just go ahead and create it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: add scripts/lib and bitbake/lib to pathPaul Eggleton2015-07-271-1/+4
| | | | | | | | In particular, this allows us to use code from bitbake's bb module (such as tinfoil). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/recipetool: allow templayerdir overrideChristopher Larson2015-07-271-14/+15
| | | | | | | This is provided for use by subclasses. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* oeqa/recipetool: add tests for appendsrcfile(s)Christopher Larson2015-07-271-0/+152
| | | | | Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* oeqa/recipetool: refactor / split out RecipetoolBaseChristopher Larson2015-07-271-18/+34
| | | | | Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* oe-selftest: add libdirs from BBPATH to sys.pathChristopher Larson2015-07-271-0/+7
| | | | | | | | | This ensures that oeqa.selftest.* from layers are found. [YOCTO #7625] Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* oe-selftest: obey oeqa.selftest.__path__Christopher Larson2015-07-271-5/+6
| | | | | | | | | | This ensures that all paths that hold selftest tests will be checked (oeqa.selftest is a namespace package). [YOCTO #7625] Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* devtool: also load plugins from BBPATHChristopher Larson2015-07-272-23/+38
| | | | | | | | | | | | | | | | | | | | | This makes it easier to extend, as a layer can add its own sub-commands. Argument parsing is also separated into two steps, the same way it's done in recipetool, as we need access to the global command-line arguments early, before plugins are loaded, both for debugging arguments and for the bitbake path (we need to load the bitbake module to get tinfoil, which is now needed to load the plugins). Rather than constructing tinfoil once and passing it through into sub-commands for their use, we have to construct it for configuration metadata, use it, and then shut it down, as some sub-commands call out to recipetool, which needs its own tinfoil instance, and therefore needs to acquire the bitbake lock. If we're still holding the lock at that point, that's clearly a problem. [YOCTO #7625] Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* recipetool: parse global args earlyChristopher Larson2015-07-271-8/+16
| | | | | | | | | This separates the argument parsing into two steps, which lets us apply global settings like enabling debugging before the plugins load, so we can see the paths where plugins are being loaded. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* recipetool: also load plugins from BBPATHChristopher Larson2015-07-271-13/+18
| | | | | | | | | | | | This makes it easier to extend, as a layer can add its own sub-commands. The bitbake path setup is moved earlier, as it has to be done before tinfoil_init. [YOCTO #7625] Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* recipetool.append: add extralines arg to appendsrcChristopher Larson2015-07-271-2/+2
| | | | | | | This makes the function more reusable for other sub-commands. Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* recipetool: catch BBHandledException from parsingChristopher Larson2015-07-271-3/+5
| | | | | | | This ensures that we don't see a traceback on parsing failures. Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* toaster.bbclass: Fix ValueErrorEd Bartosh2015-07-271-2/+2
| | | | | | | | | | | | | | | | | | | Running "bitbake xxx:do_unpack" resulted in exception at the BuildCompleted event from toaster. The reason for this exception was usage of ':' as a field delimiter in toasterstatlist file. As target can optionally contain ':<task>' suffix it caused split(':') to throw exception: File "toaster_collect_task_stats(e)", line 71, in toaster_collect_task_stats(e=<bb.event.BuildCompleted object at 0x7f8434deed50>) ValueError: too many values to unpack Fixed by changing delimiter ':' -> '::' Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-target 5.1: fix for libcc1Robert Yang2015-07-274-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed: * gcc 5 introduces a plugin libcc1.so, which is used by gdb, the target gcc didn't build it in the past because gcc_cv_objdump is null, and the error was: gcc-5.2.0/libcc1/configure: line 14531: -T: command not found This only happens for tar gcc as the code shows: if test x$build = x$host; then export_sym_check="objdump${exeext} -T" elif test x$host = x$target; then export_sym_check="$gcc_cv_objdump -T" else export_sym_check= fi * Install libcc1.so and libcc1plugin.so to $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) as lto-plugin did. * Use sed command to fix bad RPATH iussue. [YOCTO #7956] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc5: Upgrade from 5.1 to 5.2Khem Raj2015-07-2754-236/+6
| | | | | | | | | This is second bugfix release in gcc5 series All backported patches are dropped no other patches needed any rework Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sudo: upgrade to 1.8.14p3Ross Burton2015-07-273-5/+42
| | | | | | | | | | | | | The licence checksum is modified according to the change of doc/LICENCE. In specific, file://lib/util/reallocarray.c is added to LIC_FILES_CHECKSUM. Fix out of tree builds, and explicitly enable/disable tmpfiles.d support based on the systemd DISTRO_FEATURE to avoid non-deterministic packaging. Based on a patch by Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sed: Make locale depenencies glibc specificRichard Purdie2015-07-271-1/+1
| | | | | | | Only glibc provides this base locale so make the dependency glibc specific to avoid build failures with other libcs. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* updated-rc.d: Only add dependencies in target caseRichard Purdie2015-07-261-1/+1
| | | | | | | | Avoid errors like: ERROR: Nothing PROVIDES 'nativesdk-update-rc.d' (but virtual:nativesdk:dbus_1.8.18.bb DEPENDS on or otherwise requires it). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Add exception handling around qemu process cleanupRichard Purdie2015-07-251-3/+12
| | | | | | | The qemu processes may no longer exist at the end of the test so don't error if that is the case by ignoring any exceptions. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* update-rc.d: Include updated-rc.d in DEPENDSRichard Purdie2015-07-251-1/+1
| | | | | | | | | | | | | | | | | | | | If you build a user of updated-rc.d like udev, as things stand currently nothing pulls in updated-rc.d but there is a dependency added on the package at do_package time. This can lead to errors during rootfs construction either with licensing. The fact its a RRECOMMEND means the image are not deterministic. A particularly good test case for reproducing this is: MACHINE=A bitbake core-image-minimal MACHINE=B bitbake core-image-minimal-initramfs and since the second machine can find the package but not the license manifest, a failure will result. Extending the DEPENDS is the easy way to fix the issues. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto: introduce 4.1 versioned recipesBruce Ashfield2015-07-253-0/+90
| | | | | | | | | Updating the linux-yocto kernel recipes to include a named/versioned 4.1 recipe. This will be the LTSI kernel, and the 3.14 and 3.19 kernels will be removed in subsequent commites (once reference boards have transitioned). Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kern-tools: standalone tree configurationBruce Ashfield2015-07-251-1/+1
| | | | | | | | | | | | | | | | | Updating the kern-tools SRCREV to import the following changes: cbd4b7102668 patchme/updateme: unify meta directory handling b65075997152 configme: standalone operation The change of note is [configme: standalone operation], which makes the kernel configuration script free from dependencies on other parts of the kern-tools. With this change, we set the stage to extend kernel configuration fragments and auditing to arbitrary trees. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-yocto: split meta data from kernel repositoryBruce Ashfield2015-07-257-88/+28
| | | | | | | | | | | | | | | | | | The linux-yocto tree has always been a combined set of kernel changes and configuration (meta) data carried in a single tree. While this format is effective at keeping kernel configuration and source modifications synchronized, it isn't always obvious to developers on how to manipulate the meta data versus the source. With this change, we remove the meta data processing from the kernel-yocto class and use the external meta-data repository that has always been used to seed the linux-yocto meta branch. After this change, linux-yocto can no longer process combined trees, and is simplified as a result. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perf: Fix config file conflict with 4.1 kernelsRichard Purdie2015-07-251-0/+15
| | | | | | | | | | | | | | | | | | If you setup mutlitlibs and then: bitbake perf libb32-perf bitbake perf libb32-perf -c cleansstate bitbake perf libb32-perf you will see races where the two builds get confused about which directory they should be using and they corrupt each other. The issue is that .config-detected is created in ${S}, not $(OUTPUT). We can fix this by moving the file to $(OUTPUT). [YCOTO #8043] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* byacc: upgrade to 20150711Chen Qi2015-07-241-3/+3
| | | | | | | | The LIC_FILES_CHECKSUM is modified. The change is only about the copyright time. So the licence remains the same. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image: Support for qcow2Christian Ziethén2015-07-245-6/+19
| | | | | | | | 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>
* qemu: upgrade to 2.4.0-rc2Cristian Iorga2015-07-241-3/+3
| | | | | | | | Various bugfixes. Ongoing upgrade en route to final 2.4.0. Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* boot-directdisk: Make kernel image inclusion conditional.Christian Ziethén2015-07-241-1/+3
| | | | | | | | When building for qcow2 and a dummy kernel, avoid installing a non existing bzImage. Signed-off-by: Christian Ziethén <christian.ziethen@linaro.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
* diffstat: upgrade to 1.60Chen Qi2015-07-241-2/+2
| | | | | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* tcf-agent: Update to version 1.3Randy Witt2015-07-241-9/+4
| | | | | | | | | | According to the Eclipse tcf team, 1.3 tcf is required for the newest Eclipse release "mars". [YOCTO #7886] Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* mklibs-native: Remove dependency on dpkgRoy Li2015-07-241-1/+1
| | | | | | | | b18618a8[mklibs-native: two fixes] should remove the dependency on dpkg, but it is missed, so fix it. Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/qemurunner: don't assume hostname starts with qemuRoss Burton2015-07-241-1/+1
| | | | | | | | It's possible to customise the hostname trivially so don't assume that the hostname hasn't been configured. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/parselogs: don't use uname to get MACHINERoss Burton2015-07-241-2/+1
| | | | | | | | | Instead of running "uname -n" on the target (which actually returns the hostname) to get something approximating the hostname (or not, if that has been overriden), simply fetch MACHINE from the datastore. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/imagefeatures: handle killpg victim not existingRoss Burton2015-07-241-9/+18
| | | | | | | | | If Pexpect throws an exception it may be because the child has already died, in which case killpg will fail. Catch the latter exception silently, and output the exception from Pexpect. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/parselogs: add more x86 log exceptionsRoss Burton2015-07-241-3/+4
| | | | | | | | | | | | Move "fail to add MMCONFIG..." to qemux86_common as we started to also see it on x86-64 with Linux 4.1. Add "can't claim BAR..." to qemux86_common. Generalise "Failed to access perfctr MSR" as the MSR number can change. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sshcontrol: Ensure we don't trigger ssh-askpassRichard Purdie2015-07-241-0/+7
| | | | | | | | If DISPLAY is set, ssh-askpass can be triggered which is not what we want in the middle of sanity tests. We can disable this by unsetting DISPLAY. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sed: rrec on locale-base-ru-ru, not rdepAbdur Rehman2015-07-241-1/+2
| | | | | | | | | | | | | | | This locale package isn't guaranteed to exist, depending on the value of GLIBC_GENERATE_LOCALES. The value of GLIBC_GENERATE_LOCALES can be specified to not contain locale-base-ru-ru, thus resulting in unsatisfied dependency. Its better to remove hardcoded dependency upon locale-base-ru-ru in favor of a recommendation, as this locale isn't always available depending upon the value of GLIBC_GENERATE_LOCALES. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Abdur Rehman <abdur_rehman@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>