License-Update: Checksum changed due to updation in documentation. There
are no changes in the license terms.
(From OE-Core rev: e8dfe9799e473e0ba911a0670aa23e8e8d700223)
Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Update the kernel for v4.14 and v4.15 to include a workaround of
the Ethernet malfunction on edgerouter board when building with gcc8.
(From meta-yocto rev: a503919e72fad9556ab0f51a78b92ef3e0075e97)
Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently mpc8315e-rdb.conf comes after local.conf during parsing. We should
give local.conf a chance to overwrite the kernel provider assignment, like
other BSPs.
(From meta-yocto rev: c5c70afb0306d96ae63d7a67d658524ed6d91e88)
Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If uri_find contain parameters then original URI parameters should
be checked against parameters from uri_find instead of parameters
from uri_replace.
(Bitbake rev: 8efa7826a61501589afa33eb698c0ab3a622bf2e)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is especially needed when defaulting to hard-float ABI
Fixes errors e.g.
cc1: error: -mfloat-abi=hard: selected processor lacks an FPU
Fixes [YOCTO #12795]
(From OE-Core rev: 85981cbbf0ce48a6d82bc39248afa9540ca858d8)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Exception: TypeError: boolean accepts a string, not '<class 'bool'>
is a bit annoying if you pass in True/False. Tweak the function
to make it forgive that situation.
(From OE-Core rev: 147f5a665fe5073027d92e4acac631f15f08f79f)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The testimage changes break the autobuilder. The plan is to revert these hacks
but due to various changes happening with the autobuilder, we need these for now
to keep things working until we can move to the new autobuilder codebase.
(From OE-Core rev: 309a02931779f32d1139cc1169a039cbe4638706)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Both busybox and coreutils provide mktemp, and the only difference between those
(and standalone mktemp) is that coreutils supports --suffix.
Also mktemp.org has disappeared, so it's fair to assume that the standalone
mktemp (last released in 2010) is dead.
(From OE-Core rev: 59a825ca1e08a7e47fcbc807606103d463280e6c)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
the '-delete' action no longer complains about disappeared files
when the '-ignore_readdir_race' option is given, too. That action
will also returns true in such a case now.
(From OE-Core rev: f0808ee03a244be1fb485e0046983a05193b23b6)
Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
License changed since licenses for the bundled linenoise and lz4 codebases
were added. We don't build either of them. Add MIT since utf8proc is MIT
licensed.
Configure to use the internal utf8proc codebase since we have no copy of that in
OE-Core, nor any need to add one.
Add a dependency on lz4 which is now required rather than using the internal
codebase within subversion.
Drop a patch merged upstream.
(From OE-Core rev: 5bb47984af79fe2e8c3ba5bc6895741131f03bcd)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The TEST_IMAGE interface has never particularly worked and image testing currently
gets configured manually.
This reworks the interface to better serve the needs of its users, replacing it
with TESTIMAGE_AUTO.
This does away with the need for the separate class due to better bitbake APIs for
changing tasks.
TESTIMAGE_AUTO will automatically boot under qemu any image that is built. It
also adds in dependencies so that any SDK for which testing is requested will
automatically be built first.
The code in bitbake.conf was error prone (e.g. testsdk wasn't considered), this
improves it to standardise on IMAGE_CLASSES as the standard configuration mechanism.
(From OE-Core rev: b34d44f3dfea8254826a46701a4fe3769a900434)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The logic can be improved and the historical NOISO/NOHDD variables
moved into the class and out of common code.
The variables are also then removed in favour of directly controlling
the behaviour from IMAGE_FSTYPES in line with all the other image types.
(From OE-Core rev: a052caed563a09a01f5a3ea1f0477f379c05bee0)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Right now the code handling class inherits is spread all over and
its hard to get an idea of what is happening overall. Combine all
the code together to make it clearer. There shoould be no functionality
changes.
(From OE-Core rev: 9b6cda7ff443eebfc5a5a8c9442c93a881807dab)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The current looping structure is confusing, simplify it a bit
to improve readability. Should be no functionality changes.
(From OE-Core rev: 498065b51b205b43d7dae1008014eba85a8f138c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This function is a little obtuse, add more comments about what its
doing and why. Also combine some of the statements where possible
to improve clarity.
(From OE-Core rev: 3e0c22e9bd9757cd458a073a3f043a48184d7bab)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Once, there were do_setscene tasks but this hasn't been the case for years,
drop the old code.
(From OE-Core rev: b13a691f1cfc0d68a0f94c343fa3a1b987dbe117)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a reworked version of the issue which 5479654eea
attempted to fix.
"""
Each time I build my image after the first, I end up with a
do_image_complete_setscene stamp file with an extra _setscene appended to
the name. Eventually, the filenames end up being so long that mv complains
and the build fails.
It looks like this behaviour was introduced when the special handling was
added for do_image_complete in 2ff9d40dc88d43567472218cf3d3faf414398c71.
"""
Instead of the original approach which broke do_package_setscene, add
an entry to explictly stop the stacking _setscene pieces on do_image_complete.
It's not straightforward to just move *do_image_complete* after the
*_setscene* pattern because do_image_complete stamps would then match
do_image*.
(From OE-Core rev: 0f4e734e0ef40076351ed7ff795aac36197e4949)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Whilst this fixes the do_image_complete_setscene append problem, it creates a
new problem since the code can no longer reach the *do_package_setscene.*
code block below it. This breaks builds as per [YOCTO #12765]. Revert this
change in search of a better fix.
This reverts commit 5479654eea.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
always_include_xorg_server.h.patch is merged upstream, so drop it.
disable-x11-dri3.patch was purely to solve determinism issues with the shared sysroot, which
we don't have anymore.
Also remove redundant tarball checksums as this recipe fetches from git.
(From OE-Core rev: a40c5dcdd3f5b05d1a1bb348753a1d9101ef5152)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We were shipping the Debian fork of the original code, but that has disappeared
now that Alioth is down. The driver didn't provide anything better than the
kernel and xserver's modesetting driver, so remove it.
(From OE-Core rev: 0e0b5e8abff3b0c30676bcfb76c60388ad2cfafe)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This driver is dead upstream and doesn't appear to provide any advantage over
upstream kernel drivers and xserver's modesetting support.
(From OE-Core rev: 61611dec98e5b13e95bb42500d6b261cdb95feb1)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
You can now limit on a task-specific basis the number of threads
a task will use. This is useful for machines that have high
numbers of cores and need to be rate-limited due to various
resource constraints.
(Bitbake rev: 4937ed392fdc4442dd91f644f329dda29f27242c)
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In runqemu-ifup, ip command is used to add TAP; in runqemu-ifdown,
we should do the reversed logic, using ip command to delete TAP, to
make sure TAP is cleaned up by ourselves.
I can see that in runqemu-ifdown script, 'tunctl -d' and 'iptables'
commands are used to deal with TAP, but these two commands cannot
make sure that the TAP is cleaned up.
runqemu-ifup uses 'ip' to set up TAP, we really need to do the opposite
in runqemu-ifdown.
(From OE-Core rev: 322e41de7f4fb21315bf75f1038314c31ac4754b)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add SIGTERM handler so that runqemu could clean things up correctly
when receving such signal.
This problem was originally observed when running testimage. On
some hosts, after running testimage task, the user has to manually
operate on the tap interface (e.g. `sudo ip link del tap0') in order
for the next runqemu command to launch successfully.
The problem is about runqemu, SIGTERM and network manager on the host.
In testimage task, the runqemu process will receive SIGTERM. In such
situation, its cleanup() function is not run, resulting in tap interface
not cleaned up. On some hosts, the network manager will bring down the
tap interface automatically, thus this problem. I saw this problem on
Fedora21.
I think we'd better just clean up the tap interface ourselves.
So this patch adds to runqemu a SIGTERM handler, in which the actual
qemu process is terminated and other things cleaned up.
(From OE-Core rev: 02709d4709c56f9b9095e3555da35b659b03a8a3)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Derive the value for template layer.conf from core layer and add
dependendency on it too.
Fixes [YOCTO #12767]
(From OE-Core rev: 461c305078c40fca8b5382e393e3e8513d4abfa4)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Previously a warning was printed regardless of context and nature
of the failure, and because it was only a warning, it was mostly ignored.
Now, the following is considered when a failure happens:
1) whether we are installing packages into a target image, or populating
a SDK with host or target packages.
2) whether the failure was due to qemu not supporting the target machine.
Accordingly, warnings, notes, and failures are printed, and postponing
to first boot happens if possible.
(From OE-Core rev: a335e78672b1e1ae3ea6427f6a805218e513bb52)
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The variants are needed in particular when executing postinst_intercepts as
those may require running binaries built for different architectures and
against different sets of library paths, when multilib is in use (or nativesdk host
packages are installed), so a single global variant of the script was not working.
I do understand expanding PATH and DEPENDS in this manner is hackish, however
every other approach I could think of is worse.
(From OE-Core rev: 2f31eecc40ea4d0865aa28d65a0ba7d5a629393a)
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Previously only one global variant of the script was created,
which caused numerous issues:
1) multilib was not properly supported due to multilib variants each
needing their own version of the qemu binary and library paths to be set
2) nativesdk was not properly supported for the same reason
This patch also moves setting LD_LIBRARY_PATH directly into the
recipe, as passing it down from other recipes did not work when
said recipes were allarch, and adjusts calls to qemuwrapper from
postinst-intercepts, so that its correct variant is selected.
Also, the various qemu fallbacks in qemuwrapper script are all removed,
as they are no longer necessary.
(From OE-Core rev: d10fd6ae3fe46290c6e3a5250878966d9f12ca3f)
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otherwise, there would be a failure at image creation time; avoid
that by postponing to first boot explicitly.
(From OE-Core rev: f3247720dc4b1c49e8fad734e20b17ba55843b97)
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This has the following benefits:
- consistent with how the other caches are created into target rootfs
- only runs once per package manager transaction, instead of once per every immodule package
- correctly postpones to first boot if qemu is not working; from postinst itself
this would've required special arrangements to avoid what is now a do_rootfs failure.
(From OE-Core rev: cca3c084b6c9bf600d7306e3fe12c4f236b78656)
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Originally these ARM specific EXTRA_OECONF options were applied to
both gcc for the target and gcc-cross. That lead to a compromise
being made: gcc on the target was configured to default to an ARM
architecture which was at least compatible with the target (but not
necessarily an exact match) and gcc-cross was configured default to
armv7a for both armv7a and armv7ve (to avoid gcc-cross rebuilds when
switching between the two).
However, when these ARM specific EXTRA_OECONF options were moved from
gcc-configure-common.inc into gcc-target.inc (ie they were made to
apply only to gcc on the target) the compromise no longer needed to
be made.
http://git.openembedded.org/openembedded-core/commit/?id=851937dde81de2a9ef54c5f19a78fb12fb82afd4
(From OE-Core rev: 3c368282741e9de1f96988e127b86a6a01b6a26f)
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gobject-introspection hard-codes the install path in the search path
for the typelib repository, pretty much the same way glib behaves for
the gio modules directory. Like for glib, this causes problems when
gobject-introspection-native is restored from sstate with a different
build directory.
Based on the glib fix by Ross Burton <ross.burton@intel.com>.
(From OE-Core rev: e4cee788056133ce0a49bc96e54399bdd7825aa3)
Signed-off-by: Sascha Silbe <x-yo17@se-silbe.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If package management is present opkg/dpkg will bring the original
copy of the postinsts scripts with the metadata and will be able to
handle postinsts just fine. In fact, it is preferred to let package
management handle the postinsts scripts in this case since it will
keep the package managers database up-to-date too. The run-postinsts
scripts will make sure the package manager gets invoked instead of
the scripts directly.
Note: Before commit 5aae19959a44 ("rootfs.py: Change logic to
unistall packages") rootfs.py did not install /etc/$pm-postinsts
too. It is not clear whether that change was intentionally or just
a bug. This commit fixes/reverts that aspect of the commit.
(From OE-Core rev: 4b571c59e3e6bd8b22a63f547a95757aeba5b638)
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Start opkg/dpkg as soon as the respective package managers status
file is present, no matter whether /etc/$pm-postinsts exists. This
decouples the implicit link between postinsts scripts in /etc and
the package manager: Currently the package manager is only started
if those scripts are present, although the package manager does not
use those scripts at all! Package managers install their own set of
postinst scripts.
The behavior when using rpm packages stays the same.
Note that using the package managers capability to execute postinst
scripts is preferred for good reasons: It makes sure that the
package managers database reflects that the packages have been
completely installed and configured.
This change allows to drop installation of the postinsts scripts
when package management is present. This will be done in a separate
change.
Note: Before commit 5aae19959a44 ("rootfs.py: Change logic to
unistall packages") rootfs.py did not install /etc/$pm-postinsts
when package management is installed! The change caused YOCTO #8235
which lead to the behavior change of run-postinsts in first place.
(From OE-Core rev: 1af421fcf05457223bf271f3951599b6c150cdff)
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>