Age | Commit message (Collapse) | Author | Files |
|
"/usr/src/kernel" is being hard-coded in multiple recipes so far, move its
definition to bitbake.conf.
Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The linux-yocto.inc may remove the meta dir:
do_install_append(){
if [ -n "${KMETA}" ]; then
rm -rf ${STAGING_KERNEL_DIR}/${KMETA}
fi
}
Which may cause the error:
[snip]
find: `./meta/cfg/kernel-cache/bsp/altera-socfpga/0073-FogBugz-116676-Align-clk.c-with-kernel.org.patch': No such file or directory
find: `./meta/cfg/kernel-cache/bsp/altera-socfpga/0047-FogBugz-90657-Fix-SD-MMC-driver-for-VT.patch': No such file or directory
find: `./meta/cfg/kernel-cache/bsp/altera-socfpga/0006-spi-qspi-cadence-Add-spi-and-qspi-driver.patch': No such file or directory
[snip]
cpio: ./meta/scripts/kgit-config-cleaner: Cannot stat: No such file or directory
cpio: ./meta/scripts/kgit-s2q: Cannot stat: No such file or directory
cpio: ./meta/scripts/kgit-clean: Cannot stat: No such file or directory
[snip]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The file ownership needs to be explicitly set otherwise it inherits
the user and group id of the build user.
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Since virtual/kernel do_compile modifies ${B}, we need to wait for
do_compile to copy everything across in order to ensure a deterministic
file set.
Currently, we race against the build and can see .debug directories, and
the do_compile dependency we will always see them. Add .debug to the
find path pruning.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
commit 3b3f7e785e279 [kernel: Rearrange for 1.8] began the process of
moving the kernel source and build artefacts out of sstate control and
into a shared location.
This changed triggered some workflow issues, as well as bugs related
to the kernel source containing build output, and hence being dirty and
breaking kernel rebuilds.
To solve these issues, and to make it clear that the kernel is not under
sstate control, we move the source and build outputs to:
work-shared/MACHINE/kernel-source
work-shared/MACHINE/kernel-build-artifacts
Where kernel-build-artifacts is the kernel build output and
kernel-source is kept "pristine". The build-artifacts contain everything
that is required to build external modules against the kernel source,
and includes the defconfig, the kernel-abiversion, System.map files and
output from "make scripts".
External module builds should either pass O= on the command line, or
set KBUILD_OUTPUT to point to the build-artifacts. module-base.bbclass
takes care of setting KBUILD_OUTPUT, so most existing external module
recipes are transparently adapted to the new source/build layout.
recipes that depend on the kernel source must have a depedency on the
do_shared_workdir task:
do_configure[depends] += "virtual/kernel:do_shared_workdir"
With this dependency added, the STAGING_KERNEL_DIR will be populated and
available to the rest of the build.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Tthe kernel populate_sysroot can come from sstate, we need the full
source here. We therefore depend on the configure task which isn't
covered by sstate to ensure we get the right set of files.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
module-base.bbclass
do_install for kernel-devsrc can race against do_make_scripts from
module-base.bbclass. Since there is a lock there to guard against concurrency
already, we can just use it here to avoid a race.
Ultimately, this can all likely be much more streamlined but this resolves
the immediate build failures.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Resolve kernel module build failures for qemuppc by including crtsaves.o.
I'm not particularly happy to be doing this, it should perhaps be contained
in the kernel-dev package. Until the overlap between kernel-devsrc and
kernel-dev is resolved, this at least removed the regressions.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
As a "normal" recipe, mulitlib would try and extend it for multilibs.
By inheriting module-base, we can avoid this since we now look more
'kernel' like.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
kernel-devsrc is responsible for creating and a packaging an environment
appropriate for kernel development (on or off target).
To create this support, we only need to copy/install the results of the
virtual/kernel providers build in the staging dir ... with some minor
manipulations to the source tree (.git removal and a clean up). This
produces a source tree that is capable of rebuilding the kernel on the
target.
Installing the kernel-devsrc package on a target (along with a
toolchain) is all that remains to be done.
$ cd /usr/src/kernel
$ make oldconfig
$ make -j2 bzImage
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|