Commit Graph

60718 Commits

Author SHA1 Message Date
Paul Barker
da846838fc wic: Optimise fstab modification for ext2/3/4 and msdos partitions
The fix for [Yocto #13994] required the rootfs directory to be copied
(using hardlinks if possible) when modifying the fstab file under wic.

We can optimise this copy away for filesystems where we have the tools
to modify the contents of the partition image after it is created. For
ext2/3/4 filesystems we have the debugfs tool and for msdos/vfat
filesystems we have the mcopy tool. So for any of these filesystems we
skip the modification of the fstab file in the rootfs directory (and
skip the associated copy unless it is otherwise necessary) and update
the contents of fstab directly in the partition image.

(From OE-Core rev: 5fb8ae0e9159597d7eaa9307a3a8543800bf9405)

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Paul Barker
36575a9493 wic: Copy rootfs dir if fstab needs updating
By default, wic updates the /etc/fstab in the rootfs to include details
of additional partitions described in the selected wks file. If this
modification is performed in place, other tasks which create an image
file from the rootfs directory (e.g. do_image_tar and do_image_ext4)
will pick up the modified fstab file which would not be appropriate for
those images as they do not include the additional partitions described
in the wks file. wic does undo modifications to the fstab file once it
has finished creating the filesystem image, however this leaves open a
race condition if one of the other tasks reads the contents of the fstab
file from the rootfs directory between the point where wic modifies the
fstab file and the point where wic restores the files original content.

This could be solved by adding a lockfile for tasks which use the rootfs
directory to ensure that no other such task is reading the rootfs
directory while do_image_wic is running. This would serialize several
do_image_* tasks and result in slower builds, especially for large
images. Another drawback of this solution is that it is hard to
selectively optimise - adding lockfiles to do_image_* tasks would result
in these tasks always being serialized even if no fstab modification
will take place.

An alternative solution is to copy the rootfs directory when fstab needs
to be modified. The code to do this in wic already exists as it is
needed when including or excluding content in the rootfs. This still
results in an impact on build times but the copy uses hardlinks if
possible (so little data is actually copied) and we can make selective
optimisations to improve things. The rootfs copy will only take place if
fstab modification is required (or if it was already needed to include
or exclude rootfs content). We can also follow up with further
optimisations after this commit. So this second solution is chosen.

Fixes [Yocto #13994]

(From OE-Core rev: ce682a73b7447652f898ce1d1d0416a456df5416)

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Paul Barker
f85a4a1462 wic: Update pseudo db when excluding content from rootfs
To exclude content from the rootfs, wic makes a copy (using hardlinks if
possible) of the rootfs directory and associated pseudo db, then removes
files & directories as needed. However if these files and directories
are removed using the python functions os.remove and shutil.rmtree, the
copied pseudo db will not be updated correctly. For files copied from
the original rootfs, if hardlinks were used successfully when copying
the rootfs this should mean that the relevant inodes can't be reused and
so the risk of pseudo aborts should be avoided. However, this logic
doesn't apply for directories (as they can't be hardlinked) or for files
added via the '--include-path' argument (as they weren't present in the
original rootfs) and so there remains some risk of inodes being reused
and the pseudo db becoming corrupted.

To fix this, use the 'rm' command under pseudo when removing files &
directories from the copied rootfs to ensure that the copied pseudo db
is updated.

(From OE-Core rev: d5db7e268947f0392c2126137571a44acd29ccd6)

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Paul Barker
7a2545013c image_types_wic: Move wic working directory
By default the wic working directory is placed under the output
directory. When invoking wic under bitbake, the wic output directory is
added to PSEUDO_PATHS_IGNORE to avoid issues with files being removed
from outside a pseudo environment (see oe-core commit ad8f5532ff).

However, wic will copy the rootfs directory into its working directory
if it needs to add or remove content before creating a filesystem image.
This copy of the rootfs directory must be tracked by pseudo in order to
keep the permissions correct in the resulting image. So we can't have
the wic working directory under a path in PSEUDO_PATHS_IGNORE unless
we like broken permissions.

To fix this the new '-w' argument to wic is used to move the working
directory away from the output directory.

Note that wic deletes the temporary working directory automatically
when it finishes creating an image so users won't normally see the
'tmp-wic' directory under WORKDIR.

Fixes [Yocto #14129]

(From OE-Core rev: 4d07169499c47fa9dc759e6f81843416a6dc25c5)

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Paul Barker
4e6cb084f5 wic: Ensure internal workdir is not reused
If a path is specified for the internal wic working directory using
the -w/--workdir argument then it must not already exist. Re-using a
previous workdir could easily result in rootfs and intermediate files
from a previous build being added to the current image.

(From OE-Core rev: 2e40c8d4109024ff704c5ce40d98050ca7f34dd5)

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Anuj Mittal
d710a8013e python3-git: upgrade 3.1.11 -> 3.1.12
(From OE-Core rev: 437f795cb1cb4d532ff90f82b819dee02ae0a0f7)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Anuj Mittal
56817ee5d7 python3-importlib-metadata: upgrade 3.3.0 -> 3.4.0
(From OE-Core rev: eae5da8c0b331d39c91b6af2f990365615e0c294)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Anuj Mittal
519558fed7 lighttpd: upgrade 1.4.57 -> 1.4.58
(From OE-Core rev: 4720e8f26f86a1d1fdc764309baa25b83d6d2483)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Anuj Mittal
94fcb8b59c wget: upgrade 1.20.3 -> 1.21.1
(From OE-Core rev: 589bf1c8de9273e8c4bbc6a4468fb699d4deb176)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
30a58427c5 python3-mako: upgrade 1.1.3 -> 1.1.4
(From OE-Core rev: e93e2dd8e79842cf2a4d6b43befab16013eaab57)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
4bcdfaca9e lzip: upgrade 1.21 -> 1.22
License-Update: copyright years, formatting changes

(From OE-Core rev: ef26799535f4ada60e35c7fe48cce959ba632c78)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
e2d2e65f81 logrotate: upgrade 3.17.0 -> 3.18.0
(From OE-Core rev: 4efc2586a43a399c0f91a26d66a33ac47b8778e2)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
3f5f9d7484 python3-pygments: upgrade 2.7.3 -> 2.7.4
License-Update: change in copyright years

(From OE-Core rev: a4c922785f658c5130ef60acd21f354050d20ea5)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
916312a698 gcr: upgrade 3.38.0 -> 3.38.1
(From OE-Core rev: 3e515429df3c1728ffa69b1aba8e5350f5430f44)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
cef60838d4 vala: upgrade 0.50.2 -> 0.50.3
(From OE-Core rev: 9fbbfdd84f3576cf275c4d046066511cf8c97b2d)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
1e97b8229e piglit: upgrade to latest revision
(From OE-Core rev: 8d23a0d498d14cdac0eb353c362527dd2faf93cc)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
aa76682d4c mpg123: upgrade 1.26.3 -> 1.26.4
License-Update: Change in copyright years

(From OE-Core rev: 3a070c2ebae0304818627be958fbecb60a3901a9)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
4be8cde677 harfbuzz: upgrade 2.7.2 -> 2.7.4
Remove backported patches and remove the introspection patch as that is
no longer needed.

(From OE-Core rev: 94bc7f8c2442f6627b001f1dd40c0023260b22e8)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
7dab9f87dd vulkan-tools: upgrade 1.2.162.0 -> 1.2.162.1
(From OE-Core rev: c35f89f1f09a4c3aa0bcf91b63027c2d8bcd15fd)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
bebea468ed stress-ng: upgrade 0.12.00 -> 0.12.01
(From OE-Core rev: 6a5c1500889f1c13e8a66ab4524f7936a088f9ae)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
a6a49231bf libproxy: upgrade 0.4.15 -> 0.4.17
(From OE-Core rev: d7626175069ab113d23fb1cbb85e665984637972)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
464df4b87d libepoxy: upgrade 1.5.4 -> 1.5.5
(From OE-Core rev: ef24da0af6fe2eab618e01a70093efba26a12557)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
bd693ad8c5 gstreamer1.0-plugins-ugly: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 43613b1f58a646a952d28bfb29962d3cf28c4d78)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
d7f6069f29 gst-devtools: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 88ad4d3f5734db02b1da22f3c4a6025429698d7e)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
8d8a0ae558 gst-examples: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 9c53521b15b1795a0c959bc20b21ded7e526ae87)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
48682c34ae gstreamer1.0-vaapi: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: d7238bf3e5146f1caf573887c469bcb4e9a91a18)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
42ea517179 gstreamer1.0-python: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: fe871c8ab6d48493be9beeb9a452faa2bf439f4e)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
9f5ec31511 gstreamer1.0-rtsp-server: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 5e77be6647e4235d0993206ba7dd8a80cec57bbf)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
b4d62709f9 gstreamer1.0-omx: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 9ee2d60c36caff1ccd5ece858ad036fcd33e6da0)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
3f957482a1 gstreamer1.0-libav: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 331318c9804e745f1379b4192c748673ae05c5a0)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
667dd8424f gstreamer1.0-plugins-bad: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 9d74e4a471643e2c803e26296931e6827cae4660)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
540c645c5b gstreamer1.0-plugins-good: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 880d0236a6ff2fed68edd54cb7c6235ce67143ec)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
cc91f8d3da gstreamer1.0-plugins-base: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 2b676d165c798514008fdc159e346cfe0e228926)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
a037481a8f gstreamer1.0: upgrade 1.18.2 -> 1.18.3
(From OE-Core rev: 279d3837bc9c479523868ea1e6c75ecca04612ae)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Anuj Mittal
efa5f5ecb2 enchant2: upgrade 2.2.14 -> 2.2.15
(From OE-Core rev: a9a662c07026c18a3dbe0ca4050f1778cc9a741c)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Richard Purdie
21a045090d bash: Add makefile race workaround
There is a race between two make invocations in 5.1. It has been
reported upstream, in the meantime add a work around patch (which
upstream may yet even apply). The autobuilder found two instances
of this race in a single build.

(From OE-Core rev: 62b8580cea567f2d9b7a900fc4302d6bc5a785b2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Alexander Kanavin
f2467c6925 runtime_test.py: correct output check for bash 5.1
Bash 5.1 inserts escape sequences into its output (specifically
disabling bracketed paste mode via \x1b[?2004l). I am not sure
if somehow terminal detection isn't working correctly there,
but in any case the marker is still in the output, but needs to
be checked by 'in' rather than exact equivalence.

(From OE-Core rev: c25a1b16cc50e51ecf040c2c1db128e1dfceddec)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Richard Purdie
0c738cad8e bash: Set HEREDOC_PIPESIZE deterministically
We had reproducibility issues where the pipe size appears to vary on some build
hosts between 65535 and 4096. It should be the former on Linux in general so
standarise on that. Easiest way is to pass in CFLAGS.

(From OE-Core rev: 6de2152693c31ee1181e9eacc32b90dd63d4e0a9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Alexander Kanavin
657bc00c4c bash: update 5.0 -> 5.1
[RP: Add aclocal support and patch m4 handling to adapt to OE]
(From OE-Core rev: ab4406dfdbd5e21f6fff0865228ebf5da1274505)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:17 +00:00
Joshua Watt
f236145ce4 ref-manual: Clarify recommended operator for PROVIDES
Updates the documentation for PROVIDES so that it recommends "+="
instead of "=".

(From yocto-docs rev: 39b2ca1e27592488d396d5f0d76965f0006515a1)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:53:53 +00:00
Yoann Congal
164db40a72 documentation: Prevent building documentation with an outdated version of sphinx
Building with a outdated version of Sphinx print warnings that does not
appear on up-to-date sphinx.

This patch prevent building the documentation with any version older
than 3.1 (First version to build without warnings in my tests)

See threads "documentation: Add a simple Sphinx extension to check its version"
    https://lists.yoctoproject.org/g/docs/topic/patch_documentation_add_a/79919516
and "toaster-manual: Fix a warning related to the code-block directive"
    https://lists.yoctoproject.org/g/docs/topic/patch_toaster_manual_fix_a/79656195

(From yocto-docs rev: 4de0f3dd4d5df0a0700f704a599bb41726d15a5f)

Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:53:53 +00:00
Abdellatif El Khlifi
d8698dc755 ref-manual/ref-classes: update kernel-fitimage with Initramfs bundle and boot script
This commit adds the description of the Initramfs bundle and boot script
new features implemented in the kernel-fitimage class.

Change-Id: Ifffa6b850308aa7ceadc4f117806cffad0137137
(From yocto-docs rev: a55c16555366c0adbf4a087b86574b07972cbc52)

Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:53:53 +00:00
Quentin Schulz
e6a0be545d docs: fix missing & and ; surrounding references from poky.yaml
poky.yaml references are only replaced in files if they are prefixed by
& and suffixed by ;.

Let's fix the missing surrounding characters.

(From yocto-docs rev: 7ee4ba7a27acd87d8c728639d1b053d2e26c6e58)

Signed-off-by: Quentin Schulz <foss@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:53:53 +00:00
Diego Sueiro
658499cacb dev-manual: Add usage of /sysroot-only in SYSROOT_DIRS
(From yocto-docs rev: adc59efc4a6c56cc3b4594a411ae618d256d6ba2)

Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:53:53 +00:00
Abdellatif El Khlifi
eef552d273 oeqa/selftest/imagefeatures: adding fitImage initramfs bundle testcase
This commit provides a testcase for the initramfs bundle support implemented
in kernel-fitimage.bbclass

The testcase verifies the content of the initramfs bundle node in the FIT
Image Tree Source (its).

The testcase is self-contained and the configurations are set by the test case itself.

To verify the initramfs bundle support, the testcase uses beaglebone-yocto machine.

This testcase can be run through the following command:

oe-selftest -r fitimage.FitImageTests.test_initramfs_bundle

Change-Id: I8ab8abf2c150ea515fd439784eb20c6b092bfbc5
(From OE-Core rev: 1119d577756b386507f33669fe29dafb5579a1a7)

Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:45:05 +00:00
Abdellatif El Khlifi
af6ac32437 kernel: skip installing fitImage when using Initramfs bundles
When including an initramfs bundle inside a FIT image, the fitImage is created
after the install task by do_assemble_fitimage_initramfs.

This happens after the generation of the initramfs bundle
(done by do_bundle_initramfs).

So, at the level of the install task we should not try to install the fitImage.
The fitImage is still not generated yet.

After the generation of the fitImage, the deploy task copies the fitImage from
the build directory to the deploy folder.

Change-Id: I3eaa6bba1412f388f710fa0f389f66631c1c4826
(From OE-Core rev: 1b67fd9ac74935fa41e960478c54e45422339138)

Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:45:05 +00:00
Abdellatif El Khlifi
8a2f4e143b kernel-fitimage: adding support for Initramfs bundle and u-boot script
This commit adds Initramfs bundle support to the FIT image in addition
to u-boot boot script capability.

These new features are selectable.

In case of Initramfs, the kernel is configured to be bundled with the rootfs
in the same binary (ie: zImage-initramfs-<machine>.bin). When the kernel is
copied to RAM and executed, it unpacks the Initramfs rootfs.

For more information about Initramfs please read:

https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt

For more details about the Initramfs bundle and boot script implementation
please check the kernel-fitimage.bbclass paragraph in Yocto reference
or mega manual.

Current limitations:

- Initramfs bundle FIT support has been tested on ARM 32-bit
- The kernel image type in case of ARM 32-bit is zImage

Change-Id: I901bfd899e8d733c5b9a2b6645b1d4748f4b1fda
(From OE-Core rev: 19fa415c8769a67b52babd80f71d68bf36a21db2)

Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:45:05 +00:00
Robert Yang
5875637ed2 apt: Fix do_compile error when enable ccache
Fixed:
apt-pkg/libapt-pkg.so.5.0.2: undefined reference to `ZSTD_endStream'
collect2: error: ld returned 1 exit status

This is because ccache-native depends on zstd-native which makes apt wronly
find it. Disable zstd for apt to fix the problem.

(From OE-Core rev: 0aa7d612b8b7e5f14b4ed38f2a32b3f7eefca31c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:45:05 +00:00
Robert Yang
f13a95e17e ccache.bbclass: Use ccache-native and disable ccache for native recipes
Since host's ccache is not reliable, so disable ccache for native recipes and
use ccache-native for other types of recipes. We need disable ccache for native
recipes is because ccache-native now depends on cmake-native which causes
circular dependencies, and it's not easy to break the circular.

(From OE-Core rev: 631bbd4896882ba2acbe5bc85bc90ab7abc794ef)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:45:05 +00:00
Robert Yang
220a5fcb99 Revert "ccache.bbclass: use ccache from host distribution"
This reverts commit f5b29367af4d8e5daea5771264774aa49519f9a8.

Will use ccache-native which is more reliable.

(From OE-Core rev: 1b659623430e1a6e6dd266e65bab7ca8155a7138)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 00:45:05 +00:00