summaryrefslogtreecommitdiffstats
path: root/meta/classes/linux-kernel-base.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* kernel: make LOCALVERSION consistent between recipesBruce Ashfield2024-03-011-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | The initial fix for localversion setting in 6.3+ broke older recipes and also broke recipes setting localversion in a kernel recipe, as make-mod-scripts (and other locations) can trigger a regeneration of files and don't have access to the variable. Moving the setting of this variable to the global namespace doesn't make sense, so we follow the example of the kernel-abiversion and save a kernel-localversion to the build artifacts. Recipes that may regenerate scripts/dynamic files, must depend on the do_shared_workedir of the kernel and use the helper function to read the file storing the localversion. (From OE-Core rev: cca0971a7d92d823cc0c2b16cf14a7b2ed8ecb61) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> cherry-picked from master b378eec156998eea55ba61e59103cb34fab0d07c Signed-off-by: Andreas Helbech Kleist <andreaskleist@gmail.com> Acked-by: Ryan Eatmon <reatmon@ti.com> Signed-off-by: Steve Sakoman <steve@sakoman.com>
* kernel/linux-kernel-base: Fix kernel build artefact determinism issuesRichard Purdie2023-02-151-0/+4
| | | | | | | | | | | | | | | | With the 6.1 kernel we've seen reproducibility/determinism issues where the kernel seems to rebuild headers referencing the hostname or local user. kernel-devsrc building after the kernel seemed to trigger it in some cases. Moving the definitions to the bbclass used by all the kernel recipe code including kernel-devsrc seems to be the best way to ensure this doesn't happen. (From OE-Core rev: 4c302827365903b99a517651c2a14661ce78f79b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 60681baa97daf4f3856453c34d6be08b6771a81b) Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Remove tab indentations in python codeRobert Yang2018-11-231-2/+2
| | | | | | | | | Use 4 spaces to replace a tab. (From OE-Core rev: 55eaf8779170b9396e94dc4a44667824c4f36363) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel: Rearrange for 1.8Richard Purdie2014-12-211-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 1.8 we want to streamline the kernel build process. Basically we currently have multiple copies of the kernel source floating around and the copying/compression/decompression is painful. Lets assume we have a kernel source per machine since in most cases this is true (and we have a sysroot per machine anyway). Basically, instead of extracting a source into WORKDIR, then copying to a sysroot, we now set S to point straight at STAGING_DIR_KERNEL. Anything using kernel source can then just point at it and use: do_configure[depends] += "virtual/kernel:do_patch" to depend on the kernel source being present. Note this is different behaviour to DEPENDS += "virtual/kernel" which equates to do_configure[depends] += "virtual/kernel:do_populate_sysroot". Once we do this, we no longer need the copy operation in do_populate_sysroot, in fact there is nothing to do there (yay). The remaining part of the challenge is to kill off the horrible do_install. This patch splits it off to a different class, the idea here is to have a separate recipe which depends on the virtual/kernel:do_patch and just installs and packages the source needed to build modules on target into a specific package. Right now this code is proof of concept. It builds kernels and kernel modules. perf blows up in do_package with issues on finding the kernel version which can probably be fixed by adding back the right bit of do_install, and adding a dependency of do_package[depends] += "virtual/kernel:do_install" to perf. The whole thing needs a good write up, the corner cases testing and probably a good dose of cleanup to the remaining code. (From OE-Core rev: 3b3f7e785e27990ba21bc7cd97289c826a9a95d1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bblass: remove get_kernelmajorversionAnders Darander2011-07-011-8/+0
| | | | | | | | | It is now unused. (From OE-Core rev: 18a0f1dfd9d36e53a3adba74f30e756769a74a0b) Signed-off-by: Anders Darander <anders@chargestorm.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* linux-kernel-base.bbclass: merge version detection updates from upstreamJoshua Lock2010-05-201-0/+3
| | | | | | | | | Kernels after 2.6.33 store the utrelease.h file, used to detect the kernels version, in a different location. Merged from oe.dev Signed-off-by: Joshua Lock <josh@linux.intel.com>
* classes: Remove and sanitise import statementsRichard Purdie2009-11-131-2/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* kernel.bbclass: Remove broken and unused PARALLEL_INSTALL_MODULESRichard Purdie2007-08-081-4/+0
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2405 311d38ba-8fff-0310-9ca6-ca027cbcb966
* kernel.bbclass: Sync with updates in OE to work with kernels >= 2.6.18Richard Purdie2006-11-021-0/+42
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@851 311d38ba-8fff-0310-9ca6-ca027cbcb966