summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* image.bbclass: image_types.bbclass is a mustRobert Yang2014-08-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The image_types.bbclass is a must since we use this in image.bbclass: [snip] python () { deps = " " + imagetypes_getdepends(d) d.appendVarFlag('do_rootfs', 'depends', deps) [snip] The imagetypes_getdepends() is defined in image_types.bbclass. Use "+=" to replace "?=" since it is a must, so that the user can use "IMAGE_CLASSES = foo.bbclass" in local.conf to add their own image class. NOTE: the IMAGE_CLASSES_append = " foo" doesn't work since we use this in image.bbclass: IMAGE_CLASSES += "image_types" inherit ${IMAGE_CLASSES} I think that it is because inherit takes effect before append? Another way to fix the problem is: IMAGE_CLASSES ?= "" inherit image_types ${IMAGE_CLASSES} But it seems that we need another name for IMAGE_CLASSES, for example IMAGE_CLASSES_EXTRA, and also need update the doc, which would make it complicated. (From OE-Core rev: c225613d997ef40dedf64b880b5ca4ae89adfded) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Support image type "squashfs-lzo"Mike Looijmans2014-08-151-1/+3
| | | | | | | | | | | Add "squashfs-lzo" to the image types. LZO compression support has been in both kernel and squashfs tools for many years, but OE never enabled it. (From OE-Core rev: ab659b1c1e13fd6863893abff86990d88aa36790) Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib_global.bbclass: PREFERRED_PROVIDERS for multilibsPeter Seebach2014-08-152-111/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | The code in base.bbclass to spread PREFERRED_PROVIDERS values to multilibs doesn't work for things which rely on TARGET_PREFIX, such as virtual/${TARGET_PREFIX}gcc. This is because the expansion of TARGET_PREFIX produces the wrong value if executed prior to the assignment of TARGET_VENDOR_virtclass-multilib-libxx, which will always happen since that assignment doesn't happen until recipe parsing, but the PREFERRED_PROVIDERS expansion is happening around ConfigParsed. To solve this, we make a couple of changes. First, the creation of the TARGET_VENDOR override values is moved into a new ConfigParsed event handler in multilib_global. Second, the preferred_ml_updates() function's code is moved into that function too. It seems safe to assume that PREFERRED_PROVIDER values only need to be spread to other multilibs when multilibs are in use. I don't think this directly affects any use cases that don't involve third-party or alternative toolchains. (From OE-Core rev: 513f72274460e54fd35dda5ef70fa42ba2b284f8) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sdk: change EXTRA_OECONF_FPU to EXTRA_OECONF_GCC_FLOATPeter A. Bigot2014-08-152-2/+2
| | | | | | | | | | | | This variable is used to ensure the proper version of --with-float=FOO is passed to gcc's configure script. gcc also has a --with-fpu=FOO option that means something different. To avoid confusion, change the names to be consistent. (From OE-Core rev: c17d883fa99b6967d83c3796d22fc0c1dbe704e6) Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cmake: drop -fpermissiveMartin Jansa2014-08-151-1/+1
| | | | | | | | | | | | | | | | | | | | | * it was dropped from default CXXFLAGS in: commit 24dd8e129447013ee98609f3892ec414b1b21340 Author: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Sun Mar 2 17:38:33 2014 +0000 bitbake.conf: Drop -fpermissive Drop the -fpermissive C++ compiler flag. We've had this around for years, most code should have been fixed long ago. Its possible some recipes may fail however we can (and should) just use the flag where needed. * I haven't build world with this yet, but maybe it's time to drop it here as well at least for consistency (From OE-Core rev: 578124aedd3dbffd79ea01862d57223ffaa7216a) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cml1.bbclass: fix diffconfig diff commandMaciej Borzecki2014-08-151-1/+1
| | | | | | | | | | | | | Commit 6a7b98993350d0d24eae0058ae26ae19cfdf7c4c introduced a typo in command, a whitespace was missing between --new-line-format and path to original file. As a result, diffconfig task did not work, diff failed with exit status 2, resulting in empty fragment.cfg. (From OE-Core rev: 8c75aa7c30cc5a796962d099896ca2a9a16c3a06) Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl> Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Move toolchain installation script to a separate fileRichard Purdie2014-08-151-184/+9
| | | | | | | | | | | It makes sense to move the script to a separate file, making the bbclass clearer and allowing the end user to more easily customise or replace it. There are no functionality changes, just the addition of some substitution variables. (From OE-Core rev: f99732a29689c65083ad09abb302f372042c8cd4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*: Refactor common depends/lockfile task flagsRichard Purdie2014-08-153-29/+13
| | | | | | (From OE-Core rev: 96427656ef73bb50753a33ec6ad5e73de711ceb3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Combine rootfs_<pkgtype> and populate_sdk_<pkgtype>Richard Purdie2014-08-157-38/+38
| | | | | | | | | | | There is no real reason to have these separate files any longer. It does mean in meta-toolchain type recipes some extra variables are defined but it also means the common code can be grouped and maintained together which I believe is more beneficial. We therefore merge the classes. (From OE-Core rev: 2cf42b49003494e1b10775523c9a2547eaf16ea4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: Remove old-style definition of do_build() task.Robert P. J. Day2014-08-111-2/+0
| | | | | | | (From OE-Core rev: f31316b96a97e72d866f12a8e4bb33eaaa54b923) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* test-dependencies, insane.bbclass: improve the messageMartin Jansa2014-08-111-1/+1
| | | | | | | (From OE-Core rev: b73e6159aed1a9768d02d12e7894ca0f1e72be69) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* core-image.bbclass: Correct comment about packagegroups.Robert P. J. Day2014-08-111-2/+2
| | | | | | | | | | | Default core image actually includes packagegroup-base-extended, not just packagegroup-base. (From OE-Core rev: 1e567d497713c31e03b58c9997058fc4c0181e5a) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* boot-directdisk.bbclass: use local HDDDIRRobert Yang2014-08-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Use $HDDDIR rather than ${HDDDIR} in build_boot_dd(), otherwise may errors: - Set these in local.conf: IMAGE_FSTYPES += "live" IMAGE_FSTYPES += "vmdk" AUTO_SYSLINUXMENU = "1" NOHDD = "1" $ bitbake core-image-sato DEBUG: Executing shell function build_boot_dd install: cannot create regular file `/path/to/core-image-sato-1.0/hddimg//vesamenu.c32': No such file or directory WARNING: exit code 1 from a shell command. This because it uses the ${HDDDIR} which is set in bootimg.bbclass, use local HDDDIR which is set in build_boot_dd() will fix the problem. (From OE-Core rev: 1891c39a359e983bb8fd7992b7b5a1aaac11baf7) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* code cleanup for INITRD variable handingNitin A Kamble2014-08-062-1/+5
| | | | | | | | | | * Remove an unnecessary check * Instead of ignoring, report the errors (From OE-Core rev: 7afc6df6f0d0bbe0c5cb8ec021d430d6d9714941) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oelint.bbclass: Check for ${PN} or ${P} usageChong Lu2014-08-061-0/+18
| | | | | | | | | | | | | Check for ${PN} or ${P} usage in SRC_URI or S. We should use ${BPN} or ${BP} instead to avoid breaking multilib. [YOCTO #5427] (From OE-Core rev: d5a1999a7dc216b8182440cf9e8489ec79a6606e) Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oelint.bbclass: add patch checkingChong Lu2014-08-061-0/+35
| | | | | | | | | | | | Check that all patches have Signed-off-by and Upstream-Status. [YOCTO #5427] (From OE-Core rev: a2b6be10daca733ba4e557bd2d831c60589e9ffd) Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oelint.bbclass: make oelint bbclass workChong Lu2014-08-061-170/+28
| | | | | | | | | | | | | Remove LICENSE, MAINTAINER, PRIORITY and valid SECTION checking. Convert tab indentation into four-space. [YOCTO #5427] (From OE-Core rev: 184baa681b3381b7f1f289c3e0c3a0f1096368f6) Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add doc entry for "ptest-pkgs" in IMAGE_FEATURES listRobert P. J. Day2014-08-061-0/+1
| | | | | | | | (From OE-Core rev: e07c5c3792a9bf8faa098b54c61bc5fc41654265) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools: Exclude SDK_OS from autotools task signaturesRichard Purdie2014-08-041-1/+1
| | | | | | | | | | The change to handle SDKs of different types resulted in the signatures becoming SDK specific which wasn't intended. Exclude the variable from the hash values to avoid this. (From OE-Core rev: add7b9cb20282f837c90a785f04ca690a9bbe87e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package: Fix darwin shlibs codeRichard Purdie2014-08-041-11/+13
| | | | | | | | | | | We need to scan binaries as well as libraries for dependencies. Also ensure if its not an object file (as found by otool), we handle this case. (From OE-Core rev: 3a26862b7a7e0ff247bd1441d670443e83fca391) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package: Convert dylib handling from .la to otoolRichard Purdie2014-08-031-32/+22
| | | | | | | | | | | Currently, the darwin shlibs detection is done by parsing the .la file dependency fields. This is very old code and is incomplete in some cases so convert to using otool -l and otool -L to correctly load the rpath and dependency information. (From OE-Core rev: e27573b6c3562662e4b2f5d8543eb7d150c3bc92) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package: Fix pkgdest for darwin shlibs codeRichard Purdie2014-08-031-1/+1
| | | | | | | | | | | | When the code was rewritten we forgot to strip the pkg that is present in the pkgdest path. This was fixed in the linux version of the code but not the darwin one, this matches the fix. Without this, the provider paths are broken. (From OE-Core rev: bcada055f89c8722024faf20088943ea006cfe36) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools: Fix warning for odctools-crosssdkRichard Purdie2014-08-031-1/+1
| | | | | | | | | odcctools-crosssdk doesn't use the suffixed naming the rest of crosssdk does and this results in a annoying build warning. Avoid this. (From OE-Core rev: b6b66f987168615598c980996a1692ca5753b4eb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Allow switching between linux and non-linux SDK builds within the ↵Richard Purdie2014-08-032-3/+3
| | | | | | | | | | | | | | | same tmpdir Currently if you try and switch between linux/darwin/mingw SDK builds in the same TMPDIR, things break. This is due to sstate not reflecting the SDK_OS in the manifest names. Since they are different, reflect this in the manifest naming and allow this to work. (From OE-Core rev: 7a0e1233ba196797f5f9bf862685dfae5511e751) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Add ability to verify toolchain flagsMark Hatle2014-08-021-6/+46
| | | | | | | | | | | | | | | | | | | | | | | | | When attempting to use a binary toolchain, such as meta-mentor, we want the ability to verify that the CCARGS, ASARGS and LDARGS contain the necessary and appropriate flags. This change specifically verifies, if set: TUNEABI_REQUIRED_CCARGS_tune-<tune> TUNEABI_REQUIRED_ASARGS_tune-<tune> TUNEABI_REQUIRED_LDARGS_tune-<tune> Each of these, will be processed by the class and verified that the selected tune's CCARGS, ASARGS, and LDARGS contains the listed item. This can be used to validate that the user has not accidently or otherwise missed an argument. Note, conflicting arguments are not verified. Without verification it's possible for a misconfiguration to go undetected, presenting runtime and debugging errors. (From OE-Core rev: 226f17bfd2ceea7dc5784fbfaa8608f26b90d7f3) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: tweak read_only_rootfs_hook to also support systemd based systemsChen Qi2014-08-021-2/+3
| | | | | | | | | | | Modify the read_only_rootfs_hook function to make it also have effect on systemd based systems. (From OE-Core rev: 92f956d813303f8ee86fd40a4ee3d604a9b4e76e) 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>
* INITRD var: make it a list of filesystem imagesNitin A Kamble2014-08-024-10/+34
| | | | | | | | | | | | | | | | | | The initrd image used by the Linux kernel is list of file system images concatenated together and presented as a single initrd file at boot time. So far the initrd is a single filesystem image. But in cases like to support early microcode loading, the initrd image need to have multiple filesystem images concatenated together. This commit is extending the INITRD variable from a single filesystem image to a list of filesystem images to satisfy the need mentioned above. (From OE-Core rev: b0ac481dda99d8f4be8015964fcb2cb01afce08c) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image-vmdk.bbclass: use sda rather than hdaRobert Yang2014-08-022-2/+2
| | | | | | | | | | | | | | | The modern kernels may not support IDE (CONFIG_IDE=y), but it should support SCSI in most of the cases. The boot-directdisk.bbclass uses sda, too. Remove an extra space from image-live.bbclass and image-vmdk.bbclass to not confuse the user. (From OE-Core rev: 842a797460cd07b779ab588a4ece7e5d4d97417b) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Fix grep command usage on old hosts1.7_M2Richard Purdie2014-07-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | "man grep" on centos: -R, -r, --recursive Read all files under each directory, recursively; this is equivalent to the -d recurse option. "man grep" on a more recent ubuntu system: -r, --recursive Read all files under each directory, recursively, following symbolic links only if they are on the command line. This is equivalent to the -d recurse option. So we have an issue when the SDK installer (even with buildtools-tarball) is used on old hosts since it may try and dereference paths which it should not. This is caused by differences in the behaviour of grep -r on older systems. The fix is to wrap this in find so that only real files are found (as elsewhere in the script. [YOCTO #6577] (From OE-Core rev: 7986adeac16550b33f65fded39a55f668e0e543f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cml1: correct diffconfig output formatStefan Müller-Klieser2014-07-291-1/+1
| | | | | | | | | | | | | If used with some packages using kconfig mechanism, the diffconfig command generates wrong output format. Diff provides all options to format the output correctly. This method formats as intended, is more robust and works with the merge_config.h script from yocto-kernel-tools. (From OE-Core rev: 1d9d035f07be1cef2764949d84cecbff7dd428dd) Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_deb: Fix non x86_64 SDK buildsRichard Purdie2014-07-271-5/+10
| | | | | | | | | | | | | | If building with SDKMACHINE=i686 and using the deb backend, populate_sdk would fail. Its clear when looking at the options that the 32 bit values were overwritten. Replace this code with code similar to that used in package_deb itself. [YOCTO #6458] (From OE-Core rev: 2a7c6f6d3e9d1eedffb79f2347400509feed5dd7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Include do_rootfs depends for do_populate_sdkRichard Purdie2014-07-271-1/+1
| | | | | | | | | | | | | | "bitbake core-image-minimal -c populate_sdk; rm tmp -rf; bitbake core-image-minimal -c populate_sdk" breaks due to missing dependencies on things like update-rc.d. Since we're effecitvely building a rootfs, we need all the same depends as do_rootfs has. The easiest was to achieve this is to simply load them. This resolves the failure when targeting the task from sstate. (From OE-Core rev: cdb0bcef28493edd4cad2a882fb8ba402485a2f1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Use a warning for FILEEXTRAPATHS issues for nowRichard Purdie2014-07-251-1/+1
| | | | | | (From OE-Core rev: f907b3a5b414aa53ce8271763f04532d7127006f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: add checking to standardize how .bbappend files do FILESEXTRAPATHSHongxu Jia2014-07-252-0/+15
| | | | | | | | | | | | | | | | | | | When adding patches or config files from bbappend files, it requires the use of FILESEXTRAPATHS, which has been an issue and failure point for people starting to work with bitbake and oe-core. We add checking to standardize how to use FILESEXTRAPATHS. Only the format of: FILESEXTRAPATHS_append := ":${THISDIR}/Your_Files_Path" or FILESEXTRAPATHS_prepend := "${THISDIR}/Your_Files_Path:" is acceptable. [YOCTO #5412] (From OE-Core rev: 69e083237e632f7d84a7b218dd12d1a5ad95a229) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools: Improve configure dependency code for finding m4 filesRichard Purdie2014-07-251-2/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have an open bug about the warnings issues in builds from an sstate cache when something like glib-2.0 gets rebuilt. The issue is that sstate is "clever" and prunes unneeded dependencies out the tree. For example is X depends on pkgconfig-native but we've already build X and installed it from sstate, it will not get installed when you build Y which depends on X. This patch changes the logic to match the sstate behaviour and prune out unnecessary dependencies from the scope of aclocal. This in turn removes the warning about missing manifest files. The issue is that this patch exposes holes in our DEPENDS in recipes, specifically that some native tools are not listed, specifically, and problematically, pkgconfig, gtk-doc and intltool-native in particular. I've sent out patches against OE-Core that address the bulk of the issues there however I'm conscious this is probably going to a bug issue in other layers and may be too annoying to consider at this point. The other alternative is simply to turn the warning into a debug statement. I appreciate the code below has commented blocks, this is simply debug I've left around for now. It will be cleaned from any final version. (From OE-Core rev: 6d2dc279faa8b28a00895dc6a620d80e2dbac685) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools.bbclass: Enhance sed regexp to avoid extra subshellMatthieu Crapet2014-07-251-1/+1
| | | | | | | | | | head -n1 can be done using sed. (From OE-Core rev: 38d50331acbc1e279449ae6b313ff0116b6c44e8) Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* debian.bbclass: inherit packageRoss Burton2014-07-251-0/+3
| | | | | | | | | | | | | | This class defines a package_name_hook implementation but as EXPORT_FUNCTIONS is order-dependent it needs to inherit package.bbclass first to ensure that the "base" definition in there is defined first, otherwise with a suitable inherit order of debian and then a packaging class can result in the stub package_name_hook being incorrectly used. (From OE-Core rev: 3aa52f85e774bf82e8470a8fd849bd6953930720) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ptest-gnome: add ptest helper for GNOME packagesRoss Burton2014-07-251-0/+8
| | | | | | | | | | | | Many GNOME packages are using their InstalledTests pattern, where the test suite can be trivially installed. To avoid repeating the same logic over and over, add a class to encapsulate this. (From OE-Core rev: 6a66fadbd7d7675c61c342f9c338edbdedf8b92c) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cross-canadian: Copy target_ definitions from cross.bbclassRichard Purdie2014-07-251-3/+4
| | | | | | | | | A while back we fixed the cross definitions to work better in multilib configurations, apply the same fixes to cross-candian.bbclass (From OE-Core rev: 4544b7f1d0abd1b1efd74da430f1ddedf3fdbd1d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Extend TOOLCHAIN_TARGET_TASK to include multilib variantsRichard Purdie2014-07-251-1/+4
| | | | | | | | | | Most people expect the toolchain from a multilib build to contain multilib components. This change makes that happen and is easy for users to override should they want something different. (From OE-Core rev: 396371588c7fd2d691ca9c39cd02287e43cb665b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* allarch: Generate same package for MIPS and non-MIPS targetsMike Crowe2014-07-251-0/+5
| | | | | | | | | | | | | | | | | | LINKER_HASH_STYLE differs between MIPS and non-MIPS targets. This means that LDFLAGS differs too. LDFLAGS is exported so it influences all task hashes. Unfortunately this means that packages with architecture "all" differ depending on whether they are built for a MIPS or non-MIPS target. This causes a lot of unnecessary churn in the ipk/all directory when switching build targets. The simplest way to fix this is to ensure that LDFLAGS stays the same for architecture "all" packages by clearing it. It shouldn't being used by such packages anyway. (From OE-Core rev: 14f4d016fef9d660da1e7e91aec4a0e807de59ab) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel: don't copy .so.dbg files into kernel source installBruce Ashfield2014-07-251-1/+1
| | | | | | | | | | | | | | | In 3.16+ x86-64 kernel builds produce a vdso64.so.dbg file. If this file is copied into the kernel source install multiple QA failures are triggered. Specifically, this file triggers a debug package split that results in files installed but not shipped, and invalid .debug file errors. By ensuring that .so files are not copied, we avoid this incorrect split with no impact on future build phases. (From OE-Core rev: f1f6d153de9dc675b4bf4020799b2365b1b62ec7) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane: Add build depends checkRichard Purdie2014-07-251-3/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we can get the task dependency tree from bitbake, we can start to use this to strengthen our QA checks. If a dependency is added on something which isn't in our dependency tree, that is obviously a bad thing for example. This patch therefore checks the RDEPENDS against the list of tasks and ensures we do have a dependency present, if not a QA warning or error can be issued through the usual mechanism. The implementation is complicated by needing to resolve the RDEPENDS to a PN using pkgdata. Its possible that can be an RPROVIDES of another package so we need to check that too if it isn't a direct RDEPENDS. To allow this test to work, we need to extend the do_package_qa dependencies to include all RDEPENDS. In practise the do_package_write_* tasks already do this so there should be no new circular dependencies or any issues like that. For now the issues are warnings as there are issues this finds in OE-Core which need to be resolved and certainly will be in other layers too. This change should simplify and assist some of Martin's dependency scripts, the idea for this came from a discussion with Martin. It has changed in that it doesn't just cover shlibs dependencies but checks all dependencies. (From OE-Core rev: f6cb24cf2255297308ef57399a6be407129d9b8f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_ipk.bbclass: Support hierarchical feedPaul Barker2014-07-231-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch allows for an optional new layout for ipk feed directories which I've called a 'hierarchical feed' and is based on how Debian pools package files. It is disabled by default and is enabled by setting IPK_HIERARCHICAL_FEED to "1". In the traditional feed layout, package files are placed in <outdir>/<arch>/. This can lead to several thousand files existing in a single directory which is often a problem if developers want to upload a package feed to a shared web hosting provider. For example, in my case, listing files via FTP only shows the first 2000 files, breaking my scripts which attempt to upload only new and changed files via FTP. In the hierarchical feed, package files are written to <outdir>/<arch>/<pkg_prefix>/<pkg_subdir>, where pkg_prefix is the first letter of the package file name for non-lib packages or "lib" plus the 4th letter of the package file name for lib packages (eg, 'l' for less, 'libc' for libc6). pkg_subdir is the root of the package file name, discarding the version and architecture parts and the common suffixes '-dbg', '-dev', '-doc', '-staticdev', '-locale' and '-locale-*' which are listed in meta/conf/bitbake.conf. This change relies on recent patches to opkg-utils which support hierarchical package feeds. Signed-off-by: Paul Barker <paul@paulbarker.me.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-script: Really fix CANADIANEXTRAOE issuesRichard Purdie2014-07-231-1/+1
| | | | | | | | | | | There was an error in the previous fix for the powerpc toolchain issue, this should correct it (and simplify the code too). [YOCTO #6490] (From OE-Core rev: 54ddf3fe060715534cd9e23d6e89cf6b06ed3d9f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Check for setgid/setuid TMPDIRRichard Purdie2014-07-231-0/+6
| | | | | | | | | | | | Building in a TMPDIR which has setgid or setuid is a bad idea. We could try and reset the permissions but since these can also invade into other directories like the cache or sstate, lets tell the user to fix it instead. [YOCTO #6519] (From OE-Core rev: 8e44fc36018fda9b1f9ca8aebde3e744afc07eaa) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-module-split.bbclass: Allow autoloading multiple modules or modules ↵Martin Jansa2014-07-231-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | where basename != module name * new KERNEL_MODULE_AUTOLOAD syntax doesn't support modules where basename and module name don't match (usually - and _), e.g.: module_autoload_bq27x00_battery = "bq27x00-battery" * sometimes it's useful to load modules in particular order and module_autoload allowed to just list multiple modules, e.g.: module_autoload_snd-soc-neo1973-wm8753 = "snd-soc-s3c24xx snd_soc_s3c24xx_i2s snd-soc-dfbmcs320 snd-soc-wm8753 snd-soc-neo1973-wm8753" or module_autoload_g_ether = "s3c2410_udc g_ether" restore this possibility which is useful for incorrect dependencies between modules (From OE-Core rev: e9cd8ba3dda624615b68c601eac04427d9483f14) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass/rootfs.py: add variables to rootfs[vardeps]Roxana Ciobanu2014-07-231-1/+26
| | | | | | | | | | | | | | | | | Added base variables and package backend specific variables to rootfs[vardeps] in order for rootfs to rebuild when changes are made. Set some variables as [func] to inform bitbake that they are shell scripts, so that it invokes its shell dependency parsing. Without marking them as functions, changes in the actual function body would not trigger rootfs rebuilds. [YOCTO #6502] (From OE-Core rev: b8b6214b885a0757f0e628937f8fe21c92c45155) Signed-off-by: Roxana Ciobanu <roxana.ciobanu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: avoid QA errors for n32 kernelMing Liu2014-07-191-2/+2
| | | | | | | | | | | | | | | A series of commits had been integrated to avoid qa checking code throwing the bitsize not matched error for x32 kernel files, the same logic is also needed by n32 kernel which was not addressed in that series. This commit extends the condition for n32 kernel files. (From OE-Core rev: 6a169be15439f12169869ecef890594796e70e58) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* default-distrovars/multilib: update license whitelists to use canonical namesRoss Burton2014-07-191-1/+1
| | | | | | | | | | | | Now that all licenses are canonicalised to SPDX names when processing, we need to rename the whitelists to the match. [RP: Fixed up multilib.bbclass too] (From OE-Core rev: 5b6cdac26e35e9a3b8b09185fc16765fa99dfe5f) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>