* Increase OELAYOUT_ABI: this is required because the
xf86-video-modesetting package moves from its own recipe to
xserver-xorg and sanity check cannot handle that currently.
The upgrade will delete old xf86-video-modesetting files from
sysroots.
* Remove upstreamed xserver-xorg patches
* Remove xf86-video-modesetting recipe: the driver is now included in
xserver-xorg recipe, which now produces the xf86-video-modesetting
package. The package version changes from 0.9 to 1.17.1
* Update xserver-xorg license checksum: modesetting license
info (another MIT one) has been added to the file
(From OE-Core rev: 950846d019ffac21909a96d90af8cf7e5bdd5738)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
setup.py was called with build as argument, but the error message
would report build_ext.
(From OE-Core rev: 898b286b92b031db64c2143e81a79fbb20da481a)
Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The build can pause whilst remote sstate mirrors are checked for
sstate objects. Inform the user this is happening.
(From OE-Core rev: 4f4cfe8a4a0c602d6e11ea9bb75b52241deda9d6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently the urls are checked serially which is a performance bottleneck when
looking at http:// urls in particular. This adds code to check the url status in
parallel, mirroring the way we do this elsewhere.
We need the datastore for the fetcher so we use threads, not multiprocess.
(From OE-Core rev: 77c4865bbde4cd2a061cf333f9ad798afc6de0ef)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
"MACHINE=qemux86-64 bitbake init-ifupdown; MACHINE=genericx86-64 bitbake init-ifupdown"
shows a rebuild when it would be expected. The reason is a LIC_FILES_CHKSUM which
contains file://${WORKDIR}, an absolute path which doesn't exist in the first build
but does in the second, causing a signature change and a rebuild.
Fix the problem by ignoring any file:// url which resolves since TMPDIR for
license file dependency purposes.
(From OE-Core rev: f27ddf0de23871fc72cfc31f514f0e144aaa2082)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Unfortunately the combination of:
RRECOMMENDS_${PN} = "X"
UPDATERCPN = "${PN}"
RRECOMMENDS_${UPDATERCPN}_append = "Y"
is tricky for bitbake to order correctly since RRECOMMENDS_${UPDATERCPN} can
become "Y" which can then completely overwrite RRECOMMENDS_${PN}.
Avoid these issues and improve handling in general by explictly setting
the RRECOMMENDS on the list of packages modified in the general
code.
(From OE-Core rev: 053b8a4e6b9a4b02c0b1b4bc1e297a1251a901a9)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch adds support for generating a kernel fitImage, which is
a a successor to the uImage format. Unlike uImage, which could only
contain the kernel image itself, the fitImage can contain all kinds
of artifacts, like the kernel image, device tree blobs, initramfs
images, binary firmwares etc. Furthermore, the fitImage supports
different kinds of checksums, not only CRC32 like the uImage did.
Last, but not least, fitImage supports signatures such that either
the whole image or it's parts can be signed and then in turn can
be verified by the bootloader.
So far we only add support for wrapping the kernel image and DTB
into the fitImage. The fitImage uses the sha1 checksum, which is
the default.
(From OE-Core rev: d92664278cfd0fdb455f78f73f2c44a9ee1716e4)
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Rework the function so part it's internals can be re-used by fitImage
image type. The name of the temporary file , linux.bin , is recycled
a little more as it's now used for both the case where it is gzip
compressed and where it is not. This should be fine, since the file
is temporary and removed after the uImage was created anyway.
There is no functional change here.
(From OE-Core rev: 63e3816b161f8659850d6123a53bdf128780e13d)
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Remove the lambda function setting KERNEL_IMAGETYPE_FOR_MAKE and instead
set it in the anonymous python function. This also allows us to handle
image types which are not supported directly by kernel, but require some
other kernel target to be built. This is the case for example with the
fitImage, which is the uImage successor.
There is no functional change.
(From OE-Core rev: a1690131691507bbf5853540229b3ad775b836bf)
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Since this class works on pre finalised data, the logic hasn't needed
to be exact. If we change the way the finalised data works, we find
that certain dependencies can be dropped (e.g. pn isn't in the name).
To fix this, restructure the function to alter each entry in turn
and not drop any entries.
(From OE-Core rev: 4434977ccb95f8f366ba133366093b8c7ef1f718)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Correct the whitespace in this variable to make this more readable when
debugging, no functional change.
(From OE-Core rev: 4bb586a470a15cf3b93538e8c749a6fb8479c990)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The companion debug filesystem contains only the package database and the
complementary *-dbg packages for the main filesystem component. This is
useful in a production environment to produce a companion filesystem capable
of remote system debugging, without requiring corresponding debug symbols or
source code on the device.
(From OE-Core rev: 1a6ed48c65f922c66b005aa966d7ee4878ee95e3)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
If dbg pkgs have already been installed to the rootfs image,
the installation to companion debug filesystem will fail,
because both of image creation make use of the same pm
database.
In this situation, try to copy installed dbg files from rootfs
image to companion debug filesystem.
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Acked-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The git user.email and user.name settings must be set or the commit to
the buildhistory repo (when BUILDHISTORY_COMMIT is set to "1") will
fail. If the user hasn't set these, set some dummy values since the
actual value is unlikely to be particularly useful and it's far worse
for the commit not to be done leaving the repository in a partially set
up state.
Prompted by [YOCTO #6973].
(From OE-Core rev: f62255bfa6c5a322c867b7c4ea5686ea7bfab3fe)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add eventmask 'bb.event.BuildCompleted' for buildstats_summary handler to avoid
running the codes in the handler everytime there's an event.
The codes in buildstats_summary only need to run for bb.event.BuildCompleted.
So add this event mask.
Also, we remove the redundant isinstance() statement in the handler.
(From OE-Core rev: 3b635d34d44ee65f8cf93bc180f1ccc1095f2174)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When a patch fails to apply, the kernel-yocto bbclass attempted to
be helpful and suggest that devshell be used to fix the issue.
The only problem is that you can't get to devshell if a patch is
failing.
We drop this bad advise and instead point to the linux source directory.
[YOCTO: #6202]
(From OE-Core rev: d6a0c0f60ea85235479d968f75d067a10ce21574)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
check_sanity() no longer needs the subprocess module but
sanity_handle_abichanges() does use subprocess.call().
(From OE-Core rev: 469b53fb3bb94c7e5e9fb53d07cec2292b13c87d)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changing TMPDIR and rebuilding an image was resulting in rebuilds of
kernels due to dependencies on the shared_workdir task. If installed
from sstate, nothing needs this task so add it to the whitelisted
task patterns.
After this change, the kernel does not rebuild when a new TMPDIR and
hot sstate cache is used.
(From OE-Core rev: 624f575298c74272b69560735cb6f13f5a7761c1)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Build fails if "./" is in the PATH
To reproduce the issue:
$ export PATH="./:$PATH"
$ make -C build-tools elfutils
Error: ./ld: unrecognized option '--sysroot=/'
(From OE-Core rev: b6a23572b8f14e27d4341892b9069e7cac1e9c14)
Signed-off-by: Shiqun Lin <Shiqun.Lin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The way native_virtclass_handler was implemented leaded to
unintended substring replacements when setting PROVIDES for
native providers, in case the original PROVIDES value contains
providees with common substrings.
Here's a practical case where the old behavior was problematic:
the oracle-jse-jdk-x86-64 recipe provides both virtual/java and
virtual/javac:
Before:
$ bitbake -e oracle-jse-jdk-x86-64-native | grep ^PROVIDES=
PROVIDES="oracle-jse-jdk-x86-64-native virtual/java-native virtual/java-nativec"
After:
$ bitbake -e oracle-jse-jdk-x86-64-native | grep ^PROVIDES=
PROVIDES="oracle-jse-jdk-x86-64-native virtual/java-native virtual/javac-native"
Change-Id: I8186992dae58e37c2a2364586360ff9b7da9198f
(From OE-Core rev: c28291f1fb07fbc80275d9bceefed642c963e204)
Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In some cases we want to test the availability of siginfo files, in some
cases we do not and really want the .tgz files (which may or may
not be present too). This makes adds a parameter to the function to allow
this.
(From OE-Core rev: e8867b97a772f8e64fe209436c15d382b2175ca0)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The do_shared_workdir task does leave behind the necessary information in
shared-work after it completes. We don't make this a "full" sstate task
however since that means tarring up and copying what is usually a large
amount of data which would be better extracted straight from the original
SCM.
The issue with rm_work occurs since it removes the do_shared_workdir stamp
meaning subsequent builds will add it back if they need to touch any kernel
modules for example. This ends up triggering a near enough complete kernerl
rebuild since if configure reruns, populate_sysroot has to rerun.
This change promotes the task to have a "setscene" variant but it doesn't use
any of the sstate class lifting to generate the sstate file. The sstate function
will therefore never get called since the sstate object will never exist.
We can add the task to the list of tasks rm_work promotes to a setscene variant
and unwanted rebuilds of the kernel should be avoided.
(From OE-Core rev: 55b4f7fd217f0c65d457c731150340c18fb3fa19)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f
and http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=527b28c10955daf0387597020d69593ce24bcaa4
there is a find race in base.bbclass.
For recipes with PACKAGES_remove = "${PN}", the find which removes
.la files can race against deletion of other directories in WORKDIR
e.g.:
find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
| find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete
Fix the race in the same way.
[YOCTO #7522]
(From OE-Core rev: 90861b8908d254154f4d1d613471070df8013da8)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The has_exactly_one_service variable was used in now deleted code. Drop
this part to make code cleaner.
(From OE-Core rev: 8acee5a86efd146186e0de1c41d0e4e4223d8b36)
Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The connectivity sanity error doesn't tell you which URL failed to fetch nor how
it failed.
This provides the URL that failed and why it failed using BBFetchException
messages during the connectivity check.
[YOCTO #7592]
(From OE-Core rev: e025d1ff02795fc9236b41606e916749f0d5e959)
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If we have DEPENDS = "virtual/kernel" is means that the kernel module
depends on the kernel's do_populate_sysroot task. This is not entirely
desireable since that depends on do_install which depends on
do_compile_kernelmodules and so on. In a situation where rm_work in involved
this can cause some pretty length build cycles after the kernel workdir
has been cleaned up by rm_work.
As well as removing this, take the opportunity to clean up duplicated
dependency lines, tweak the dependency of make_scripts for the same
reason and generally try and make things more readable.
(From OE-Core rev: a641247d262971db2d44815c5a668e7e50bdaf4f)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Remove insserv from OE-Core. It did have uses but we've optimised the sysvinit
scripts as needed and there are other directions init systems are moving now.
It no longer belongs in the core.
(From OE-Core rev: 9650efb5bb8fc77627dd567e43f8768b34a22abb)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use image_list_installed_packges instead of open manually the package
manifest and iterate over it.
(From OE-Core rev: 7ffe10df73cc20d10fcd41b121074445273bd60e)
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When INCOMPATIBLE_LICENSE's is specified it need to be removed from
license.manifest and also avoid copy to target image.
Add ManifestVisitor that walk the license string searching for
INCOMPATIBLE_LICENSE's if found remove it.
[YOCTO #6765]
(From OE-Core rev: d1278570041029d7c9fc6ce657e9a1701a421841)
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add dont_want_licenses as parameter to license_ok function and move it
to oe.license module in order to use in other modules.
(From OE-Core rev: 243fe3a4583a21ad6c0b2a26196ed18d41740f7a)
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Reimplemented license_manifest_create from shell to python for
INCOMPATIBLE_LICENSE handle using oe.license module.
Optimizations are made to avoid license copy now uses a hardlink
and symbolic link this helps to save space during build.
(From OE-Core rev: a7976cbae34dc1bd08395afb8d720d43c5f0062e)
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add a test for distro features including one or more
items in a list. This is useful when, for example, we
need either x11 or directfb as a feature.
(From OE-Core rev: 60157da8a6df0c7ec5bb572bea5124af273bab08)
Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
As reported by Steffen Pankratz <Steffen.Pankratz@elektrobit.com>, the
previous logic of KBUILD_DEFCONFIG processing would not propagate an in
tree defcofig to WORKDIR if one was not already present.
We fix the propagation by copying the in tee config if a defconfig is
not already in WORKDIR.
Additionally we only warn (versus copying) if an in tree configuration
is specified, is different than the WORKDIR version and isn't copied.
(From OE-Core rev: 58cc903a5156063b24e48011438a709cb6e09f54)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There are two tasks that must run before a linux-yocto kernel is built.
- Kernel checkout and relocation to work-shared (kernel_checkout)
- Meta data gathering and configuration prep (kernel_metadata)
The current task definitions for both are simply "before do_patch",
which is correct, but kernel_checkout must run before and not race with
kernel_metadata.
So we set the definition of kernel_checkout to be more specific and
enforce the proper ordering.
[YOCTO: #7731]
(From OE-Core rev: 9d806f3d05de918952f839f5e595cb71cd1261db)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Race condition between do_compile_kernelmodules and do_shared_workdir
tasks occurs when do_compile_kernelmodules changes files in
include/generated/* while do_shared_workdir tries to copy them to
shared working directory.
Fixed race by moving do_shared_workdir after do_compile but before
do_compile_kernelmodules.
[YOCTO #7321]
(From OE-Core rev: b4ec689f71fe9504559c1921c893f5e096d6b744)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Rename BNFILE and DEVFILE so that they are clearly specific to this
class, since they end up in the global scope
* Use "with open" when opening files consistently
* Use getVar('PF', True) instead of expand('${PF}')
* Drop some unnecessary assignments
(From OE-Core rev: 2392c9bae9fc7732ebafb8c2cd42e49ab281afc9)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
mkdirhier() doesn't raise an exception if the directory exists, so if it
does raise one we should just be failing, otherwise we're just going
to hit errors later anyway.
(From OE-Core rev: 76daab82185851608e5e225487e411504ecb6569)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Drop trailing whitespace
* Use spaces around equals in assignments
* Replace an errant tab with spaces
(From OE-Core rev: e6d2b407979869219da1f15ed4b5c1c804548fce)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add the target info for the 'microblazeeb' target which matches the
default MicroBlaze target info
(From OE-Core rev: 3e5f4998869d9e01e040a64657315e21167e8355)
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add the target info for the 'microblazeeb' target which matches the
default MicroBlaze target info
(From OE-Core rev: 9c02b5af28f43b0b8ac825dffdbfa49a71c63132)
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>