summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* testimage: swap sudoku for galculatorRoss Burton2016-07-201-4/+1
| | | | | | | | | | Also delete the removal of suduko for qemumips, as galculator builds fine on that hardware now. (From OE-Core rev: 4a81b3f669073455c9b2ee1514c43b96df9f7faa) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: only scan files-in-image.txt if it existsElliot Smith2016-07-191-9/+16
| | | | | | | | | | | | | | | | | We can reach the method in toaster.bbclass which tries to read from the files-in-image.txt file via a build which doesn't create that file (e.g. "bitbake core-image-minimal -c rootfs"). This causes the build to fail with an exception. Check that this file exists before trying to read from it. [YOCTO #9784] (From OE-Core rev: 8b369cdd73ab17cdf834a591b97b25840caeb740) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: remove directory scan logic for detecting artifactsElliot Smith2016-07-191-66/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | toaster.bbclass does a scan of the image deploy and SDK directories when a build finishes. However, this brings no benefit and could be better managed and made easier to modify if moved to toasterui and carried out when the BuildCompleted event occurs. Remove the image scan code from toaster.bbclass, prior to moving it to toasterui and buildinfohelper. Also remove the license manifest update code, as this can also be done from toasterui. The postfuncs for do_populate_sdk are retained, but no longer do the directory scan for SDK artifacts. Instead, they fire an event with the value of the TOOLCHAIN_OUTPUTNAME variable, as this is only accessible at the point when the do_populate_sdk and do_populate_sdk_ext tasks are run. The value of this can then be used by buildinfohelper to find the SDK artifacts produced by a target. [YOCTO #9002] (From OE-Core rev: 67ebb5406c0fcdd1b28bf446249aa6fe34a741a8) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd-staticids: use map() instead of imap()George McCollister2016-07-121-1/+1
| | | | | | | | | | | In Python3 the itertools module's imap function has been migrated to the globalname space as map(). Calling itertools.imap() will fail because it no longer exists. (From OE-Core rev: da7a2c7b00b40a8759dbe9f4ab6df3e337e3d6b6) Signed-off-by: George McCollister <george.mccollister@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildstats-summary: round the floating point percentageChristopher Larson2016-07-121-1/+5
| | | | | | | | | | | | | This was rounded in python 2, but python 3 changed the default behavior of /. We could switch to the same behavior as previous by switching to // rather than /, but there's value in keeping at least one decimal point, to avoid the misleading case where it says 0% but the reuse is non-zero. (From OE-Core rev: 35d36a4d097ce8a0fd0be2f795e3d5052d4f753c) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Upgrade to latest tip of masterKhem Raj2016-07-121-2/+2
| | | | | | | | | | | - libc-package.bbclass: Do not use --old-style This option has been dropped from latest glibc (From OE-Core rev: 78ab1e7cdedc6a73395af5d053b49cf081416732) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/libc-package: remove pointless copying when running localedefRoss Burton2016-07-101-22/+2
| | | | | | | | | | | | localedef handles attempts to read/write the archive in parallel correctly by creating the file atomically, gracefully handling racing to create, and has exclusive locks when writing. Therefore I can't see any purpose to copying the archive to /tmp and back again when manipulating it. (From OE-Core rev: 016e4a53e3251ffcdb3c260dd2837507b520ffa6) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libc-package: remove obsolete do_configure_prependRoss Burton2016-07-101-8/+0
| | | | | | | | | | | This fragment dates from when this class was used for more than just glibc locale packaging, and as glibc-locale disables do_configure it can't have been executed. (From OE-Core rev: 6483fbe70e52ec9a53c918fe81162fd0c566f80f) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: exclude initramfs images from locked signaturesPaul Eggleton2016-07-081-4/+5
| | | | | | | | | | | | | | | | | | | | | Tasks for image recipes cannot be locked - there's nothing to restore from shared state to cover them and as a result, if you had "live" in IMAGE_FSTYPES the build would fail with "taskhash mismatch" errors for do_rootfs and do_image_complete for the initramfs image recipe, since it had to try to run those. We should probably catch that issue earlier in the build and produce a proper error, but for now at least exclude these signatures from the locked-sigs.inc file so that extensible SDK installers built when IMAGE_FSTYPES includes "live". (It turned out we already had code to find other image tasks in the task list in order to generate the list of install targets.) Follow-up fix for [YOCTO #9826]. (From OE-Core rev: a7133bf6bb650b944d29d01129f36a56282acd2b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: ensure tasks to build the image are includedPaul Eggleton2016-07-081-1/+7
| | | | | | | | | | | | | | | | | | | If you build an extensible SDK for an image and IMAGE_FSTYPES includes "live" then the extensible SDK will fail to install with a bunch of unexpected task execution errors, matching the missing items required to build the live image. The issue was we were still depending on do_rootfs rather than do_image_complete. The fix was slightly more complicated than just changing the task name as do_image_complete's dependencies are in the form of dependencies on tasks within the same recipe (represented in the "deps" varflag rather than the "depends" varflag). Fixes [YOCTO #9826]. (From OE-Core rev: 2b9c092e89b421bf7fd6a7c9604a83ae420d85ba) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devpyshell: python3: flush stdout explicitlyEd Bartosh2016-07-081-2/+2
| | | | | | | | | | | | | | Opening text stream in unbuffered mode raises the following exception In Python 3: ValueError: can't have unbuffered text I/O Fixed by leaving std* streams in text mode and flushing stdout explicitly. (From OE-Core rev: 732001cb268683f5b56e251e2964ec5b694a2147) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devshell.bbclass: fix double unbufferingEd Bartosh2016-07-081-1/+0
| | | | | | | | | | | | | | stdout is already unbuffered in bitbake code. Attempt to do it again in devshell.bbclass causes this crash when running devpyshell: File "scripts/oepydevshell-internal.py", line 29, in <module> pty = open(sys.argv[1], "w+b", 0) IOError: [Errno 13] Permission denied: '/dev/pts/6' (From OE-Core rev: 875910451e1ce97d0c42b41b1140c8160ed1f40a) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/cmake: enable progress for do_compilePaul Eggleton2016-07-081-0/+1
| | | | | | | | | | cmake outputs percentage complete as part of its compilation process, so we can enable BitBake's new progress scanning for do_compile here. (From OE-Core rev: f77ea95ba5cd337f01f2a1b4fe9466feb6af9440) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: eliminate double execution on installPaul Eggleton2016-07-082-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | Use the new BB_SETSCENE_ENFORCE functionality to avoid having to run bitbake twice on installing the extensible SDK - we can now do it all in one invocation which not only takes less time, but we should also get more meaningful errors for some types of failure, in particular where downloading from an sstate mirror fails. One result of this change is that you get the errors printed on the console during normal output rather than this going to the preparing_build_system.log file first. In OE-Core revision 227d2cbf9e0b8c35fa6644e3d72e0699db9607fa, we changed to always print the contents of preparing_build_system.log on failure, but now at least the error contents of that log is duplicated. Besides, I intentionally didn't print out the contents of that log during normal usage because it's quite verbose - the bug that we were attempting to fix was about not getting this information when seeing failures in the automated tests, thus I've moved printing the log to the test handling code instead. Part of the implementation of [YOCTO #9367]. (From OE-Core rev: e1390c1ef85862b91b067ab24f3c06ca506155ad) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/testsdk: print output correctly on failurePaul Eggleton2016-07-081-2/+2
| | | | | | | | | | | With Python 3 we get a bytes object from the command output and not a string, which gives some ugly formatting for error messages unless you decode it first. (From OE-Core rev: 798bec6fe43116b51247284eb4e415337b2e8e04) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sstate: add a mode to error if sstate package unavailablePaul Eggleton2016-07-081-0/+23
| | | | | | | | | | | | | | If BB_SETSCENE_ENFORCE is set to "1" and an sstate package fails to download outside of the whitelist specified by BB_SETSCENE_ENFORCE_WHITELIST, then fail immediately so you can tell that the problem was caused by failing to restore the task from sstate. Part of the implementation of [YOCTO #9367]. (From OE-Core rev: 9e711b54487c3141d7264b8cf0d74f9465020190) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sstate: show progress during sstate object availability checkPaul Eggleton2016-07-081-2/+4
| | | | | | | | | | | | | | Show progress through bitbake's standard terminal UI when checking for shared state object availability, since this can take some time if there are a large number of tasks to be executed and/or the network connection is slow. Part of the implementation for [YOCTO #5853]. (From OE-Core rev: 1a064385d6921ec90b33c9064dafaab11a36267c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: implement progress support for do_rootfsPaul Eggleton2016-07-081-2/+17
| | | | | | | | | | | | Use the new task progress functionality to report progress during do_rootfs. This is a little coarse and ideally we would have some progress within the installation section, but it's better than nothing. (From OE-Core rev: 370f08d434480c1790950e40db8f7687da78cb14) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-scripts: add sysroot/usr/share/pkgconfig to PKG_CONFIG_PATHRoss Burton2016-07-011-2/+3
| | | | | | | | | | Otherwise architecture-independent pkg-config files such as wayland-protocols won't be found in the SDK. (From OE-Core rev: 1bea760f3f462fdcc3eefc0d8597688d61447ddd) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-module-split.bbclass: add a prefix for module package name patternRicardo Neri2016-07-011-1/+5
| | | | | | | | | | | | | | | | | | | | | | When splitting kernel modules into individual packages, such packages take their names from the module name. This is OK under most of the circumstances. However, it may lead to package naming collisions if there exists two modules with the same name. Situations like this can occur when building testing modules. For instance, there exists testing versions of the modules for non-volatile memory that are built with different linker options but bear the same module name. If one wants to package such modules, it is be good to be able to name packages differently. This can be done by prefixing the package name with a KERNEL_MODULE_PACKAGE_PREFIX that can be set by the recipes that inherit from module.bbclass. Cc: Megha Dey <megha.dey@intel.com> (From OE-Core rev: 4f941e8c5ee8e95291c3beff0a2798aa13f8dfc8) Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/kernel: fix symlink logic when bundling initramfs imagesAndré Draszik2016-07-011-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If linkpath points to the a file in KERNEL_OUTPUT_DIR, rather than outside, then symlink creation for the bundled initramfs image files fails. This is because in that case $linkpath.initramfs and $realpath.initramfs are in the same directory, KERNEL_OUTPUT_DIR, and hence are the same. Since we just created $realpath.initramfs, creating a symlink with the same name will fail. Given that $linkpath is not necessarily the same as the kernel image type, just removing this symlink creation is not the right thing to do, as in that case kernel_do_deploy() wouldn't find the bundled file. What we really want is a symlink from the name of the initramfs-bundled kernel image type to the real initramfs-bundled kernel image, as that is what is actually used later in do_deploy(). This brings the code path for when $KERNEL_OUTPUT_DIR/$type is a symlink in line with when it is not. (From OE-Core rev: 7585ebbbe4e95870ab7475737ed5b94255351c72) Signed-off-by: André Draszik <adraszik@tycoint.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/kernel: fix symlink creation in DEPLOYDIR for bundled initramfsAndré Draszik2016-07-011-2/+1
| | | | | | | | | | | | | | | | | | | If multiple kernel image types have been specified, only the very first one would receive a symlink in DEPLOYDIR. The reason is that we're looping over the list of image types and check if a bundled initramfs images exists using a relative path. As part of the loop we're changing the current directory, hence all additional iterations fail to see the files we're looking for, and hence no symlinks are being created. Fix by not changing the directory and adjusting the ln invocation instead. (From OE-Core rev: 2a6ac8ca71b669b8653eb19417faf58575385a21) Signed-off-by: André Draszik <adraszik@tycoint.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pythonnative.bbclass, python3native.bbclass: use DEPENDS_append instead of ↵Alexander Kanavin2016-07-012-2/+2
| | | | | | | | | | | | | DEPENDS += Otherwise -native variants of recipes that use these classes don't get a proper python[3]-native dependency for some reason. (From OE-Core rev: 834514198f9e39ce323270567e3ce744f763b637) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pythonnative.bbclass, python3native.bbclass: export STAGING_INCDIR, ↵Alexander Kanavin2016-07-013-5/+16
| | | | | | | | | | | | | | | | | | | | | | | STAGING_LIBDIR, PYTHON variables We patch Python's distutils modules to access STAGING_INCDIR/LIBDIR, so when they are not set, scripts that utilize distutils (e.g. python-config) fail. Several recipes need to export those manually to prevent such failures, so let's do that in the class instead. PYTHON variable is exported because otherwise autotools' python.m4 macro will pick up its own internal default, which may not be the version that we want. glib recipe in particular was previously using Python 2.x during build due to python.m4 defaulting to it - now it's using Python 3.x, and so needs a small fix in deletion of *.pyc files. (From OE-Core rev: c1e0eb62f2d89b10b187016200018830b1c77945) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: extend UBOOT_CONFIG format to support different binary nameTing Liu2016-07-011-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | When using UBOOT_CONFIG format, the final u-boot binary for each config may have different names. Extend UBOOT_CONFIG format to support different binary to be copied. The new format is supposed to be compatible with old one as ${UBOOT_BINARY} is copied by default, and images,binary can be empty. An example format to specify it, in the machine, is: UBOOT_CONFIG ??= "sdcard-ifc sdcard-qspi lpuart qspi secure-boot nor" UBOOT_CONFIG[nor] = "ls1021atwr_nor_config,,u-boot-dtb.bin" UBOOT_CONFIG[sdcard-ifc] = "ls1021atwr_sdcard_ifc_config,,u-boot-with-spl-pbl.bin" UBOOT_CONFIG[sdcard-qspi] = "ls1021atwr_sdcard_qspi_config,,u-boot-with-spl-pbl.bin" UBOOT_CONFIG[lpuart] = "ls1021atwr_nor_lpuart_config,,u-boot-dtb.bin" UBOOT_CONFIG[qspi] = "ls1021atwr_qspi_config,,u-boot-dtb.bin" UBOOT_CONFIG[secure-boot] = "ls1021atwr_nor_SECURE_BOOT_config" (From OE-Core rev: 2a5c484f314ddc75cab5f0d01b0215d7fc405b6b) Signed-off-by: Ting Liu <ting.liu@nxp.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools: ensure Makefile exists in do_compileRoss Burton2016-06-231-1/+5
| | | | | | | | | | | | | | | If a recipe is using the autotools class then presumably it is using Makefiles. However the default do_compile() is forgiving and silently handles a missing makefile, which means that if a recipe is using a hand-coded static Makefile (e.g. git) but doesn't use brokensep the recipe will fail in do_install. To make debugging this easier, override do_compile in autotools so that it fails if a Makefile isn't present. (From OE-Core rev: 14839515301754e0b512fe3054d95dabc77ad829) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm: Increase rootfs sizeSaul Wold2016-06-201-2/+2
| | | | | | | | | | | | This doubles the amount of extra space that is provided for SMART and RPM, as they consume more disk space during qa testing via testimage [YOCTO #9800] (From OE-Core rev: 2d636068d9d3a1ea2db3ace49462be13ba9ef125) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "cmake.bbclass: set the modules directory correctly"Richard Purdie2016-06-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 642bd49964690259328f506df41a1764c5ac6226. This broke "bitbake cmake": | CMake Error at /home/jku/src/poky/build/tmp/work/core2-64-poky-linux/cmake/3.5.2-r0/toolchain.cmake:34 (list): | Syntax error in cmake code at | | /home/jku/src/poky/build/tmp/work/core2-64-poky-linux/cmake/3.5.2-r0/toolchain.cmake:34 | | when parsing string | | /home/jku/src/poky/build/tmp/sysroots/qemux86-64/usr/share/cmake-\3.5.${CMAKE_MINOR_VERSION}/Modules/ | | Invalid character escape '\3'. | Call Stack (most recent call first): | /home/jku/src/poky/build/tmp/sysroots/x86_64-linux/usr/share/cmake-3.5/Modules/CMakeDetermineSystem.cmake:98 (include) | CMakeLists.txt:19 (project) https://autobuilder.yoctoproject.org/main/builders/nightly-world/builds/832 https://autobuilder.yoctoproject.org/main/builders/nightly-world-lsb/builds/550 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake.bbclass: set the modules directory correctlyJose Pardeiro2016-06-171-1/+1
| | | | | | | | | | | | The CMake recipes contain a mismatch between the environmental variable which defines where the Modules are installed and the location where they actually are. This patch fixes the environmental variable to point to the proper folder defined according to the cmake version. (From OE-Core rev: 642bd49964690259328f506df41a1764c5ac6226) Signed-off-by: Jose Pardeiro <jpardeiro@rapyuta-robotics.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd-staticids.bbclass: Allow missing UIDs/GIDs to generate warningsPeter Kjellerstedt2016-06-171-1/+4
| | | | | | | | | | | | | | | Previously when USERADD_ERROR_DYNAMIC was set to "1", an exception was raised if no numeric UID/GID could be determined for a user/group. Now it is possible to set it to either "error", which results in the old behavior, or "warn" in which case a warning is issued instead. For backwards compatibility reasons, it is still possible to set USERADD_ERROR_DYNAMIC to "1" and get an exception in case of failure. (From OE-Core rev: 58c82f79efee8e68fa63b96a32f54660afb15769) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd-staticids.bbclass: Restore failure on missing UIDs/GIDsPeter Kjellerstedt2016-06-171-6/+13
| | | | | | | | | | | | | | A regression was introduced with commit 3149319a whereby setting USERADD_ERROR_DYNAMIC no longer resulted in an error for users and groups that were missing numeric UIDs and GIDs but were not mentioned at all in any passwd or groups file. [YOCTO #9777] (From OE-Core rev: adc0f830a695c417b4d282fa580c5231e1f0afbe) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: p4 fetcher supports srcrevAndrew Bradford2016-06-171-0/+4
| | | | | | | | | | Enable the perforce fetcher to call bb.fetch2.get_srcrev() as it can use 'SRCREV = "${AUTOREV}"'. (From OE-Core rev: 9d6ac71e4d954d857ecb1708ab4fe4bc552244aa) Signed-off-by: Andrew Bradford <andrew.bradford@kodakalaris.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_deb: Avoid chdir warnings and restore cwd after packagingRichard Purdie2016-06-161-0/+3
| | | | | | | | | dpkg-build needs to be executed in the root of the package, so save and restore the current directory so this task doesn't modify the state. (From OE-Core rev: c294f4ed5a02b055916cfc26a2fca672edee1208) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_ipk: restore cwd after packagingRoss Burton2016-06-151-0/+3
| | | | | | | | | | opkg-build needs to be executed in the root of the package, so save and restore the current directory so this task doesn't modify the state. (From OE-Core rev: 43dac97f397143abf61fc1c105ea0e4f2fffb90b) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/package: save/restore cwd in split_and_strip_filesRoss Burton2016-06-151-3/+4
| | | | | | | | | | This function uses chdir() heavily, so save and restore the cwd so that it doesn't affect the system state. (From OE-Core rev: d3059e5d35dcb01641e828c5182615b8fbf1f2e5) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/kernel: remove path assumptions in compile_kernelmodulesRoss Burton2016-06-151-2/+1
| | | | | | | | | | do_compile_kernelmodules was assuming that the current directory was ${B} but didn't make that explicit, so use an absolute path to ensure this always works. (From OE-Core rev: a26ec548aabda74acfdd1e2893b98b47bc513b15) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: don't chdir when creating symlinksRoss Burton2016-06-151-3/+2
| | | | | | | | | | There's no need to chdir() when creating image symlinks, and using chdir() changes the state for future tasks. (From OE-Core rev: 2fdf06fbe986d742f6bb13e9348b50e9aab03139) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/license: handle EXDEV if hard link to license failsManuel Huber2016-06-151-5/+15
| | | | | | | | | | | Hard links can still fail even if st_dev is the same for source and destination. In case of EXDEV error, fall back to copying. (From OE-Core rev: c00423d6bab9849e331beadf4d3cee90e04fe295) Signed-off-by: Manuel Huber <manuel.h87@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rm_work: use the idle I/O scheduler classRoss Burton2016-06-151-0/+3
| | | | | | | | | | | As rm_work is just cleanup it shouldn't starve more important tasks such as do_compile of I/O, so use BB_TASK_IONICE_LEVEL to run the task in the idle scheduler class. (From OE-Core rev: 6025a14dbbd09b2805fe2e17ddc24f2a515cb832) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sdl: remove pointless classRoss Burton2016-06-151-6/+0
| | | | | | | | | | This class exists purely to add a number of SDL dependencies, which should be done directly in the recipe. (From OE-Core rev: b2a75aad679fd97ff2b51a7a8ee03bd22be8d7a7) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* update-rc.d.bbclass: Disable class when sysvinit is not in DISTRO_FEATURESMariano Lopez2016-06-151-4/+4
| | | | | | | | | | | | | | When sysvinit is not in use, update-rd.d class adds build dependencies that won't be needed, this patch removes the build dependecies and won't add the task to PACKAGESPLITFUNCS. [YOCTO #9515] (From OE-Core rev: 5b2139a79cd8c280e755923016b3a6e84413184e) 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>
* image.bbclass: do exact match for rootfs typeZhenhua Luo2016-06-151-1/+1
| | | | | | | | | | | | | | Do exact match for rootfs type, instead of pattern match, to avoid unexpected build error due to redundant rootfs type build. E.g. when building ext2.gz.u-boot, both .gz.u-boot and .u-boot are matched, the following build error will appear, actually .u-boot is not needed. | mkimage: Can't open .../core-image-minimal-<machine>-<yyyymmddhhmmss>.rootfs.ext2.gz: No such file or directory (From OE-Core rev: 46bc438374de74af76d288520c6252c9b7840767) Signed-off-by: Zhenhua Luo <zhenhua.luo@nxp.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libc-package: ensure glibc-locale package list is deterministicRoss Burton2016-06-151-2/+1
| | | | | | | | | | | If all locales are being generated then the list used is the keys from a dictionary. In Python 3.4 onwards the ordering of a dictionary changes for every instance, so sort the key list. (From OE-Core rev: 7f6d7f729df37747be0d2cd2503cddca0184fd1f) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging: Add BB_SETSCENE_VERIFY_FUNCTION2 for bitbake runqueue changesRichard Purdie2016-06-151-0/+13
| | | | | | | | | | | | | We're about to rewrite the data structures in taskdata/runqueue in bitbake and we 'leaked' knowledge about those structures to this single function. Add a 'v2' function definition for use with the newer bitbake, the older one can remain for compatibility for a while, then be removed. The function is comparatively simple and rarely changes. (From OE-Core rev: 2a6f88d51414993d18096f7f0dc27c0b862240bc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd-staticids.bbclass: Avoid FutureWarning about split()Peter Kjellerstedt2016-06-121-2/+2
| | | | | | | | | | | | | This avoids the following warning with Python 3.5: /usr/lib64/python3.5/re.py:203: FutureWarning: split() requires a non-empty pattern (From OE-Core rev: a7a783c30cc58008f0e070dad39d40038e0a5eb5) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd-staticids.bbclass: Make sure opened files are closedPeter Kjellerstedt2016-06-121-13/+17
| | | | | | | | | | This avoids warnings about unclosed files with Python 3. (From OE-Core rev: 77adf8341694b76cf58b7a31dda18b85b3eb87a2) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/image_types.bbclass: fix fatal error during cpio debugfs creationAndré Draszik2016-06-122-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If /init is just a symlink to /sbin/init, debugfs creation fails with the following error: ERROR: Error: The image creation script '<...>/debugfs.create_image.cpio' returned 1: touch: cannot touch '<...>/cpio_append/init': Permission denied WARNING: exit code 1 from a shell command. ERROR: Function failed: do_rootfs The reason is that IMAGE_CMD_cpio() is run twice on the same WORKDIR. The first run creates a symlink in WORKDIR/cpio_append/init to point to /sbin/init, while the 2nd run then tries to 'touch' that link, which will fail, of course since /sbin/init is not usually writable by non-root users. Fix this by providing knowledge to the IMAGE_CMD_xxx() scripts with regards to the fact that they are being executed in the context of debugfs creation. The IMAGE_CMD_cpio() can now be intelligent in the sense that it can avoid all additional symlink handling during the debugfs run. The symlinks do not need to be part of the debugfs, so we can skip that part altogether in that case. (From OE-Core rev: 659ae1d7df28115429f6f31450fad6d1f86e3031) Signed-off-by: André Draszik <adraszik@tycoint.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gtk-immodules-cache: Support both GTKs at same timeJussi Kukkonen2016-06-121-2/+4
| | | | | | | | (From OE-Core rev: 0cb5016283a80b04a41d37e332bb324a203e2ef8) Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* npm.bbclass: avoid str/byte conversion problems for PKGV and SUMMARYPatrick Ohly2016-06-121-2/+2
| | | | | | | | | | | | | | | | | In Python3, str.encode() returns byte strings, which later are not converted back to strings automatically, leading to "TypeError: Can't convert 'bytes' object to str implicitly" in code which reads PKGV and SUMMARY and expects to find strings there. The npm.bbclass must use values for d.setVar() that meet that expectation, and thus the redundant (and in Python3, harmful) .encode() gets removed. (From OE-Core rev: 241e094bcd9212204350f9855257474908f82a3c) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testexport.bbclass: Create tarballs for easy releaseMariano Lopez2016-06-071-0/+32
| | | | | | | | | | | | | | | | | | | | | This create tarballs in the testexport directory in order to make easier to distribute the test in another systems. There are three tarballs, one for the metadata that is not arch dependant, another for packages needed by the DUT (this depends of target MACHINE), and the last one for the SDK needed by the systems that perform the tests. This also create only the tarballs that are needed. [YOCTO #8481] (From OE-Core rev: f8a0456e100b07a966cc24a78f197400c5a2ccab) (From OE-Core rev: a91a603676b088abcb648cc558c33da6292b9be6) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>