The logic is supposed to avoid following dependencies when we depend on
a target recipe which depends on a native recipe. The problem is, we were
marking the dep (the native recipe) as already processed when we avoided
traversal, meaning that even when that recipe would be pulled in via
a different dependency, we skipped it there too, and whether it was skipped
entirely depended on the non-deterministic dep processing order. If the first
one to be encountered was via the indirect target dep, it wouldn't end up in
configuredeps, otherwise it would.
As we want to avoid traversing that particular dependency relationship, not
*every* dependency on the native, we should continue, but not add it to done,
so it can be traversed from other avenues.
This fixes an intermittent bug in some of my non-GPLv3 builds, where one
dependency upon gettext-minimal-native was skipped, but others should not have
been, resulting in it being removed from configuredeps entirely, and no
gettext macros being available.
Cc: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
python3-debugger fails to be invoked to debug other scripts complaining about
not being able to import pkutil, this patch adds pkgutil as a dependency for python3-debugger
fixing the issue.
[YOCTO #8334]
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
python3-debugger (pdb) needs importlib as a dependency, if not included
it produces an error when importing pdb, making pdb unusable, this patch
adds importlib dependency fixing the issue.
{YOCT0 #8333]
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Robert Yang [Wed, 16 Sep 2015 02:28:46 +0000 (19:28 -0700)]
libsdl: depends on libglu when both x11 and opengl
The libglu requires both opengl (depends on virtual/libgl) and x11
(needs libGL.so which is provided by mesa when x11 in DISTRO_FEATURES),
so let libsdl depends on libglu when both x11 and opengl in
DISTRO_FEATURES.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Li Zhou [Fri, 18 Sep 2015 02:39:05 +0000 (10:39 +0800)]
lttng-tools: sessiond: disable: match app event by name
Get upstream patch from lttng-tools github:
<https://github.com/lttng/lttng-tools>
<commit:700c5a9d4dc7b552926b8ddcbba91cc13312aba0>,
for solving the filtered tracepoint disabling error.
The use of a simple lookup and match on event name is insufficient
to identify the corresponding ust app event.
Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
testimage.bbclass: Fix break introduced with SIGTERM handling
The SIGTERM introduced another break into runexported test,
the handler is in the class TestContext while exporting it
will try to convert the singnal handler to JSON, and this
will throw an exception.
The SIGTERM handler is not needed in the exported test, so this
change will remove the handler before exporting the test. Also
when a test is exported the target is not deployed/started
anymore, it is not necessary.
[YOCTO #8239]
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
It depends on defines from .h files that are not includes as part of
source file, on glibc it works because they get included indirectly but
that can change any time since its internal glibc behaviour, at user
level the header needed should be explicitly included.
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
This helps compiling the code with older gcc especially on older build
hosts, additionally clang advertizes itself as gcc 4.2.1 so it helps
compiling dependent modues using clang as well
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Adapted and backported https://codereview.qt-project.org/#/c/107464/
Fixes errors like
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:161:20:
error: call to function 'operator<' that is neither visible in the
template definition nor found by argument-dependent lookup
return (t1 < t2);
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Khem Raj [Tue, 25 Aug 2015 21:03:43 +0000 (21:03 +0000)]
xz: Correctly specify GPL-3.0 with autoconf exception
There is m4/ax_pthread.m4 macro which uses GPL-3.0 with autoconf
exception, there is no other occurance of GPL-3.0 use, lets mark the
licence correctly.
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Fri, 18 Sep 2015 13:14:08 +0000 (15:14 +0200)]
insane.bbclass: drop extra line-feed in pkgname check
* it was causing QA checck name to be shown on separate line like this:
sblim-sfcCommon-1.0.1: sblim-sfcCommon-dev doesn't match the [a-z0-9.+-]+ regex
[pkgname]
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Martin Jansa [Fri, 18 Sep 2015 13:14:09 +0000 (15:14 +0200)]
package.bbclass: add summary line to installed-vs-shipped QA check
* there is PN at the beginning, then possibly long list of files and
at the end we don't see which recipe has this issue, add another
line which says which PN and how many files
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Fri, 18 Sep 2015 11:49:22 +0000 (13:49 +0200)]
initramfs-framework: better error reporting for invalid root boot parameter
When the "boot" parameter refers to a non-existent device, the only
visible output at normal log levels was a rather confusing:
ERROR: There's no '/dev' on rootfs.
That's because the actual error, not being able to find the root
device, was only a debug message, which gets ignored in the default
mode.
Promoting the "root '$bootparam_root' doesn't exist." message from
"debug" to "msg" gives sufficient context to understand the error. A
more intrusive change would be to change also the control flow.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Fri, 18 Sep 2015 11:49:21 +0000 (13:49 +0200)]
initramfs-framework: fix "support dropping into shell on failure"
Due to a missing $ before the variable name, all fatal errors ended up
invoking a shell, instead of only doing that when init_fatal_sh is set
as boot parameter.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Paul Eggleton [Fri, 18 Sep 2015 14:16:12 +0000 (15:16 +0100)]
qt4: remove already merged patch
This patch was merged into the 4.8.7 release. This was missed on
upgrade, and we didn't notice because our quilt-based patch handling
code ignores already-applied patches.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
runqemu-internal: For qemumicroblaze use the QEMU provided device tree
Setup the qemumicroblaze machine to use the device tree provided by QEMU
instead of the device tree located in the images directory. Additionally
setup the default memory size to match the QEMU device tree.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
runqemu-internal: Fix qemu networking for qemuzynq an qemumicroblaze
This patch brings the qemu networking setup for qemuzynq and
qemumicroblaze into feature parity with the other qemu machines.
Specifically enabling TAP interface attachcment and kernel command line
IP configuration.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
libpcre: Allow building 16 and 32bit libpcre versions
This change allows selecting the 8, 16 or 32 bit version via PACKAGECONFIG.
By default only the 8bit version is built, this corresponds to the old behavior.
Some packages like Qt5 require the 16 bit version of libpcre.
After this change the corresponding layer can easily enable the version
needed via .bbappend.
Signed-off-by: Pascal Bach <pascal.bach@siemens.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
oe-git-proxy: Allow socks4 as protocol in $ALL_PROXY
The current default is to use SOCKS4a when socks is specified as
protocol in $ALL_PROXY. However, not all socks servers support
SOCKS4a. By allowing socks4 as an additional protocol, this script
will happily work with SOCKS4 only servers.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
oe-git-proxy: Correct the parsing of a port in $ALL_PROXY
Due to an error in the regular expression used to extract a port
number specified in $ALL_PROXY, rather than allowing the port number
to be followed by an optional "/", the port was required to be
followed by "/?".
This corrects the regular expression to allow an optional "/". It also
allows the odd "/?" suffix for backwards compatibility.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Ed Bartosh [Thu, 10 Sep 2015 12:38:03 +0000 (15:38 +0300)]
wic: fix partition size calculation
It was wrongly assumed that part.size is meagured in Mb. In fact it's
in Kb, so there is no need to convert bitbake variable ROOTFS_SIZE as
it's also in Kb.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Randy Witt [Wed, 16 Sep 2015 21:45:49 +0000 (14:45 -0700)]
testimage.bbclass: Don't require an image manifest
Sometimes an "image" may not actually have a manifest file such as when
using a "baremetal kernel". This change allows for a user to set a
IMAGE_NO_MANIFEST flag to 1 in order to inform the code that there is no
corresponding manifest that should exist for an image.
Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Robert Yang [Thu, 17 Sep 2015 07:53:06 +0000 (00:53 -0700)]
ccache: fix file name too long
The all_cppflags change paths to filename which cause file name too long
error when the path is longer than NAME_MAX (usually 255). Strip srcdir
to fix the problem.
[YOCTO #8313]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Updating the 4.1 SRCREVs to integrate the following commit:
hid-core: Avoid uninitialized buffer access
hid_connect adds various strings to the buffer but they're all
conditional. You can find circumstances where nothing would be
written
to it but the kernel will still print the supposedly empty buffer
with
printk. This leads to corruption on the console/in the logs.
Ensure buf is initialized to an empty string.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[dvhart: Initialize string to "" rather than assign buf[0] = NULL;] Cc: Jiri Kosina <jikos@kernel.org> Cc: linux-input@vger.kernel.org Cc: stable@vger.kernel.org Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Fri, 18 Sep 2015 19:21:38 +0000 (15:21 -0400)]
kern-tools: optimize patching peformance
Updating the kern-tools SRCREV to integrat the following commit:
patching: only validate user supplied patches by default
Previously the patching tools would consider both system and user
supplied patches in the same manner .. they are simply a series of
patches to be applied to a branch, and that the scripts should determine
where in the series to start (based on what is already on the
branch).
This detection was causing a few problems:
- time consuming
- starting in the middle of a series when intermediate patches
were merged to a branch.
To solve both the performance and start detection, we instead simply
note the transition from system (i.e. already defined features and
series) and user/recipe supplied patches. When the transition is noted,
the system will start pushing ALL patches without doing autoresume
detection.
Control in keeping the series up to date is passed to the user, and
consistent behaviour/performance is achieved.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Fri, 18 Sep 2015 19:21:37 +0000 (15:21 -0400)]
linux-yocto/4.1: aufs, yaffs2 and driver fixes
Updating the 4.1 SRCREVs to integrate the following changes:
f830ab33799d aufs: call mutex.owner only when DEBUG_MUTEXES or MUTEX_SPIN_ON_OWNER is defined 87df2e93ed65 Bluetooth: Delay check for conn->smp in smp_conn_security() b09c3eab3e50 cc2520: set the default fifo pin value from platform data 62b01c325d42 fs/yaffs2: Fix a judgement logic for ACL operations 1d19c4e95cfc yaffs2: remove read and write methods 2c822dbc43b9 yaffs2: replace f_dentry to f_path.dentry
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Wed, 16 Sep 2015 10:25:01 +0000 (03:25 -0700)]
autotools.bbclass: mkdir ${B} -> mkdir -p ${B}
${B} is the default cwd of tasks, so there might be race issues such as:
| mkdir: cannot create directory `${B}': File exists
[snip]
NOTE: recipe perf-1.0-r9: task do_configure: Failed
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Wed, 16 Sep 2015 10:25:00 +0000 (03:25 -0700)]
perf: mkdir ${B} -> mkdir -p ${B}
${B} is the default cwd of tasks, so there might be race issues such as:
| mkdir: cannot create directory `/path/to/work/qemux86-poky-linux/perf/1.0-r9/perf-1.0/': File exists
[snip]
NOTE: recipe perf-1.0-r9: task do_configure: Failed
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This sub-command creates a bbappend for the specified target and prints the
path to the bbappend. The -w argument, as with some of the other recipetool
commands, will make a version-independent bbappend.
Example usage: recipetool newappend meta-mylayer virtual/kernel
[YOCTO #7964]
Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Switching MACHINE was causing nativesdk-glibc to rebuild. This was
from the use of OVERRIDES in one of the functions. Exclude OVERRIDES
from the checksum to avoid this.
[patch to oe-selftest to ensure this doesn't regress follows]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Williams [Wed, 16 Sep 2015 16:48:44 +0000 (11:48 -0500)]
image.py: Ensure base image size is an integer
There is a floating point multiplication done of a base image size
and an "overhead factor", which is currently rounded up to the next
integer. If the multiplication results in a whole number, the value
will still be a float. When this float is used to generate a shell
script, a buggy script is generated.
Fix this by always forcing to an integer.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
python: Add python-misc as rdependency to python-modules
Currently python-misc is not included even if python-modules is. This means
some python scripts fail even if python-modules is included in the image
(for example, get-pip.py at bootrap.pypa.io/get-pip.py). This patch adds
python-misc as runtime dependency for python-modules.
Signed-off-by: Erkka Kääriä <erkka.kaaria@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Robert Yang [Wed, 16 Sep 2015 06:08:17 +0000 (23:08 -0700)]
mkelfimage: fix owner for /usr/sbin/mkelfImage
Fixed:
packages-split/mkelfimage/usr/sbin/mkelfImage is owned by uid 15220, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated]
This is because its Makefile uses cp -a to install mkelfImage.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Robert Yang [Wed, 16 Sep 2015 05:28:21 +0000 (22:28 -0700)]
nspr: fix SRC_URI
Fixed:
WARNING: Failed to fetch URL ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.10.8/src/nspr-4.10.8.tar.gz, attempting MIRRORS if available
Its ftp:// doesn't work with wget, but http:// works.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
image.bbclass: add do_rootfs vardeps for {COMPRESS, IMAGE}_CMD_*
We want do_rootfs to rerun if the fstype or compression commands or
dependencies change for any of our configured fstypes (IMAGE_FSTYPES).
IMAGE_TYPEDEP isn't explicitly handled, as it's traversed already, so the end
result will change if it does, and we only really care about the results, not
how we got there. This uses oe.image.Image()._get_image_types() to get the
info about the image and compression types in use.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
perf: change --root to --prefix for python install
Otherwise we get the sysroot path appended to the build path, not what
we want.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
This option is causing issues with python unicode support. Several unicode
related regression tests are currently failing (test_re and test_codecs for
example) and removing this option fixes these.
This configure option mostly seems to be historical. Discussion related to
python issue 9210 (https://bugs.python.org/issue9210) indicates its original
goal was to save memory and that the option should have been deprecated ages
ago.
Signed-off-by: Erkka Kääriä <erkka.kaaria@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
oeqa/decorators: Added decorator to restart the DUT in case of test hang.
Once the DUT is hanged during testing, currently all the following test
cases have to wait for default timeout to exit. Using this decorator the
user can choose a timeout at case by case basis and what happens when the
timeout is reached by overwriting the self.target.restart method.
[YOCTO #7853]
Signed-off-by: Lucian Musat <george.l.musat@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
init-install-efi.sh: Avoid /mnt/mtab creation if already present
The base-files recipe installs /mnt/mtab (it is a softlink of /proc/mounts),
so if an image includes the latter, there is no new to created it again inside
the install-efi.sh script, otherwise an error may occur as indicated on the
bug's site.
[YOCTO #7971]
Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When installing backport modules they stumble upon each other, complaining with
the following error:
ERROR: The recipe python-backports-ssl is trying to install files into a shared
area when those files already exist.
This is the correct behavior since thats just the way they were designed, all backport
modules provide an __init__.py file (the same among all packages), and without it they
simply wouldnt work.
distutils handles FILES_${PN}* variables for python packages, but it uses wildcards
to include the required files, hence removing the __init__.py files from each backport
package during build time is impossible since it doenst actually contain that value,
this patch simply removes the __init__.py* files from the staging area if they already
exist on sysroot, this way, these are not included in FILES_${PN} anymore, fixing the
issue mentioned above.
[YOCTO #8207]
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Mike Looijmans [Fri, 11 Sep 2015 17:06:40 +0000 (19:06 +0200)]
image_types.bbclass: Restore compatibility with previous UBI filesystems
Support for multiple ubi images has broken dozens of machine deployment scripts
in two ways:
Previously, ubi filesystems would be named $IMAGE_NAME as one would expect. The
current version would append "_rootfs" to that name for no reason. Fix it so that
the name for ubi images remains unchanged if there is only one image to build.
Machines would append to IMAGE_CMD_ubi, adding extra image processing of their
own. This is broken now that IMAGE_CMD_ubi became a variable instead of a function.
Make IMAGE_CMD_ubi a function again, this also makes for more logical quotes (I
was surprised to find that " within " would even work).
Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mike Looijmans [Fri, 11 Sep 2015 17:02:44 +0000 (19:02 +0200)]
image.py: Allow IMAGE_LINK_NAME to be empty
When IMAGE_LINK_NAME is empty, OE will try to create a "blank" link instead
of just skipping it. The code checks for "link_name is not None" which will
never evaluate to true. Change the test to a simple "if link_name:" so it
no longer attempt to create links when the variable is an empty string.
Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The babeltrace command has plugins which it specifies in its link step
but on which (in the linker's view) it does not depend, so --as-needed
causes some of them to be omitted from the executable's dependencies.
This prevents babeltrace on OE-built systems from handling
streaming/live tracing sessions.
Babeltrace's makefiles already try to prevent this by using
--no-as-needed, but --as-needed gets placed afterward in the command
line, so it wins.
Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 11 Sep 2015 22:24:40 +0000 (23:24 +0100)]
testimage: Handle core-image-lsb-sdk qemumips test restriction
On qemumips, some tests are slow to the point of the autobuilder appearing
hung. We therefore specifically exclude buildsudoku but to do this, we need
to list the tests we expect to work on core-image-lsb-sdk.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
aarch64 sets OLDEST_KERNEL to 3.14. This stops the aarch64 SDK installing on
anything with an older kernel which is clearly incorrect.
I attempted to extract the correct non-overridden version from the data store
but it proved problematic and I was running into data store issues. Those
are a separate problem but there isn't time to fix this right now.
Instead just code the SDK kernel version separately to work around this for
now (and fix the autobuilder tests and SDK usage).
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 11 Sep 2015 12:24:50 +0000 (13:24 +0100)]
testimage: Fix SDK extraction error handling
Currently if the SDK fails to extract, no error is shown and the test is marked
as passed! Clearly this is incorrect, fix it to correctly raise an error.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
u-boot.inc: Add host compiler flags and openssl-native dependency
U-Boot will compile its own tools during the build, with specific
configurations (aka when CONFIG_FIT_SIGNATURE is enabled) the host tools
require openssl. This patch adds 'openssl' as a PACKAGECONFIG that
enables the use of openssl-native as a dependency and also adds the
HOSTCC flags that U-Boot uses when compiling the host tools.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Tue, 8 Sep 2015 13:41:51 +0000 (14:41 +0100)]
build-compare: add support for examining deb and ipk packages
This is just rudimentary support at the moment as we'd potentially want
to compare the control files a bit more specifically than this does, but
it's a start.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Paul Eggleton [Tue, 8 Sep 2015 13:41:50 +0000 (14:41 +0100)]
classes/sstate: break out function to get sstate manifest filename
It is useful in a few different contexts to see which files have been
written out by an sstate task; break out a function that lets us get the
path to the manifest file easily.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Wed, 9 Sep 2015 15:12:05 +0000 (17:12 +0200)]
runqemu: avoid image file name mismatches
Giving anything with -image in it as bootparams or in qemuparams (for
example, an additional -drive parameter with an image file or an
"-initrd .../core-image-minimal-initramfs-qemux86.cpio.gz") caused
runqemu to treat these parameters as names of the rootfs image file.
Matching *-image) after checking the current argument for more
specific cases like bootparams and qemuparams avoids this
misinterpretation of the command line parameters.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Add support for U-Boot recipes to install and deploy the generated ELF
files for each config. The U-Boot ELF's are useful for debugging, and
booting (directly booting, e.g. by JTAG or using QEMU) and complement
the generated binary image.
This additional feature is disabled by default, machines/etc that want
to use it need to set UBOOT_ELF to the corresponding ELF file (generally
u-boot or u-boot.elf depending on the architecture)
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Mon, 7 Sep 2015 11:16:38 +0000 (13:16 +0200)]
initramfs-framework: support dropping into shell on failure
When the init_fatal_sh boot parameter is present (i.e. used without
value) and a fatal problem occurs inside the initramfs-module, a shell
will be started instead of looping forever.
Useful for debugging.
Interestingly enough, the code was already indented to support such an
if check...
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Tue, 8 Sep 2015 11:19:01 +0000 (13:19 +0200)]
initramfs-framework: support init boot parameter
It can be useful for debugging to override the default /sbin/init.
This is something typically done via the init boot parameter which
then gets interpreted by the kernel. But when using an initramfs, it
is the initramfs which must react to the option.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Tue, 8 Sep 2015 13:25:49 +0000 (15:25 +0200)]
initramfs-framework: support ro boot parameter
Default is to mount the rootfs read/write. "ro" can be used to turn
that into read-only, which is useful on systems where userspace does
an fsck before remounting read-write.
Giving both "ro" and "rw" will still mount read-only regardless of the
order, because the ordering information is not preserved by the
initramfs-framework's boot param support.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Mon, 7 Sep 2015 11:05:42 +0000 (13:05 +0200)]
initramfs-framework: support rootflags and rootfstype boot parameter
These two parameters are supported by the kernel
(https://www.kernel.org/doc/Documentation/kernel-parameters.txt). When
an initramfs is used, the kernel does not mount the rootfs and the
initramfs needs to react to them.
The boot parameters can be set both by the image creator and
by users.
Supporting these two parameters is useful:
- rootflags is needed to ensure that the rootfs is already mounted as
intended in the time between starting init and init remounting
it (as systemd does); this is critical for IMA where iversion must be
active already when system starts writing files.
- setting it correctly up-front avoids messages from the kernel ("cannot
mount ... as ext2 because ...") when trying to guess the desired type.
For example, assuming that only one of ext4/ext3/ext2 is set,
rootfstype could be set in an image recipe with:
APPEND_append = "${@''.join([' rootfstype=' + i for i in ['ext4', 'ext3', 'ext2'] if i in d.getVar('IMAGE_FSTYPES', True).split()])}"
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>