summaryrefslogtreecommitdiff
path: root/meta/recipes-kernel/linux/linux-yocto.inc
AgeCommit message (Collapse)AuthorFiles
2013-08-27linux-yocto: add bc-native dependency, and move to linux-yocto.incBruce Ashfield1
As reported by Martin Jansa <martin.jansa@gmail.com>, the following error happens when building in a minimal environment: | BC kernel/timeconst.h | /bin/sh: bc: command not found | make[3]: *** [kernel/timeconst.h] Error 127 | make[2]: *** [kernel] Error 2 | make[2]: *** Waiting for unfinished jobs.... kernel commit 70730bca [kernel: Replace timeconst.pl with a bc script] added a kernel dependency on bc. To support the build of linux-yocto recipes in these configurations, we add bc-native to the common dependencies. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04kernel: Add kernel headers to kernel-dev packageDarren Hart1
[YOCTO #1614] Add the kernel headers to the kernel-dev package. This packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries. Move the location to /usr/src/kernel Before use on the target, the user will need to: # cd /usr/src/kernel # make scripts This renders the kernel-misc recipe empty, so remove it. As we use /usr/src/kernel in several places (and I missed one in the previous version), add a KERNEL_SRC_DIR variable and use that throughout the class to avoid update errors in the future. Now that we package the kernel headers, drop the kernel_package_preprocess function which removed them from PKGD. All *-sdk image recipes include dev-pkgs, so the kernel-dev package will be installed by default on all such images. Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com> CC: Khem Raj <raj.khem@gmail.com>
2012-06-29linux-yocto: Use INC_PR and move kernel require to linux-yocto.incDarren Hart1
When making changes to kernel.bbclass, it would be nice not to have to manually change the PR of every linux-yocto*.bb file that requires it. Move the "require kernel" line to linux-yocto.inc and update the linux-yocto recipes to use INC_PR. Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com>
2012-05-08linux-yocto: streamline support for multiple upstream repo typesBruce Ashfield1
In order to support repositories of various types (with or without meta data, branched, pristine, custom, etc) information about the type of processing that is required was passed to the processing phases via variables. The combination of variables involved in coordinating the processing creates a learning curve and overly complicates recipe extensions. With minor tweaks to the kern-tools, adding flexibility and keying off the existence of the meta branch it is possible to remove all of the variables that were added to support different repository types. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2012-02-26More quoting fixesMartin Jansa1
* We have various variables which are either not quoted at all or are half quoted. This patch fixes the bad exmaples so everything is consistent. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-15linux-yocto: move common tasks to a common locationBruce Ashfield1
During the initial development of the linux-yocto recipes there were several additional tasks that needed to be run in any inheriting recipe. At that time, they didn't seem to fire if they were in the include file versus the recipes themselves. As it turns out, these tasks do work fine if placed in the linux-yocto.inc file, and the rest of the recipes can be simplified as a result. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-08-23linux-yocto: move more default values into linux-yocto.incBruce Ashfield1
During the preparation of some linux-yocto extension documentation it was clear that some variables are being defined in each recipe, when they don't have to be. Moving the defaults into linux-yocto.in and allowing them to be overidden in recipes simpifies the reuse of the base infrastructure. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-07-22linux-yocto: update LICENSE to GPLv2Bruce Ashfield1
As reported by Koen Kooi, the LICENSE for linux-yocto can be tightened up to specifiy the particular version of the GPL. cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-03-21kernel/bbclass: rework kernel and module classes to allow for building ↵Darren Hart1
out-of-tree modules The existing infrastructure uses an external build tree which references the kernel source in the work dir. If run with rm work, building external modules will fail. This patch places a configured source tree in sysroots. Striking a balance between minimal size and minimal maintenance is difficult. A fully configured tree is about 500MB after a clean. This version leans on the side of caution and removes only the obviously unecessary parts of the source tree to conserve space, resulting in about 170MB. The arch directories would be some additional pruning we could do. Given examples from the devel package from distributions, I suspect this size could be reduced to 75MB or so, but at the cost of a much more complex recipe which is likely to require a great deal more maintenance to keep current with kernel releases. Care is also taken to clean the hostprogs in scripts, and the modules are responsible for building them as needed. Although it is unclear to me if this is really necessary, especially considering that modules put these bits back as soon as they compile. If we are not generating an sstate package, I suspect we can ignore these. Please try this with your modules and let me know how it does. I tried to take non linux-yocto kernel recipes into account, but I have only tested with linux-yocto and the hello-mod recipe so far. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Acked-by: Koen Kooi <koen@dominion.thruhere.net> Acked-by: Gary Thomas <gary@mlbassoc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-09linux: factor dts/dtc/dtb handling into a specific includeBruce Ashfield1
Fixes [BUGID #610] The powerpc linux-yocto kernels were not creating dtb images in the deploy directories. This was due to two problems: - the dtb generation rules were not being configured - the boards were not specifying a device tree in their config This change addresses the first point by factoring out the dtb generation routines into a new include that can be used by multiple recipes. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-02-09linux-yocto: streamline BSP bootstrappingBruce Ashfield1
In order to build BSPs that were not already integrated into the upstream linux yocto kernel AND keep the git fetcher happy, some fairly complex anonymous python sections were required. These sections cause problems with variable expansion and SRCREV processing. With the updated git fetcher code, we can streamline the BSP boostrapping process and drop 99% of the anonymous python code. This commit has the following changes to support BSP boot strapping and simplication for existing BSPs. - KMETA is set per-recipe rather than in python code - undefined machines are no longer used, but instead common branch names are set per-recipe - fallback machine SRCREVs are present in the default revisions file - A new variable YOCTO_KERNEL_EXTERNAL_BRANCH should be set in the local.conf for new BSPs instead of being programatically determined in the anonymous python. - No more explicity KMACHINE variable expansion and manipulation, since the tools and build phases no longer require it due to the per-recipe fallbacks. Integrated/merged BSPs are unaffected by the changes and have been regression tested. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> foo Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-02-01linux-yocto: export kernel configuration audit to the consoleBruce Ashfield1
Fixes [BUGID #692] Previously the information dumped by the kernel configuration audit scripts was only placed in log files. This isn't as useful as it could be, since they are rarely checked. This change takes the output from kconf_check and explicitly displays it to the user. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-12-23linux-yocto: Add LIC_FILES_CHKSUMSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2010-12-13linux-yocto: fix machine compatibilityBruce Ashfield1
During the last phase of the recipe factoring, the board compatibility lists ended up in the wrong place, which meant we had an incomplete list of boards, and the same set of boards for both kernels (stable and devel). To fix this, I've yanked the compatibility to the recipes themselves and updated the emenlow to have a -stable bbappend. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-12-10yocto-kernel: factor common routes, update to 2.6.37 and branch renamingBruce Ashfield1
In order to extend and create more kernel recipes based on the supported yocto kernel common routines need to be placed in re-usable blocks. To accomplish this meta/recipes-kernel/linux/linux-yocto_git.bb is broken into three parts: - meta/classes/kernel-yocto.bbclass: contains common routines for checking out and configuring a yocto kernel git repository. This should be inherited by recipes that need this functionality. - meta/recipes-kernel/linux/linux-yocto.inc: Contains the machine mappings, compatibility, build directives and common task definitions for a yocto kernel based recipe. This inherits kernel-yocto, and is the typical point of entry for other recipes. - meta/recipes-kernel/linux/linuux-tools.inc: tasks and function definitions for kernel recipes that want to build/export perf It also updates the linux-yocto recipe to default to 2.6.37. As part of the update to 2.6.37 the branch naming and conventions have been modified to show inheritance, and be more generic. For example: master meta yocto/base yocto/standard/arm_versatile_926ejs yocto/standard/base yocto/standard/beagleboard yocto/standard/common_pc/atom-pc yocto/standard/common_pc/base yocto/standard/common_pc_64 yocto/standard/fsl-mpc8315e-rdb yocto/standard/intel_atom_z530 yocto/standard/intel_core_qm57_pch yocto/standard/mti_malta32_be yocto/standard/preempt_rt/base yocto/standard/preempt_rt/common_pc yocto/standard/preempt_rt/common_pc_64 yocto/standard/preempt_rt/intel_atom_z530 yocto/standard/preempt_rt/intel_core_qm57_pch yocto/standard/qemu_ppc32 yocto/standard/routerstationpro In this structure: master: tracks the mainline kernel meta: meta information for the BSPs and kernel features yocto/base: baseline kernel branch yocto/standard/base: 'standard' kernel, contains features and configs for all BSPs yocto/standard/<machine>: represents a BSP with specific features or configurations The tools, tree and libc-headers have all been updated to deal with this new structure. Also in addition to dealing with the new structure, they continue to work with the existing tree and will adapt at runtime to the differences. The linux-yocto-stable_git.bb recipe continues to build the 2.6.34 based tree,and linux-yocto_git.bb builds 2.6.37. As boards are enabled for the new kernel they will move from -stable to the development kernel. As of now, only the emulated targets have moved to 2.6.37-rcX Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>