summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* classes/package: fix FILES_INFO serialisation in pkgdataPaul Eggleton2013-12-032-33/+14
| | | | | | | | | | | | | | | | | | | | | The FILES_INFO entry in each pkgdata file stores the list of files for each package. Make the following improvements to how this is stored: * Store paths as they would be seen on the target rather than erroneously including the full path to PKGDEST (which is specific to the build host the package was built on) * For simplicity when loading the data, store complete paths for each entry instead of trying to break off the first part and use it as the dict key * Record sizes for each file (as needed by Toaster) * Serialise the value explicitly using json rather than just passing it through str(). Fixes [YOCTO #5443]. (From OE-Core rev: ca86603607a69a17cc5540d69de0e242b33382d3) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/icecc: fix typos in header commentsPaul Eggleton2013-12-031-1/+1
| | | | | | | | | | | | Looking at the code, it should be ICECC_USER_PACKAGE_BL and not ICECC_PACKAGE_BL here, and also fix "localy" -> "locally". Thanks to Scott Rifenbark for pointing this out. (From OE-Core rev: b325e46059efe6974abf01131dca3f2094a6bf90) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: Depend on virtual/kernel:do_deployRichard Purdie2013-11-291-0/+2
| | | | | | | | | | | | | | | | | Now that none of the packagegroups depend on virtual/kernel, we have the problem that MACHINE=qemumips bitbake core-image-minimal doesn't put a kernel into the deploy directory. This breaks many common usecases and user expectations. To avoid this, add a dependency on the kernel deploy to image do_build tasks. This should avoid any circular dependency issues but equally ensure users have their expectations met. [YOCTO #5581] (From OE-Core rev: fe26b2379ecdbdb56acde8592bc0c2d95092a207) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/gcc-common: Ensure umask setting is consistent for shared workdirRichard Purdie2013-11-291-5/+5
| | | | | | | | | | | | | gcc has cross and target components with a shared workdir. The unpack umask settings need to match for all of these. We need to use strings in each case to ensure the sstate code matches them correctly. This patch tweaks various things to ensure the change adding the unpack umask change doesn't break the compiler builds. (From OE-Core rev: 67162438ee9c402b23c32853af9d313949eb6e4a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: Set umask 022 also for do_unpack taskMartin Jansa2013-11-291-0/+1
| | | | | | | | | | | | | | | | * when git checkouts files from fetched clone it respects system umask and creates files with different permissions, if such files are copied to packages, resulting target images have also different permissions on them. * we need reproducible builds across different builders with different system umask, so set 022 umask [YOCTO #5590] (From OE-Core rev: c9289c506633ffe5c482000d8d225e45454c064d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* module-base: Fix misleading commentRichard Purdie2013-11-291-5/+2
| | | | | | | | | The comment was originally written for module.bbclass and is now slightly misleading. This updates it to match the current code. (From OE-Core rev: 434277ed156c1685283f6fd681062d265f4fa6d0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "kernel: restore scripts in the sysroot"Richard Purdie2013-11-291-11/+0
| | | | | | | | | | | | This reverts commit 6a6735cb98d529c8c5376aedb5c951339f54fe96. The module class already ensures the scripts are rebuilt correctly. Running this at sstate installation time is problematic since it can require the cross compiler. Adding such a dependency would cause issues of its own. (From OE-Core rev: b2c948d56241ff7cdea2e9e68b740f305c72f5ca) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* chrpath: Improve crazy codeRichard Purdie2013-11-291-37/+17
| | | | | | | | | | | | | | | | | | | | | | | | | The current code is a little bit overcomplicated, deficient and also possibly broken. Issues include: a) Not maximally optisming rpaths (e.g. a lib in usr/lib might get an rpath of $ORIGIN/../../usr/lib) b) The return in the middle of the for loop look suspiciously like it might break on some binaries c) The depth function, loops of "../" prepending and so on can be replaced with a call to os.path.relpath This patch cleans up the above issues. Running binaries should result in less "../" resolutions which can't hurt performance either. [YOCTO #3989] (From OE-Core rev: feea54df6768036649ca6c57524e2a1f480ad249) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Disable icecc for allarch recipesMartin Jansa2013-11-291-0/+8
| | | | | | | | | | | | | * Fix icecc.bbclass failing with: ERROR: recipe-name NULL prefix when it's used with empty TARGET_PREFIX. * Allarch recipes cannot use compiler at all (even the local one) so there is no point of using icecc for them. (From OE-Core rev: a956f9d91c8128e43b55c6bc01337472e47fe43a) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: write image manifestPaul Eggleton2013-11-265-20/+15
| | | | | | | | | | | | | | | | | | | | | | | | | Write a list of installed packages to a .manifest file next to the image, so we can find out what went into the image after it has been constructed without necessarily having to have buildhistory enabled (although that will provide more detail.) We can make use of this for example in the testimage class associated code that checks for installed packages for determining whether or not to run specific tests. Note: this replaces the previous ipk-specific manifest code with something that works for ipk, rpm and deb, and instead of a pruned status file, packages are listed one per line, in the following format: <packagename> <packagearch> <version> Tests for all three backends have shown that the performance impact of this change is negligible (about 1.5s max). Implements [YOCTO #5410] (From OE-Core rev: 2978d1f2617a33e2e3a77e249d73e998d79b4ec9) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Use random filename for maximum path length testMike Crowe2013-11-251-1/+2
| | | | | | | | | | | | | | | | check_create_long_filename used a fixed filename for its test files. This meant that os.remove(testfile) could fail with ENOENT if two instances were running at the same time against the same sstate directory. Using a randomly generated filename stops this from happening. (Although it might seem unlikely, this race did appear to occur multiple times with Jenkins - presumably because the matrix jobs were all kicked off at the same time.) (From OE-Core rev: bc28e3f26e7f85af82f403924c0ae29e1ad34a87) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Don't hard code value of ENAMETOOLONGMike Crowe2013-11-251-2/+3
| | | | | | | | | | Although ENAMETOOLONG is 36 on Linux x86 and x86_64 it does isn't on other architectures so the value shouldn't be hard coded. (From OE-Core rev: 11a9cf5ee0daf82097fb2f36b58016f20a5968f3) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* metadata_scm: Avoid crashing on new svn version layoutsRichard Purdie2013-11-241-1/+3
| | | | | | | | | | | | | This avoids crashing on newer svn layouts where the entries files don't contain three lines. If someone wants to fix this to get the right version on newer subversion checkouts, patches welcome but this at least stops things crashing. [YOCTO #5363] (From OE-Core rev: e850c53d4d8cb877a704a23f9ce02d6185ba3ffa) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: Stop bundle_initramfs thwarting sstate cache and fix raceMike Crowe2013-11-241-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | The new do_bundle_initramfs task introduced in 609d5a9ab9e58bb1c2bcc2145399fbc8b701b85a defeats using the sstate cache. The kernel is resurrected from the sstate cache but ends up being built again since do_bundle_initramfs depends on do_compile. The task is no longer nostamp to avoid causing unnecessary rebuilds. The sstate checksum stamps should know when to rebuild. The task now runs before do_deploy and part of the work has been moved to do_deploy where it now writes to ${DEPLOYDIR} rather than ${DEPLOY_DIR_IMAGE} so that the files end up in sstate. The task can also race against do_install since both call into the kernel build system. This is fixed by making do_bundle_initramfs run after do_install (which therefore also fixes the problem that 3baa63b4d588c3262254528b406ede265dd117bf was addressing.) (From OE-Core rev: 55989cb509340bd265d0ce0d8bfe849681be4616) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "kernel.bbclass: move bundle_initramfs after kernel_link_vmlinux"Mike Crowe2013-11-241-1/+1
| | | | | | | | | | This reverts commit 3baa63b4d588c3262254528b406ede265dd117bf. It broke builds that aren't using kernel-yocto. (From OE-Core rev: 81831db1c32afa3346f3ed9f4325ad280e5bb005) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*.bbclass: List which post-install scripts can not be runJeffrey C Honig2013-11-223-6/+9
| | | | | | | | | | | | When preping a read-only rootfs and finding some post-install scripts that can not be run, list the names of said scripts to avoid having to look around the rootfs to find a list. (From OE-Core rev: 0188120691f433fdccf71b92618115195278c0af) Signed-off-by: Jeffrey C Honig <jeffrey.honig@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Replace -linux-gnun32 with -linux.* in RPM platform fileLei Liu2013-11-221-5/+1
| | | | | | | | | | | | | | | | | | | | | On a multilib system when one of the multibs has a different OS then other multilibs a failure can occur during the install process because RPM assumes all systems have the same OS. When an n32 platform is selected as an alternative multilib, it shows up as mips64_n32-.*-linux-gnun32 in /etc/rpm/platform. This causes problems when the smart tool tries to add a channel for the multilib. RPM archScore call always returns zero for arch "mips64_n32" - after appending default vendor and os, it finds "mips64_n32-wrs-linux" doesn't match any predefined platforms. Fix this by removing the restriction of -gnun32 suffix in platform file. (From OE-Core rev: d9489c44ee4f195ae1b09f340b9545cddba58145) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: Fix incorrect setting of multilib PREFERRED_PROVIDER_virtual_pkgLei Liu2013-11-221-3/+3
| | | | | | | | | | | | | | PREFERRED_PROVIDER_virtual_pkg has been incorrectly set with more than one multilib prefixes. For example, if we have two alternative multilibs lib64 and lib32, PREFERRED_PROVIDER_virtual_pkg will be set to lib32-lib64-pkg or lib64-lib32-pkg, depending on which multilib shows up first in the list. (From OE-Core rev: 17a432dc059e24ba10d4baec988828c0025a5e46) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory/distrodata: Adapt to updated fetcher APIRichard Purdie2013-11-222-2/+6
| | | | | | | | | | The buildhistory code has fallback paths for older bitbakes for now. The distrodata class is much less used and it can be assumed a recent bitbake is used in that case rather than adding fallback code. (From OE-Core rev: 570cc145029fd9d5528aef5c27cb65164265c799) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license.bbclass: fix missing of license files on ubuntu build hostChen Qi2013-11-201-2/+2
| | | | | | | | | | | | | | | | | The license_create_manifest function contains bashism, this will lead to unexpected results on ubuntu build host, as sh is linked to dash on ubuntu. Even if COPY_LIC_MANIFEST and COPY_LIC_DIRS are enabled, the license files will still be missing on target. This patch fixes the above problem. [YOCTO #5549] (From OE-Core rev: 4df9daee5c732c0a20dabe8515577238a1508512) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image_types: newer btrfs.mkfs needs an empty file to build the disk inSaul Wold2013-11-201-0/+1
| | | | | | | (From OE-Core rev: 836396a3450e7bf151956e87bd92f70c5050c995) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: move bundle_initramfs after kernel_link_vmlinuxMing Liu2013-11-201-1/+1
| | | | | | | | | | | | ${KERNEL_OUTPUT} is being renamed/restored in bundle_initramfs task, so we must ensure bundle_initramfs run after kernel_link_vmlinux where the link of vmlinux is created as the bootable image. (From OE-Core rev: 3baa63b4d588c3262254528b406ede265dd117bf) 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>
* 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>
* kernel.bbclass: Use lzma not lzmash for decompressingPhil Blundell2013-11-201-1/+1
| | | | | | | | | | | | | | | If kernel_do_compile() encounters a .lzma image for the initramfs, it attempts to decompress it using the little-known "lzmash" utility. This may not be present, which will cause the build to fail. Fortunately, it appears that the more mainstream "lzma" tool is compatible so we can use that one instead. (From OE-Core rev: f7a04cbdee67675ff6a8787709f3a312dc25bfec) Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Use bb.utils.which instead of calling whichTobias Henkel2013-11-201-3/+3
| | | | | | | | | | | | | The icecc class often calls 'which' for determining paths. This leads to many messages on stderr in case 'which' doesn't find the executable. Using bb.utils.which is more appropriate here and doesn't pollute stderr. (From OE-Core rev: 7ed7aa38182ce8c7300a08e3aefcc65da2b524a8) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distrodata.bbclass: Add fetch2 handlers to svn case in checkpkgIrina Patru2013-11-201-26/+17
| | | | | | | | | | | | | | | | | | The existing code in checkpkg from distrodata.bbclass had similar functionality with fetch when searching for latest package version. For packages that use svn protocol that part was rewrote in order to use fetcher API. It now calls latest_revision method from Svn class in fetch2 so that it gets latest version. [ YOCTO #1813 ] (From OE-Core rev: 2686b92bbab88cc777fdc0e4dded5aeabca7ac77) Signed-off-by: Irina Patru <irina.patru@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-grub.bbclass: support /boot area within root partitionHongxu Jia2013-11-201-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, it supported the situation that /boot area with separate boot partition: ... menuentry "Update bzImage-3.10.10-WR6.0.0.0_standard-3.10" { set root=(hd0,1) linux /bzImage-3.10.10-WR6.0.0.0_standard root=/dev/sdb1 rw ip=dhcp } ... But didn't consider the situation that /boot within root partition: ... menuentry "Update bzImage-3.10.10-WR6.0.0.0_standard-3.10" { set root=(hd0,1) linux /boot/bzImage-3.10.10-WR6.0.0.0_standard root=/dev/sdb1 rw ip=dhcp } ... This fix supported them both. [YOCTO #5514] (From OE-Core rev: 53d342db9f9995564573715f28c3e4c9c8c68bf9) 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>
* kernel.bbclass: fix hardlink testBruce Ashfield2013-11-161-1/+1
| | | | | | | | | | | | | The commit [kernel.bbclass: test for hardlinks before installing] doesn't work on all build machines without a space between the ! and the test for hardlink equivalance. The build continues, while the test fails and no copy is made into the sysroot. Eventually tasks like build_hdimg will fail with the missing kernel with the root cause being less than obvious. (From OE-Core rev: 0704648e9dfd2897f6f54773a0e7d2762117970c) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: test for hardlinks before installingBruce Ashfield2013-11-151-1/+5
| | | | | | | | | | | | | | | | | commit df564c4 [kernel: Use hardlinks for do_populate_sysroot for speed] does indeed speed up the build, but it also means that the KERNEL_OUPUT and KERNEL_IMAGETYPE may be hardlinks. If they are hardlinks, install complains that they are actually the same file and stops the build. We can easily test and avoid the copy if the file is already in place. [YOCTO #5527] (From OE-Core rev: 6a3b3e501c66733216ac43d3f020cfdb512dd640) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/license: use "1" to set boolean variablesPaul Eggleton2013-11-141-2/+2
| | | | | | | | | | | | | The expected usage of COPY_LIC_MANIFEST and COPY_LIC_DIRS appears to be to set them to "1" to enable; however the test here is just testing whether they have a value at all, so setting them to "0" would also enable them which is somewhat disingenuous. Actually check if they are set to "1" instead in order to fix this. (From OE-Core rev: 2d8e124adcf27af524eeeae61daf1b21a1c2f27c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/pkg_metainfo: removePaul Eggleton2013-11-141-22/+0
| | | | | | | | | | | This is very old, and we now have pkgdata which is much more complete. Nobody appears to be using this class, and even OE-Classic had no current references to it. (From OE-Core rev: e67dbb638044b804738bdd589d64d45963a3297a) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/pkg_distribute: removePaul Eggleton2013-11-141-29/+0
| | | | | | | | | | | This appears to be a very old way of archiving recipes and associated files. We have better ways of doing this now, and nobody appears to be using this class - even OE-Classic had no current references to it. (From OE-Core rev: e3141844ef84d8a48efa81e0c9c85821ced16f7c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: fix commentsPaul Eggleton2013-11-141-2/+2
| | | | | | | | | It's DISTRO_FEATURES; DISTRO_FEATURE is invalid. (From OE-Core rev: d2380c683d5411e7a85c3ce80115aea329187534) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/license: fix commentsPaul Eggleton2013-11-141-3/+3
| | | | | | | | | It's LICENSE_FLAGS, LICENSE_FLAG is invalid. (From OE-Core rev: 70bd620b58ddd90477d9f438922ee3bdc7e8c5a5) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gtk-immodules-cache: fix error message to use correct namesPaul Eggleton2013-11-141-1/+1
| | | | | | | | | It's gtk-immodules-cache and GTKIMMODULES_PACKAGES. (From OE-Core rev: 10cc4ceb813128676e78d04068ad089f6b4a697b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: validate SDKMACHINE valuePaul Eggleton2013-11-141-0/+5
| | | | | | | | | | | If SDKMACHINE is set then check that a configuration file matching it actually exists, otherwise the user won't know that they've set it incorrectly. (From OE-Core rev: 8c984f92af821a4048c93f8e308c5f4a3fa39ca4) Signed-off-by: Paul Eggleton <paul.eggleton@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>
* classes/image-empty: removePaul Eggleton2013-11-142-6/+6
| | | | | | | | | | We don't actually need this dummy class; "inherit" can be used with an expression that evaluates to nothing with current BitBake. (From OE-Core rev: f312eb2d2a2715e772ed9e8afc7aea326d8079ec) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging: Use hardlinking for sysroot_stage_dirRichard Purdie2013-11-141-7/+4
| | | | | | | | | | | | This saves about 2GB on a core-image-sato build so is worth doing and is consistent with our efforts to try and decrease our build footprint. Build time in my local test seemed unaffected but on more IO bound machines it should help. (From OE-Core rev: 7136cbc64e5efb09f3fae3e2e35a181ca3d66dd4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane, license: Trap MalformedUrl exceptions when parsing LIC_FILES_CHKSUMPhil Blundell2013-11-122-2/+8
| | | | | | | | | | | | | | | | | 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>
* bitbake.conf: Default DISTRO to nodistroRichard Purdie2013-11-121-1/+1
| | | | | | | | | | | | | | | | | An empty distro value leads to OVERRIDES and FILESOVERRIDES containing "::" entries which causes odd issues such as files being included when they shouldn't be. We could put in anonymous python to guard against empty entries but its messy and setting a default value for DISTRO to something harmless is much easier. This patch adds a weak default and ensures the sanity test doesn't complain about it. DISTRO_VERSION and SDK_VERSION are also updated to match. (From OE-Core rev: b7279f99639774674da806d37d252f388f33055f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Fix race condition when packaging toolchainTobias Henkel2013-11-121-2/+29
| | | | | | | | | | | | In the current implementation there can be a race condition while creating the toolchain archive causing the build to break. This is fixed by locking the toolchain archiving step using flock. (From OE-Core rev: 8a30be803e91e66688cfc27ca4c21f26fb22eed8) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Add package whitelistTobias Henkel2013-11-121-3/+11
| | | | | | | | | | | | | | There are some recipes which parse the PARALLEL_MAKE variable by their own and set them to an empty string afterwards. This disables icecc for this recipe. Adding a whitelist for forcing icecc makes it possible to use icecc also with these recipes. (From OE-Core rev: d2735ac44887c7e01134d6870a4875a786501eba) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Support shell evaluation of KERNEL_CCTobias Henkel2013-11-121-1/+7
| | | | | | | | | | | | | | | | In the current implementation a KERNEL_CC variable containing shell evaluation breaks the build process. Shell expansion is not happening before general expansion in get_cross_kernel_cc which results in a syntax error and an aborted parse process. Before expanding the KERNEL_CC variable get_cross_kernel_cc now checks for backticks or '$(' in the KERNEL_CC variable and performs a shell evaluation using a call to echo if it finds one. (From OE-Core rev: b28bae30fc5d8d1d7cc675ddb4159c39fb9bc3fd) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Enable icecc also for install stepTobias Henkel2013-11-121-3/+3
| | | | | | | | | | | Some packages are calling the compiler in the install step. In this case either the build breaks or icecc is not used for building. The proper environment has to be set to enable icecc based building. (From OE-Core rev: bb1366cebb60593fc21fd7a9a678a159da8ec81c) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Add dummy python version of set_icecc_envTobias Henkel2013-11-121-0/+4
| | | | | | | | | | | | | | | Bitbakes prepend mechanism for the tasks disregards the type of the function. Thus bitbaking recipes using python functions for configure, compile or install steps fail due to the missing python version of set_icecc_env. Assuming that icecc doesn't need to be used in such situations adding a dummy python version of set_icecc_env fixes this. (From OE-Core rev: 365dec500166b8eb9d64c573dd7139d3a26ae445) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Add blacklist vars to BB_HASHBASE_WHITELISTTobias Henkel2013-11-121-1/+1
| | | | | | | | | | Changing any of the ICECC blacklist variables should not change the sstate checksum as this doesn't influence the build result. (From OE-Core rev: 0f7dc969e64bc7563e208a4fb7d3ebe7c4e69e79) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Reduce verbosity with empty PARALLEL_MAKETobias Henkel2013-11-121-1/+1
| | | | | | | | | | | | | Currently the icecc class prints a note for every package which disables parallel make at parse time. This is unneccessary as many packages don't support parallel building. Changing the log level from info to debug hides these messages in normal builds without removing the information when needed. (From OE-Core rev: 6d2735629c20560a9406964195726b1a6e2d7d99) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: Log reason in error casesTobias Henkel2013-11-121-0/+4
| | | | | | | | | | | | The current implementation doesn't give a hint about the cause in case something went wrong in set_icecc_env. This makes it harder to find out why a package is not being built using icecc. Therefore warnings are inserted in the various error cases. (From OE-Core rev: 0adea170c7019304471d442784fa0eb9bfcdf94b) Signed-off-by: Tobias Henkel <tobias.henkel@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-mklibs: Fix grep pattern when mklibs collects executables in rootfsLei Liu2013-11-121-1/+1
| | | | | | | | | | | | File command in some version could print extra space between "LSB" and "executable" - it causes mklibs can't find any executables using grep "LSB executable". Fix the grep pattern to catch multiple spaces. (From OE-Core rev: a52ef8c5dcd71f39bb48c71fb868cc0db662560e) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>