Compare commits

...

1029 Commits

Author SHA1 Message Date
Paul Eggleton
6964efddd3 bitbake: cooker: ensure graceful exit after exception during BuildCompleted handler
If an event handler for bb.event.BuildCompleted fails, we still need to
call finishAsyncCommand() or else BitBake will just exit immediately
without showing any error summary, or worse in the case of memory
resident mode BitBake will hang and if you Ctrl+C to break out, the
command won't be marked as finished which means that no further commands
will be able to be executed until the server is manually restarted.

(Bitbake rev: 5639faa3eef55cc476a82e810e61ca228cbdf221)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:54:25 +01:00
Paul Eggleton
0cb0e96c94 bitbake: cooker: fix always loading cache on every UI start with memres
The main point of memory resident bitbake is to avoid loading data
unnecessarily on every bitbake invocation. Unfortunately the code that
updated options from the UI was simply treating the fact that either
of the "prefile" or "postfile" options were in the list of options
passed in as an indication that the configuration was invalid, which was
bad because these are always passed in. We only need to mark the
configuration as invalid and thus reload it (and thus reload the cache)
if the option value has actually changed.

At the same time, the recently handled "tracking" option needs to be
treated in a similar manner since the configuration needs to be reparsed
if that has changed. Also, add a few extra debug messages to aid
debugging this code in future.

(Bitbake rev: 18dfd144d0da6ff662308ce4f9d135dc11412133)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:54:24 +01:00
Juro Bystricky
68847d9ab5 bitbake: bitbake: runqueue: multiconfig fix
Differentiate between fn and taskfn in "execute".
This was somehow missed in "fakeroot" handling.

(Bitbake rev: d848bff7cf78f63986467b51f701a998a480eb25)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:54:24 +01:00
Juro Bystricky
06e9b44f97 bitbake: bitbake:process: flush stderr/stdout to log
When a process terminates, some messages may still remain in stdout or
stderr and do not make it into the log file.
In addition, the messages that do make it to the log file may end up in
the log file in incorrect order.
This patch flushes all messages into the log file after the
process terminates. Some additional log flushing is also needed
to keep the various messages showing up in the log file in proper order.

[YOCTO#10785]

(Bitbake rev: 1f6e6aa8262369eafc3bbf9f01f8d981f90becdf)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:54:24 +01:00
Ed Bartosh
de5776c41a mtools-native: fix Upstream-Status
This is OE-specific customisation so set the status as such.

(From OE-Core rev: 059846662f1ea1c82804cfce5f91afcb2980ec8a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Martin Jansa
1460e8aa99 package_manager: flush installed_pkgs file before oe-pkgdata-util uses it
* since this commit:
  commit f5a1013ffa9815f22e13989e2bcb83f966e7ce2c
  Author: Ross Burton <ross.burton@intel.com>
  Date:   Tue Apr 18 16:19:12 2017 +0100

    package_manager: don't race on a file when installing complementary
    packages

  the file isn't closed before oe-pkgdata-util uses it and this
  temporary file might look empty to oe-pkgdata-util, because it
  wasn't flushed yet. Which resulted in almost empty debugfs tarballs
  and no locale packages in regular rootfs.
* without this change:
  124K May 30 07:41 core-image-full-cmdline-raspberrypi3-64-20170530054003-dbg.rootfs.tar.gz
* with this change:
  173M May 30 07:29 core-image-full-cmdline-raspberrypi3-64-20170530052715-dbg.rootfs.tar.gz

(From OE-Core rev: 877d38db08aa7060d16405443cf70539c559fe82)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Patrick Ohly
38184d391b distrooverrides.bbclass: DISTRO_FEATURES as overrides
This achieves the same goal as the same change to bitbake.conf itself,
but because the class gets added later as part expanding INHERIT, this
new approach is less likely to run into problems when DISTRO_FEATURES
contains complex code.

Another difference is that the class currently does not get inherited
by default and thus is completely absent from a build unless some
layer or include file adds it to INHERIT.

Compared to the earlier code in bitbake.conf and a similar class in
intel-iot-refkit, additional overrides now get sorted. This makes the
final OVERRIDES more deterministic.

The lessons learned about unintentionally depending on OVERRIDES are
documented in the class because such problems are more likely to show
up as unexpected signature differences when using this class.

(From OE-Core rev: e982ca7f2d4fb0aef3fedc00af1e90f613e7b5ee)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Patrick Ohly
a83dc5b113 Revert "bitbake.conf: DISTRO_FEATURES as overrides"
This reverts commit 3b3ae91a22d6f685e804df4f32cdeebe1bd6bd88.

It turned out that the code which expands DISTRO_FEATURES early during
base config parsing can fail because some entries in DISTRO_FEATURES
might call Python functions like base_conditional() from base.bbclass
which aren't defined yet.

A different solution will be needed.

(From OE-Core rev: 0c6e4a14ba8d9d9701ec16ffe46d618f41633571)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Martin Jansa
d973074bf6 python-3.5: Move bz2.py, lzma.py and _compression.py from python3-misc to python3-compression
* the /usr/lib/python3.5/_compression.py file is possibly incorrectly included
  in python3-misc. This runtime dependency is needed in order to use e.g. gzip.py in runtime:

  >>> import tarfile, zlib, gzip
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/lib/python3.5/gzip.py", line 12, in <module>
      import _compression
  ImportError: No module named '_compression'

* at least python3-tests and lzma and bz2 still in python3-misc are using this as well:
  $ grep -R import.*_compression tmp-glibc/work/aarch64-oe-linux/python3/3.5.2-r1.0/packages-split/
  tmp-glibc/work/aarch64-oe-linux/python3/3.5.2-r1.0/packages-split/python3-compression/usr/lib/python3.5/gzip.py:import _compression
  tmp-glibc/work/aarch64-oe-linux/python3/3.5.2-r1.0/packages-split/python3-misc/usr/lib/python3.5/lzma.py:import _compression
  tmp-glibc/work/aarch64-oe-linux/python3/3.5.2-r1.0/packages-split/python3-misc/usr/lib/python3.5/bz2.py:import _compression
  tmp-glibc/work/aarch64-oe-linux/python3/3.5.2-r1.0/packages-split/python3-tests/usr/lib/python3.5/test/test_bz2.py:import _compression
  tmp-glibc/work/aarch64-oe-linux/python3/3.5.2-r1.0/packages-split/python3-tests/usr/lib/python3.5/test/test_lzma.py:import _compression

  and python3-tests are using it as well, so add new runtime dependency
  on python3-compression

(From OE-Core rev: 987363c3c720b3764f4d64976d7455f6b0bae99c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Mark Asselstine
b7ebb2cd2f attr: Fix build failure when image includes man-pages pkg
If you attempt to build an image with both attr(-doc) and man-pages
packages your rootfs might fail to assemble. The error will be
something like:

Error: Transaction check error:
  file /usr/share/man/man2/fgetxattr.2 from install of \
    attr-doc-2.4.47-r0.core2_64 conflicts with file from \
    package man-pages-4.11-r0.core2_64

(the error is usually only seen on builders which don't have manpages
installed, if you have /usr/share/man/man1/man.1.gz your build will
complete but you will have duplicate manpages, just one zipped and one
not)

Backporting changes from upstream attr removes the conflicted files in
favour of those in the man-pages package.

(From OE-Core rev: 5e6595ef42807c8d2a100da3d9862152daf68d3d)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Ross Burton
4de6b89843 externalsrc: verify that EXTERNALSRC/EXTERNALSRC_BUILD are absolute paths
If these are set to URLs then the errors produced are not helpful.

(From OE-Core rev: 946b6623154e748a0d75ff498802a720aeec27a6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Alexander Kanavin
231c9fe94d adwaita-icon-theme: add a patch to speed up the do_install() task
Goes down to 40 seconds from over 4 minutes :)

Note that there is no control over the amount of shell jobs; on my machine
this is not a problem, but if it's a problem on less capable hardware,
we can add some kind of limiter.

(From OE-Core rev: cd9af17028c069f52fb0616074170093dd63c143)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Mikko Ylinen
44c0e8c804 runqemu: change terminal settings for valid tty's
runqemu uses stty to change terminal settings to give users
better control to qemu. However, stty does not work when
runqemu is run directly or indirectly via oe-selftest in
a Docker container (presumably some problems with Docker's
pseudo-tty implementation).

The error reported is:
stty: 'standard input': Inappropriate ioctl for device

As runqemu recently moved to subprocess.check_call() for
stty calls we now get thrown an error and all runqemu
runs fail.

sys.stdin.isatty() does proper job in detecting if the stty
calls can work so we use that check before running the stty
subprocess operations.

(From OE-Core rev: 06742ed59092530aedf03f65c3c9542c24ff7ac3)

Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:58 +01:00
Maxin B. John
b1da7c703b grub: switch from ftp to https
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: 3a603a805ff3495ac9b8431acbf698757a28d32d)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
537ff6caaa libid3tag: switch from ftp to http
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: 134151fbf3ade16f1175002c76028adeb2426354)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
381b403667 libglu: switch from ftp to https
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: 057bcb34b9cd7b52932320206132ab381f00c674)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
52839e11e1 mesa: switch from ftp to https
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: ca626abbe1883bce6ebc1d2b86d4efb74e31ec8e)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
6bf1d215b7 mesa-demos: switch from ftp to https
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: 31a6e2dca7c22420d981bca199299c4457e3c3d2)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
6a7684e104 dhcp: switch from ftp to http
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: 95a83b81421e07b5daa42c2311f8f5fce859c391)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
0bc54908cb libpcre: switch from ftp to https
For the same reasons as Debian:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: 1127af1eddf2cb49b1fbef473a20ae9b446b8369)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Ed Bartosh
bb8ad58dd6 image.bbclass: fix setting of vardeps flag
Added leading space to vardeps to avoid flag value to be
added to the existing value without a separator.

(From OE-Core rev: f582773c2b1e8db441f397867d3c9665fd265cec)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Ed Bartosh
201e4acefb image.bbclass: improve setup of flags
Replaced setVarFlag calls to appendVarFlag to allow
modification of prefuncs, postfuncs and subimages flags
in inherited image classes.

[YOCTO #11372]

(From OE-Core rev: 6690f3ab43c04fa7cff7215d4a5d8d639e41aed8)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Ed Bartosh
daaed7b28a image.bbclass: cleanup: add new variable "task"
Replaced repeated expression "do_image_%s" % t with
a variable 'task' to simplify the code and increase
readability.

(From OE-Core rev: d24dd95f2c1c7f773875454bee3f2016c4e7553c)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Chen Qi
2b85c92234 staging.bbclass: fix typo
The function is "sysroot_strip" instead of "split_and_strip_files".

(From OE-Core rev: f2d349887710dcae05db09dc2277223e85fa1c19)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
4a7ce464fd connman: correct the systemd boot in read only rootfs
connman fails to start in systemd based read-only images while creating links:

Jun 08 12:53:56 qemux86-64 systemd[1]: Starting Create Volatile Files
and Directories...
Jun 08 12:53:56 qemux86-64 systemd-tmpfiles[366]:
[[0;1;31msymlink(/var/run/connman/resolv.conf, /etc/resolv.conf) failed:
Read-only file system[[0m

Fix this failure and make connman co-exist with systemd-resolved.

(From OE-Core rev: 732e1f74bb9f5ecc98b29197f6bcab117710adab)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Maxin B. John
00e4662e55 systemd: enable resolved and networkd
Enable systemd-resolved and systemd-networkd by default.
Make it co-exist with connman and  Fix associated problems
in read-only rootfs.

Fixes [YOCTO #11331]

(From OE-Core rev: d9b6d538e3d81ab0d5e7b7b6adecef555d782217)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 14:53:57 +01:00
Richard Purdie
5db4d0dbbb selftest/sstatetests: Fix potential failure on uniprocessor machines
It was pointed out +1 is safer than -1 for systems with one processor.

(From OE-Core rev: 78041e20e43d9583448ff31f8b9b1c6157da8625)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 11:56:09 +01:00
Leonardo Sandoval
cc9b77bab0 linux-yocto: remove user-specific description/config files from machine description
Remove user-specific descrition files and config fragments from main machine
description file otherwise double patch/config inclusion may happen. These
files/fragments are already included on the SRC_URI (see poky commit 2db8f3),
so no need to reference these inside machine.scc files.

[YOCTO #11586]

(From meta-yocto rev: 86ab7ab6688f250bb5777371d2cbc28c770847d4)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 11:52:01 +01:00
Khem Raj
014efb83d7 gcc_7.1.bb: disable thumb on armv5t
It results in same link errors like armv4t

(From OE-Core rev: 7fb9648f7a055beef9c8a735850b1b51fd23ff1d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:23:27 +01:00
Khem Raj
70f1fd0643 gcc: Add recipes for gcc-7
Switch default compiler to gcc 7

(From OE-Core rev: 03bb12008891cf1a023aaddb6547da6d41d0cab0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:23:27 +01:00
Khem Raj
89c12fc8de ovmf: Update to latest
Fix build with gcc7

clang can not compile it therefore mark it gcc only recipe

(From OE-Core rev: 835b705ee92900f0d73cee612ce790fde4b1e2a4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:23:27 +01:00
Scott Rifenbark
ed0ecc7b76 dev-manual, ref-manual: Reorganized "Other Information"
Fixes [YOCTO #11630]

The exhaustive list of useful links and references to other
YP documentation existed in the dev-manual.  This is not the correct
place for this type of reference information.  I have moved that
list to the ref-manual where it should be.  The dev-manual now
simply provides a link into that section.

(From yocto-docs rev: eeceb597988134ced85aab4b9ddaeed923f17b03)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:25 +01:00
Scott Rifenbark
741dddf11a dev-manual, ref-manual: Reorganized Bugzilla information
Fixes [YOCTO #11630]

Reorganized the way the information about entering bugs using
Bugzilla is arranged in the documentation set.  The dev-manual now
has a section that is purely procedural and steps the user through
the process of logging a new bug in the Bugzilla system.  The
ref-manual has a conceptual section that introduces the YP
implementation of Bugzilla by simply telling the user what it is
and what what its purpose is.

(From yocto-docs rev: 4bfba345010be7bc2866b819b9754bb06f93c91f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:25 +01:00
Kristi Rifenbark
0dae0865ba dev-manual: Corrected grammar error
(From yocto-docs rev: 0d432a6890316207f93c149b865d4a9fc020bfa0)

Signed-off-by: Kristi Rifenbark <kristi.rifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:25 +01:00
Kristi Rifenbark
6b32207239 dev-manual: Edited grammar error
(From yocto-docs rev: d02aedcd3cf9e30d5d1633ee234af3fcb4a570e3)

Signed-off-by: Kristi Rifenbark <kristi.rifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:25 +01:00
Kristi Rifenbark
6a54099d1d dev-manual: Edited intro para to devtool upgrade figure
The introductory paragraph for this figure was a cut/paste
problem from previous devtool figures.

(From yocto-docs rev: c02a2a57889bbdcd7e83ab9e2458397189bbb980)

Signed-off-by: Kristi Rifenbark <kristi.rifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:25 +01:00
Kristi Rifenbark
aadfed276c dev-manual, sdk-manual: Corrected grammar error
(From yocto-docs rev: ca0843e7651d25e37295094770ca3a97f9150bbc)

Signed-off-by: Kristi Rifenbark <kristi.rifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Kristi Rifenbark
0050fc51d0 dev-manual: Updated "Kernel Modification Workflow" config file location
Warning in step 5 indicated the wrong location for config file.
Updated with new location and referenced an illustration to
show an example.

(From yocto-docs rev: e853e5b89f1dbd7399909064b50bc59e06302560)

Signed-off-by: Kristi Rifenbark <kristi.rifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
7d231fb681 dev-manual: Removed last paragraph of BSP workflow section.
This paragraph had some links to old stuff.  Removed the whole
paragraph.

(From yocto-docs rev: 95c1f348ed018c697cc996bc962787ede056b94b)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
3cf074a195 dev-manual, mega-manual: Updated kernel overview tree structure figure
This figure was a bit out of date.  I updated a few of the file
names.  Figure needs to reside in the Figures folder of both the
dev-manual and the mega-manual.

(From yocto-docs rev: 1e76477810b6be095f9ca190c9a8f0276ee4b8f9)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
635c5c60dc dev-manual: Slight wording change to be clear.
(From yocto-docs rev: f8b0f3e01249ab94520137ecc60dcc08620a2a96)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
8cff6961a9 dev-manual: changed git configuration file name
I changed the git config file to ~/.gitconfig

(From yocto-docs rev: 0d4f43944b911ee23dd03b5f503173478d6c396d)

Signed-off-by: Scott Rifenbark <scottrif@buzzcollectivemarketing.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
f29a05dd85 dev-manual: Formed ordered list for email patch procedure
The section that describes how to create a patch and send it via
email is really an ordered procedure.  I recast the list of steps
using numbers instead of bullets.

(From yocto-docs rev: c2d2256ca6d8c8b837bae87a5bd8a3118553935c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
ded9a2f6b3 ref-manual: Updated PACKAGECONFIG_CONFARGS variable
Fixes [YOCTO #11600]

Removed the example.  It was not needed.

(From yocto-docs rev: 402bb173b00a665fb55a8f740a4dbe60ead57f25)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
dce79d0efc ref-manual: Added warning to native.bbclass for naming convention
Fixes [YOCTO #11411]

Added a naming convention warning to the native.bbclass description
that is similar to the existing warning used in the description for
the nativesdk.bbclass.

(From yocto-docs rev: 2ceeb5416d439197e94640229e3685ab8b87e0fb)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
a61cb95ebd ref-manual: Updated PACKAGECONFIG_CONFARGS variable description
Fixes [YOCTO #11600]

"configure" and "cmake" are not do_* tasks of BitBake.  I updated
the formatting of these programs and removed links that were to
the tasks in the reference manual.

(From yocto-docs rev: 2605c7378f6b4b49c2e2baaf159fd2c289d83a1a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
07057766b9 yocto-project-qs: Updated the YP Development Flow figure
The figure that Scott Garman used for an old video cast is
much more appealing to the eye than the giant, square beast
the current manual was using.  I have replaced the image.
The image is technically the same.

Because the mega-manual has to use a duplicate figure, I
put the new PNG files in the Figures directory for both the
yocto-project-qs and mega-manual books.

(From yocto-docs rev: ed64810e59110418d49fb6d3e61967fa62ab28c8)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
3edf5dc104 dev-manual, sdk-manual: Fixed link to Eclipse section
The YP doc set was using a link to an out-dated video that
showed how to configure and run Eclipse.  The video was very
old and Jessica suggested just removing it.  So, I replaced
all occurrences of the link to the up-to-date appendix in the
SDK manual that provides information on the latest supported
version of the Eclipse IDE.

(From yocto-docs rev: b4af1a79078352df5558e20c0b9cfa97fa141abc)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Scott Rifenbark
22bcc7623c dev-manual: Fixed broken link into the setting up Eclipse section
The link to the section on how to set up Eclipse had been broken
for a while.  I fixed the link so that it goes to the appropriate
section (appendix) in the SDK manual.

(From yocto-docs rev: 873c2c53f661b18936595068d75b954e07774621)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:24 +01:00
Alejandro Hernandez
e4404a79f1 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.10
Upgrades to Linux 4.10.17

(From meta-yocto rev: f620f654bfb1b05dd24394911ee6d3b6ce6ea457)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:07 +01:00
Alejandro Hernandez
5775fc166f linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.9
Upgrades to 4.9.31

(From meta-yocto rev: b85c5ba43892c63d0a6536908c8d548dbe9cc045)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:07 +01:00
Alejandro Hernandez
0825c638c2 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.4
Upgrades to Linux 4.4.71

(From meta-yocto rev: 2850ef6ed0d93a45d5f60ede74e4c0f7183842f3)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:19:06 +01:00
Denys Dmytriyenko
eee3227bad uboot-config: check UBOOT_CONFIG variable, not flags, for error conditions
Sometimes there's a need to change existing UBOOT_CONFIG setting from a recipe,
distro or local config, such as an override or even switch back to UBOOT_MACHINE.
Unfortunately, there's no easy way to override or unset flags, so using them as
an error condition is rather heavy-handed. Change those conditions to check the
UBOOT_CONFIG variable itself, not its flags.

(From OE-Core rev: b51383e5268ff33e43a39862814e065afbbd10ca)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:30 +01:00
Amarnath Valluri
608df535d4 sed: changes to support merged /usr
Few of the perl scripts referring '#!/bin/sed' inside the script. But when
'usrmerge' feature is enabled this path would be /usr/bin/sed. So to satisfy
build dependency add '/bin/sed' to it's providers list.

(From OE-Core rev: 4f33950156c50aab68cbdf80fe52345eea6fb76c)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:30 +01:00
Amarnath Valluri
39b8fbfd53 busybox: changes to support merged /usr
Most of the shell scripts refer to /bin/sh inside the script. When 'usrmege'
feature is enabled, this path would be /usr/bin/sh. Hence, to satisfy build
dependency add '/bin/sh' to it's providers list.

(From OE-Core rev: 1f6c14939c8daa5e09103789c3ff5031cc888d16)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:30 +01:00
Amarnath Valluri
591d4e8aea bash: changes to support merged /usr
Most of shell scripts refer to '#!/bin/{sh,bash}' inside the script. But when
'usrmege' feature is enabled this path will be /usr/bin/{sh, bash}.

so to satisify build dependency add '/bin/{sh,bash}' to its providers list.

(From OE-Core rev: 4759408677a4e60c5fa7131afcb5bc184cf2f90a)

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:30 +01:00
Mike Crowe
6e43be47d0 gcc-cross-canadian: Use ${target_includedir} for compatibility with meta-micro
meta-micro puts headers in /include rather than /usr/include in the
sysroot. ${target_includedir} means that the correct path will be used
automatically.

(From OE-Core rev: 12abcc3791592035d99064262eb3d229fa5ef88c)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
Acked-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:30 +01:00
Ed Bartosh
1de1a34a64 selftest: add test_wic_rm test case
Added test case for "wic rm" functionality.
    - remove file from vfat partition
    - remove directory from vfat partition

(From OE-Core rev: fc42914d426ad2dad8c3026668726c003b3ab10b)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:30 +01:00
Ed Bartosh
6a8f4426b0 wic: implement removing directories
Added support for removing directories using mdeltree
utility to Disk.del method

[YOCTO #11283]

(From OE-Core rev: a5fc61d8f290d370f4bc51d4e2a67a5580edb1b1)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
c5fadce5f9 wic: implement removing files
Added implementation of Disk.del method and wic_r
function that removes files from the vfat partition
using mdel utility.

[YOCTO #11283]

(From OE-Core rev: 4abf2d2643c58322d96d63d5f3ffaf52d62c6792)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
c869c1d6b2 wic: add 'wic rm' command
Added empty 'wic rm' command that does nothing.
The functionality will be added by the next commits.

[YOCTO #11283]

(From OE-Core rev: f8e42c13609c482359fbdb225fb16a45101ae9ae)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
94a03322b6 wic: add help and usage content for 'wic rm'
Added wic_rm_help and wic_rm_usage variables to help.py.
These variables contain help content that will be used in
'wic rm help' and 'wic rm --help' output.

(From OE-Core rev: b6894538b2a426762a07c0e7b014a04f4e00266d)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
89af63bc04 wic: add wic_init_parser_rm
Add parser for 'wic rm' subcommand.

(From OE-Core rev: 234b20ae73e15a4926b64449a665169390c66451)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
bb94a25b85 selftest: add test_wic_cp test case
Added test case for "wic cp" functionality.
     - copy file to vfat partition
     - copy directory to vfat partition

(From OE-Core rev: cb416d1feea042bcdedc9f522d588fef2c4929bc)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
1a07d3502b wic: fully implement 'wic cp'
Added implementation of Disk.copy method and wic_cp
function that copies files/directories to the vfat partition
of the partitioned image.

[YOCTO #11283]

(From OE-Core rev: 416e4599960987f0ce31b3f16f3c6af0bf633a26)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
0a84187b86 wic: add Disk._put_part_image method
This method copies partition image into the wic image.
It will be used in 'wic cp' and 'wic rm' subcommands
to copy changed partition back into wic image.

(From OE-Core rev: 7a7e6635e2e2ddfff2bca58c860634b7a199b0df)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
d5e3c91703 filemap: calculate dst size correctly
Fixed calculation of the dst file size using skip, seek and
length parameters. Current code does it incorrectly which
causes sparse_copy API to create unnecessary big output files.

(From OE-Core rev: e6d709a6382e4b913612f597e66ad07b0e351d5f)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
b67fd459d2 filemap: check if dest is written for every block
If lenght parameter is provided to sparse_copy call
it's mandatory to check if the output file is fully
written after reading unmapped block from input file.

If it's not done then sparse_copy can write more data
than specified length.

(From OE-Core rev: 289b1767182982dfb6912e64481150697ba93e4d)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
59e0600427 filemap: change signature of sparse_copy function
Renamed parameter offset->skip to match names of dd
parameters.

Changed affected sparse_copy calls.

Added explanation of the parameters to docstring.

(From OE-Core rev: 08e2f4e59816c5757686255b267b08cbc46fbd95)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
1344400f1a wic: add mcopy property
Added property that points to the mcopy executable.

(From OE-Core rev: 05badb6427442388b9bea04c8b184a2ce92362ec)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
0165f40cbb wic: add Disk._prop helper
Added generic helper to use in property methods to
access commands in a lazy manner.

(From OE-Core rev: 4c1ded3ddbd04ad1640620ec1348831692a93dbe)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
ecefd3c55b wic: add 'wic cp' command
Added empty 'wic cp' command that does nothing.
The functionality will be added by the next commits.

[YOCTO #11283]

(From OE-Core rev: f0dcf39d52185430422cb0c94c7fe99c12764acd)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
87f30cfb44 wic: add help and usage content for 'wic cp'
Added wic_cp_help and wic_cp_usage variables to
help.py. These variables contain help content that
will be used in 'wic cp help' and 'wic cp --help'
output.

[YOCTO #11283]

(From OE-Core rev: f3f0dadada1e297f2b54fa320bb817da7f755c1f)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
13bf0f4faf wic: add wic_init_parser_cp
Add parser for 'wic cp' subcommand and a custom argument type.

(From OE-Core rev: df5152c834ef58036b41ad51b19eda6abecd9543)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
4917798395 selftest: add new test case test_wic_ls
Tested 'wic ls' functionality:
 - list of image partitions
 - list of directory content of vfat partition

(From OE-Core rev: 3b271f6a40d7ef93fff9700dd8ac98bddd92d581)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
6f1b89c224 engine: implement listing wic images
Implemented 'wic ls' functionality:
 - list image partitions
 - list directory content of vfat partitions

[YOCTO #11283]

(From OE-Core rev: 61667fabd5746caf773f73b3aeb2a04db13cba38)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
746351100e wic: add 'wic ls' command
Added empty 'wic ls' command that does nothing.
The functionality will be added by the next commits.

(From OE-Core rev: ba4613469cc2c3d3433be2e2f520f4fff6b3b333)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:29 +01:00
Ed Bartosh
7213625a7d wic: add help and usage content for 'wic ls'
Added wic_ls_help and wic_ls_usage variables to
help.py. These variables contain help content that
will be used in 'wic ls help' and 'wic ls --help'
output.

(From OE-Core rev: 5152f993777550e5e8a420db4d1f3c4370cd1d33)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Ed Bartosh
04a99adc29 wic: add wic_init_parser_ls
Added parser for 'wic ls' command.

(From OE-Core rev: 8db6f74b684fecc7dd4d23d327a9b6310cdd3ec9)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Ed Bartosh
479c6a85af bootimg-pcbios: make boot image file unique
Plugin code uses boot.img file name for an image file. If there are
two partitions that use bootimg-pcbios wic breaks with an error
"file already exists: boot.img"

Made image file name unique by adding wks like number to it to fix
the issue.

(From OE-Core rev: eec6e946cce36cba304851fa4a1c1d7bfd7b0bed)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Ed Bartosh
16562e7672 filemap: add parameter 'length' to sparse_copy
Added parameter 'length' to specify amount of data
to write into destination file. This is useful when only
part of source file should be written into destination file.

(From OE-Core rev: cc44e2eb3b5027a3531e6349937a23d73313b3c6)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Ed Bartosh
ce7895a61c filemap: fix skip logic
Fixed bug in processing 'skip' parameter:
   don't read input file if end of bmap block is less than skip

Simplified logic of positioning to the start of data inside a
partially skipped bmap block.

(From OE-Core rev: c19f78a0713c8ac9d28b78f86c6d7b96157788f0)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Ed Bartosh
0dbe1c7880 mtools-native: disable reading host configs
Removed code that reads /etc/mtools.conf, /etc/default/mtools.conf,
/etc/mtools and /etc/default/mtools to ensure that mtools output
doesn't depend on the global host configs.

It's still possible to use ~/.mtoolsrc config or point MTOOLSRC
environment variable to any configuration file if user want
to configure mtools.

(From OE-Core rev: 868cb638c92f650a2f0bea9669b68c1e8aebabab)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Richard Purdie
2d224392da bitbake.conf: Don't exclude MACHINE/MACHINEOVERRIDES from hashes
A long time ago (6 years), this seemed like a good idea. The reality is
that OVERRIDES should not be being added to hashes and if it is, it likely
needs excluding in its own right. This was a nice workaround but we need
to fix the real underlying issues now. In some cases this means excluding
OVERRIDES from the variables dependency using the vardepsexclude flag however
caution is needed to ensure this is safe.

Variable values used to construct hashes are unexpanded but the values used
are computed after the application of OVERRIDES. The important detail is if
the end resulting unexpanded value changes, not the value of the OVERRIDES
used in the construction of that unexpanded value. This is why dependencies
on OVERRIDES itself shouldn't be in the hashes in general.

The recent DISTRO_FEATURES changes adding in override mappings for them
highlighted this issue. We have some good sstate tests which are effective
at highlighting where potential issues arrive with OVERRIDES contamination
(oe-selftest -r sstatetests.SStateTests).

(From OE-Core rev: b227781f9c59a7dfe30f3f1c0dcff87e29a1689b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Richard Purdie
891b5ee2ee sstatetests: Use higher parallelism value
Since the processing code for signature generation is now threaded,
use higher thread values as examples in this code for better performance.

(From OE-Core rev: f68ec7191546474f0bd688e57d2381a8e92be617)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Richard Purdie
785d4af8e7 utils: Exclude OVERRIDES from hashes in multilib functions
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Richard Purdie
89ace22c3d insane: Don't depend on OVERRIDES
In common with the other package handling functions, don't depend on the
value of OVERRIDES. This means when we change MACHINE, we don't have to
repackage everything.

(From OE-Core rev: 6e24b4bbe708a25c827364a2d6d979b354ab3ef2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Richard Purdie
e8c980ff0c allarch: Append to vardepsexclude, not overwrite
These have values set elsewhere and this code was overwriting them leading
to odd signature issues. Append instead preserving the original values.

(From OE-Core rev: b756fd12c28d1ce3ca60b328927db996c6a52424)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-14 10:18:28 +01:00
Leonardo Sandoval
2db8f3265e linux-yocto: include missing description files and conf fragments
Include missing description files and configuration fragments into the SRC_URI.

[YOCTO #10918]

(From meta-yocto rev: e57f92996e71d4085ebaa41e802bea3cc1466cd7)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:47:09 +01:00
Patrick Ohly
5df6796d1c bitbake: ConfHandler.py: allow require or include with multiple parameters
"inherit" already allows inheriting more than one class in a single
statement. The same also makes sense for "include" and "require",
because then one can generate a list of files to be included
dynamically also for the case that more than one file needs to be
included.

(Bitbake rev: 8d0a76f5a595dddf16b7268bae2c00ef5f568316)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:47:09 +01:00
Patrick Ohly
6dafbaeff4 bitbake: ConfHandler.py: allow require or include without parameter
Writing .bbappends that only have an effect when some configuration
variable like DISTRO_FEATURES is changed becomes easier when allowing
"include" or "require" without a parameter. The same was already
allowed for "inherit".

Then one can write in a .bbappend:

  require ${@bb.utils.contains('DISTRO_FEATURES', 'foo', 'bar.inc', '', d)}

(Bitbake rev: 8b39c6361758b96fce50a53a6dba8008cd7e6433)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:47:09 +01:00
Aníbal Limón
77a358e41e oeqa/core/loader: Use full and small module name on filtering
The small module name was added to support run a whole suite that
has more that 3 levels in the test case name, but this broke the
behaviour for use a full test case name.

[YOCTO #11632]

(From OE-Core rev: 9ab20ceb5801bee8dd8b218b3928720da5e1d403)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Aníbal Limón
3c5c8ccee1 oeqa/core/runner: Don't log details twice if test fails
The details of a test failure is upper on the unittest output
so don't log twice the actual failure.

[YOCTO #11622]

(From OE-Core rev: 0f2e81c2a4458ad0ec6bab2710952ac2c2bbf1af)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Changhyeok Bae
5c987a34a3 iproute2: Upgrade 4.10.0 -> 4.11.0
0001-ip-Remove-unneed-header.patch is to fix build error
built with musl.

(From OE-Core rev: 2a6fe7c6c1e113d930ddc8e06717747a779b46f1)

Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Ming Liu
248b0df1a9 rpm: add explicit dependency on bzip2-replacement-native for native builds
This fixes a following error:
| recipe-sysroot-native/usr/lib/rpm/debugedit: error while loading shared libraries: \
| libbz2.so.1: cannot open shared object file: No such file or directory

(From OE-Core rev: 61ecda8f7977ee2d30f31d2f384f65f933971568)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Khem Raj
3a61329052 kexec-tools: Pass -no-pie to linker
- This matches the linker flags to compiler flags in purgatory
- Compile arm64 without PIC

(From OE-Core rev: 653299d8c31eac6147b8183d9ec7ef82b7202cab)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Khem Raj
98a967d10d valgrind: Fix ptest build with musl
musl unearthed a problem when building out of tree, config.h was being
used from $(srcdir) instead of generated config.h in $(builddir)
this assumed functions e.g. mallinfo() and more which are not in musl
as a result tests broke.

Also add fixes to build remaining tests when building on musl

pass -fno-pie as it cant use PIE especially in ptests/x86_64

(From OE-Core rev: 8ab1828f073b5eab606161681a5f260cc0e77bf1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Khem Raj
93ddbfd17d libnsl2: Include stdint.h
uintptr_t is defined in stdint.h

(From OE-Core rev: 29366ea3ed574848cbf5a6fd9012bf53eddb338f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Khem Raj
d90102ed25 ltp: Include stdint.h for uintptr_t
Fixes build with musl and upcoming glibc

(From OE-Core rev: af314c17f6c32afbed9a277775156b9bbc5ac033)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Khem Raj
18369bf39c binutils-2.28: Update to latest on release branch
Drop patches to ChangeLog, they are in patch
header anyway

(From OE-Core rev: 0b0f545dbf16b0970c5a79975d451dc9d887c2a7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Khem Raj
3f18281a4c mpg123: Upgrade to 1.25.0
No need to skip textrel QA for x86 as it has
been fixed in 1.25.0

(From OE-Core rev: f635c097d0d43c88b00a00073b93712f1cc90fe0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Alexander Kanavin
84e0bb8d93 rpm: run binary package generation via thread pools
This greatly reduces build times when there is a large amount of small
rpm packages to produce. The patches are rather invasive,
and so will be submitted upstream.

(From OE-Core rev: 964a6eb4732df462008883c4bb003f801777dfad)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:33 +01:00
Richard Purdie
1847d2aa40 Revert "package.bbclass: Restore functionality to detect RPM dependencies"
This reverts commit aea90e9ee6f34e7c1c08307080b1e29646668df6.

RP hadn't meant to merge this yet and its causing problems so delay it until its
ready.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 06:18:49 +01:00
Peter Kjellerstedt
bd07f8c9ad package.bbclass: Restore functionality to detect RPM dependencies
During the transition to dnf and rpm4, the functionality to
automatically make RPM determine dependencies was lost.

Before the transition, an OE specific tool called rpmdeps-oecore had
been added to the rpm suit. It was based on the rpmdeps tool that is
part of rpm. For each file specified on its command line, it would
output the provides and requires that RPM could determine.

During the transition to rpm4, rpmdeps-oecore was replaced with the
standard rpmdeps. However, what no one noticed was that unless rpmdeps
is given options, e.g., -P or -R, to tell it what it should output, it
will not output anything. Thus, it would do all the work to determine
the requirements, but would keep silent about it. And since no output
from rpmdeps is expected unless there are requirements, there were no
warnings indicating that everything was not working as expected.

Porting the old rpmdeps-oecore to work with rpm4 is not really
possible since it relied on being able to access internals of RPM that
are no longer available. However, it turned out that rpmdeps had a
debug option, --rpmfcdebug, that would output exactly the information
that we need, albeit in a different format and to stderr. To make this
usable, rpmdeps has now received a new option, --alldeps, which sends
the information we need to stdout.

(From OE-Core rev: aea90e9ee6f34e7c1c08307080b1e29646668df6)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Peter Kjellerstedt
e075d603c9 rpm: Add a new option --alldeps to rpmdeps
This will send the output from rpmfcPrint() to stdout. This is an
alternative to using the --rpmfcdebug option, which will send the same
output to stderr. The two options have totally different use cases
though. While --alldeps is used when the output from rpmfcPrint() is
what is wanted, --rpmfcdebug can be used together with the other
output options, e.g., --requires, without affecting their output.

(From OE-Core rev: a58a0dc03398dcd9f81a9c8a6189ae13d90e0df7)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Aníbal Limón
8573de63aa oeqa/sdk/cases: Fix skip of buildgcalculator test
The tc.hasTargetPackage uses a re.search to see if gtk+3 is on
the manifest but + in regex means 1 or more causing the test
to be skipped.

(From OE-Core rev: 271cd99d00bde0b9f2aa27141acbe06812f34638)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Francisco Pedraza
05697aa941 oeqa/sdk/cases: Added validation for SDK compatibility tests with eSDK
The manifests for eSDK are generated using shared states so there is a
need to validate to different "packages names" into the test cases.

For example for perl:

SDK provides nativesdk-perl
eSDK provides perl-native

[YOCTO #9090]

(From OE-Core rev: 8db06dd1290dd53d626050879c9c306f95d76ac2)

Signed-off-by: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Francisco Pedraza
1b804d7944 meta/classes/populate_sdk: Adds support for generating eSDK manifest files
Add get_extra_sdk_info to reuse code in buildhistory

The functionalities to generate SDK and eSDK manifest files are different,
the SDK comes from package information and the eSDK comes from sstate artifacts.
Only execute write_sdk_{host, target}_manifest when is on populate_sdk class.

Adds new functions write_sdk{host, target}_ext_manifest to execute on postprocess
in populate_sdk_ext because at the end we have all the sstate artifacts to
generate the manifest.

[YOCTO #9038]

(From OE-Core rev: 25ad7ed6f7bb0c931b404bda09576323200d093d)

Signed-off-by: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Francisco Pedraza
08a4705af9 lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory
This function is going to be used for generating the target and host
manifest files packages for eSDK. Added some fixes for buildhistory.bblclass,
and docstring for get_extra_sdkinfo at oe.sdk

[YOCTO #9038]

(From OE-Core rev: f696b3bbe01969ce7ecb8174d63d3e1e172b473e)

Signed-off-by: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Peter Kjellerstedt
246b73ad55 rpm: Use conditional to access %{_docdir} in macros.in
This avoids the following warning:

warning: Ignoring invalid regex %{_docdir}

when runing `rpmdeps -R <file>`, since %{_docdir} is only defined when
parsing a spec file.

(From OE-Core rev: 7e0964e506506d20a25aac570104938759f9f70e)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Peter Kjellerstedt
acca495fae rpm: Do not require that ELF binaries are executable to be identifiable
There is nothing that requires, e.g., a DSO to be executable, but it
is still an ELF binary and should be identified as such.

(From OE-Core rev: 74d040f456269992a13850a626279b3b8e954847)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Peter Kjellerstedt
43b48407a4 rpm: Create a wrapper for the native rpmdeps tool
Rather than trying to call rpmdeps with the correct arguments to work
with the sysroot as was done in package.bbclass, create a wrapper for
it like all the other native tools already had.

(From OE-Core rev: 124a6115af845fd892f53c8504db6ffd59f8bd45)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:23 +01:00
Peter Kjellerstedt
50f1f5f4e6 rpm: Simplify the creation of wrappers for the native tools
Use a loop rather than calling create_wrapper for each individual
tool.

(From OE-Core rev: e299a396849acd515d51d377958d795e979e6262)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
7625d4121e toaster.bbclass: Ignore some dependencies in toaster_buildhistory_dump()
When using RPM, depends.dot may contain dependencies such as
"/bin/sh", which will confuse _toaster_load_pkgdatafile(). Ignore
them. While at it, also ignore dependencies that contain parentheses,
e.g., "libc.so.6(GLIBC_2.7)".

(From OE-Core rev: 3b42c400d2d7a6ebe37429a363e1d79200f87e9b)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
2dcd72fd87 toaster.bbclass: Simplify parsing of depends.dot
By using a single regular expression, the parsing of the depends.dot
file can be simplified a lot. This should also make it less
susceptible to formatting changes in that file.

(From OE-Core rev: 49a321d03e527ad15c3a7fcb9d94980577535ca3)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
a19d31da4b buildhistory.bbclass: Improve the generated depends.dot file
* Convert incorrectly formatted dependencies such as:
    "bar -> "foo" ">=" "1.2.3"
  into dependencies with edge labels:
    "bar -> "foo" [label=">= 1.2.3"]
* Remove rpmlib() and config() dependencies such as:
    "foo" -> "rpmlib(CompressedFileNames)" [label="<= 3.0.4-1"]
  and:
    "base-files" -> "config(base-files)" [label="= 3.0.14-r89.49"]
* Remove the trailing semicolon that was added to each line. It fills
  no purpose.

(From OE-Core rev: 37ea2c8b299483f0e12fad66efa789c6445571e0)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
d30591b496 insane.bbclass: Improve the handling of runtime file dependencies
This makes the file-rdeps test support:
* versioned dependencies, e.g., "perl (>= 5.000)", and
* package dependencies among the file dependencies, e.g., "perl".

It also ignores all "perl(...)" dependencies since it is expected that
these are generated and handled by rpm itself and there is no reason
to second guess what it is doing.

(From OE-Core rev: 2cbeb6edbfcbd9378a5a79b17f7d31a49e0356ff)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
985448c92d insane.bbclass: Report all file-rdeps errors, not just the first
(From OE-Core rev: 3d0e5612585137409a8e16636a95ab59fb263136)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
4495e78917 libxml2: Make ptest run the Python tests if Python support is enabled
Since we go through the trouble of copying the Python tests, we may as
well actually run them...

This also avoids the following QA issue:

  ERROR: libxml2-2.9.4-r0 do_package_qa: QA Issue:
  /usr/lib/libxml2/ptest/python/tests/push.py contained in package
  libxml2-ptest requires /usr/bin/python, but no providers found in
  RDEPENDS_libxml2-ptest? [file-rdeps]

(From OE-Core rev: 65bc9fac6dc6ba5252bf105659724c768d65f9d9)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Peter Kjellerstedt
3a9a5e85e8 package_manager.py: Generate correct RPM package names again
During the transition to RPM4, the package names returned by
RpmPM.list_installed() changed from the expected names of the packages
that were installed into the image to some fictitious source RPM
names.

This restores the original functionality so that the
installed-packages.txt files produced by inheriting buildhistory yet
again contains a list of the names of the installed packages.

(From OE-Core rev: 25a36bcea4c02002d4895ba17f49ced09ae821c2)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 23:01:22 +01:00
Kevin Hao
ba0098e0d1 meta-yocto-bsp: bump to the latest linux stable kernel for the non-x86 BSPs
Bump to the latest stable kernel for 4.1, 4.4, 4,9 and 4.10.

(From meta-yocto rev: acedc2be541a29e33c5d44692aab75432e4d56a3)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:44 +01:00
Richard Purdie
1e4eb0e760 meta-yocto: Add LAYERSERIES_COMPAT markup to layer.conf
This means mismatched layers are more clearly identified to the user in
cases where compatibility has not been tested.

(From meta-yocto rev: ca35ea46708e0514e4d5a20950880be0bf1d4147)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:44 +01:00
Ed Bartosh
62f4629066 buildhistory: force writing SRCREV values
Enabling SSTATE_MIRRORS sometimes causes SRCREV values not
to be written/updated in the build history. This happens more
often if SRCREV is set to ${AUTOREV}

Explicitly writing SRCREVs when recipe history is being written
should fix this.

[YOCTO #10948]

(From OE-Core rev: df74b97599a789db742fc7588009783f5f37ebff)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:32 +01:00
Richard Purdie
437f9cdbaf native/nativesdk: Ensure DISTRO_FEATURES is determistic
set() order is random and hence the filtered native/nativesdk DISTRO_FEATURES
could be set to random ordering. We've been lucky so far this tended not to
cause issues but some queued changes highedlighted this. Thrown in a sorted()
so the order is deterministic and we get consistent hash checksums between runs
and between machines.

(From OE-Core rev: 76391673754cf6a01d68eedbd4181e543fa2f427)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:32 +01:00
Trevor Woerner
545f976943 mesa.inc: enable texture float for gallium
Following the lead from Fedora (as suggested by Rob Clark) always enable
--enable-texture-float for all gallium drivers, but then modify the code to
not enable it, at runtime, where the implementation isn't backed by hardware.

The patch comes from unpacking fedora-25's mesa-17.0.5-3.fc25.src.rpm from
https://dl.fedoraproject.org/pub/fedora/linux/updates/25/SRPMS/m/

Somewhere along the path from OpenGL ES 2.0 to OpenGL ES 3.0 are some
algorithms that are encumbered by patents. These algorithms are enabled
with mesa's --enable-texture-float configure flag. However, if hardware
acceleration is being used and the hardware supports --enable-texture-float,
it means the hardware vendor has paid for the patents.

Note that with this solution, non-hardware gallium drivers (e.g. swrast) can't
--enable-texture-float, which might cause issues with some piglit tests.

This solution was discussed and agreed-to on the mailing list:
http://lists.openembedded.org/pipermail/openembedded-core/2017-May/137233.html

(From OE-Core rev: 6fd63e24a1c6ac901edb393c9db8e245189a83e2)

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:32 +01:00
Patrick Ohly
baeafe6dcc utils.py: helper function for optional include files
The main intention is to provide easy-to-use and read helper functions
for including files only when certain distro features are
set. Functionally they are the same as bb.utils.contains and
bb.utils.contains_any.

Distro features are part of the base configuration and thus safe to
use for conditional inclusion in recipes and bbappends, in contrast to
recipe variables which might still change during parsing. Therefore
the check is limited to DISTRO_FEATURES. This is the reason for having
this in OE-core instead of bitbake.

Default values are set so that no redundant parameters have to be
passed for conditional includes. As a secondary usage, the functions
can also be used in boolean checks.

(From OE-Core rev: 13024ce5aae453769b546d5fbe533443aec3d6fd)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:32 +01:00
Patrick Ohly
7b95d5d701 bitbake.conf: DISTRO_FEATURES as overrides
As discussed in "[Openembedded-architecture] Yocto Compatible 2.0 +
signature changes", changes in .bbappend must depend on some explicit
configuration change, typically selecting a distro feature.

For _append and _remove, adding an override that is set only when the
corresponding entry is in DISTRO_FEATURES achieves that:

In local.conf:
  DISTRO_FEATURES_append = " my-distro-feature"

In layer.conf:
  DISTRO_FEATURES_OVERRIDES += "my-distro-feature"

In a .bbappend:
  do_install_append_df-my-distro-feature () {
       ...
  }

The subset of DISTRO_FEATURES that are made available as overrides
must be configured explicitly because using them this way should
be a conscious decision.

(From OE-Core rev: 3b3ae91a22d6f685e804df4f32cdeebe1bd6bd88)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:32 +01:00
Cody P Schafer
6bb9860ef7 runqemu-export-rootfs: don't change RPC ports
RPC ports (also known as rpc program numbers) are values:

 - given to rpcbind (aka portmapper) to allow nfsv3 clients that don't
   know the tcp/udp port number of nfsd and mountd to look it up the
   tcp/udp port number, and to

 - allow a single transport (ie: tcp/udp port) to provide multiple
   sunrpc services.

OE has carried patches to nfsutils & linux for some time to support the
mountprog & nfsprog options.

In the case of runqemu-export-rootfs, we don't need to use custom rpc
program numbers because runqemu-export-rootfs tells unfsd not to
register with the portmapper, and unfsd runs the nfs and mount rpc
services on tcp/udp ports unfsd binds itself (iow: the tcp/udp ports are
not shared in the sunrpc sense).

Linux's nfs client does not query rpcbind when tcp/udp port numbers are
specified (in net/sunrpc/clnt.c, call_bind checks for the tcp/udp port
with xprt_bound() and skips the call to rpcbind if xprtsock.c's
xs_setup_udp() or xs_setup_tcp() has found a non-zero tcp/udp port).

The program numbers _are_ sent over the mount & nfs protocol (really,
over sunrpc), and checked to match at both ends. As a result, even when
rpcbind is unused, using different program numbers in unfsd vs linux
nfs client causes mounts to fail (and nfsroot mounts to timeout).

The result is that specifying custom program numbers in
runqemu-export-rootfs doesn't solve any conflicts, it simply requires
that users of runqemu-export-rootfs carry a kernel patch & adds 2 extra
parameters to the kernel command line unnecessarily.

Change runqemu-export-rootfs to use the default program numbers.

For now, I have not dropped the custom program number patches to linux,
nfs-utils, and unfsd just in case someone is using them in a
non-runqemu-export-rootfs context.

CC: Bruce Ashfield <bruce.ashfield@gmail.com>
CC: Mark Hatle <mark.hatle@windriver.com>
(From OE-Core rev: 9c91df324dfe58273f5a1d1d33dba1d34a180db7)

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:32 +01:00
Khem Raj
7acb3ae1cd testimage.bbclass: Correct the comment to state right dir for test cases
(From OE-Core rev: b464e338b30fe038e081e0dcae9f50c120d2f81c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Khem Raj
b28034878a rng-tools: Fix textrels on 32bit x86
When testing core-image-sato with hardening flags, it fails with
SIGSEGV in libc.so during relocation time

This is due to relocations in .text [textrel]
build QA points it out clearly during qemux86 build as well

AssertionError: 2 != 0 : Log: /mnt/a/oe/build/tmp/work/qemux86-bec-linux-musl/core-image-sato/1.0-r0/dmesg_output.log
-----------------------
Central error: [   19.043597] rngd[525]: segfault at 80098bb7 ip b77b14fc sp bfe9b380 error 7 in libc.so[b774c000+97000]

(From OE-Core rev: 5770cd5bee1c9ad3025435426361f0e407d43ef8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Fan Xin
5c9acfbeaa gnutls: Upgrade to 3.5.13
1. Upgrade gnutls from 3.5.9 to 3.5.13

2. Rebase the following patch file.
   use-pkg-config-to-locate-zlib.patch

(From OE-Core rev: ba7e5f51327d9833776aa066f30c5e46606be374)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Jussi Kukkonen
f1a5c7c53b diffutils: prevent host path leaks, set pr path
Note that this just removes a host path leakage: diffutils still
doesn't depend on coreutils so 'pr' might not actually be there
on image (this only breaks "diff -l" so no big deal).

(From OE-Core rev: 3f7fd738981752a8c34c6cf4a1f2d4c035b081ca)

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>
2017-06-12 15:08:31 +01:00
Hongxu Jia
bcb84911b3 librepo: Fix typo: correct LRO_SSLVERIFYHOST with CURLOPT_SSL_VERIFYHOST
The commit 51d32c6cd88ba0139c32793183fd6a236c1ef456 in
git://github.com/rpm-software-management/librepo.git
...
Author: Tomas Mlcoch <tmlcoch@redhat.com>
Date:   Mon May 5 14:31:35 2014 +0200

    Add LRO_SSLVERIFYPEER and LRO_SSLVERIFYHOST options (RhBug: 1093014)
...

It incorrectly setopt CURLOPT_SSL_VERIFYPEER for LRO_SSLVERIFYHOST.
Use CURLOPT_SSL_VERIFYHOST to correct.

(From OE-Core rev: 266545f5f5758be397a6c2cd4727d5c0895c924d)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Paul Eggleton
4d1866bd28 classes/buildhistory: use BB_CMDLINE to get bitbake command line
We put the bitbake command line in the buildhistory commit message for
informational purposes, but calling sys.argv to get that as we were
previously doesn't really work in memory resident mode - that gives you
the command used to start the bitbake server which is much less
interesting. Use the just-introduced BB_CMDLINE variable instead.

Part of the fix for [YOCTO #11634].

(From OE-Core rev: 1a6424ee4c865601ff324e9599a2f48c9e6723ee)

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>
2017-06-12 15:08:31 +01:00
Paul Eggleton
120810c508 bitbake.conf: add BB_CMDLINE to BB_HASHCONFIG_WHITELIST
We really don't want the just-introduced BB_CMDLINE influencing the
config hash.

Part of the fix for [YOCTO #11634].

(From OE-Core rev: 861159318a99a314d2f8bdb0fa772a6b4bd7a97e)

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>
2017-06-12 15:08:31 +01:00
Tom Rini
a084d424ca dpkg: Add missing RDEPENDS for dpkg-perl
In order to be able to use dpkg-perl on a system various stock perl
modules must also be installed on the system.  Create the list of
required modules based on a read of the code and testing with additional
utilities and list them in RDEPENDS_${PN}-perl.

(From OE-Core rev: 2e0044ed32485fe24e0cedd9354dd546cb9c47a5)

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Tom Rini
6ca5e24087 dpkg: Fix perl modules by moving them to the versioned perl directory
In order for the dpkg perl modules to be used the must reside in the
versioned perl library directory (as to be in the default include path).
Be explicit about this location in our FILES_${PN}-perl directive, so
that if this breaks in the future, the recipe will fail).  We can now
drop the custom do_configure as it wasn't fixing this problem.

(From OE-Core rev: 05f6ff9a500bb97d8ef1f943eff1b9d90246651f)

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Tom Rini
329f602c30 cpan-base.bbclass: Move PERLVERSION and get_perl_version to a new file
It is possible for non-CPAN recipes to contain perl modules.  These perl
modules must reside in the versioned perl library directory in order to
work in normal circumstances..  Export this logic to a separate class so
that it can be reused without the rest of the cpan logic.

Without this, dpkg will not export its perl code to the correct location
and will not be found by utilities that expect to use it.

(From OE-Core rev: f4edc200d3a9645f9674eae0f8d10926680ba4f8)

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
André Draszik
00e83cb029 openssh: allow to override OpenSSL HostKeys when read-only-rootfs
With these changes it is possible to have a .bbappend that
- sets SYSCONFDIR to some persistent storage
- modifies SYSCONFDIR/sshd_config to use ssh host keys from
  the (writable) sysconfdir

(From OE-Core rev: 106b59d9f96f70d133fa1421091ad280d27a5b6a)

Signed-off-by: André Draszik <adraszik@tycoint.com>
Reviewed-by: Stephane Ayotte <sayotte@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
André Draszik
bd2b33486e busybox: add backported patch to support iproute 'scope'
This is needed for avahi-autoipd, which attempts to
create a link-scope route as part of its work.

Without iproute scope support in busybox, the route is
not created due to an error message, and hence we
aren't accessible by, and can't access ourselves,
IP addresses outside the link-local scope
(169.254.0.0/16) unless we also have a proper
non link-local IP address, which somehow defeats the
purpose of zeroconf.

(From OE-Core rev: bd06a1cbe8e97b7f66979b12d4d248092379df4a)

Signed-off-by: André Draszik <adraszik@tycoint.com>
Reviewed-by: Stephane Ayotte <sayotte@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Alexander Kanavin
66683198cf package_rpm.bbclass: use multithreaded xz compression
RPM's default is single-threaded gz; the change greatly helps with
both buildtimes (when there is a small number of large-sized packages)
and disk space taken by resulting rpms.

(From OE-Core rev: f108c4d09926bd28e7a57b665fc8cb5373827780)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Bruce Ashfield
b7a173ef41 linux-yocto/4.4: update to v4.4.71
Updating the the latest 4.4 -stable release which comprises the
following commits:

4bbbc7696405 Linux 4.4.71
9d65be36a7cc xfs: only return -errno or success from attr ->put_listent
1b03d85a4f37 xfs: in _attrlist_by_handle, copy the cursor back to userspace
c56605c69ba6 xfs: fix unaligned access in xfs_btree_visit_blocks
9f7b5da0570f xfs: bad assertion for delalloc an extent that start at i_size
3ba13d7f5b2b xfs: fix indlen accounting error on partial delalloc conversion
1d41dd5c1fd6 xfs: wait on new inodes during quotaoff dquot release
9d97d6a15265 xfs: update ag iterator to support wait on new inodes
8e25af0dc5ad xfs: support ability to wait on new inodes
cf55c35974e1 xfs: fix up quotacheck buffer list error handling
a76647a71c8e xfs: prevent multi-fsb dir readahead from reading random blocks
8caa9a54b32b xfs: handle array index overrun in xfs_dir2_leaf_readbuf()
0ace12c11401 xfs: fix over-copying of getbmap parameters from userspace
fe705621b9b4 xfs: fix off-by-one on max nr_pages in xfs_find_get_desired_pgoff()
b9a7816997a3 xfs: Fix missed holes in SEEK_HOLE implementation
03489bfc7830 mlock: fix mlock count can not decrease in race condition
7e13bab109ea mm/migrate: fix refcount handling when !hugepage_migration_supported()
4e4b72c0ee3d drm/gma500/psb: Actually use VBT mode when it is found
14bfe118dd7d slub/memcg: cure the brainless abuse of sysfs attributes
023a8b0925be ALSA: hda - apply STAC_9200_DELL_M22 quirk for Dell Latitude D430
85ddc41a6c4a pcmcia: remove left-over %Z format
69877793e23d drm/radeon: Unbreak HPD handling for r600+
15de2e4c90b7 drm/radeon/ci: disable mclk switching for high refresh rates (v2)
3529600b1601 scsi: mpt3sas: Force request partial completion alignment
58b7cb10f6e2 HID: wacom: Have wacom_tpc_irq guard against possible NULL dereference
c0fd730b678d mmc: sdhci-iproc: suppress spurious interrupt with Multiblock read
2ca57fc82436 i2c: i2c-tiny-usb: fix buffer not being DMA capable
1b5286ba9f13 vlan: Fix tcp checksum offloads in Q-in-Q vlans
e989f9bf2a9d net: phy: marvell: Limit errata to 88m1101
605b6b2b4d8a netem: fix skb_orphan_partial()
338f665acb4b ipv4: add reference counting to metrics
97f54575ff57 sctp: fix ICMP processing if skb is non-linear
fe22b6005538 tcp: avoid fastopen API to be used on AF_UNSPEC
d7ed7fcecf20 virtio-net: enable TSO/checksum offloads for Q-in-Q vlans
8380f16d0702 be2net: Fix offload features for Q-in-Q packets
38f02f2ce0ca ipv6: fix out of bound writes in __ip6_append_data()
3a854210f9a5 bridge: start hello_timer when enabling KERNEL_STP in br_stp_start
b543ccc4f627 qmi_wwan: add another Lenovo EM74xx device ID
94c0bf3cbb99 bridge: netlink: check vlan_default_pvid range
f76d54a8882e ipv6: Check ip6_find_1stfragopt() return value properly.
017fabead5c2 ipv6: Prevent overrun when parsing v6 header options
640bfcf232a9 net: Improve handling of failures on link and route dumps
7ede5c90fcdd tcp: eliminate negative reordering in tcp_clean_rtx_queue
ffa551def59c sctp: do not inherit ipv6_{mc|ac|fl}_list from parent
704e6c6b8651 sctp: fix src address selection if using secondary addresses for ipv6
90e3f8a55871 tcp: avoid fragmenting peculiar skbs in SACK
182abc4e74a1 s390/qeth: avoid null pointer dereference on OSN
21b871582375 s390/qeth: unbreak OSM and OSN support
2ac37098ee3d s390/qeth: handle sysfs error during initialization
d1428ee54073 ipv6/dccp: do not inherit ipv6_mc_list from parent
5f67a1663c03 dccp/tcp: do not inherit mc_list from parent
b9978c27454c sparc: Fix -Wstringop-overflow warning
b409ba3b0535 Linux 4.4.70
837bfdb41337 drivers: char: mem: Check for address space wraparound with mmap()
52cf24769487 nfsd: encoders mustn't use unitialized values in error cases
da922dc48dcf drm/edid: Add 10 bpc quirk for LGD 764 panel in HP zBook 17 G2
bc428e94070e PCI: Freeze PME scan before suspending devices
5f36c8b4e4a3 PCI: Fix pci_mmap_fits() for HAVE_PCI_RESOURCE_TO_USER platforms
6384f782a69c tracing/kprobes: Enforce kprobes teardown after testing
d5fb96b955ff osf_wait4(): fix infoleak
e07db0d720d3 genirq: Fix chained interrupt data ordering
1736f2b3de62 uwb: fix device quirk on big-endian hosts
ca19dd15e7bb metag/uaccess: Check access_ok in strncpy_from_user
2d9b2e780832 metag/uaccess: Fix access_ok()
98d5e84363ea iommu/vt-d: Flush the IOTLB to get rid of the initial kdump mappings
cb89b1f9dff9 staging: rtl8192e: rtl92e_get_eeprom_size Fix read size of EPROM_CMD.
427907e599fa staging: rtl8192e: fix 2 byte alignment of register BSSIDR.
8b26f53bf026 mm/huge_memory.c: respect FOLL_FORCE/FOLL_COW for thp
f03484fd5a3a xc2028: Fix use-after-free bug properly
e0188a556da6 arm64: documentation: document tagged pointer stack constraints
06dd8281a7d3 arm64: uaccess: ensure extension of access_ok() addr
c23fee69f5b5 arm64: xchg: hazard against entire exchange variable
acbab784a9b6 ARM: dts: at91: sama5d3_xplained: not all ADC channels are available
6ae3be7167b7 ARM: dts: at91: sama5d3_xplained: fix ADC vref
1ab43a598996 powerpc/64e: Fix hang when debugging programs with relocated kernel
33c0c0f8edb9 powerpc/pseries: Fix of_node_put() underflow during DLPAR remove
a86b9ecf1158 powerpc/book3s/mce: Move add_taint() later in virtual mode
f3ffc64bf3dd cx231xx-cards: fix NULL-deref at probe
3208e455284b cx231xx-audio: fix NULL-deref at probe
bd14c18861c7 cx231xx-audio: fix init error path
f7c778fa707d dvb-frontends/cxd2841er: define symbol_rate_min/max in T/C fe-ops
e5a9ebb4387a zr364xx: enforce minimum size when reading header
a6e0caa34715 dib0700: fix NULL-deref at probe
a896652f6ad3 s5p-mfc: Fix unbalanced call to clock management
fc9753aa6ce9 gspca: konica: add missing endpoint sanity check
04f522476a26 ceph: fix recursion between ceph_set_acl() and __ceph_setattr()
0e9e19a66530 iio: proximity: as3935: fix as3935_write
8a5b15e198f1 ipx: call ipxitf_put() in ioctl error path
4ae1efc7cc98 USB: hub: fix non-SS hub-descriptor handling
af4e23402409 USB: hub: fix SS hub-descriptor handling
1e6e9c4c36f9 USB: serial: io_ti: fix div-by-zero in set_termios
4be0ae3d314c USB: serial: mct_u232: fix big-endian baud-rate handling
704f23f20c5e USB: serial: qcserial: add more Lenovo EM74xx device IDs
1c7f99aa2979 usb: serial: option: add Telit ME910 support
319be2ab4731 USB: iowarrior: fix info ioctl on big-endian hosts
1beae7405705 usb: musb: tusb6010_omap: Do not reset the other direction's packet size
5cbfae4ad360 ttusb2: limit messages to buffer size
9737909ff9d4 mceusb: fix NULL-deref at probe
f05c0dfd394f usbvision: fix NULL-deref at probe
14d0cafd3f95 net: irda: irda-usb: fix firmware name on big-endian hosts
ec0b553bd8df usb: host: xhci-mem: allocate zeroed Scratchpad Buffer
c0791b605fac xhci: apply PME_STUCK_QUIRK and MISSING_CAS quirk for Denverton
65ba07489dcd usb: host: xhci-plat: propagate return value of platform_get_irq()
ada79b5ecda7 sched/fair: Initialize throttle_count for new task-groups lazily
f01ae9cb0de2 sched/fair: Do not announce throttled next buddy in dequeue_task_fair()
ae3d7b8931eb fscrypt: avoid collisions when presenting long encrypted filenames
129a883b0191 f2fs: check entire encrypted bigname when finding a dentry
269d8211c400 fscrypt: fix context consistency check when key(s) unavailable
0aa3b8ef6975 net: qmi_wwan: Add SIMCom 7230E
22823e95193a ext4 crypto: fix some error handling
0a76f023e6f2 ext4 crypto: don't let data integrity writebacks fail with ENOMEM
f0486aa7bc80 USB: serial: ftdi_sio: add Olimex ARM-USB-TINY(H) PIDs
16ac61cf707c USB: serial: ftdi_sio: fix setting latency for unprivileged users
6a70a5833ecc pid_ns: Fix race between setns'ed fork() and zap_pid_ns_processes()
ddf9b92f12dd pid_ns: Sleep in TASK_INTERRUPTIBLE in zap_pid_ns_processes
060d2642682e iio: dac: ad7303: fix channel description
14323b731072 of: fix sparse warning in of_pci_range_parser_one
000959316365 proc: Fix unbalanced hard link numbers
d22b933fb8eb cdc-acm: fix possible invalid access when processing notification
e4add1cf6b41 drm/nouveau/tmr: handle races with hw when updating the next alarm time
9d78e40f5f41 drm/nouveau/tmr: avoid processing completed alarms when adding a new one
5e07724c28f4 drm/nouveau/tmr: fix corruption of the pending list when rescheduling an alarm
27f82df2f026 drm/nouveau/tmr: ack interrupt before processing alarms
3819271d8a5f drm/nouveau/therm: remove ineffective workarounds for alarm bugs
7d2d6022807a drm/amdgpu: Make display watermark calculations more accurate
349666cfbe76 drm/amdgpu: Avoid overflows/divide-by-zero in latency_watermark calculations.
670a7c5db22e ath9k_htc: fix NULL-deref at probe
8431037ba10b ath9k_htc: Add support of AirTies 1eda:2315 AR9271 device
c26190b5378d s390/cputime: fix incorrect system time
d1f8ea3bd095 s390/kdump: Add final note
de74aedd71c0 regulator: tps65023: Fix inverted core enable logic.
6d380f50113c KVM: X86: Fix read out-of-bounds vulnerability in kvm pio emulation
e9c9e7588ef5 KVM: x86: Fix load damaged SSEx MXCSR register
08e589a97d38 ima: accept previously set IMA_NEW_FILE
0c99c8a22cc4 mwifiex: pcie: fix cmd_buf use-after-free in remove/reset
e367d1b00f81 rtlwifi: rtl8821ae: setup 8812ae RFE according to device type
c5ff397f075e md: update slab_cache before releasing new stripes when stripes resizing
d3df9403c075 dm space map disk: fix some book keeping in the disk space map
1dc9fb3cc12e dm thin metadata: call precommit before saving the roots
ea4889d6f39d dm bufio: make the parameter "retain_bytes" unsigned long
4a9631ffe520 dm cache metadata: fail operations if fail_io mode has been established
8d8fb01a62f2 dm bufio: check new buffer allocation watermark every 30 seconds
5d1df36c9d2c dm bufio: avoid a possible ABBA deadlock
4df4bf1df916 dm raid: select the Kconfig option CONFIG_MD_RAID0
fa499b361bd4 dm btree: fix for dm_btree_find_lowest_key()
c04397351fe5 infiniband: call ipv6 route lookup via the stub interface
63450e38efe3 tpm_crb: check for bad response size
025e33ee387a ARM: tegra: paz00: Mark panel regulator as enabled on boot
b171ce6c5e41 USB: core: replace %p with %pK
cda5c7e625ce char: lp: fix possible integer overflow in lp_setup()
ea99c2248495 watchdog: pcwd_usb: fix NULL-deref at probe
ca157f64dc9c USB: ene_usb6250: fix DMA to the stack
b572de59915e usb: misc: legousbtower: Fix memory leak
8a7f9dfbd4ae usb: misc: legousbtower: Fix buffers on stack
bb56ca291305 Linux 4.4.69
35df2085ec02 ipmi: Fix kernel panic at ipmi_ssif_thread()
d4392269f7ce wlcore: Add RX_BA_WIN_SIZE_CHANGE_EVENT event
4b86b46ef410 wlcore: Pass win_size taken from ieee80211_sta to FW
8ef67e0078b3 mac80211: RX BA support for sta max_rx_aggregation_subframes
d13333edbcc7 mac80211: pass block ack session timeout to to driver
0fe94dd915fd mac80211: pass RX aggregation window size to driver
f85e0c5f592c Bluetooth: hci_intel: add missing tty-device sanity check
bf3feec82ce3 Bluetooth: hci_bcm: add missing tty-device sanity check
ff1c4cf24642 Bluetooth: Fix user channel for 32bit userspace on 64bit kernel
9bd2cc56a089 tty: pty: Fix ldisc flush after userspace become aware of the data already
814c2bac9032 serial: omap: suspend device on probe errors
a52e1012585f serial: omap: fix runtime-pm handling on unbind
605fa1a2aa03 serial: samsung: Use right device for DMA-mapping calls
db467fee7ffb arm64: KVM: Fix decoding of Rt/Rt2 when trapping AArch32 CP accesses
f08bc4d63377 padata: free correct variable
9f4ba9062c2c CIFS: add misssing SFM mapping for doublequote
9a4050669919 cifs: fix CIFS_IOC_GET_MNT_INFO oops
a8900a64eabf CIFS: fix mapping of SFM_SPACE and SFM_PERIOD
b85fa4129e7a SMB3: Work around mount failure when using SMB3 dialect to Macs
89d23005fd63 Set unicode flag on cifs echo request to avoid Mac error
7aad381af8c3 fs/block_dev: always invalidate cleancache in invalidate_bdev()
bb7031c7e50f ceph: fix memory leak in __ceph_setxattr()
eb04a7344c83 fs/xattr.c: zero out memory copied to userspace in getxattr
a3e6be0e9447 ext4: evict inline data when writing to memory map
ab7ebca418bb IB/mlx4: Reduce SRIOV multicast cleanup warning message to debug level
1ad689bdc12d IB/mlx4: Fix ib device initialization error flow
1360f4301c78 IB/IPoIB: ibX: failed to create mcg debug file
1549c883d39b IB/core: Fix sysfs registration error flow
d96bb545d6ff vfio/type1: Remove locked page accounting workqueue
341adf516842 dm era: save spacemap metadata root after the pre-commit
dcd4004ae521 crypto: algif_aead - Require setkey before accept(2)
21cb4dc57b3c block: fix blk_integrity_register to use template's interval_exp if not 0
cbaeca8251bb KVM: arm/arm64: fix races in kvm_psci_vcpu_on
7b268351860c KVM: x86: fix user triggerable warning in kvm_apic_accept_events()
a2d5dcf338ea um: Fix PTRACE_POKEUSER on x86_64
b8cd9dd513bf x86, pmem: Fix cache flushing for iovec write < 8 bytes
d34ecdc9712c selftests/x86/ldt_gdt_32: Work around a glibc sigaction() bug
e89233f53e3d x86/boot: Fix BSS corruption/overwrite bug in early x86 kernel startup
3d3ca81d5e35 usb: hub: Do not attempt to autosuspend disconnected devices
0b4dad7c2cf4 usb: hub: Fix error loop seen after hub communication errors
7cad8a47ca94 usb: Make sure usb/phy/of gets built-in
6c3785cca656 usb: misc: add missing continue in switch
d3c04901f750 staging: comedi: jr3_pci: cope with jiffies wraparound
7fc6659b19a2 staging: comedi: jr3_pci: fix possible null pointer dereference
5ac489a80ffb staging: gdm724x: gdm_mux: fix use-after-free on module unload
265500bf9802 staging: vt6656: use off stack for out buffer USB transfers.
9d3c45786f27 staging: vt6656: use off stack for in buffer USB transfers.
de9d2d297ebe USB: Proper handling of Race Condition when two USB class drivers try to call init_usb_class simultaneously
fcd9a083cd22 USB: serial: ftdi_sio: add device ID for Microsemi/Arrow SF2PLUS Dev Kit
af3c8bf0e06b usb: host: xhci: print correct command ring address
8e1a740a5d66 iscsi-target: Set session_fall_back_to_erl0 when forcing reinstatement
6cd0200a9554 target: Convert ACL change queue_depth se_session reference usage
de41b0e12d6e target/fileio: Fix zero-length READ and WRITE handling
a1c2b01c310a target: Fix compare_and_write_callback handling for non GOOD status
8e209a07b106 xen: adjust early dom0 p2m handling to xen hypervisor behavior

(From OE-Core rev: 2e7d1a42b14de6f47543186f7855658a2ec36397)

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>
2017-06-12 15:08:31 +01:00
Bruce Ashfield
f650b625eb linux-yocto/4.9: update to 4.9.31
Updating to the latest 4.9 -stable which comprises the following
commits:

   f1aa865ae5d4 Linux 4.9.31
   11214bd292ec xfs: Fix off-by-in in loop termination in xfs_find_get_desired_pgoff()
   75c5afd58d46 xfs: fix unaligned access in xfs_btree_visit_blocks
   7fb8ab8f0a38 xfs: avoid mount-time deadlock in CoW extent recovery
   e40c145c023d xfs: xfs_trans_alloc_empty
   0e542792a046 xfs: bad assertion for delalloc an extent that start at i_size
   f60d76efa91a xfs: BMAPX shouldn't barf on inline-format directories
   53c44c236f21 xfs: fix indlen accounting error on partial delalloc conversion
   54894ea3c542 xfs: fix use-after-free in xfs_finish_page_writeback
   d457f822817f xfs: reserve enough blocks to handle btree splits when remapping
   0ba833fe73d2 xfs: wait on new inodes during quotaoff dquot release
   2ea882d8ebc7 xfs: update ag iterator to support wait on new inodes
   e86b616b5b9e xfs: support ability to wait on new inodes
   10f0b2c3c225 xfs: fix up quotacheck buffer list error handling
   95487d4be1e9 xfs: prevent multi-fsb dir readahead from reading random blocks
   93bd169845e5 xfs: handle array index overrun in xfs_dir2_leaf_readbuf()
   99226b890d63 xfs: fix integer truncation in xfs_bmap_remap_alloc
   4e2762878a59 xfs: drop iolock from reclaim context to appease lockdep
   4e8163fc8159 xfs: actually report xattr extents via iomap
   de417ea6b0a6 xfs: fix over-copying of getbmap parameters from userspace
   c2ad2dc3d264 xfs: use dedicated log worker wq to avoid deadlock with cil wq
   3890d83805fe xfs: fix kernel memory exposure problems
   ca659e086fb7 xfs: rework the inline directory verifiers
   815414e7648b xfs: verify inline directory data forks
   11b485477285 xfs: fix off-by-one on max nr_pages in xfs_find_get_desired_pgoff()
   9c795fff53f9 xfs: use ->b_state to fix buffer I/O accounting release race
   c9eab63b9e62 xfs: Fix missed holes in SEEK_HOLE implementation
   670821b9482d drm/gma500/psb: Actually use VBT mode when it is found
   74b416367b4e mm/slub.c: trace free objects at KERN_INFO
   c1bb2a899b5f slub/memcg: cure the brainless abuse of sysfs attributes
   873f3b0ebbfe ksm: prevent crash after write_protect_page fails
   d5ecb4ca0da7 x86/boot: Use CROSS_COMPILE prefix for readelf
   d1cff2222071 RDMA/qib,hfi1: Fix MR reference count leak on write with immediate
   292f70cd9649 mm: consider memblock reservations for deferred memory initialization sizing
   1163e785b150 mlock: fix mlock count can not decrease in race condition
   d494cab70697 mm/migrate: fix refcount handling when !hugepage_migration_supported()
   7d8ef0e0bc1e ALSA: hda - apply STAC_9200_DELL_M22 quirk for Dell Latitude D430
   da856d05645c pcmcia: remove left-over %Z format
   ebd4c110fd0b drm/radeon: Fix vram_size/visible values in DRM_RADEON_GEM_INFO ioctl
   acc771fdaec7 drm/radeon: Unbreak HPD handling for r600+
   c8d25fcb5980 drm/radeon/ci: disable mclk switching for high refresh rates (v2)
   9869fb485cc6 scsi: mpt3sas: Force request partial completion alignment
   21f33b157721 nvme: avoid to use blk_mq_abort_requeue_list()
   510b0ec7f60f nvme: use blk_mq_start_hw_queues() in nvme_kill_queues()
   ae0578089242 nvme-rdma: support devices with queue size < 32
   34808d76dd77 HID: wacom: Have wacom_tpc_irq guard against possible NULL dereference
   69b1d90e6a0f ibmvscsis: Fix the incorrect req_lim_delta
   80569d0e09ad ibmvscsis: Clear left-over abort_cmd pointers
   49d33fd10070 iscsi-target: Always wait for kthread_should_stop() before kthread exit
   ecbf0f48d65e mmc: sdhci-iproc: suppress spurious interrupt with Multiblock read
   8735cf2291cd Revert "ACPI / button: Change default behavior to lid_init_state=open"
   32d8077f1e9b acpi, nfit: Fix the memory error check in nfit_handle_mce()
   68c83a379106 x86/MCE: Export memory_error()
   4472887cbd13 crypto: skcipher - Add missing API setkey checks
   63399974effb i2c: i2c-tiny-usb: fix buffer not being DMA capable
   d3b2d9ca90c2 drivers/tty: 8250: only call fintek_8250_probe when doing port I/O
   1d74fc36f3ec powerpc/spufs: Fix hash faults for kernel regions
   68a056175512 fs/ufs: Set UFS default maximum bytes per file
   1a658771d5e1 sparc/ftrace: Fix ftrace graph time measurement
   45ceb845ef34 sparc: Fix -Wstringop-overflow warning
   c1133c671a04 bpf: add bpf_clone_redirect to bpf_helper_changes_pkt_data
   988b9792b856 ipv4: add reference counting to metrics
   1de51502a025 sctp: fix ICMP processing if skb is non-linear
   4b81271ed1c3 tcp: avoid fastopen API to be used on AF_UNSPEC
   9e056584770b virtio-net: enable TSO/checksum offloads for Q-in-Q vlans
   9c6cfd5811bd be2net: Fix offload features for Q-in-Q packets
   5f595d529796 vlan: Fix tcp checksum offloads in Q-in-Q vlans
   cc6773b51bf3 net: phy: marvell: Limit errata to 88m1101
   4fb5fd27dec0 net/mlx5: Avoid using pending command interface slots
   1730a2b9e5b5 bonding: fix accounting of active ports in 3ad
   304b41014acb ipv6: fix out of bound writes in __ip6_append_data()
   ee72e7e5c2b4 bridge: start hello_timer when enabling KERNEL_STP in br_stp_start
   0d10ebbc835f qmi_wwan: add another Lenovo EM74xx device ID
   2ea4221eb4ae bridge: netlink: check vlan_default_pvid range
   3fa202ef74c8 ipv6: Check ip6_find_1stfragopt() return value properly.
   a2c845e51a82 ipv6: Prevent overrun when parsing v6 header options
   68647616fd53 net: Improve handling of failures on link and route dumps
   0174b07408f2 tcp: eliminate negative reordering in tcp_clean_rtx_queue
   ac3735bf97f0 net/mlx5e: Fix ethtool pause support and advertise reporting
   1594973b8e07 net/mlx5e: Use the correct pause values for ethtool advertising
   f79d3307c035 net/packet: fix missing net_device reference release
   5e7d9f0b3f72 sctp: do not inherit ipv6_{mc|ac|fl}_list from parent
   eb7f6d6989ad sctp: fix src address selection if using secondary addresses for ipv6
   8d625242e86b tcp: avoid fragmenting peculiar skbs in SACK
   a5db124dc2a4 net: fix compile error in skb_orphan_partial()
   5d165daafc44 netem: fix skb_orphan_partial()
   21e3113298f9 bpf, arm64: fix faulty emission of map access in tail calls
   c1f3f197d650 s390/qeth: add missing hash table initializations
   96a81eb6ad5a s390/qeth: avoid null pointer dereference on OSN
   b68c2e387a23 s390/qeth: unbreak OSM and OSN support
   25c1a1e4d891 s390/qeth: handle sysfs error during initialization
   4bd8f5e38e5a ipv6/dccp: do not inherit ipv6_mc_list from parent
   8f1f08be3974 driver: vrf: Fix one possible use-after-free issue
   4eed44029507 dccp/tcp: do not inherit mc_list from parent
   db3fd4527ed3 Linux 4.9.30
   5a597b225d48 drm/i915/gvt: Disable access to stolen memory as a guest
   1489183c2005 drivers: char: mem: Check for address space wraparound with mmap()
   51d9c51523ec nfsd: encoders mustn't use unitialized values in error cases
   ea465551af30 nfsd: fix undefined behavior in nfsd4_layout_verify
   f2b6f508c541 NFS: Use GFP_NOIO for two allocations in writeback
   a8c35e5c88de NFS: Fix use after free in write error path
   88ac6b7e0c82 NFSv4: Fix a hang in OPEN related to server reboot
   5438f8952906 drm/edid: Add 10 bpc quirk for LGD 764 panel in HP zBook 17 G2
   5956b2815f90 mtd: nand: add ooblayout for old hamming layout
   6639b27f5a4c mtd: nand: omap2: Fix partition creation via cmdline mtdparts
   e437af936a49 mtd: nand: orion: fix clk handling
   db6636416195 PCI: Freeze PME scan before suspending devices
   9ad81ecb28d6 PCI: Only allow WC mmap on prefetchable resources
   6bec009a2f69 PCI: Fix another sanity check bug in /proc/pci mmap
   fa3bbb1c7f06 PCI: Fix pci_mmap_fits() for HAVE_PCI_RESOURCE_TO_USER platforms
   87e7dc97c8a0 PCI: hv: Specify CPU_AFFINITY_ALL for MSI affinity when >= 32 CPUs
   d1d63f97dd76 PCI: hv: Allocate interrupt descriptors with GFP_ATOMIC
   dd0023d7105c tracing/kprobes: Enforce kprobes teardown after testing
   cc0aa21de47c um: Fix to call read_initrd after init_bootmem
   541c67844198 osf_wait4(): fix infoleak
   07d8aabff490 MIPS: Loongson-3: Select MIPS_L1_CACHE_SHIFT_6
   6d6a43a08611 nvme: unmap CMB and remove sysfs file in reset path
   423f1752a028 genirq: Fix chained interrupt data ordering
   3fe116563d5d uwb: fix device quirk on big-endian hosts
   f157261b55a4 stackprotector: Increase the per-task stack canary's random range from 32 bits to 64 bits on 64-bit platforms
   e8a8a6972c50 metag/uaccess: Check access_ok in strncpy_from_user
   9fefcb947ec2 metag/uaccess: Fix access_ok()
   21f2950f91ff iommu/vt-d: Flush the IOTLB to get rid of the initial kdump mappings
   58e36d6f7f11 staging: rtl8192e: GetTs Fix invalid TID 7 warning.
   93a46fe4eb41 staging: rtl8192e: rtl92e_get_eeprom_size Fix read size of EPROM_CMD.
   d0226f9adaf8 staging: rtl8192e: fix 2 byte alignment of register BSSIDR.
   f4205502948b staging: rtl8192e: rtl92e_fill_tx_desc fix write to mapped out memory.
   e6b8f5ade305 arm64: documentation: document tagged pointer stack constraints
   e817a7fb2f31 arm64: uaccess: ensure extension of access_ok() addr
   4775fbcc92d7 arm64: armv8_deprecated: ensure extension of addr
   f2e4f4e538f0 arm64: ensure extension of smp_store_release value
   88675139a81d arm64: xchg: hazard against entire exchange variable
   31a331c8cf26 arm64: dts: hi6220: Reset the mmc hosts
   5ee1c675ab92 ARM: dts: imx6sx-sdb: Remove OPP override
   03d8b264bcb9 ARM: dts: at91: sama5d3_xplained: not all ADC channels are available
   086ea4b9510c ARM: dts: at91: sama5d3_xplained: fix ADC vref
   9f6cea2e3bbd ARM: 8670/1: V7M: Do not corrupt vector table around v7m_invalidate_l1 call
   3304f5a1cb87 ARM: 8662/1: module: split core and init PLT sections
   ee773459557d KVM: arm: plug potential guest hardware debug leakage
   0ba7e8e34193 arm: KVM: Do not use stack-protector to compile HYP code
   d0fb4b7d00bb arm64: KVM: Do not use stack-protector to compile EL2 code
   a685601f8533 powerpc/tm: Fix FP and VMX register corruption
   018b91870856 powerpc/64e: Fix hang when debugging programs with relocated kernel
   3915c566ea94 powerpc/iommu: Do not call PageTransHuge() on tail pages
   5ba5685a26b1 powerpc/pseries: Fix of_node_put() underflow during DLPAR remove
   a0da3e00df38 powerpc/book3s/mce: Move add_taint() later in virtual mode
   222f1d668d00 powerpc/eeh: Avoid use after free in eeh_handle_special_event()
   690f09eb52bc powerpc/mm: Ensure IRQs are off in switch_mm()
   2338de43e234 cx231xx-cards: fix NULL-deref at probe
   8ebb884009b6 cx231xx-audio: fix NULL-deref at probe
   1b24b8c07023 cx231xx-audio: fix init error path
   40616929f87e dw2102: limit messages to buffer size
   e42a6715d26b digitv: limit messages to buffer size
   28590f1bb601 dvb-frontends/cxd2841er: define symbol_rate_min/max in T/C fe-ops
   64579fcc57fd zr364xx: enforce minimum size when reading header
   466b45af50fd dib0700: fix NULL-deref at probe
   074912daab55 s5p-mfc: Fix unbalanced call to clock management
   4a9c54250492 gspca: konica: add missing endpoint sanity check
   e2f95f88106f s5p-mfc: Fix race between interrupt routine and device functions
   6bee0b1fe4ed iio: hid-sensor: Store restore poll and hysteresis on S3
   a99462b13dff iio: proximity: as3935: fix as3935_write
   820adccd0e3b ipx: call ipxitf_put() in ioctl error path
   c67e87a22dd8 USB: hub: fix non-SS hub-descriptor handling
   3e4a4e68df08 USB: hub: fix SS hub-descriptor handling
   f9cd79e0ad1f USB: serial: io_ti: fix div-by-zero in set_termios
   c3e024ff9180 USB: serial: mct_u232: fix big-endian baud-rate handling
   d8fc44d67488 USB: serial: qcserial: add more Lenovo EM74xx device IDs
   7e5407600663 usb: serial: option: add Telit ME910 support
   ee0f3a89842e USB: iowarrior: fix info ioctl on big-endian hosts
   dbb127332abf usb: musb: Fix trying to suspend while active for OTG configurations
   08c735a15d5b usb: musb: tusb6010_omap: Do not reset the other direction's packet size
   ff9177b158c3 usb: dwc3: gadget: Prevent losing events in event cache
   653cd31a2ca5 dvb-usb-dibusb-mc-common: Add MODULE_LICENSE
   4f93054d9b45 ttusb2: limit messages to buffer size
   c71b5040632f mceusb: fix NULL-deref at probe
   736f41a47442 usbvision: fix NULL-deref at probe
   a3adb4721ae2 net: irda: irda-usb: fix firmware name on big-endian hosts
   1046d6a51f57 usb: host: xhci-mem: allocate zeroed Scratchpad Buffer
   219628bb0c05 xhci: apply PME_STUCK_QUIRK and MISSING_CAS quirk for Denverton
   1a926919364f usb: host: xhci-plat: propagate return value of platform_get_irq()
   374a3fb5c3b0 xhci: remove GFP_DMA flag from allocation
   fa313fd6673e libnvdimm: fix clear length of nvdimm_forget_poison()
   af9bd5218855 fscrypt: avoid collisions when presenting long encrypted filenames
   8daed21dbce1 f2fs: check entire encrypted bigname when finding a dentry
   b9c0da6219e1 USB: chaoskey: fix Alea quirk on big-endian hosts
   545a3171d37f USB: serial: ftdi_sio: add Olimex ARM-USB-TINY(H) PIDs
   038ccaa5d50e USB: serial: ftdi_sio: fix setting latency for unprivileged users
   2ea2f891fa85 pid_ns: Fix race between setns'ed fork() and zap_pid_ns_processes()
   6dc6a2700b6a pid_ns: Sleep in TASK_INTERRUPTIBLE in zap_pid_ns_processes
   5e40ac3fbd0d IB/hfi1: Fix a subcontext memory leak
   b894ea8263ca IB/hfi1: Return an error on memory allocation failure
   dfb450b2b66e IIO: bmp280-core.c: fix error in humidity calculation
   a03176f92a02 iio: dac: ad7303: fix channel description
   05a36277a195 ibmvscsis: Do not send aborted task response
   9907c838fc07 of: fdt: add missing allocation-failure check
   80cdf2065bf0 of: fix "/cpus" reference leak in of_numa_parse_cpu_nodes()
   ae5074ba9ef8 of: fix sparse warning in of_pci_range_parser_one
   d10b21d6e562 proc: Fix unbalanced hard link numbers
   168b2bfaa235 cxl: Route eeh events to all drivers in cxl_pci_error_detected()
   393531299547 cxl: Force context lock during EEH flow
   fc6b678ab1d4 ohci-pci: add qemu quirk
   809ae061d998 cdc-acm: fix possible invalid access when processing notification
   198ab4031873 gpio: omap: return error if requested debounce time is not possible
   b77adf29b856 drm/nouveau/tmr: handle races with hw when updating the next alarm time
   1ec3c712e231 drm/nouveau/tmr: avoid processing completed alarms when adding a new one
   6445a49a8c59 drm/nouveau/tmr: fix corruption of the pending list when rescheduling an alarm
   16e10490d260 drm/nouveau/tmr: ack interrupt before processing alarms
   e8ee63059196 drm/nouveau/therm: remove ineffective workarounds for alarm bugs
   d1f006efde1f drm/amdgpu: Add missing lb_vblank_lead_lines setup to DCE-6 path.
   b334b3492888 drm/amdgpu: Avoid overflows/divide-by-zero in latency_watermark calculations.
   ebf3cf5b9a67 drm/amdgpu: Make display watermark calculations more accurate
   adc6647c4f0f ath9k_htc: fix NULL-deref at probe
   c39bafb9ee7a ath9k_htc: Add support of AirTies 1eda:2315 AR9271 device
   768ae64b2ab2 s390/cputime: fix incorrect system time
   8c5157c1967e s390/kdump: Add final note
   c849b4fa8e10 regulator: tps65023: Fix inverted core enable logic.
   5b00d6c85a92 regulator: rk808: Fix RK818 LDO2
   ae382caa96f7 x86: fix 32-bit case of __get_user_asm_u64()
   54e385430e12 KVM: X86: Fix read out-of-bounds vulnerability in kvm pio emulation
   c996ad7568c0 KVM: x86: Fix potential preemption when get the current kvmclock timestamp
   b64ecb25b1d5 KVM: x86: Fix load damaged SSEx MXCSR register
   91034255e42f ima: accept previously set IMA_NEW_FILE
   ce7146cf9bdf mwifiex: pcie: fix cmd_buf use-after-free in remove/reset
   385eb9b33e1d mwifiex: MAC randomization should not be persistent
   444df795edf4 rtlwifi: rtl8821ae: setup 8812ae RFE according to device type
   7e7897878783 md: MD_CLOSING needs to be cleared after called md_set_readonly or do_md_stop
   fa9a4a9c6d6f md: update slab_cache before releasing new stripes when stripes resizing
   f2bb8bcbc09d dm space map disk: fix some book keeping in the disk space map
   cc681811a92c dm thin metadata: call precommit before saving the roots
   eeaf13394d32 dm bufio: make the parameter "retain_bytes" unsigned long
   e69242436b6b dm cache metadata: fail operations if fail_io mode has been established
   042d8dbf69c6 dm mpath: split and rename activate_path() to prepare for its expanded use
   e08047c90c8a dm bufio: check new buffer allocation watermark every 30 seconds
   98e7b9d45bf4 dm bufio: avoid a possible ABBA deadlock
   c5066c4c1b7e dm raid: select the Kconfig option CONFIG_MD_RAID0
   4de8eceefbea dm btree: fix for dm_btree_find_lowest_key()
   5db8f42b62da infiniband: call ipv6 route lookup via the stub interface
   cb5cf8aaba2e mlx5: Fix mlx5_ib_map_mr_sg mr length
   ece453e8b0ca ASoC: cs4271: configure reset GPIO as output
   cc15d340ec6a tpm_crb: check for bad response size
   0c150305212b tpm: add sleep only for retry in i2c_nuvoton_write_status()
   40ca1fd38e11 tpm: msleep() delays - replace with usleep_range() in i2c nuvoton driver
   568ea0dcc27e tpm_tis_spi: Add small delay after last transfer
   c4b3779c9783 tpm_tis_spi: Remove limitation of transfers to MAX_SPI_FRAMESIZE bytes
   d513cf24e240 tpm_tis_spi: Check correct byte for wait state indicator
   daa432c1a65a tpm_tis_spi: Abort transfer when too many wait states are signaled
   aad1e5c81cbb tpm_tis_spi: Use single function to transfer data
   cc0f994c205d fanotify: don't expose EOPENSTALE to userspace
   e8b6d43ce3ea ARM: tegra: paz00: Mark panel regulator as enabled on boot
   0251f6affb11 ALSA: hda: Fix cpu lockup when stopping the cmd dmas
   5c1bd0cb4992 tpm_tis_core: Choose appropriate timeout for reading burstcount
   3888f62943bb USB: core: replace %p with %pK
   5d263d94a870 char: lp: fix possible integer overflow in lp_setup()
   7a2b8471ab12 watchdog: pcwd_usb: fix NULL-deref at probe
   6e2078c10092 USB: ene_usb6250: fix DMA to the stack
   7d96e4a404c1 usb: misc: legousbtower: Fix memory leak
   810b7c559954 usb: misc: legousbtower: Fix buffers on stack
   f5eea276d8de Linux 4.9.29
   9ee8502bd2cc pstore: Shut down worker when unregistering
   a4de93008625 pstore: Fix flags to enable dumps on powerpc
   1a1029507258 libnvdimm, pfn: fix 'npfns' vs section alignment
   c171b24fe508 libnvdimm, pmem: fix a NULL pointer BUG in nd_pmem_notify
   5b6e7f353290 libnvdimm, region: fix flush hint detection crash
   46ba11b007c1 ipmi: Fix kernel panic at ipmi_ssif_thread()
   6e7de39ef9a4 Bluetooth: hci_intel: add missing tty-device sanity check
   f2f6d77fabe2 Bluetooth: hci_bcm: add missing tty-device sanity check
   518ca84479d7 Bluetooth: Fix user channel for 32bit userspace on 64bit kernel
   89c91ea37581 tty: pty: Fix ldisc flush after userspace become aware of the data already
   e38a4c3b0b4a serial: omap: suspend device on probe errors
   f8d2751b0012 serial: omap: fix runtime-pm handling on unbind
   c5689e0ab6e1 serial: samsung: Use right device for DMA-mapping calls
   64a599ac5dcc fscrypt: fix context consistency check when key(s) unavailable
   8dd114ef78c8 device-dax: fix cdev leak
   6240377c574b padata: free correct variable
   1c5d8b377e58 CIFS: add misssing SFM mapping for doublequote
   6f3b2eed8c9a cifs: fix CIFS_IOC_GET_MNT_INFO oops
   f13d96bf98c2 CIFS: fix oplock break deadlocks
   411346640ccd cifs: fix CIFS_ENUMERATE_SNAPSHOTS oops
   449a74439d15 cifs: fix leak in FSCTL_ENUM_SNAPS response handling
   87c0604d860f CIFS: fix mapping of SFM_SPACE and SFM_PERIOD
   8dd4e3ff1bfb SMB3: Work around mount failure when using SMB3 dialect to Macs
   2ac2ad9fb045 Set unicode flag on cifs echo request to avoid Mac error
   4f5e1c48e80b Fix match_prepath()
   4e434d4fe28a mm: prevent potential recursive reclaim due to clearing PF_MEMALLOC
   945d0ecdd9bd fs/block_dev: always invalidate cleancache in invalidate_bdev()
   091784ae9738 ceph: fix memory leak in __ceph_setxattr()
   9a6bb7b5637e fs/xattr.c: zero out memory copied to userspace in getxattr
   1777e888bd40 orangefs: do not check possibly stale size on truncate
   63907bb781e7 orangefs: do not set getattr_time on orangefs_lookup
   59f496104112 orangefs: clean up oversize xattr validation
   127adc188c62 orangefs: fix bounds check for listxattr
   b2764f851db6 ext4: evict inline data when writing to memory map
   7929b50dedd1 perf auxtrace: Fix no_size logic in addr_filter__resolve_kernel_syms()
   e3cea38357ea IB/hfi1: Prevent kernel QP post send hard lockups
   43c54927f6f4 IB/mlx4: Reduce SRIOV multicast cleanup warning message to debug level
   9ae6b33dcbb4 IB/mlx4: Fix ib device initialization error flow
   d20bfe223d3e IB/IPoIB: ibX: failed to create mcg debug file
   7a227630ab89 IB/core: For multicast functions, verify that LIDs are multicast LIDs
   ecb0ab0f89c7 IB/core: Fix sysfs registration error flow
   377178321690 iov_iter: don't revert iov buffer if csum error
   9f43f70dcc56 vfio/type1: Remove locked page accounting workqueue
   1773131ec4b9 dm thin: fix a memory leak when passing discard bio down
   f32e35bc3d54 dm rq: check blk_mq_register_dev() return value in dm_mq_init_request_queue()
   f6ec18eb7425 dm era: save spacemap metadata root after the pre-commit
   f8d05099ec72 crypto: ccp - Change ISR handler method for a v5 CCP
   a0a232489c0f crypto: ccp - Change ISR handler method for a v3 CCP
   93424b2b63e0 crypto: ccp - Disable interrupts early on unload
   36dffff240d9 crypto: ccp - Use only the relevant interrupt bits
   bcc70358396a crypto: algif_aead - Require setkey before accept(2)
   9b2fb8ad5ba1 block: fix blk_integrity_register to use template's interval_exp if not 0
   884ba252f3f1 arm64: KVM: Fix decoding of Rt/Rt2 when trapping AArch32 CP accesses
   7b0d4391d0f4 KVM: arm/arm64: fix races in kvm_psci_vcpu_on
   bdf1d5b4c129 KVM: x86: fix user triggerable warning in kvm_apic_accept_events()
   f99985cdee64 perf/x86: Fix Broadwell-EP DRAM RAPL events
   0750e8b865ee um: Fix PTRACE_POKEUSER on x86_64
   e0c871792cc6 x86, pmem: Fix cache flushing for iovec write < 8 bytes
   e65c6aa10860 selftests/x86/ldt_gdt_32: Work around a glibc sigaction() bug
   acb6dc6aa744 x86/boot: Fix BSS corruption/overwrite bug in early x86 kernel startup
   219a99dd2198 usb: hub: Do not attempt to autosuspend disconnected devices
   181b0de7f7cc usb: hub: Fix error loop seen after hub communication errors
   5a001a687f7c usb: Make sure usb/phy/of gets built-in
   5c51e4b65fca usb: gadget: legacy gadgets are optional
   af534bf9540e usb: misc: add missing continue in switch
   a54ab7420ac7 staging: comedi: jr3_pci: cope with jiffies wraparound
   2bdc2e8c29e9 staging: comedi: jr3_pci: fix possible null pointer dereference
   55f9811b98f2 staging: gdm724x: gdm_mux: fix use-after-free on module unload
   83f66c9a6026 staging: vt6656: use off stack for out buffer USB transfers.
   3eff228fdd43 staging: vt6656: use off stack for in buffer USB transfers.
   6312a84dc8b5 USB: Revert "cdc-wdm: fix "out-of-sync" due to missing notifications"
   5ffe717f351d USB: Proper handling of Race Condition when two USB class drivers try to call init_usb_class simultaneously
   c31ff3ceb326 USB: serial: ftdi_sio: add device ID for Microsemi/Arrow SF2PLUS Dev Kit
   91cd8f900c75 usb: host: xhci: print correct command ring address
   853469d53e86 usb: xhci: bInterval quirk for TI TUSB73x0
   bb1f06f53bcb iscsi-target: Set session_fall_back_to_erl0 when forcing reinstatement
   f788fa43d87a target/fileio: Fix zero-length READ and WRITE handling
   a4e52cc7d81b target: Fix compare_and_write_callback handling for non GOOD status
   f2b8de98f737 xen: adjust early dom0 p2m handling to xen hypervisor behavior
   58cd97ff374b Linux 4.9.28
   6a7620744e89 block: get rid of blk_integrity_revalidate()
   48d9fa1ece5e drm/ttm: fix use-after-free races in vm fault handling
   347d07bf3add wlcore: Add RX_BA_WIN_SIZE_CHANGE_EVENT event
   bbd839a40dde wlcore: Pass win_size taken from ieee80211_sta to FW
   5d7ab8339a9a xen: Revert commits da72ff5bfcb0 and 72a9b186292d
   93862955cbf4 f2fs: sanity check segment count
   265d382cc8db net: mdio-mux: bcm-iproc: call mdiobus_free() in error path
   ced0a31e667f bpf: don't let ldimm64 leak map addresses on unprivileged
   e37aab9c63b8 bnxt_en: allocate enough space for ->ntp_fltr_bmap
   8795ee7bed24 ipv6: reorder ip6_route_dev_notifier after ipv6_dev_notf
   ecbd3ed2ddfe ipv6: initialize route null entry in addrconf_init()
   5d8e07740c69 rtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string
   f19065308601 ipv4, ipv6: ensure raw socket message is big enough to hold an IP header
   747a00193f26 tcp: do not inherit fastopen_req from parent
   78f032b071c1 net: usb: qmi_wwan: add Telit ME910 support
   0f4ac291a768 net: ipv6: Do not duplicate DAD on link up
   91260baa9d67 tcp: fix wraparound issue in tcp_lp
   493d0a7be31c bpf, arm64: fix jit branch offset related to ldimm64
   7bca0a9702ed bpf: enhance verifier to understand stack pointer arithmetic
   f3235cbd5be1 tcp: do not underestimate skb->truesize in tcp_trim_head()
   3b0129d4111e macsec: dynamically allocate space for sglist
   22d6b013ffcf sparc64: fix fault handling in NGbzero.S and GENbzero.S
   7aa0e14336d9 ALSA: hda - Fix deadlock of controller device lock at unbinding
   170e0abd886b staging: emxx_udc: remove incorrect __init annotations
   d8e94d091376 staging: wlan-ng: add missing byte order conversion
   47b7257fc20f staging/lustre/llite: move root_squash from sysfs to debugfs
   0b77c687d4e0 brcmfmac: Make skb header writable before use
   f73dfc29afa6 brcmfmac: Ensure pointer correctly set if skb data location changes
   b0e2e3acfe8e MIPS: R2-on-R6 MULTU/MADDU/MSUBU emulation bugfix
   2d652d0abd3c scsi: smartpqi: fix time handling
   a46d03e35179 scsi: mac_scsi: Fix MAC_SCSI=m option when SCSI=m
   76aa65a2c0fd scsi: qla2xxx: Fix crash in qla2xxx_eh_abort on bad ptr
   71fd9a94bd3f serial: 8250_omap: Fix probe and remove for PM runtime
   115fb7ec22b5 phy: qcom-usb-hs: Add depends on EXTCON
   52dd14d76812 clk: rockchip: add "," to mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036
   6fa44d4ba212 USB: serial: io_edgeport: fix descriptor error handling
   62b8b773ebde USB: serial: mct_u232: fix modem-status error handling
   e17c48c3280e USB: serial: quatech2: fix control-message error handling
   594c9b4b0acb USB: serial: ftdi_sio: fix latency-timer error handling
   ca4e6525df05 USB: serial: ark3116: fix open error handling
   94bbbfe21b5a USB: serial: ti_usb_3410_5052: fix control-message error handling
   b07e930d1f49 USB: serial: io_edgeport: fix epic-descriptor handling
   4d32e36d6262 USB: serial: ssu100: fix control-message error handling
   9ca301067502 USB: serial: digi_acceleport: fix incomplete rx sanity check
   84443215cf54 USB: serial: keyspan_pda: fix receive sanity checks
   b6c17077e056 usb: chipidea: Handle extcon events properly
   8eb8c9b16fdd usb: chipidea: Only read/write OTGSC from one place
   4a36b6a7ee88 usb: host: ohci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths
   8f50cb88d862 usb: host: ehci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths
   30643b5ac754 usb: dwc2: host: use msleep() for long delay
   d0ee36354f77 KVM: nVMX: do not leak PML full vmexit to L1
   560a979735f4 KVM: nVMX: initialize PML fields in vmcs02
   39058adebbb1 Revert "KVM: nested VMX: disable perf cpuid reporting"
   b6cd52a0eeaf x86/platform/intel-mid: Correct MSI IRQ line for watchdog device
   1eae95d4bc03 kprobes/x86: Fix kernel panic when certain exception-handling addresses are probed
   c9f617223904 clk: Make x86/ conditional on CONFIG_COMMON_CLK
   1f0c69cfb2ad x86/mpx: Re-add MPX to selftests Makefile
   56e524a8c305 x86/pci-calgary: Fix iommu_free() comparison of unsigned expression >= 0
   5ed26fad2d08 x86/ioapic: Restore IO-APIC irq_chip retrigger callback
   3b141e2965a7 iwlwifi: mvm: writing zero bytes to debugfs causes a crash
   1fb264cf7d54 iwlwifi: mvm: synchronize firmware DMA paging memory
   495f91630205 iwlwifi: mvm: fix references to first_agg_queue in DQA mode
   4d6f2ac95bc5 iwlwifi: mvm: fix pending frame counter calculation
   48aa5ec292f3 iwlwifi: mvm/pcie: adjust A-MSDU tx_cmd length in PCIe
   04dd401a5145 iwlwifi: mvm: Use aux queue for offchannel frames in dqa
   a6fe39262c51 iwlwifi: mvm: fix reorder timer re-arming
   20a9de99a0da iwlwifi: pcie: fix the set of DMA memory mask
   562c868d94a8 iwlwifi: pcie: trans: Remove unused 'shift_param'
   9c8655c0a860 iwlwifi: pcie: don't increment / decrement a bool
   948634492b40 iwlwifi: mvm: overwrite skb info later
   45dad03aca55 iwlwifi: mvm: don't restart HW if suspend fails with unified image
   d0a8075ffe05 iwlwifi: fix MODULE_FIRMWARE for 6030
   9291cabe094b mwifiex: Avoid skipping WEP key deletion for AP
   dcdeaa743342 mwifiex: remove redundant dma padding in AMSDU
   525fda9221a8 mwifiex: debugfs: Fix (sometimes) off-by-1 SSID print
   1d61da618969 ARM: dts: sun7i: lamobo-r1: Fix CPU port RGMII settings
   ebae7681697d ARM: OMAP5 / DRA7: Fix HYP mode boot for thumb2 build
   f4bff2c44dc9 ARM: dts: NSP: GPIO reboot open-source
   329607b4864d leds: ktd2692: avoid harmless maybe-uninitialized warning
   f46fdb8a2611 arm64: Improve detection of user/non-user mappings in set_pte(_at)
   aadb7e073e81 arm: dts: qcom: Fix ipq board clock rates
   e33fb57428a1 arm64: dts: r8a7795: Mark EthernetAVB device node disabled
   e7b34f4a74f6 power: supply: bq24190_charger: Handle fault before status on interrupt
   7f2b4ad9c07a power: supply: bq24190_charger: Don't read fault register outside irq_handle_thread()
   4b7dac0a23b7 power: supply: bq24190_charger: Call power_supply_changed() for relevant component
   63e1acc84d28 power: supply: bq24190_charger: Install irq_handler_thread() at end of probe()
   20e448f2251c power: supply: bq24190_charger: Call set_mode_host() on pm_resume()
   d8d6aedd54ce power: supply: bq24190_charger: Fix irq trigger to IRQF_TRIGGER_FALLING
   89e8bd3add69 perf/x86/intel/pt: Add format strings for PTWRITE and power event tracing
   1641bb14e8be powerpc: Correctly disable latent entropy GCC plugin on prom_init.o
   b47a6b40655b powerpc/ftrace: Fix confusing help text for DISABLE_MPROFILE_KERNEL
   50e027728915 powerpc/powernv: Fix opal_exit tracepoint opcode
   754a2bcfd8b1 powerpc/mm: Fixup wrong LPCR_VRMASD value
   a19718bd0b19 cpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores
   4f39fcce99d7 power: supply: lp8788: prevent out of bounds array access
   ccef31d22e80 crypto: caam - fix error path for ctx_dma mapping failure
   819e3601d3c5 tmp: use pdev for parent device in tpm_chip_alloc
   326f9b0a39d3 tpm: fix RC value check in tpm2_seal_trusted
   a941f261c8f1 hwmon: (it87) Fix pwm4 detection for IT8620 and IT8628
   898c6bbfc88d drm/sti: fix GDP size to support up to UHD resolution
   f5ca890f138d 9p: fix a potential acl leak

(From OE-Core rev: d26a362b6bcee7e5e745b76bd6fb5ef94697bf22)

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>
2017-06-12 15:08:31 +01:00
Bruce Ashfield
b766f78339 linux-yocto/4.10: update to v4.10.17
Updating to the latest 4.10 -stable releases, which comprise the
following changes:

   17a4d4803381 Linux 4.10.17
   291e716bb382 pstore: Shut down worker when unregistering
   e5590e3d9275 pstore: Fix flags to enable dumps on powerpc
   e3d4daa7f6d4 libnvdimm, pfn: fix 'npfns' vs section alignment
   116ada1a98ab libnvdimm: fix nvdimm_bus_lock() vs device_lock() ordering
   f92a2fe7cdb1 libnvdimm, pmem: fix a NULL pointer BUG in nd_pmem_notify
   72393c00f00a libnvdimm, region: fix flush hint detection crash
   b821a605977e ipmi: Fix kernel panic at ipmi_ssif_thread()
   c8e4805dd634 Bluetooth: hci_intel: add missing tty-device sanity check
   a8620f066675 Bluetooth: hci_bcm: add missing tty-device sanity check
   9a3054df3cf6 Bluetooth: Fix user channel for 32bit userspace on 64bit kernel
   58d479441029 tty: pty: Fix ldisc flush after userspace become aware of the data already
   9e3b9909bce3 serial: omap: suspend device on probe errors
   c1ce1f427e0a serial: omap: fix runtime-pm handling on unbind
   2578dd75ad12 serial: samsung: Use right device for DMA-mapping calls
   a78ddcd2a858 fscrypt: fix context consistency check when key(s) unavailable
   659ccd97668a f2fs: fix fs corruption due to zero inode page
   717946b469cf mm: fix data corruption due to stale mmap reads
   35223d76e2cf dax: prevent invalidation of mapped DAX entries
   fa7043b3a2e0 device-dax: fix sysfs attribute deadlock
   e1a19ef52919 device-dax: fix cdev leak
   81845f520179 md/raid1: avoid reusing a resync bio after error handling.
   23ebf6aa650d padata: free correct variable
   586aa5a6537f ovl: do not set overlay.opaque on non-dir create
   cf95696518f5 CIFS: add misssing SFM mapping for doublequote
   582fb96084c3 cifs: fix CIFS_IOC_GET_MNT_INFO oops
   4452b80eaef8 CIFS: fix oplock break deadlocks
   cd01b999953b cifs: fix CIFS_ENUMERATE_SNAPSHOTS oops
   6ec05086dca9 cifs: fix leak in FSCTL_ENUM_SNAPS response handling
   b1b295efad9f CIFS: fix mapping of SFM_SPACE and SFM_PERIOD
   ae6c2182b853 SMB3: Work around mount failure when using SMB3 dialect to Macs
   6716949b0029 Set unicode flag on cifs echo request to avoid Mac error
   b7174f403828 Fix match_prepath()
   93697e1e5099 mm: prevent potential recursive reclaim due to clearing PF_MEMALLOC
   3302d94ab6f9 fs/block_dev: always invalidate cleancache in invalidate_bdev()
   f174092ec373 ceph: fix memory leak in __ceph_setxattr()
   594d4eca1c49 fs/xattr.c: zero out memory copied to userspace in getxattr
   49302d531325 orangefs: do not check possibly stale size on truncate
   42d86d92af64 orangefs: do not set getattr_time on orangefs_lookup
   d2c326c7ff6d orangefs: clean up oversize xattr validation
   4af222e1d681 orangefs: fix bounds check for listxattr
   e3e77f8ba5f6 ext4: evict inline data when writing to memory map
   fd469456ad6d jbd2: fix dbench4 performance regression for 'nobarrier' mounts
   e2e596f2888c perf annotate s390: Implement jump types for perf annotate
   d122da54d33e perf annotate s390: Fix perf annotate error -95 (4.10 regression)
   ba6006004353 perf auxtrace: Fix no_size logic in addr_filter__resolve_kernel_syms()
   d187c9e135d3 IB/hfi1: Prevent kernel QP post send hard lockups
   04692adb3aac IB/mlx4: Reduce SRIOV multicast cleanup warning message to debug level
   e4e17bce1672 IB/mlx4: Fix ib device initialization error flow
   5d691b80ca4d IB/IPoIB: ibX: failed to create mcg debug file
   53bd2ccebd51 IB/core: For multicast functions, verify that LIDs are multicast LIDs
   b40c7a502b1e IB/core: Fix sysfs registration error flow
   f269df7bad86 iov_iter: don't revert iov buffer if csum error
   fc483680829a vfio/type1: Remove locked page accounting workqueue
   c85990cf511d dm thin: fix a memory leak when passing discard bio down
   bd0db3b70b59 dm rq: check blk_mq_register_dev() return value in dm_mq_init_request_queue()
   5d953aa1cd2e dm era: save spacemap metadata root after the pre-commit
   4c1dad842bfc dm crypt: rewrite (wipe) key in crypto layer using random data
   bce0767157c3 crypto: ccp - Change ISR handler method for a v5 CCP
   f106cd8575c4 crypto: ccp - Change ISR handler method for a v3 CCP
   595c7ad3c64b crypto: ccp - Disable interrupts early on unload
   e1adc5e04af5 crypto: ccp - Use only the relevant interrupt bits
   7ae1df9048db crypto: algif_aead - Require setkey before accept(2)
   fe51605c9512 crypto: s5p-sss - Close possible race for completed requests
   635aff41e59a block: fix blk_integrity_register to use template's interval_exp if not 0
   5c5d86be4f3f arm64: KVM: Fix decoding of Rt/Rt2 when trapping AArch32 CP accesses
   8348ffba88e5 KVM: arm/arm64: fix races in kvm_psci_vcpu_on
   74cbcb5afa75 KVM: x86: fix user triggerable warning in kvm_apic_accept_events()
   f22d13c45f2d perf/x86: Fix Broadwell-EP DRAM RAPL events
   29d07bb20ee5 um: Fix PTRACE_POKEUSER on x86_64
   efbd8cc8f6f8 x86, pmem: Fix cache flushing for iovec write < 8 bytes
   f0896a0d1e6d selftests/x86/ldt_gdt_32: Work around a glibc sigaction() bug
   c4b0426385ea x86/boot: Fix BSS corruption/overwrite bug in early x86 kernel startup
   b1a8c141c88c usb: hub: Do not attempt to autosuspend disconnected devices
   5830c376e3af usb: hub: Fix error loop seen after hub communication errors
   19c9dacddf7d usb: Make sure usb/phy/of gets built-in
   934c4e338e7e usb: gadget: legacy gadgets are optional
   7f7a4b58e257 usb: misc: add missing continue in switch
   34006e9621c7 staging: comedi: jr3_pci: cope with jiffies wraparound
   acb79180c55e staging: comedi: jr3_pci: fix possible null pointer dereference
   7a6b4c372118 staging: wilc1000: Fix problem with wrong vif index
   4097eda73b4c staging: gdm724x: gdm_mux: fix use-after-free on module unload
   808dc8810896 staging: vt6656: use off stack for out buffer USB transfers.
   4f19197ce58d staging: vt6656: use off stack for in buffer USB transfers.
   5b92090a53eb USB: Revert "cdc-wdm: fix "out-of-sync" due to missing notifications"
   32dd9987fbd9 USB: Proper handling of Race Condition when two USB class drivers try to call init_usb_class simultaneously
   e349a5723322 USB: serial: ftdi_sio: add device ID for Microsemi/Arrow SF2PLUS Dev Kit
   dffe5d4b0511 usb: host: xhci: print correct command ring address
   a561f35aeaa9 usb: xhci: bInterval quirk for TI TUSB73x0
   b3e01cd15d17 iscsi-target: Set session_fall_back_to_erl0 when forcing reinstatement
   d39ebfe9a1b7 target/fileio: Fix zero-length READ and WRITE handling
   f78392c0160c target: Fix compare_and_write_callback handling for non GOOD status
   8fe6ee0b6e69 xen: adjust early dom0 p2m handling to xen hypervisor behavior
   6e8e99586919 Linux 4.10.16
   2262a51b515a block: get rid of blk_integrity_revalidate()
   f89d35abea21 drm/ttm: fix use-after-free races in vm fault handling
   2f6aeeae43bb drm: mxsfb: drm_dev_alloc() returns error pointers
   9302f2b14af1 drm/hisilicon/hibmc: Fix wrong pointer passed to PTR_ERR()
   4a66b610a821 xen: Revert commits da72ff5bfcb0 and 72a9b186292d
   6442a7f5d793 f2fs: sanity check segment count
   853151191ef2 openvswitch: Set internal device max mtu to ETH_MAX_MTU.
   8656ebcc28bc net: mdio-mux: bcm-iproc: call mdiobus_free() in error path
   c35107a3bec2 bpf: don't let ldimm64 leak map addresses on unprivileged
   ddbb020a01ec bnxt_en: allocate enough space for ->ntp_fltr_bmap
   912bec79fb2a ipv6: reorder ip6_route_dev_notifier after ipv6_dev_notf
   062e49d89f68 ipv6: initialize route null entry in addrconf_init()
   d3081680506f rtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string
   df6f3bcd6667 ipv4, ipv6: ensure raw socket message is big enough to hold an IP header
   929575fd0dfd tcp: do not inherit fastopen_req from parent
   3006794169a1 net: usb: qmi_wwan: add Telit ME910 support
   0735252265e5 net: ipv6: Do not duplicate DAD on link up
   ae2f8e28b40e tcp: fix wraparound issue in tcp_lp
   38904075d9bc bpf, arm64: fix jit branch offset related to ldimm64
   b3468d7ea8c9 bpf: enhance verifier to understand stack pointer arithmetic
   ec2f9263d6a5 geneve: fix incorrect setting of UDP checksum flag
   9cd3670409a9 net: macb: fix phy interrupt parsing
   99975dd43461 net: adjust skb->truesize in ___pskb_trim()
   748838198f1e tcp: do not underestimate skb->truesize in tcp_trim_head()
   8743096ed3f0 macsec: dynamically allocate space for sglist
   e288821b3842 sparc64: fix fault handling in NGbzero.S and GENbzero.S
   01995a54c747 ALSA: hda - Fix deadlock of controller device lock at unbinding
   9576fcd1d931 staging: lustre: ptlrpc: avoid warning on missing return
   e7d743d68744 staging: emxx_udc: remove incorrect __init annotations
   e368150f2942 staging: wlan-ng: add missing byte order conversion
   debb50cbeda5 staging/lustre/llite: move root_squash from sysfs to debugfs
   9663ece4a734 brcmfmac: Make skb header writable before use
   d67be3c4b852 brcmfmac: Ensure pointer correctly set if skb data location changes
   cbd7c3465eec MIPS: R2-on-R6 MULTU/MADDU/MSUBU emulation bugfix
   2523b0855c42 scsi: smartpqi: fix time handling
   a538d5f72454 scsi: mac_scsi: Fix MAC_SCSI=m option when SCSI=m
   7f3f10d2150f scsi: qla2xxx: Fix crash in qla2xxx_eh_abort on bad ptr
   463232f51f91 scsi: qedi: fix build error without DEBUG_FS
   5102b4022080 scsi: qedi: Fix possible memory leak in qedi_iscsi_update_conn()
   eb1ef03d9033 serial: 8250_omap: Fix probe and remove for PM runtime
   8b62d12c1a53 phy: qcom-usb-hs: Add depends on EXTCON
   c6a6118496c8 clk: rockchip: add "," to mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036
   bc6e823fdcf2 USB: serial: io_edgeport: fix descriptor error handling
   1077176a2456 USB: serial: ch341: fix modem-status handling
   e40bbb397074 USB: serial: mct_u232: fix modem-status error handling
   f665109e63c1 USB: serial: quatech2: fix control-message error handling
   aa0b4b2ff04e USB: serial: ftdi_sio: fix latency-timer error handling
   44d7d23192fe USB: serial: ark3116: fix open error handling
   39581ca08fb9 USB: serial: ti_usb_3410_5052: fix control-message error handling
   c5cd729ca100 USB: serial: io_edgeport: fix epic-descriptor handling
   d75ac2f21f53 USB: serial: ssu100: fix control-message error handling
   7db2c56df28a USB: serial: digi_acceleport: fix incomplete rx sanity check
   cfbe048303d2 USB: serial: keyspan_pda: fix receive sanity checks
   7916a663940b usb: chipidea: Handle extcon events properly
   7a93680fe259 usb: chipidea: Only read/write OTGSC from one place
   cc771fa1d711 usb: host: ohci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths
   d286acdd40ed usb: host: ehci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths
   5605e5c50f34 usb: dwc2: host: use msleep() for long delay
   69a09d73e8bd KVM: nVMX: do not leak PML full vmexit to L1
   22e025bc1af9 KVM: nVMX: initialize PML fields in vmcs02
   4897ec5ece6c Revert "KVM: nested VMX: disable perf cpuid reporting"
   78a43e2c2c98 KVM: PPC: Book3S HV: Don't try to signal cpu -1
   f82a54b53ca2 x86/platform/intel-mid: Correct MSI IRQ line for watchdog device
   743cfeb7bcdd kprobes/x86: Fix kernel panic when certain exception-handling addresses are probed
   d696d9cfea73 platform/x86: intel_pmc_core: fix out-of-bounds accesses on stack
   5e10d8dc0003 clk: Make x86/ conditional on CONFIG_COMMON_CLK
   4a8fa15cec03 x86/mpx: Re-add MPX to selftests Makefile
   d4462702edd1 x86/pci-calgary: Fix iommu_free() comparison of unsigned expression >= 0
   679dd20cc34e x86/ioapic: Restore IO-APIC irq_chip retrigger callback
   6e4623e517db iwlwifi: mvm: fix accessing fw_id_to_mac_id
   bcb28cb39930 iwlwifi: mvm: writing zero bytes to debugfs causes a crash
   bd78746f3225 iwlwifi: mvm: synchronize firmware DMA paging memory
   39e4ab1d46fa iwlwifi: mvm: fix references to first_agg_queue in DQA mode
   82e158e12443 iwlwifi: mvm: fix pending frame counter calculation
   fa251bac1869 iwlwifi: mvm/pcie: adjust A-MSDU tx_cmd length in PCIe
   441f52f19435 iwlwifi: mvm: Use aux queue for offchannel frames in dqa
   ab735bec18d4 iwlwifi: mvm: fix reorder timer re-arming
   7478a09f262c iwlwifi: pcie: fix the set of DMA memory mask
   0633d3269a69 iwlwifi: pcie: trans: Remove unused 'shift_param'
   e864e9686442 iwlwifi: pcie: don't increment / decrement a bool
   7e375d6d6056 iwlwifi: mvm: overwrite skb info later
   827181091199 iwlwifi: mvm: don't restart HW if suspend fails with unified image
   3aff5ebef0b4 iwlwifi: fix MODULE_FIRMWARE for 6030
   e9a20a152598 iwlwifi: mvm: properly check for transport data in dump
   47b8d37b4c62 mwifiex: set adapter->dev before starting to use mwifiex_dbg()
   219083c89725 mwifiex: don't enable/disable IRQ 0 during suspend/resume
   33d8a1d4086e mwifiex: Avoid skipping WEP key deletion for AP
   6a9d22e988c3 mwifiex: remove redundant dma padding in AMSDU
   4b8badac6525 mwifiex: debugfs: Fix (sometimes) off-by-1 SSID print
   ed65aff890b9 ARM: dts: sun7i: lamobo-r1: Fix CPU port RGMII settings
   c78c87249cd6 ARM: dts: am57xx-idk: tpic2810 is on I2C bus, not SPI
   8848163aa114 ARM: OMAP3: Fix smartreflex platform data regression
   097336fc693d ARM: OMAP5 / DRA7: Fix HYP mode boot for thumb2 build
   98fa203aa7cd ARM: dts: imx6sx-udoo-neo: Fix reboot hang
   32b0a3d44419 ARM: dts: NSP: GPIO reboot open-source
   96b61a1bad47 ARM: pxa: ezx: fix a910 camera data
   baebaada5f01 leds: ktd2692: avoid harmless maybe-uninitialized warning
   359ccd6e3667 spi: armada-3700: Remove spi_master_put in a3700_spi_remove()
   0136fa36c8af arm64: Improve detection of user/non-user mappings in set_pte(_at)
   a0435d6cdccc arm64: remove wrong CONFIG_PROC_SYSCTL ifdef
   e60a59f80b96 arm: dts: qcom: Fix ipq board clock rates
   3e1418c687ac arm64: dts: r8a7795: Mark EthernetAVB device node disabled
   12f072e19606 power: supply: bq24190_charger: Handle fault before status on interrupt
   c963edc736f7 power: supply: bq24190_charger: Don't read fault register outside irq_handle_thread()
   9e9cd6500d2c power: supply: bq24190_charger: Call power_supply_changed() for relevant component
   34ba5925c01e power: supply: bq24190_charger: Install irq_handler_thread() at end of probe()
   8c94da036756 power: supply: bq24190_charger: Call set_mode_host() on pm_resume()
   d6ea2f1dd259 power: supply: bq24190_charger: Fix irq trigger to IRQF_TRIGGER_FALLING
   b7634bdbb695 perf/x86/intel/pt: Add format strings for PTWRITE and power event tracing
   ce6f9a237a6c powerpc: Correctly disable latent entropy GCC plugin on prom_init.o
   803969dd92f1 powerpc/ftrace: Fix confusing help text for DISABLE_MPROFILE_KERNEL
   d0addb34980a powerpc/mm: Fix build break when CMA=n && SPAPR_TCE_IOMMU=y
   690bba9d641a powerpc/powernv: Fix opal_exit tracepoint opcode
   3ead745aef02 powerpc/mm: Fixup wrong LPCR_VRMASD value
   72cd64df59f3 powerpc/perf: Avoid FAB_*_MATCH checks for power9
   8c34e65205b7 powerpc/perf: Handle sdar_mode for marked event in power9
   d2264474c9c2 powerpc/perf: Fix perf_get_data_addr() for power9 DD1
   0587b73378b2 cpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores
   bfa87eca09ce power: supply: lp8788: prevent out of bounds array access
   8a4963a05118 crypto: caam - don't dma_map key for hash algorithms
   3e871381811a crypto: caam - fix error path for ctx_dma mapping failure
   93bb6661baf0 tmp: use pdev for parent device in tpm_chip_alloc
   c61315284309 tpm: fix RC value check in tpm2_seal_trusted
   c5f7ba5f5911 mtd: nand: Add OX820 NAND hardware dependency
   2586f8f02455 hwmon: (it87) Fix pwm4 detection for IT8620 and IT8628
   5e7b84228b51 drm/sti: fix GDP size to support up to UHD resolution
   206472df12f1 9p: fix a potential acl leak

(From OE-Core rev: de5b0d918f49733f902797d41da05681d17d8db0)

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>
2017-06-12 15:08:31 +01:00
Bruce Ashfield
39b646de2d linux-yocto-rt: 4.9-rt18
Integrating the 4.9-rt18 port that Paul Gortmaker has prepared:

 f458d12de7f1 v4.9.27-rt18
 82fcbd9f7e1f futex/rtmutex: Cure RT double blocking issue
 b4352b9fb961 futex: backported patches
 0874a0a35318 random: avoid preempt_disable()ed section
 07481e7a0e04 v4.9.27-rt17
 76c86c0787fe v4.9.20-rt16
 d394d677d188 rwsem/rt: Lift single reader restriction
 ad7b0ccf9f1f rtmutex: Provide locked slowpath
 f363d238326d rtmutex: Provide rt_mutex_lock_state()
 b3b4c3aa793e rtmutex: Make lock_killable work
 e3fa9e78c860 v4.9.20-rt15
 1e458a1a876d v4.9.18-rt14
 f57fd2fcd3e2 Add the rtmutex rework
 3829b7532ca9 lockdep: Fix per-cpu static objects
 bc1065b64955 v4.9.18-rt13
 095698fd99b4 Merge branch 'standard/base' into standard/preempt-rt/base

(From OE-Core rev: 9d400224f7bba64470a0e68c53e2469b70ca1e05)

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>
2017-06-12 15:08:31 +01:00
Bruce Ashfield
2cfe5a51a1 kern-tools: avoid syntax errors when inheriting meta data
It is possible to inherit meta data for either patches + config
or for just config.

It is possible that the patch queue contains invalid (when
sourced) shell characters in the patch names, which throws a
syntax error and aborts processing.

The patch + config case was fixed some time ago, but we recently
stumbled onto the config-only case which was still not properly
quoted and hence safe.

This commit brings the config-only inherit in line with the
patch + config processing and we won't abort processing if
characters like () are in patch names.

(From OE-Core rev: ce7044be10597d53725e6917a2949f3ab3de0c96)

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>
2017-06-12 15:08:31 +01:00
Bruce Ashfield
9b8fc32c55 linux-yocto/meta: configuration changes (wifi, kexec and nft)
Making the following kernel configuration fragment changes available:

  c9f07d79f01d nftables: add more configuration options.
  8d3cf0ad6c0c common-pc-wifi.cfg: add CONFIG_MT7601U module
  55c9bf749c6d ktypes/developer: Enable CONFIG_KEXEC in config

(From OE-Core rev: a0d24f69425716ffd2439b1fb9170c343eaca453)

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>
2017-06-12 15:08:31 +01:00
Tanu Kaskinen
637744d48d alsa-lib: 1.1.3 -> 1.1.4.1
Changelogs:
http://alsa-project.org/main/index.php/Changes_v1.1.3_v1.1.4
http://alsa-project.org/main/index.php/Changes_v1.1.4_v1.1.4.1

Dropped backported patch 0001-ucm-parser-needs-limits.h.patch.

(From OE-Core rev: e2ede4f9080e8a01504067347eb69051dc04b6ed)

Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Tanu Kaskinen
c8897fecbd alsa-utils: 1.1.3 -> 1.1.4
Changelog: http://alsa-project.org/main/index.php/Changes_v1.1.3_v1.1.4

(From OE-Core rev: ae7e5f6ddfcc5637064b52d59ff517c2f94b9e86)

Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:31 +01:00
Tanu Kaskinen
cb4b40af5c alsa-plugins: 1.1.1 -> 1.1.4
Changelog: http://alsa-project.org/main/index.php/Changes_v1.1.3_v1.1.4

(From OE-Core rev: df76886a40d665439f21cf743dcc36e01b86f685)

Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Denys Zagorui
578d88d3ed gzip: add ptest
(From OE-Core rev: 9f389cfc6023be50816491bbdd3e4266195573d3)

Signed-off-by: Denys Zagorui <denys.zagorui@globallogic.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Aníbal Limón
dfefd671f3 devtool/standard: Fix lock in _prep_extract_operation
If for any reason the parse_recipe fail in extract command
the process gets locked because Cooker is expecting the
finish event by tinfoil.

For example:

$ devtool extract remake /tmp/remake

ERROR: remake is unavailable:
  remake was skipped: PREFERRED_PROVIDER_virtual/make set to make, not remake

(From OE-Core rev: 2c0062b59178fa668b26487b6d2f1e81a0d868e0)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Aníbal Limón
0b168b269b oeqa/core/loader: Allow unittest.TestCase's to be executed
Currently there was a restriction to only execute tests that's
inherits from OETestCase but in some circunstancies the features
from the OEQA framework isn't needed so we need to support
basic unittests.

[YOCTO #10828]

(From OE-Core rev: baac26f1b36e89e07637b738dd31ec7356f05a02)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Aníbal Limón
c3587b7d10 oeqa/cases/oelib: Change default case class to unittest.case.TestCase
Some tests doesn't need call bitbake so it is better to use the
basic unittest case class.

[YOCTO #10828]

(From OE-Core rev: 4d01610f36eaee8da3126bb5045856279371fd17)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Aníbal Limón
652df69b02 oeqa/core/loader: Fix filtering on test modules with submodules
Our filtering allows to specify which tests to run using,

<module_name>.[test_class].[test_name]

But the module name logic was restricted to only accept one level,
for example: runtime_test vs oelib.types, to support multiple
submodules use only the first part for filtering.

This allows to run the whole tests in a module with more than tree
levels.

Due to the ambiguity on the test filtering options with test cases
with more than tree levels the supported sytnax is,

<module>

or

<module>.[submoduleN].[test_class].[test_name]

[YOCTO #11632]

(From OE-Core rev: cf2ee12b007e5570959ccfbb643159b21d90426e)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Ross Burton
cbe13b3b10 opkg-utils: if Python support is disabled, delete the Python scripts
To make it obvious what is lost when python is disabled, actually delete the
scripts so the user can't attempt to use them.

(From OE-Core rev: 25c8d738b904c8755df203122067afa0047b27ad)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Jonathan Liu
d2390c0646 image-vm: Avoid use of fold, tac and paste commands for DISK_SIGNATURE
These commands are not whitelisted by the HOSTTOOLS variable which
silently prevents the MBR disk signature from being written to the
image.

Reported-by: Michael Davis <michael.davis@essvote.com>
(From OE-Core rev: a58e53f55259acd79a98a0f8b8a435d2a5aef36e)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Peter Marko
253660a139 cve-check: add do_rootfs dependency on cve-check
Since do_rootfs depends on cve-check results of all recipes,
we need to recursively depend on recipe do_cve_check.

(From OE-Core rev: a1af526e43cb476472a6203882c12deef297f542)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Peter Marko
7e9a61cab8 cve-check: do not parse error output
Sometimes there are control messages in cve-check-tool printed to
stderr. These lead to parsing error and thus failed build.
This can happen for instance when cve database needs to be
refreshed during build.

(From OE-Core rev: 6d8a17f4c50be292990e37de65630a6b84466ee6)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Peter Marko
1a146e5885 cve-check: clean cve-check recipe result before re-building
If there is cve report for a recipe in previous build and there
is no result for current one, old cves are kept in CVE_CHECK_DIR.
This happens on version upgrade or when cve/recipe is whitelisted.

(From OE-Core rev: 85b4941c71a0e3c08a8c48d52a94dfe2897d2c92)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Peter Marko
5a9cc41a3b cve-check-tool: fix crash on exceptions
This fixes cve-check-tool crashes on exceptions.

(From OE-Core rev: 06bea09755ebda9bcfa49bf87249f80cb019157e)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Khem Raj
d31bc5c515 fts: Switch SRC_URI to github
Use the package maintained by voidlinux
Drop local patches

(From OE-Core rev: d7a38c46753d5c9692d67a923351d9d6b2e80c3b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Jan Kiszka
b467a22729 tcf-agent: Fix daemon termination
The upstream init script uses SIGUSR2 to terminate that daemon because
SIGTERM is ignored. As the killproc function does not support specifying
a signal, switch to start-stop-daemon. Drop the retry loop because
SIGUSR2 is lethal for agent.

(From OE-Core rev: 7a47752f8223f3c0ed4354d5e39f1319071acf41)

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Martin Kelly
b33356d168 tcf-agent: kill with USR2 in systemd stop
tcf-agent ignores SIGTERM, so upstream uses USR2 instead. This issue was noticed
by Jan Kiszka and Brian Avery around the same time:

https://patchwork.openembedded.org/patch/139546/
https://patchwork.openembedded.org/patch/139560/

However, these patches fixed only the init scripts, not the systemd service
file. This patch fixes the systemd file.

(From OE-Core rev: 4f8ed1b3bf676a58055ebe01184b3594459a4118)

Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Khem Raj
ddec946c88 gdb: Upgrade to 8.0 release
For details on changes see
http://lists.gnu.org/archive/html/info-gnu/2017-06/msg00002.html

in tcmode-default.inc Pin gdb to 8.0

(From OE-Core rev: caf2f858bf41154c72aba37d58b5a5336e02fbb8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Richard Purdie
f6f2034526 meta*: Add LAYERSERIES_COMPAT and LAYERSERIES_CORENAMES markup to layer.conf
This means mismatched layers are more clearly identified to the user in
cases where compatibility has not been tested. This is perhaps not as
needed for the core repository (other than CORENAMES) but lets lead by
example.

(From OE-Core rev: cde66d5eac8e5c2821ba225dc4be4af4e0581652)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:08:30 +01:00
Richard Purdie
7ac2d8dce2 bitbake: cookerdata: Implement LAYERSERIES_COMPAT and LAYERSERIES_CORENAMES
Currently, someone trying a master branch of any given layer may
or may not find it works with the version of OE-Core that they
have picked.

This patchset introduces LAYERSERIES_CORENAMES and
LAYERSERIES_COMPAT_<layername> with the intention of allowing layers
to indicate which versions of the core project they're compatible with.

In general the master branch will use the next release codename as
the value of LAYERSERIES_CORENAMES, meaning that the waterfall model
of layer releases is supported with layers updating their
LAYERSERIES_COMPAT_ values as they branch for release.

Both variables support multiple strings and a given layer is accepted
if there is overlap of any one value. This means a layer can be compatible
with multiple core versions.

Setting LAYERSERIES_COMPAT_ will be required by the Yocto Project
Compatible v2 standard but the system will not error if its not set at this
point.

This should make it clear when a given layer is unmaintained and untested
with new releaes of OE-Core, a common user pain point.

(Bitbake rev: 92c49b9b1a16dfd35444db8143bd4cae4cda70cc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Ming Liu
f3e06c4749 bitbake: bitbake-user-manual-metadata.xml: fix a typo
'buildCompleted' should be 'BuildCompleted'.

(Bitbake rev: 9bd96cf938f746ace8d157f6b1b6c2550798085f)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
55c4781cde bitbake: knotty: prevent extra logger from being enabled for tinfoil
tinfoil sets up its own logger by default, but if and when we initialise
the UI (by default knotty) will also set one up, leading to duplicated
messages specifically from tasks. To avoid this, rather than adding some
kind of parameter, just check if there is already a logger outputting to
stdout/stderr and if so, skip adding our own.

Part of the fix for [YOCTO #11275].

(Bitbake rev: 66d866745f35468d1540a793d07e3a401298b84b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
d44d5a2e79 bitbake: tinfoil: fix duplication of log messages
Adding an additional logger in setup_bitbake() interacts poorly with the
logger we have added by default in tinfoil's constructor, with the
result that messages may be doubled or even tripled in tinfoil-using
scripts. Disable adding this one when calling setup_bitbake() from
tinfoil to avoid this problem.

Part of the fix for [YOCTO #11275].

(Bitbake rev: 8a5bae76f91f2411187c638a42fa3c762052cf11)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
833520d2fb bitbake: command / cooker: drop Hob support commands and functions
Drop a number of the commands and support functions that were created
solely to support functionality in the now-removed Hob UI. In most cases
we now have this functionality elsewhere e.g. to modify config files and
recipes we have bb.utils.edit_metadata_file() and friends, and in OE we
have oe.recipeutils.patch_recipe_file() and friends which build on top of
the former. Additionally, some of it represented pretty egregious
incursion of OE metadata-specific references into BitBake code.

For now I have left in the find*File functions and commands as they are
relatively generic and possibly still useful, but they might be removed
in future.

(Bitbake rev: a322f13183c66a28d93cc4bc3d839d95fc1d90f4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
3d4c64fb9f bitbake: cooker: add BB_CMDLINE to enable access to UI command line with memres
In OpenEmbedded's buildhistory class we want access to the bitbake
command line that launched the build, and up to now we were simply using
sys.argv from within the event handler to get that. Unfortunately that
doesn't work in memory resident mode, since the event handler is
naturally executing within the server and thus will give you the command
that launched the bitbake server which is much less interesting. Add a
dynamic variable BB_CMDLINE to provide access to this, set from sys.argv
within the UI process in updateToServer().

(Note that BB_CMDLINE isn't currently passed through to the worker, so
this is only really readable from event handlers plus any explicit
getVariable calls - in theory an observe-only UI could read it for
example.)

Part of the fix for [YOCTO #11634].

(Bitbake rev: 8ad31a3eff5cfcb7b1c462578a582dafcbc426d4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
7520e22648 bitbake: cooker: set config valid flags in initConfigurationData()
If we set these flags here then we can not only tidy up some of the code
that calls initConfigurationData() (and reset() which simply calls the
former), we also avoid calling initConfigurationData() an extra time
unnecessarily during startup (since setting baseconfig_valid = False in
updateConfigOpts() also resulted in initConfigurationData() being
called from updateCacheSync() at the end of the command.)

(Bitbake rev: 74d2ef99a920aa9e70470ba8e600ea973a3c672a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
67f676f704 bitbake: cooker: fix file changes not triggering task re-execution with memres
If you build a recipe, modify one of the files referred to in SRC_URI,
then build it again, it should re-run do_fetch and the tasks that depend
upon it to incorporate the modified file. With memory resident mode this
was not working unless you restarted the server, because the mtime of
the file was cached and thus we never checked the actual file. Clear out
the mtime caches in buildTargets() to ensure this isn't an issue. I did
a minor refactoring to break this out to its own function since we were
already clearing out the build mtime cache here.

(The test I used for this was . ./oe-init-build-env-memres,
bitbake -c fetch mdadm, modify the comments at the top of one of the
patches referred to in the recipe, and then bitbake -c fetch mdadm again
and it should re-execute the fetch task ("... 0 didn't need to be
re-run".)

Fixes [YOCTO #10732].

(Bitbake rev: fe4f3487368bc35043a1ba464e1c69d2c9cbefc6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:39 +01:00
Paul Eggleton
453835679b bitbake: cookerdata: fix variable history not showing in bitbake -e with memres
CookerConfiguration sets the "tracking" option to True when -e is
specified in order to have history tracking enabled in the datastore
so that we can show variable history (which isn't enabled by default for
performance reasons), however in memory resident mode this wasn't doing
anything because it was happening on the UI side only. We do have a
mechanism for updating the cooker configuration in the server, but the
tracking option wasn't being included in the list of options we updated,
so we just need to add this option to fix the issue.

Fixes [YOCTO #10730].

(Bitbake rev: 57d4977555cf892b15dd0302dfe261fe37d49327)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-12 15:07:38 +01:00
Ed Bartosh
b1d5267f0e README.hardware: update flashing instructions for MPC8315
Using 1000000 memory address for kernel and a00000 for dtb
can cause kernel image to overwrite dtb when uncompressing
and u-boot crashing with:
    ERROR: image is not a fdt - must RESET the board to recover.

Updated flashing instructions for the board to use addresses
1000000 and 2000000 to avoid this error.

Got rid of resetting loadaddr and ftdaddr u-boot variables.

(From meta-yocto rev: 05fc7fc19a9b43cab31ea873e5c38a2737c799cf)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:13:45 +01:00
Alejandro Hernandez
f1fd97be55 yocto-bsp: Fix QEMUARM based bsps to not offer SMP support
The SMP kernel config presents issues on qemuarm because:

CONFIG_SMP=y
Dependencies Missing:
  - CPU_V6K or CPU_V7:
    These are selected by setting:
    CONFIG_ARCH_MULTI_V7=y
    or
    CONFIG_ARCH_MULTI_V6=y

But our QEMU + ARM BSPs are based on armv4/v5 hence they are
incompatible with CONFIG_SMP.

This patch fixes the script, and avoids offering SMP to the user
when the created BSP is based on QEMU + ARM.

[YOCTO #11426]

(From meta-yocto rev: d63aa4acd20b2aa022701289e9ab7be7f551b0b2)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:13:45 +01:00
Patrick Ohly
337bea6573 bitbake: cookerdata: Add support for BBFILES_DYNAMIC
BBFILES_DYNAMIC can be used to activate content only when some other
layers are present. The other layers are identified by the collections
that they define.

The main use case is to avoid .bbappends without the corresponding .bb
file in layers that want to modify other layers via .bbappends without
introducing a hard dependency on those other layers. .bb files could
also be handled via BBFILES_DYNAMIC.

Entries in BBFILES_DYNAMIC must have the form <collection
name>:<filename pattern>. Example usage:
 BBFILES_DYNAMIC += " \
     clang-layer:${LAYERDIR}/bbappends/meta-clang/*/*/*.bbappend \
     core:${LAYERDIR}/bbappends/openembedded-core/meta/*/*/*.bbappend \
 "

Parsing is aborted when invalid entries are found with an error
message like this:

 ERROR: BBFILES_DYNAMIC entries must be of the form <collection name>:<filename pattern>, not:
     /work/my-layer/bbappends/meta-security-isafw/*/*/*.bbappend
     /work/my-layer/bbappends/openembedded-core/meta/*/*/*.bbappend

Based on a patch by Richard Purdie.

(Bitbake rev: 04f8bd50aa04b12cf91dd6a3154527ad2c24695c)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:13:45 +01:00
Aníbal Limón
e9a6fd9e97 oeqa: Change the order to logDetails and logSummary
Is better to log the summary at end to see in an easy way
the actual result of the test run.

[YOCTO #11622]

(From OE-Core rev: 4e3ab36e8c90abc740cce1ba31faf6595116e1e2)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:15 +01:00
Fan Xin
78568b3a37 libtirpc: Fix CVE-2017-8779
This vulnerability is also called "rpcbomb".
Backport upstream patch to fix this vulnerability.
CVE: CVE-2017-8779

(From OE-Core rev: d10edb97f0a7d6952adf9e0dbb6b4d5c0d168195)

Signed-off-by: Fan Xin<fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:15 +01:00
Fan Xin
68e25dfade libtiff: Upgrade to 4.0.8
1. Upgrade libtiff from 4.0.7 to 4.0.8

2. Delete the following patch file due to CVE-2017-5225 has been fixed in 4.0.8
     libtiff-CVE-2017-5225.patch

(From OE-Core rev: 825927e85933322e6f195f0d937359017a9a9b97)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Fan Xin
1b9e549949 hdparm: Upgrade to 9.52
1. Upgrade hdparm from 9.51 to 9.52

2. Update the checksum of LIC_FILES_CHKSUM
   The following content is appended to LICENSE.TXT, the licence is still BSD & GPLv2.

       The apt.c file is  Copyright (c) 2009 Jan Friesse <jfriesse@gmail.com>.
       You may use/distribute apt.c freely, under the terms of either
       (your choice) the GNU General Public License version 2,
       or a BSD style license.

(From OE-Core rev: 3cd7aa486527d34bf6d20dd37046fe683230a4b6)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Fan Xin
0558ba93f0 pciutils: Upgrade to 3.5.4
(From OE-Core rev: cf0679d7404a4b019282b947488fb078402e5931)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Fan Xin
d4e974b0a6 man-pages: Upgrade to 4.11
(From OE-Core rev: b4052ce99349dc3fc9fba87b831d19a2e7c4e90e)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Joe Slater
d5214ebaf7 go: do not try to build for powerpc64
Add powerpc64 to the incompatible host list.

(From OE-Core rev: 358c2daee23eaa778e6a4f356b05b2d5a248fdd1)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Khem Raj
53918ce80a mesa: Add define to indicate missing 64bit atomics on armv5
This is wrongly detected by configure since it only checks for
__sync_add_and_fetch and not __atomic_fetch_add, it decides
to let compiler emit references to atomic functions which
it expects to be provided by libgcc, but thats not the
case for armv5 arch

[YOCTO #11616]

(From OE-Core rev: 6866ad53c5d49781002470195b4aae1ad1afde5c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Khem Raj
475cc01562 distutils-base.bbclass: Do not use -pie with hardening
Fix build when PIE is turned on. It tries to build
.so file using -pie and -shared flags together because
its doing compile and link in same step CFLAGS and LDFLAGS
are combined and does not work, ending in errors e.g.

| /mnt/a/oe/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/python-pygpgme/0.3-r0/recipe-sysroot/usr/l
ib/Scrt1.o: In function `_start_c':
| /usr/src/debug/musl/1.1.16+gitAUTOINC+179766aa2e-r0/git/crt/crt1.c:17: undefined reference to `main'
| collect2: error: ld returned 1 exit status

This error while cryptic is due to the fact that we are
building a shared library but also pass -pie flag to the link
step after specify LDHSARED ( which is -shared linker flags )

we can not use -pie when doing shared libs. This is true for all the python
modules inheriting setup tools

Disable the pie flags thusly for all modules using setuptools since
this setting is done in setuptools makefiles which are then used
during module compiles

(From OE-Core rev: 6a4e3b696d32809279f1550cc1d67bc6b9979a03)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Ross Burton
51e17c4ad2 Revert "distutils-base.bbclass: Do not use -pie with hardening"
This reverts commit 0d1418026b.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Ross Burton
4a4082768d perf: enable libunwind
(From OE-Core rev: 12e57c58ed25c113934f3370eea241211fa5c0b3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Ross Burton
e4a45dafda libunwind: don't mess around with ARM atomic detection
This recipe explictly sets -DAO_USE_PTHREAD_DEFS on ARM, but with libunwind 1.2
this causes the linker to fail:

  hidden symbol `__sync_synchronize' in libgcc.a(linux-atomic.o) is referenced by DSO

Removing these defines lets configure do the right thing and build libunwind.

(From OE-Core rev: f2efadab8b1ab1c50584a39908673e1a6717f753)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Chen Qi
7e816be572 util-linux: upgrade to 2.29.2
(From OE-Core rev: 69c922764bbce8dc3df685b5677c6a4b766d40b7)

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>
2017-06-09 17:12:14 +01:00
Chen Qi
b4337a8cc1 kmod: upgrade to 24
Drop kcmdline_quotes.patch as it has been integrated.

(From OE-Core rev: 68880e7dc48df4707e2c67f7434603e516c335c6)

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>
2017-06-09 17:12:14 +01:00
Chen Qi
4e336d2f25 sysstat: upgrade to 11.5.5
(From OE-Core rev: 5639c36ab221e0764884374d7741805a93772cf7)

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>
2017-06-09 17:12:14 +01:00
Ming Liu
9e4c044bd5 busybox: fix a linking issue
A following linking error was observed:
| ==========
| archival/lib.a(tar.o): In function `tar_main':
| archival/tar.c:1168: undefined reference to `unpack_Z_stream'
| archival/tar.c:1168: undefined reference to `unpack_Z_stream'
| ld: busybox_unstripped: hidden symbol `unpack_Z_stream' isn't defined
| ld: final link failed: Bad value

this happened with clang compiler, with the following configs:
| CONFIG_TAR=y
| # CONFIG_FEATURE_SEAMLESS_Z is not set

which can be fixed by adding IF_FEATURE_* checks in.

(From OE-Core rev: 789254b5ae983a94346f53de18286713b80eb5f2)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Ming Liu
a93ec352a3 buildstats-diff: show more graceful error messages
I got a following error when I run buildstats-diff against a invalid
buildstats file:
| Traceback (most recent call last):
|   File "/poky/scripts/buildstats-diff", line 548, in <module>
|     sys.exit(main())
|   File "/poky/scripts/buildstats-diff", line 534, in main
|     bs1 = read_buildstats(args.buildstats1, args.multi)
|   File "/poky/scripts/buildstats-diff", line 222, in read_buildstats
|     return read_buildstats_dir(path)
|   File "/poky/scripts/buildstats-diff", line 165, in read_buildstats_dir
|     os.path.join(recipe_dir, task))]
|   File "/poky/scripts/buildstats-diff", line 124, in read_buildstats_file
|     bs_task['elapsed_time'] = end_time - start_time
| UnboundLocalError: local variable 'end_time' referenced before assignment

the root cause is that a task was terminated by me on the terminal,
so the generated buildstats file was invalid, supposing that it would
make the buildstats.sh fail, but the script should give more graceful
error messages.

(From OE-Core rev: dee3c29071017b4d12c02b711c5e42ca96e0578d)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Aníbal Limón
24b7e71350 scripts/yocto-compat-layer-wrapper: Use realpath of output_log
We are using a temp directory, use the realpath for output log
to store the results in the original BUILDDIR.

[YOCTO #11571]

(From OE-Core rev: 0addd079966ece97abc2e0ba3e7d6434d23692aa)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Aníbal Limón
dd3473c7e6 scripts/yocto-compat-layer.py: Return non-zero when layer test fail
If whatever layer tested fails returns 2 to indicate the
failure.

[YOCTO #11482]

(From OE-Core rev: c00102e7b67e5f21247094d41943d767ad13db88)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Fan Xin
8c19ed047a cairo: Fix CVE-2017-7475
CVE: CVE-2017-7475

Bug 100763 - Denial-of-Service Attack due to Logical Problem in Program

https://bugs.freedesktop.org/show_bug.cgi?id=100763

(From OE-Core rev: 03be750d9c5a090141a9d76f8ee30d5f696a8595)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Jose Perez Carranza
38c06ab450 selftest/devtool: Modify test to use default config
Modify “test_devtool_virtual_kernel_modify” to be executed with default
configuration defined on oe-selftest test suite. A shorter string was
added to the the header file to avoid overlapped sections when building
kernel for qemux86-64.

[Yocto #11300]

(From OE-Core rev: a8bda790fded43eac72b2ad76d47c27363f02070)

Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:14 +01:00
Saul Wold
a9a5b6267f mkelfimage: Fix broken patch when building native
A change occured about a year ago that broke the native build, fix
that patch

[YOCTO #11590]

(From OE-Core rev: eb441e047498be42af9c8bf69edb1164360a61f1)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:13 +01:00
Humberto Ibarra
f1812e090b runtime-test.py: Split different tests inside selftest.py
There were two completely different tests inside selftest.py,
and the only reason for them to be together was that both needed
the same mechanism to execute (run testimage from within selftest)

This fixes the design issue and error-prone situation by separating
these tests. In add a new module for dnf-runtime and also has an
extra time added to running the tests, but it is minimal since
the builds reuse data from previuous build.

[YOCTO #11436]

(From OE-Core rev: 2f6a506018973f0eaf1306555df3e74a3ab25680)

Signed-off-by: Humberto Ibarra <humberto.ibarra.lopez@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:13 +01:00
Ed Bartosh
88aa35cdcd u-boot: enable dhcp for MPC8315 board
Getting ip address from DHCP server is much more convenient
than setting static ip. It allows to configure u-boot in
more generic way and to avoid hardcoding static ip in
u-boot configuration.

Enabled dhcp client functionality for Yocto reference
hardware MPC8315E-RDB.

(From OE-Core rev: fa3a157e437aefa24c473ec53736a26f7e9fd470)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:13 +01:00
Marek Vasut
e85889c087 u-boot: Update to 2017.05 release
Upgrade U-Boot to the latest version.

Since the latest version has the default gcc patch in it, drop it.

(From OE-Core rev: 241cd21f70a537d23147a7e7b367bfc49fda1ac5)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Denys Dmytriyenko <denis@denix.org>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-09 17:12:13 +01:00
Leonardo Sandoval
4a7612c7a1 buildhistory: skip tests if GitPython module is missing
Catching a possible exception when importing the git module,
allows us to skip test if the latter is missing on the host.
Also, import oe.buildhistory_analysis inside fuctions
because this module also needs git to work correctly.

[YOCTO #11620]

(From OE-Core rev: 186882ca62bf683b93cd7a250963921b89ba071f)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-07 16:00:49 +01:00
Chang Rebecca Swee Fun
576821ea0a bitbake: bitbake-layers: check layer dependencies before adding
In the original implementation, "bitbake-layers add-layers <layer>"
succeeded without error checking. This will further introduce
failures in recipe parsing only when "bitbake" command is executed.
Adding a meta layer without its dependency layer(s) should failed
and exit the process gracefully.

Added extra argument "-F" to force add a layer without checking
layer dependency.

[YOCTO #10913]

(Bitbake rev: 705ab252e631903e6d2e46202b419a9e8adcd861)

Signed-off-by: Phoong Stanley Cheong Kwan <stanley.cheong.kwan.phoong@intel.com>
Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:51 +01:00
Ross Burton
1125621b92 libunwind: fix build failure on MIPS
(From OE-Core rev: 49c255494c1d0704a1c8c428281c81541b05dc3e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Joe Slater
97b36d5ee2 tcf-agent: correct CFLAGS
Modify CFLAGS for several cases which will not compile otherwise.
Do not use the form CFLAGS_x_append because it will replace, not
append to CFLAGS for override x.

(From OE-Core rev: f8e63dff3eb807b07bd71f0e31f6e0cf18ecdb0c)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
ccc9b7bbd2 lsbinitscripts: Upgrade to 9.72
1. Upgrade lsbinitscripts from 9.68 to 9.72

2. Rebase the following patch file.
   functions.patch

(From OE-Core rev: be117d6ea79882d10cce4c061385832e26d23bff)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Zhenbo Gao
5dd94a5dc4 logrotate: Support system dates back to the year 1970
backport commit bdbfea3 from logrotate upstream.

(From OE-Core rev: ae87a0967d687cf9e308b22b35facb0b38a9141a)

Signed-off-by: Zhenbo Gao <zhenbo.gao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Jackie Huang
27a40d6d52 kmscube: add opengl to REQUIRED_DISTRO_FEATURES
kmscube depends on virtual/libgles2, virtual/egl (provided
by mesa) and gstreamer1.0 which require opengl in DISTRO_FEATURES.

(From OE-Core rev: ae78eac950e209da430ca0d258656f616a2ef9d2)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
71a2e71f4f libxml-namespacesupport-perl: Upgrade 1.11 -> 1.12
1. Upgrade libxml-namespacesupport-perl from 1.11 to 1.12

2. Update the checksum of licence file because the author and contributors's name list is deleted.
The content of licence has no change.

(From OE-Core rev: 6894a25d80358f48b3f503e5434f0e99354c9471)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
0d7d7ab770 libxml-simple-perl: Upgrade to 2.24
1. Upgrade libxml-simple-perl from 2.22 to 2.24

2. Update the Licence checksum due to the address of Free Software Foundation changed.
   The content of licence has no change.

(From OE-Core rev: 684dcc1c0d1aece28edfe18c89c27ffcf553a477)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
4b80067c73 acpica: Upgrade 20150515 -> 20170303
1. Upgrade acpica from 20150515 to 20170303

2. Rebase the patch file for 20170303

(From OE-Core rev: c08ca9353fabb595de1011cf9d6db6ff6cc06ce3)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Dengke Du
d4dbdfc5d2 ltp: upgrade to 20170516
1. rebase patch 0034-periodic_output.patch

    This patch can't apply, because in memcg_stress_test.sh, it used a
    different value for RUN_TIME: 15*60, we can check it here:

        https://github.com/linux-test-project/ltp/blob/20170516/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh#L40

    Previous is 60*60, we can check it here:

        https://github.com/linux-test-project/ltp/blob/20170116/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh#L40

2. delete patch 0039-fcntl-fix-the-time-def-to-use-time_t.patch

    This patch didn't need any more, because the upstream has remove the
    unneeded time() declaration. We can check it here:

        f8c96804e5

(From OE-Core rev: f09b8d587aa5a0bbaaa653ef9dc0d25837336e17)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Daniel Díaz
b04960f844 piglit: fix building issues regarding gbm_bo_map and a MESA test
These patches fix a few building problems but are not being
taken into consideration at the moment, even though they have
been reviewed upstream with most of them merged (and accepted
already in OE-core master):
1.- CMake: define GBM_BO_MAP only when symbol is found
2.- util/egl: Honour Surfaceless MESA in get_default_display
3.- egl_mesa_platform_surfaceless: Don't use eglGetPlatformDisplay directly
4.- egl_mesa_platform_surfaceless: Use EXT functions for surfaces

(From OE-Core rev: 4322982346fb403bfd2c03b93bcad4c3d8694ea5)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
fff42bb44f lzo: Upgrade 2.09 -> 2.10
1. Upgrade lzo from 2.09 to 2.10

2. Update the license checksum due to the date change, not license change.

3. Add a patch to fix the undefined error.

(From OE-Core rev: 874cf9e9ec72eb7235ef1997fdfea9c33b3628f6)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
591b6623eb cups: Upgrade 2.2.2 -> 2.2.3
(From OE-Core rev: 886f9afa1ac7a8b6eba514846f616378b78d088e)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Fan Xin
3acbb66328 lzip: Upgrade 1.18 -> 1.19
(From OE-Core rev: 74bc135e9c2f2458a742734015be03d16e9c03eb)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Ross Burton
f1333958dd python3: add python3-modules-native to RPROVIDES for python3-native
Also clean up the logic in the script to be more Pythonic.

(From OE-Core rev: fae66dd3633aa8a6aa633fcfd7c4b9a728dee7a4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Ross Burton
b39d1c6842 python: add python-modules-native to RPROVIDES for python-native
Also clean up the logic in the script to be more Pythonic.

(From OE-Core rev: e5ac43e1b549e637f1820a03dd0a633fbecd395c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Khem Raj
d554d90da3 setuptoools.bbclass: Do not use -pie with hardening
Fix build when PIE is turned on. It tries to build
.so file using -pie and -shared flags together because
its doing compile and link in same step CFLAGS and LDFLAGS
are combined and does not work, ending in errors e.g.

| /mnt/a/oe/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/python-pygpgme/0.3-r0/recipe-sysroot/usr/l
ib/Scrt1.o: In function `_start_c':
| /usr/src/debug/musl/1.1.16+gitAUTOINC+179766aa2e-r0/git/crt/crt1.c:17: undefined reference to `main'
| collect2: error: ld returned 1 exit status

This error while cryptic is due to the fact that we are
building a shared library but also pass -pie flag to the link
step after specify LDHSARED ( which is -shared linker flags )

we can not use -pie when doing shared libs. This is true for all the python
modules inheriting setup tools

Disable the pie flags thusly for all modules using setuptools since
this setting is done in setuptools makefiles which are then used
during module compiles

(From OE-Core rev: dc1c16e9df365871b2c40998f63f304ffa610447)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:26 +01:00
Ross Burton
84b3d8b33c archiver: preserve sysroot paths in configured mode
do_ar_configured alters WORKDIR but also expects to be able to run do_configure,
so forcibly expand the paths to the sysroots as otherwise they'll point to a
non-existant directory in the temporary WORKDIR.

[ YOCTO #11584 ]

(From OE-Core rev: aa2240657b015d46e9ba4bcb6264709a82313d83)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:25 +01:00
Dengke Du
de1b5983c7 archiver.bbclass: fix do_ar_original error for matchbox-desktop
Error:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ERROR: matchbox-desktop-2.1-r0 do_ar_original: Can not determine archive names
for original source because 'name' URL parameter is unset in more than one URL.
Add it to at least one of these: git://git.yoctoproject.org/matchbox-desktop-2
file://vfolders/%2A

ERROR: matchbox-desktop-2.1-r0 do_ar_original: Function failed: do_ar_original
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

In function do_ar_original, when recipes have more than one source, it added the
"name" URL parameter as suffix to identify the created tarball.

But the URL type "file://" that we always used to represent a series of patches,
it didn't have "name" parameter, so it failed.

So set "name" to the folder name to identify the created tarball, for example:

In matchbox-desktop bb file, the SRC_URI contains:

	file://vfloders/*

We set "name" to "vfolders" to identify the created tarball.

In connman-gnome bb file, the SRC_URI contains:

	file://images/*

We set "name" to "images" to identify the created tarball.

(From OE-Core rev: 0af636c635391b30c987dedeffe597ef4f8a1ed8)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:25 +01:00
Mikko Ylinen
069b125914 archiver.bbclass: adapt do_unpack_and_patch to RSS
do_unpack_and_patch was not correctly run until recently
("archiver.bbclass: various fixes for original+diff mode") but
with the fix applied, the errors we get indicate the function
is not adapted to work with recipe specific sysroots.

do_unpack_and_patch sets WORKDIR to ARCHIVER_WORKDIR which
affects all path settings relative to WORKDIR, inluding the paths
to recipes' sysroots. IOW, when do_unpack and do_patch are run, they
cannot find the necessary native tools and files located in the
sysroot (e.g., quiltrc) because the paths point to ARCHIVER_WORKDIR.

Adapt do_unpack_and_patch to RSS by restoring the original
STAGING_DIR_NATIVE after WORKDIR is changed to ARCHIVER_WORKDIR.

(From OE-Core rev: db7d2cc5a4df3c2077ba874c7ae395c73fd9ed13)

Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:25 +01:00
Kristian Amlie
1c8cfd074b wic: Remove obsolete reference to msger logger.
This was overlooked when msger was removed in 28014087b8.

(From OE-Core rev: b561292c4e7b5578172066f82b6518b5bda53f42)

Signed-off-by: Kristian Amlie <kristian.amlie@mender.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:52:25 +01:00
Aníbal Limón
6dcbe84505 selftest: Migrate systemd_boot test case to the new framework
- systemd_boot.py: Use the new case class and change decorator for id
- __init__.py: Because isn't needed now

(From meta-yocto rev: 59b2135007d80b3b76ef1256bf5d5aa6076178bc)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
Aníbal Limón
c4f6c20472 scripts/oe-{self,}test: Logger change default stream to stdout
By default python logging module uses stderr as default stream
for output but is unix-like to use stdout instead, so change it.

(From OE-Core rev: 986452c410a958e339f31f8c05461c18a1a15eb5)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
Anibal Limon
cfa8245e0e oeqa/core/loader: Call parent init method in OETestLoader
After Python 3.5 the init method contains initialization of
_loading_packages set to avoid infinite loops in recursive
loading.

Fix,

Traceback (most recent call last):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/scripts/oe-selftest", line 70, in <module>
    ret = main()
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/scripts/oe-selftest", line 57, in main
    results = args.func(logger, args)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/context.py", line 214, in run
    rc = self._internal_run(logger, args)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/context.py", line 175, in _internal_run
    self.tc.loadTests(self.module_paths, **self.tc_kwargs['load'])
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/core/context.py", line 51, in loadTests
    self.suites = self.loader.discover()
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/core/loader.py", line 268, in discover
    pattern='*.py', top_level_dir=path)
  File "/usr/lib/python3.5/unittest/loader.py", line 341, in discover
    tests = list(self._find_tests(start_dir, pattern))
  File "/usr/lib/python3.5/unittest/loader.py", line 398, in _find_tests
    full_path, pattern, namespace)
  File "/usr/lib/python3.5/unittest/loader.py", line 473, in _find_test_path
    self._loading_packages.add(name)
AttributeError: 'OETestLoader' object has no attribute '_loading_packages'

(From OE-Core rev: 17b832ba05d640570a773adbff2fa4e9ff83fce3)

Signed-off-by: Anibal Limon <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
Aníbal Limón
d95700ff6e oeqa/runtime/context.py: Add support to specify port in target_ip
(From OE-Core rev: 7fe4c074611eb21abdf811d8f216d4df7ab6a3ea)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
Khem Raj
0d1418026b distutils-base.bbclass: Do not use -pie with hardening
Fix build when PIE is turned on. It tries to build
.so file using -pie and -shared flags together because
its doing compile and link in same step CFLAGS and LDFLAGS
are combined and does not work, ending in errors e.g.

| /mnt/a/oe/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/python-pygpgme/0.3-r0/recipe-sysroot/usr/l
ib/Scrt1.o: In function `_start_c':
| /usr/src/debug/musl/1.1.16+gitAUTOINC+179766aa2e-r0/git/crt/crt1.c:17: undefined reference to `main'
| collect2: error: ld returned 1 exit status

This error while cryptic is due to the fact that we are
building a shared library but also pass -pie flag to the link
step after specify LDHSARED ( which is -shared linker flags )

we can not use -pie when doing shared libs. This is true for all the python
modules inheriting setup tools

Disable the pie flags thusly for all modules using setuptools since
this setting is done in setuptools makefiles which are then used
during module compiles

(From OE-Core rev: 4b5d55228ed2565570d0e93cfea4efa8cbb789ea)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
Tim Orling
031403e652 linux-firmware: add support for mt7601u WiFi chip
Mediatek MT7601U is a common 802.11 g/n WiFi USB chip

(From OE-Core rev: eb61f7ed04237513216cbff0612ceaa114dffdcc)

Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
David Vincent
82fd7bbfae initscripts: Populate volatile from existing file
In some cases, it may be useful to populate a volatile file from an
existing one, e.g. a file in a read-only rootfs that may be edited in a
read-write destination.

To provide this behavior, creation of volatile files has been updated to
copy a file which has been given in the <linksource> field. If set to
none, the current behavior is preserved.

(From OE-Core rev: d44816bedadeef420226dc5efb67065cfcda6634)

Signed-off-by: David Vincent <freesilicon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:44 +01:00
Martin Jansa
c2a5d0bb80 sstate-diff-machines.sh: Replace MACHINE_ARCH only at the beginning and separated with dash
* I had some components where the MACHINE name was also included in PV of allarch recipe
  which was tripping the script into saying that they have different signatures (because
  for one MACHINE was the string in PV replaced with 'MACHINE' and not for other MACHINEs

(From OE-Core rev: 36e6abf387848d8c4383b4d506340811dd371c86)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Martin Jansa
ff4a7a9a1d recipes: Replace "cp -a" with "cp -R --no-dereference --preserve=mode, links"
* Using "cp -a" leaks UID of user running the builds, causing
  many QA warnings.
* See this thread for details:
  http://lists.openembedded.org/pipermail/openembedded-core/2015-November/112904.html

(From OE-Core rev: 2fcb9bee2487ba8c5e7b2c1fda2fdffcf7fb7f78)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Chang Rebecca Swee Fun
8b66ad49a0 devshell.bbclass: clean up trailing whitespaces
(From OE-Core rev: fac6c0fcb30d7cb49036cb32247569d65d1c5e7f)

Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Chang Rebecca Swee Fun
2e388503fe devshell.bbclass: ensure toolchains available for do_devshell
Toolchains are required to be prepopulated in sysroot before
entering devshell.

[YOCTO #11464]

(From OE-Core rev: eb8a1cdf5106d119f77db76f9a690826af9fcda3)

Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Leonardo Sandoval
157c3be2ca oeqa/selftest/cases: Migrate test cases into the new oe-qa framework
New framework has different classes/decorators so adapt current test cases to
support these. Changes include changes on base classes and decorators.

Also include paths in selftest/__init__.py isn't needed because the
loader is the standard unittest one.

(From OE-Core rev: ddbbefdd124604d10bd47dd0266b55a764fcc0ab)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Leonardo Sandoval
10c512b60d scripts/oe-selftest: Migrate to new framework into oeqa.selftest.context
The new OEQA framework aims to re-use code into the different Test
components.

The previous oe-selftest implements it-self loading, run, and list test
cases in a non-standard way (unittest base) and other functionalities
like logging that is now on oeqa core. This ends on a compact oe-selftest
script.

All needed command line options was migrated but there are some of them
pending of implementation and others deprecated.

Deprecated options:

list-tags: The tag functionality into the old oeqa framework isn't
    work, the selftest doesn't has tag decorators.
{run, list}-tests-by: Ambiguos options it accepts all the posibilites module,
    class, name, id or tag.

Remaining to implement:

coverage: It enables covrage reports over a test run, currently isn't on
    on use and some bugs [1], i filed a bug to add support to OEQA core module in
    this way other Test components could enable it.
repository: It push XML results into a git repository and isn't in use,
    i filed a bug to implement this into OEQA core module. [2]

[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=11582#c0
[2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=11583#c0

(From OE-Core rev: 3b2a20eee4a39f40287bf67545839eaa09fc892d)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Aníbal Limón
d09938a608 oeqa/selftest/case: Don't figure out the testlayer inside
The test layer is added at init of selftest and is the same
across test runs so pass it as a attr in the context.

(From OE-Core rev: 8441da8fbc7ff2237d9ccd3a5c5117345f5c87b2)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Leonardo Sandoval
5633866ea5 oeqa/selftest/case.py: Remove machine selection logic
The machine selection is an operation that needs to be made
in every test run, the best place to it is on the context
module.

Use self.tc.custommachine variable instead of use environment.

SIgned-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
(From OE-Core rev: f295b70ace0ffc28256140a21af5c3a8903297cb)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Leonardo Sandoval
628ba5801b scripts/oe-selftest: Move {add,remove}_include files to case
The oe-selftest creates include files to store custom configuration to
make specific tests, every class executes a different test and may be
uses custom configuration.

So move to case class in order to simplify oe-selftest script and later
implement later a build folder per class.

(From OE-Core rev: 1130b40c3dfa65e7ece08a95b3941e4d1d20bcf0)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Leonardo Sandoval
a80aa4c025 oeqa/selftest/case: Migrate case class to the new OEQA framework
Summary of the changes:

- Use OETestCase as base class instead of unittest.TestCase
- Remove LogResults decorator the new framework provides logging into
  the core functionality.
- Logger is now self.logger instead of self.log
- Move comments into docstrings in several help methods
- Use get_test_layer() method instead of access monkey patched variable
  in old oeSelfTest case class.

(From OE-Core rev: c38cab77893f9d8fd505f050cc880a15677b73db)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Aníbal Limón
cb1b1eeb3f oeqa/selftest: Move base class to case module
To match the new structure of the OEQA framework.

(From OE-Core rev: 0d3d97414c8166d09065f6f7f45e3260ce405692)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Aníbal Limón
7c8f3c3980 scripts/oe-test: Move load_test_components to oeqa.utils
In order to maintain compatibility with oe-selftest, the
load_test_components needs to be re-used, so the script
executor needs to pass to only load components supported
by certain script (oe-test, oe-selftest).

(From OE-Core rev: d6b78ae711b93b4059690320cb8d821aaadd1684)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-06 19:02:43 +01:00
Ross Burton
02417b1496 oeqa/selftest: lock down Meson git revision for reliability
The test_recipetool_create_github test fetches HEAD of the repository so
upstream changes can (and do) break the test.  Avoid these problems by passing
the rev= argument in the URL to lock the checkout to the same version that is
fetched in the github_tarball test.

Also pass the commands to runCmd() as a list instead of a string, the semicolon
in the URL needs more quotes if the shell is involved and passing a list
bypasses the shell entirely.

(From OE-Core rev: b35bedd209092432c560e998043b6a8c5c2e4d34)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 17:59:38 +01:00
Daniela Plascencia
0e9de873f8 scripts/lib: removes bsp 4.8 kernel bbappends as the version is no longer supported
These files should be removed as version 4.8 is no longer supported (6751dce4cf
and 1632f6623c) and errors may be produced when executing some commands.
For instance, "yocto-bsp list <karch> --property <property_name>" expects the
SRC_URI of the 4.8 kernel recipe, which doesn't exist anymore, throwing the
following exception:

$ yocto-bsp list arm --property existing_kbranch
Getting branches from remote repo None...
Traceback (most recent call last):
...
SyntaxError: function specified for 'gen' property returned nothing : input type:
"choicelist" name:"existing_kbranch" nameappend:"i386" gen:"bsp.kernel.all_branches"
branches_base:"standard" prio:"20" msg:"Please choose a machine branch to base this
BSP on:" default:"standard/base"

[YOCTO #9867]

(From meta-yocto rev: fb0ed1cdeac9e716d1eaa5b11c8262a209bf148e)

Signed-off-by: Daniela Plascencia <daniela.plascencia@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 10:04:27 +01:00
Andy Voltz
644fbb9aca bitbake: tinfoil: allow extra features to be passed to prepare
(Bitbake rev: 2e35de1f19dc73a61a18a3eb186efede078d597d)

Signed-off-by: Andy Voltz <andy.voltz@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Andy Voltz
44b3eb65d9 bitbake: cooker: fix undefined dep in generatePkgDepTreeData
The loop for populating the depends of the tree data should use dep
instead of item.

(Bitbake rev: 37c298b27e3f72b21513124237cfeffb22c0e2f0)

Signed-off-by: Andy Voltz <andy.voltz@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Mikko Rapeli
bc9c714e8b bitbake: bitbake: Fix return value checks from subprocess.call()'s
Python function subprocess.call() returns the return value of the
executed process. If return values are not checked, errors may
go unnoticed and bad things can happen.

Change all callers of subprocess.call() which do not check for
the return value to use subprocess.check_call() which raises
CalledProcessError if the subprocess returns with non-zero value.

https://docs.python.org/2/library/subprocess.html#using-the-subprocess-module

All users of the function were found with:

$ git grep "subprocess\.call" | \
  egrep -v 'if.*subprocess\.call|=\ +subprocess\.call|return.*subprocess\.call'

Tested similar patch on top of yocto jethro. Only compile tested
core-image-minimal on poky master branch.

(Bitbake rev: d2cf67bcaf001acb6be8fc5884fb450649849847)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Ola x Nilsson
ca68d71ddc bitbake: ConfHandler: Require whitespace between export and variable name
(Bitbake rev: 22bb7c9270f02ddae72e13d849375feee5f4a98b)

Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Richard Purdie
5f711bc63e bitbake: siggen: Make calc_taskhash match get_taskhash for file checksums
The code in these two functions is meant to be equivlanet in behaviour
but isn't. Add in code to ensure files that don't exist are handled
consistently by both functions. Users did report being able to generate
tracebacks otherwise.

(Bitbake rev: c11b4832879354b387a8c9c6a3096f2d621afeac)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Khem Raj
fcf507857f musl: Update to lates master
- towupper/towlower: fast path for ascii chars
- remove long-obsolete clang workarounds from mips* syscall_arch.h files
- fix fstatat syscall on mips64

(From OE-Core rev: 9256ce9884758f9eb81c384a3fc0d04243f4e3bd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Khem Raj
2b36a188b3 as-needed.inc: Compile pulseaudio with --as-needed
This effectively reverts
commit f06e99d194

(From OE-Core rev: 7975a0fddecc826dce5484f59ea4bba447d8d4df)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Nicolas Dechesne
9c800996e5 kernel.bbclass: fix KERNEL_IMAGETYPE(S) for Image.gz
KERNEL_IMAGETYPES lists all the kernel images that we want to build. in
cb17b6c2a7 (kernel.bbclass: support kernel image type of vmlinux.gz), some logic
was added to support vmlinux.gz which is not a target built by kernel
makefiles (only vmlinux). It is clear that the goal of this logic is only to
support vmlinux.gz and not others compressed format (such as Image.gz) which are
valid target for kernel makefiles.

For Image.gz we should rely on the kernel makefiles and not do the compression
in kernel class.

This patch updates the logic used to filter out non supported kernel target from
KERNEL_IMAGETYPES, and make vmlinux.gz a 'special case', instead of *.gz. If
more special cases are needed in the future, we could add them in a similar way.

This patch should be a no-op for anyone using vmlinux or vmlinux.gz, and on top
of that it is fixing the build for Image.gz which was not working until now.

(From OE-Core rev: cfc0c897656fe67e81a6a5dcd936dff785529f41)

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Randy MacLeod
a89fe5ec17 oeqa/core: Improve grammar in README and loader comments
(From OE-Core rev: 48cd7ff7ae61ca5772a42ece9fce51976dd0d790)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Khem Raj
f16368d2c5 go: Upgrade to 1.8.3
Add a comment to fix build musl<->glibc switch while
using same TMPDIR

(From OE-Core rev: bc940753ee4af8c656f33d63e33c3d12d419446e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Otavio Salvador
e3372ac0b4 cmake: Upgrade to 3.8.2
There was a set of changes, those are:

 - CMake now requires librhash for build and as there is no other
   users in OE-Core we make it use its internal copy instead;

 - Copyright.txt checksum has change due new contrubutors and 2017
   year additions;

 - Patch avoid-gcc-warnings-with-Wstrict-prototypes.patch was removed
   as it is not need anymore;

 - Patch 0001-KWIML-tests-Remove-format-security-from-flags.patch was
   removed as it is included in this release.

(From OE-Core rev: cc75f693bde412edd0a1aa4fd4e92fb29b492b76)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-05 09:19:51 +01:00
Scott Rifenbark
374f3d6be2 Documentation: Created YP 2.4 "latest" docs
Updated poky.ent to use 2.4 variables and numbering

Updated mega-manual.sed to use "2.4" string for links

Updated all manual revision tables to use "2.4" and
"Usually October, 2017" string.

(From yocto-docs rev: 17ec7da6ab3fd450c2010812f7ad689288b12dcc)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-04 08:47:14 +01:00
Scott Rifenbark
ce31b76fd1 ref-manual: Updated the PACKAGECONFIG_CONFARGS variable description
Fixes [YOCTO #11600]

Made some technical corrections to the PACKAGECONFIG_CONFARGS
variable description in the glossary.

(From yocto-docs rev: c422783984748f170943eab418bfa7d0111fa352)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-04 08:47:14 +01:00
Scott Rifenbark
d4503fbf26 ref-manual: Added LAYERRECOMMENDS variable description
Fixes [YOCTO #11579]

Added a new description for the LAYERRECOMMENDS variable.

(From yocto-docs rev: 3004a5724c4ea7165e4f749f9c9237ee1fbd89f5)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-04 08:47:14 +01:00
Scott Rifenbark
078408643e ref-manual: Updated LAYERDEPENDS variable description
Fixes [YOCTO #11579]

The syntax for specifying a layer version was incorrect. I
have added an explanation for the correct syntax and provided
an example.

(From yocto-docs rev: 5703fb2f8b9d3df408c596603b8b8416597fc67a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-04 08:47:14 +01:00
Leonardo Sandoval
2572e44751 maintainers: update maintainers in several python modules, cronie and swig
The python modules involved are:

* Python 2: numpy and setuptools
* python 3: async, dbus, distribute, docutils, gitdb, nose, numpy, pip,
  pygobject, setuptools, six and smmap

(From meta-yocto rev: 103690a9469880ad5059d7ce831d574456f59ee1)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:07 +01:00
Dengke Du
987eca1c6d dropbear: upgrade 2016.74 -> 2017.75
Drop patch support-out-of-tree-builds.patch:

    Because the upstream has already contain it.

(From OE-Core rev: 2fd0757ae7fd63bc93a4ce8579c6ba0cdbb4c1cd)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
05dbcf3046 xkeyboard-config: Upgrade 2.20 -> 2.21
(From OE-Core rev: 9d4c5d9eb7385f14bf11405d1da04cd34dc48fb0)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
453b2dfb0a xkbcomp: Upgrade 1.3.1 -> 1.4.0
Release with a small amount of bug fixes.

(From OE-Core rev: 48b0b4fdf411c6a0bbfe9e2cb288919f5f9b3ac0)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
3bb12366f1 xserver-xorg: Upgrade 1.19.1 -> 1.19.3
Bug fix releases.

(From OE-Core rev: 78ad33daadc4aec38c2e4eca232cfc6155ec2386)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
3a5e936b27 xf86-input-libinput: Upgrade 0.24.0 -> 0.25.1
Small releases with just a few fixes.

(From OE-Core rev: 97b5c76734f8d8dfa3ec4faddb6d7d50b0375b92)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
17d96fa839 clutter-gst-3.0: Upgrade 3.0.22 -> 3.0.24
Very small release with only bug fixes.

(From OE-Core rev: 81e9f904fd351ed030165a3fc639ef2a7205527f)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
d0314e9943 clutter-1.0: Upgrade 1.26.0 -> 1.26.2
Mostly bug fixes in this release.

(From OE-Core rev: ff758c2bdc00219ceb7d295045590f8847444716)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
e99b79c510 libevdev: Upgrade 1.5.6 -> 1.5.7
Small release with mostly build system fixes.

(From OE-Core rev: e8b727c1d9984a094b4c623fef2ca0c48848a790)

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>
2017-06-03 23:46:07 +01:00
Jussi Kukkonen
7e554c7dec vte: Upgrade 0.46.1 -> 0.48.3
Depend on gperf-native: The tarball used to include files generated
with gperf and this is no longer the case.
Use GIR_EXTRA_LIBS_PATH to fix introspection generation.

(From OE-Core rev: 028c398d0977b8f65a78f6a9ba2df8cc07dcc3cd)

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>
2017-06-03 23:46:07 +01:00
Nicolas Dechesne
25bd6c19ce mesa: upgrade to 17.1.1
* Costmetic changes in license.html file required new MD5 hash
* Add PACKAGECONFIG option for libunwind support (new feature, disable by default)
* Rebased 0001-Use-wayland-scanner-in-the-path.patch
* Added zlib in DEPENDS, otherwise mesa no longer builds.
* Added 0001-util-rand_xor-add-missing-include-statements.patch, sent upstream

(From OE-Core rev: fa08267f1399904fed079277bc86ac1aa26c06dc)

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:07 +01:00
Dengke Du
6ef29897a8 json-glib: upgrade 1.2.2 -> 1.2.8
(From OE-Core rev: 803d74a42568a4b5afe8a15021cccc9455c8c8a0)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:07 +01:00
Khem Raj
f2d53d15ec libatomic-ops: Upgrade to 7.6.0
Can compile in thumb1 and thumb2 modes now
AO_THUMB_GO_ARM, AO_THUMB_RESTORE_MODE are used
to guard swp instructions

Switch to github and use git for src_uri

(From OE-Core rev: 5d66e34f4be7dacf71251aefd303eb0fb721738e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:07 +01:00
Maxin B. John
526350a831 pkgconfig: upgrade 0.29.1 -> 0.29.2
Remove backported patch:
1. 0001-gdate-Move-warning-pragma-outside-of-function.patch

(From OE-Core rev: 77c09708fb32d6c0bd35af41af95dded22520301)

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>
2017-06-03 23:46:07 +01:00
Maxin B. John
d544482bce libtasn1: upgrade 4.10 -> 4.12
Noteworthy changes:

1. Introduced the ASN1_TIME_ENCODING_ERROR error code to indicate an invalid
encoding in the DER time fields.
2. Introduced flag ASN1_DECODE_FLAG_ALLOW_INCORRECT_TIME. This flag allows
decoding errors in time fields even when in strict DER mode.
3. Added safety check in asn1_find_node(). That prevents a crash when a very
long variable name is provided by the developer.

(From OE-Core rev: 61752a41f2f0abe61e805d2ef1292cec1e202c36)

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>
2017-06-03 23:46:07 +01:00
Maxin B. John
e849793282 sqlite3: upgrade 3.18.0 -> 3.19.2
Bug fixes:
1. Fix a problem in REPLACE that can result in a corrupt database
containing two or more rows with the same rowid.
2. Fix a problem in PRAGMA integrity_check that was causing a subsequent
VACUUM to behave suboptimally.
3. Fix the PRAGMA foreign_key_check command so that it works correctly with
foreign keys on WITHOUT ROWID tables.
4. Disallow leading zeros in numeric constants in JSON.
5. Disallow control characters inside of strings in JSON.
6. Limit the depth of recursion for JSON objects and arrays in order to
avoid excess stack usage in the recursive descent parser.
7. Fix more bugs in the LEFT JOIN flattening optimization.

(From OE-Core rev: 3d4d025b1cc6668fd7baefa01ebb9664e805e83a)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
ac21863d46 gnome-themes-standard: Upgrade 3.22.2 -> 3.22.3
Just a few bug fixes.

(From OE-Core rev: 053788910610ca0947304586d8c197e71e01c13d)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
e4c77eed02 gtk+3: Upgrade 3.22.8 -> 3.22.15
A fairly large amount of fixes in these point upgrades.

(From OE-Core rev: 7ded79207b67d96b73df046714b3419171c739ce)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
9138f582ef librsvg: Upgrade 2.40.16 -> 2.40.17
Small update with mostly bug fixes.

Add a desktop file for rsvg thumbnailing (it points to
gdk-pixbuf-thumbnailer so there's no binary added).

(From OE-Core rev: 8ac6bd6144dab4b027b6c463fb542ce00db7e64d)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
09ed536770 libepoxy: Upgrade 1.4.1 -> 1.4.2
Mostly a bug fix release

(From OE-Core rev: 84f0b7c51c0f6778fb2b3bd01875095d284a793b)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
98c6788abb adwaita-icon-theme: Upgrade 3.22.0 -> 3.24.0
Add patch to fix allarch-build by removing a useless AC_CANONICAL_HOST.

(From OE-Core rev: e922e23a7b3868b2dc9c5845fc5c5df1940df00d)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
b8f5dd3e34 at-spi2-atk: Upgrade 2.24.0 -> 2.24.1
Tiny bug fix upgrade.

(From OE-Core rev: 2704c84098bb8b23dc79c4369947048a1a67c655)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
3b358048bd atk-spi2-core: Upgrade 2.24.0 -> 2.24.1
Tiny bugfix upgrade.

(From OE-Core rev: 1f655d6ab14493b85fc65fe846e710e71fc4a5b3)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
3488804bf2 atk: Upgrade 2.22 -> 2.24
Bug fix update.

(From OE-Core rev: a55ad0521eed26d8dee3aa9abac9e72bae08669c)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
be45b1009e libsoup-2.4: Upgrade 2.56.0 -> 2.58.1
(From OE-Core rev: feb8506174301a7ac005a3515999f850835788fc)

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>
2017-06-03 23:46:06 +01:00
Jussi Kukkonen
6831ee0465 glib-2.0: Upgrade 2.50.3 -> 2.52.2
Remove upstreamed patches (thanks Ross).

(From OE-Core rev: 2fffd85e0799deab09e32af65c524498b140749d)

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>
2017-06-03 23:46:06 +01:00
Khem Raj
4f8d1e737a glibc: Configure with extra hardening options
(From OE-Core rev: 08dbaadbb6fadbaa9e0d1542f64864018b6243e5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Khem Raj
4418a593dc nfs-utils: Fix build error due to missing stdint.h> include
(From OE-Core rev: 8a0af685adb5275dc39ef0cd209d03905d1db067)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Ross Burton
9a983f0ef9 kconfig-frontends: fix another build race
It is possible that frontends/kconfig is written to by sed before frontends/
exists, so add a mkdir to ensure the directory always exits.

[ YOCTO #11574 ]

(From OE-Core rev: ad915e9baa04c73981c4795a97da95cea40b50c2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Choong YinThong
65dfeb248b start_getty: Over added SERIAL_CONSOLE cause error in userspace log
Error log will be logged into /var/log/message.
Added in more condition checking on the script. Check
/proc/tty/drivers and /proc/tty/driver/*
file system to retrieve active targeted serial.
Only establish getty with active serial in runtime.

[YOCTO #10844]

Reviewed-by: Saul Wold <sgw@linux.intel.com>
(From OE-Core rev: ac0e9541fe93e866e42914f65a0516b993f0cffe)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Mikko Rapeli
2e09dc1be7 scripts: Fix return value checks from subprocess.call()'s
Python function subprocess.call() returns the return value of the
executed process. If return values are not checked, errors may
go unnoticed and bad things can happen.

Change all callers of subprocess.call() which do not check for
the return value to use subprocess.check_call() which raises
CalledProcessError if the subprocess returns with non-zero value.

https://docs.python.org/2/library/subprocess.html#using-the-subprocess-module

All users of the function were found with:

$ git grep "subprocess\.call" | \
  egrep -v 'if.*subprocess\.call|=\ +subprocess\.call|return.*subprocess\.call'

Tested similar patch on top of yocto jethro. Only compile tested
core-image-minimal on poky master branch.

(From OE-Core rev: 031cf9c7834cd1cba8b03832673a3e3cfcbfae7c)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Ed Bartosh
684534198f isoimage-isohybrid: don't use TRANSLATED_TARGET_ARCH
isoimage-isohybrid plugin fails with this error when
trying to find initrd image:
    initrd = glob.glob('%s/%s*%s.%s' % (initrd_dir, image_name, target_arch, image_type))[0]
    IndexError: list index out of range
as it uses TRANSLATED_TARGET_ARCH value as part of the image.
This approach stopped to work due to changes in oe core code.

initrd file name is made using MACHINE variable. wic can't get value
of this variable as it's not included into bitbake -e output.

Used basename of deploy dir as MACHINE value to fix the breakage.

(From OE-Core rev: cfbb3cc1279ea88ca3e2867f8a409c5120aa1f05)

(From OE-Core rev: e26fa1c34c33ffdc678f8073dade0126aff08b40)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Gan, Yau Wai
2d739a352b insane.bbclass: fix override handling in RDEPENDS QA
The package_qa_check_rdepends() in insane.bbclass has
incorrectly replace its localdata OVERRIDES value with
the package name. Fixing it by appending the package name
to the existing OVERRIDES value. This resolves RDEPENDS QA
error when setting PACKAGECONFIG using a pn- override at
local.conf.

[YOCTO #11374]

(From OE-Core rev: 60d28dd72daee235150ab6605cbf953f1ea691df)

Signed-off-by: Gan, Yau Wai <yau.wai.gan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Daniel Lublin
693878a3e9 devtool: deploy-target: Let script continue even if rm fails
The remote script is run with `set -e`, so doing rm without -f on a
$file that is already gone will exit the whole script, failing any
redeployment. Assume a use case where packages sometimes produces
certain test binaries stored on volatile media (tmpfs), and where the
system is occasionally rebooted.

(From OE-Core rev: db54c9a22a9b66c673df8e836de5e47fc9edda0b)

Signed-off-by: Daniel Lublin <daniel@lublin.se>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Ola x Nilsson
1deb4a00ba devtool: Compare abspath of both B and S
Either both or none of the paths must be passed through
os.path.abspath or things like 'A//B', 'A/./B/', and 'A/B/' in S will
cause unintentional mismatches even when B = "${S}".

Using os.path.abspath for both seems more likely to be correct as that
will also handle the case where ${B} != ${S} but the abspaths are
equal.

(From OE-Core rev: 061f2aab40fecbfe0dcb928baa95d6b3a6b45eed)

Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Daniel Lublin
dd2f423525 devtool: deploy-target: Don't use find -exec
find may be provided by busybox, which might be compiled without support
for -exec.

(From OE-Core rev: 404e8e3661469175e1ea087ebfaf3a7867bf4df2)

Signed-off-by: Daniel Lublin <daniel@lublin.se>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:06 +01:00
Paul Eggleton
04292b815c classes/buildhistory: make a single commit per build
Way back in OE-Core commit fba198ac7efe476a25c5761878ef2fcee97bf9f1 in
2012 we split committing to the repository, making a commit per
top-level directory. However, as we add more information it becomes
harder to see which commits belong to which build. Switch back to a
single commit per build to keep the history tidier.

To address the original concern, if you do want to see just the changes
for a particular subdirectory, git can filter that for you - just
specify that subdirectory as the last parameter on the git show / git
diff command line and that's all you will see.

(From OE-Core rev: b49a4a47783609fe9161fbc11cc7c7ff3ff4b6bb)

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>
2017-06-03 23:46:05 +01:00
Joshua Watt
1a4494b2e6 archiver: Escape recipe name in regex
The recipe name needs to be escaped when using it in a regular expression so
that and special characters are treated literally

(From OE-Core rev: 53c8cceb744adda1bf899d62071d11b20a5dea98)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:05 +01:00
Jonathan Liu
cf06129961 bitbake.conf: Add sdl-config to HOSTTOOLS if using host SDL
If ASSUME_PROVIDES contains libsdl-native, we need to add sdl-config
to HOSTTOOLS to allow access to the host sdl-config.

(From OE-Core rev: eeb248c1a017e07e36b6fbaafe45006e3869f41a)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-03 23:46:05 +01:00
Christopher Larson
35ecff3cf0 bitbake: fetch/git: add support for removing arbitrary revs for shallow
In certain cases, it's valuable to be able to exert more control over what
history is removed, beyond srcrev+depth. As one example, you can remove most
of the upstream kernel history from a kernel repository, keeping predominently
the non-publically-accessible content. If the repository is private, the
history in that repo couldn't be restored via `git fetch --unshallow`, but
upstream history could be.

Example usage:

    # Remove only these revs, not at a particular depth
    BB_GIT_SHALLOW_DEPTH_pn-linux-foo = "0"
    BB_GIT_SHALLOW_REVS_pn-linux-foo = "v4.1"

(Bitbake rev: 97f856f0455d014ea34c28b1c25f09e13cdc851b)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
30485b2b1a bitbake: fetch/gitannex: add support for shallow mirror tarballs
When we're building from a shallow mirror tarball, we don't want to do
anything with ud.clonedir, as it's not being used when we unpack. As such,
disable updating annex in that case. Also include annex files in the shallow
tarball.

(Bitbake rev: ca0dd3c95502b22c369fbf37f915f45e02c06887)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
f5308b8cc1 bitbake: fetch/gitsm: add support for shallow mirror tarballs
When we're building from a shallow mirror tarball, we don't want to do
anything with ud.clonedir, as it's not being used when we unpack. As such,
disable updating the submodules in that case. Also include the repositories in
.git/modules in the shallow tarball. It does not actually make the submodule
repositories shallow at this time.

(Bitbake rev: 6c0613f1f2f9d4f009545f82a9173e80396f9d34)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
8144f6f408 bitbake: fetch/git: add support for keeping extra refs for shallow
By default, all unused refs (branches & tags) are removed from the repository,
as shallow processing scales with the number of refs it has to process. Add
the ability to explicitly specify additional refs to keep. This is
particularly useful for recipes with custom checkout processes, or whose
git-based versioning requires a tag be available (i.e. for `git describe
--tags`). The new `BB_GIT_SHALLOW_EXTRA_REFS` variable is a space-separated
list of refs, fully specified, and support wildcards.

Example usages:

    BB_GIT_SHALLOW_EXTRA_REFS = "refs/tags/v1.0"
    BB_GIT_SHALLOW_EXTRA_REFS += "refs/heads/*"

(Bitbake rev: 1771934cd9f8b5847c6fcae0a906fb99d6b0db16)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
bf87c5cd19 bitbake: fetch/git: support per-branch/per-url depths for shallow
Allow the user to explicitly adjust the depth for named urls/branches. The
un-suffixed BB_GIT_SHALLOW_DEPTH is used as the default.

Example usage:

    BB_GIT_SHALLOW_DEPTH = "1"
    BB_GIT_SHALLOW_DEPTH_doc = "0"
    BB_GIT_SHALLOW_DEPTH_meta = "0"

(Bitbake rev: 9dfc517e5bcc6dd203a0ad685cc884676d2984c4)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
27d56982c7 bitbake: fetch/git: add support for shallow mirror tarballs
This adds support to the git fetcher for fetching, using, and generating
mirror tarballs of shallow git repositories. The external git-make-shallow
script is used for shallow mirror tarball creation.

This implements support for shallow mirror tarballs, not shallow clones.
Supporting shallow clones directly is not really doable for us, as we'd need
to hardcode the depth between branch HEAD and the SRCREV, and that depth would
change as the branch is updated.

When BB_GIT_SHALLOW is enabled, we will always attempt to fetch a shallow
mirror tarball. If the shallow mirror tarball cannot be fetched, it will try
to fetch the full mirror tarball and use that. If a shallow tarball is to be
used, it will be unpacked directly at `do_unpack` time, rather than extracting
it to DL_DIR at `do_fetch` time and cloning from there, to keep things simple.
There's no value in keeping a shallow repository in DL_DIR, and dealing with
the state for when to convert the clonedir to/from shallow is not worthwhile.

To clarify when shallow is used vs a real repository, a current clone is
preferred to either tarball, a shallow tarball is preferred to an out of date
clone, and a missing clone will use either tarball (attempting the shallow one
first).

All referenced branches are truncated to SRCREV (that is, commits *after*
SRCREV but before HEAD are removed) to further shrink the repository. By
default, the shallow construction process removes all unused refs
(branches/tags) from the repository, other than those referenced by the URL.

Example usage:

    BB_GIT_SHALLOW ?= "1"

    # Keep only the top commit
    BB_GIT_SHALLOW_DEPTH ?= "1"

    # This defaults to enabled if both BB_GIT_SHALLOW and
    # BB_GENERATE_MIRROR_TARBALLS are enabled
    BB_GENERATE_SHALLOW_TARBALLS ?= "1"

(Bitbake rev: 5ed7d85fda7c671be10ec24d7981b87a7d0d3366)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
2a60c40637 bitbake: git-make-shallow: add script to make a git repo shallow
This script will be used by the git fetcher to create shallow mirror tarballs.

    usage: git-make-shallow [-h] [--ref REF] [--shrink] REVISION [REVISION ...]

    Remove the history of the specified revisions, then optionally filter the
    available refs to those specified.

    positional arguments:
      REVISION           a git revision/commit

    optional arguments:
      -h, --help         show this help message and exit
      --ref REF, -r REF  remove all but the specified refs (cumulative)
      --shrink, -s       shrink the git repository by repacking and pruning

While git does provide the ability to clone at a specific depth, and fetch all
remote refs at a particular depth, the depth is across all branches/tags, and
doesn't provide the flexibility we need, hence this script.

Refs (branches+tags) can be filtered, as the process of history removal scales
up rapidly with the number of refs. Even the existing `git fetch --depth=` is
extremely slow on an upstream kernel repository with all the branches and tags
kept.

This uses the same underlying mechanism to implement the history removal which
git itself uses (.git/shallow), and the results, when configured similarly, are
in line with the results git itself produces with `fetch --depth`.

(Bitbake rev: 0254020f0e1911c0eaf99111b91828d2a74a4ee1)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Christopher Larson
ab4e578b86 bitbake: fetch: support multiple mirror tarball filenames
Remove ud.mirrortarball in favor of ud.mirrortarballs. Each tarball will be
attempted, in order, and the first available will be used. This is needed for
git shallow mirror tarball support, as we want to be able to use either
a shallow or full mirror tarball.

(Bitbake rev: 02eebee6709e57b523862257f75929e64f16d6b0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:57 +01:00
Leonardo Sandoval
60ade6074e oeqa/core/context: Include a _pre_run method
This pre runner will serve to allow Test components executes code
previously of the run a suite.

(From OE-Core rev: bafb7e221d40d7a87a02cec8a97d98eec7c23438)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Leonardo Sandoval
5e0efc9942 oeqa/core/context: Omit docstring output on XMLResult
By default, the xml runner class prints out the docstring for every
unit test but it order to keep the same format as the standard
runner, avoid docstring output setting descriptions to False.

(From OE-Core rev: 05b16219698fbd30ec76697e1b3be6d31e8f8878)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Leonardo Sandoval
542831e3d5 oeqa/core/context: Use a default iterable modules object
The OETestLoader.modules must be an iterable object, otherwise
checking presence of specific modules with the 'in' operator fails
with the following command/error:

    % oe-test core
    .. - core - INFO - Running bitbake -p
    Traceback (most recent call last):
      File "..poky2/scripts/oe-test", line 108, in <module>
        ret = main()
      File "..poky2/scripts/oe-test", line 93, in main
        results = args.func(logger, args)
      File "..poky2/meta/lib/oeqa/core/context.py", line 235, in run
        self.tc.loadTests(self.module_paths, **self.tc_kwargs['load'])
      File "..poky2/meta/lib/oeqa/core/context.py", line 53, in loadTests
        self.suites = self.loader.discover()
      File "..poky2/meta/lib/oeqa/core/loader.py", line 204, in discover
        pattern='*.py', top_level_dir=path)
      File "/usr/lib64/python3.4/unittest/loader.py", line 275, in discover
        tests = list(self._find_tests(start_dir, pattern))
      File "/usr/lib64/python3.4/unittest/loader.py", line 339, in _find_tests
        yield self.loadTestsFromModule(module)
      File "..poky2/meta/lib/oeqa/core/loader.py", line 266, in loadTestsFromModule
        and module.__name__ in self.modules \
    TypeError: argument of type 'NoneType' is not iterable

(From OE-Core rev: 2bb02cd3d6ec6c2c22ab6b567e2985015655fae6)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Leonardo Sandoval
dedb6ba63b oeqa/core/context: Raise exception when a manifest is specified but missing
(From OE-Core rev: e7458dd24cb7464852fb7f5357d9108d5c052fa6)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Leonardo Sandoval
de06dd1e49 oeqa/core/case: fix typo on comment about exception name
(From OE-Core rev: 943a2a30e84660b412df4f1d60fb7e2e46764c50)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Leonardo Sandoval
1974a68926 oeqa/core/README: Improve documentation
Most of the text include on this text refactor came from [1].

[1] http://lists.openembedded.org/pipermail/openembedded-architecture/2016-December/000351.html

(From OE-Core rev: 77635ffa3b621add9894ed247dafe146f4af1e84)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
9153e6dd16 oeqa/runtime/case: Don't use OEQA framework internal methods
The OEQA framework has internal methods for provide functionality
in decorators so Test components aren't expected to override it.

Use the base unittest methods for setUp and tearDown.

(From OE-Core rev: 21df9f0f6d6272adc6131cdc113000a5e6ac9d46)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
ead62f9a40 classes/test{export,images}: Change modules to list
With the new filters by <module>.[class].[testname] the modules
arg is expected to be a list so use split into TEST_SUITES variable.

(From OE-Core rev: b588c5c65e55a31d61c86553158eef409cd71086)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
c746ee11ec oeqa/core: Add support for run tests by module, class and name
This will enable only run certain module tests and filter by
class and test name.

(From OE-Core rev: 0f7531803aa6ffef2b7c5be9acee3efe7d2974ef)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
49223c47fc oeqa/core: Add list tests support in context and runner
A common operation is to list tests, currently only selftest
support it, this changes enables this functionality into the
core framework.

(From OE-Core rev: 7e803f1a855d3091a772b13efd3cc8e9c0c766e9)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
adc434c063 oeqa/sdk: Enable usage of OEQA thread mode
oeqa/sdk/context.py - Use OETestContextThreaded.
classes/testsdk.bbclass - Enable bb event thread mode to avoid
corrupt the PIPE when multiple threads writes.

[YOCTO #11450]

(From OE-Core rev: 598c6579932c2ca1dbdb022c8bec8af2e6c21e6b)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
a4eef558c9 oeqa/core/tests: Add tests of OEQA Threaded mode
Add needed tests to validate the OEQA Threaded mode, the remaining
parts are tested by the OEQA without Threaded mode.

- test_loader.py: Add a test to validate rules when creating the
list of test suites.
- test_decorators.py: Add oetimeout test because the threaded mode
uses Timer instead of signal.

[YOCTO #11450]

(From OE-Core rev: fb9d91ca34c1b5d3e0034f5135e71f964fca5b82)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
f9102ab1ed oeqa/sdkext/cases: Move sdk_update test into devtool module
With the new OEQA thread support there are problems running
devtool twice at the same time because only one instance of
bitbake/devtool is allowed.

[YOCTO #11450]

(From OE-Core rev: 44254caaef131402629d01f01cdee6722718adba)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
d3d4ba902d oeqa/core/decorator/oetimeout: Add support for OEQA threaded mode
In python signals are only allowed to delivery into the main thread,
to support the threading mode test if the runner is threaded and
use threading.Timer instead.

There are some considerations like SIGALRM interrupts the execution
after N seconds but the Timer only starts a Thread to notice the
timeout and the exception will be raised when the test run ends.

[YOCTO #11450]

(From OE-Core rev: 8ab201612e22493dc2509ba339a8f07ade611a54)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
008cc04790 oeqa/core/decorator/depends: Add support for threading mode
The _skipTestDependency needs to know if the thread mode is
enabled because the _results are by thread.

[YOCTO #11450]

(From OE-Core rev: 257d9ef4531052ba8507771b58884c7d2b64143d)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
9ea42734c0 oeqa/core/threaded: Add OETestContextThreaded class
This class sets the {loader,runner}Class to the threaded versions and
overrides loadTests method to be able specify the process_num.

[YOCTO #11450]

(From OE-Core rev: 3ec0d3825aa31219e0ccabc1f158d3a2f8adbda2)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:14 +01:00
Aníbal Limón
6632277986 oeqa/core/threaded: Add support of OETestRunnerThreaded
The OETestRunnerThreaded overrides the run method of OETestRunner
it recieves a list of suites to be executed by a ThreadPool.

The new run method handles the ThreadPool creation and the
OETestResultThreaded fill.

[YOCTO #11450]

(From OE-Core rev: 48b7a407d692e6c49c41b16f2bd11e8c3f47a421)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
44285351f5 oeqa/core/threaded: Add OETestResultThreaded{,Internal} classes
The OETestResultThreadedInternal extends OETestResult to stores
results by Thread.

The OETestResultThreaded is a simple class that provides the
implementation of interfaces needed by outside like wasSuccesful,
stop, logSummary, logDetails.

[YOCTO #11450]

(From OE-Core rev: 8e71844fc4dd3fcc8a19f9d4c25aafb09c5525fe)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
aeb8c9341b oeqa/core/runner: OETestResult add internal _tc_map_results
This method is to assign results into the TestContext, create
an internal one to support change implementation in Thread version.

[YOCTO #11450]

(From OE-Core rev: 8a6a9cb816d78e4cf71b79c35b579918d31053f2)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
ce422c7008 oeqa/core/threaded: Add OEStreamLoggerThreaded class
The OEStreamLoggerThreaded overrides OEStreamLogger to redirect
the PyUnit output to a logger.

Instead of log every line when comes the OEStreamLoggerThreaded
will buffer the PyUnit output and write everything at end of every
suite execution to don't have mixed suite outputs.

[YOCTO #11450]

(From OE-Core rev: 87d3e5b70c52e5c7439afe4af5aa002522043e81)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
c118f80f17 oeqa/core/threaded: Add new module with OETestLoaderThreaded
The threded module will implement Thread support into the OEQA
framework.

The OETestLoaderThreaded overrides discover to return a list of
suites every suite will be run by a separate Thread.

Some design considerations are:

- All the tests of a certain module needs to be run at one thread
  because unittest framework needs to keep track of setUp{Module,
Class,} and tearDown{Module, Class,}.

- Tests that depends on other needs to be run at the same thread
because OEQA framework look at the status of dependant test to
decide if skip or not, this constraint can be change in the future
but a sync mechanishm is needed to implement between the Threads.

[YOCTO #11450]

(From OE-Core rev: b4ae730ee1d6003ff005148f741270e2878de484)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
b4b9e22c40 oeqa/core: Move OETestContext.log{Summary, Details} into OETestResult
Those methods are used to write in the log the results so
it makes sense to have defined at OETestResult because
is a format of the result itself.

[YOCTO #11450]

(From OE-Core rev: 33a783f59ed4e232f41f8b09dfa7955f2ddc2f80)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
c7600278b6 oeqa/core/runner: OETestResult remove unneeded override of startTest
I override this method before for keep track of results and forget
to remove it, now isn't need.

(From OE-Core rev: 63606ffaaac1b84ddcad8a1c1006f8110050e20e)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
5507c394e7 oeqa/core: Don't expose OEStreamLogger in OETestContext
The OEStreamLogger class is used for redirect PyUnit output
to a certain logger so there is not need to expose at level
of OETestContext because only OETestRunner needs to know.

[YOCTO #11450]

(From OE-Core rev: 8787fba3df8acd9d2438669d20b1a5060caa9022)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
d05acd6bab oeqa/sdk/context.py: Add return to OESDKTestContext.run() method
The run() methods of a OETestContext's are expected to return the
results.

(From OE-Core rev: c45546b771c3158e66b2df504576d6dc1758ea75)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
13175d8d48 oeqa/sdk/context.py: Import argparse_oe at OESDKTestContext.run method
This import was at level of OESDKTestContext.register_commands
but OESDKTestContext.run method need it to raise exceptions.

(From OE-Core rev: 35efb419de1dbebd269d87895645934707130746)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Aníbal Limón
f3f40fe97b testsdk.bbclass: Remove unused import of OEStreamLogger
(From OE-Core rev: ab434125b9121e3d7c463a4b35ae60a4395f8392)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-02 13:36:13 +01:00
Andre McCurdy
bd063fa288 tune-mips32*.inc: use consistent comments across all three .inc files
No functional changes, just use a consistent set of comments to
separate hard and soft float tuning options.

(From OE-Core rev: 4aa6cdfe9f069ecd976c1257702fe8ff28c57f07)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Choong YinThong
4063637e68 unfs3: Rename mirror tarball to avoid clash
Rename the mirror tarball to align with recipe name
and avoid clash if user have local svn version.

[YOCTO #11501]

(From OE-Core rev: 83a1fcabab5797fcad10bc24e9ddce519a6f1ea2)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Huang Qiyu
db296fe846 pango: 1.40.3 -> 1.40.6
Upgrade pango from 1.40.3 to 1.40.6.

(From OE-Core rev: fa01a4eefe9c7b7dc6f22b7e57a84135ef0e00cf)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Fan Xin
f4aa2c0056 nss: Upgrade 3.29.1 to 3.30.2
Upgrade nss from 3.29.1 to 3.30.2

(From OE-Core rev: 08139f4c4a58a7bda2e7857349d56621d886278b)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Yuanjie Huang
12f9c4ca9f binutils: fix CVE-2017-7210
CVE: CVE-2017-7210

[BZ 21157] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21157

PR binutils/21157: Fix handling of corrupt STABS enum type strings.

(From OE-Core rev: d12a99cba6c9dc9e1f6bc3a7ca8057f07e9cb950)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Yuanjie Huang
02089be016 binutils: fix CVE-2017-7209 in readelf
CVE: CVE-2017-7209

[BZ 21135] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21135

PR binutils/21135: Fix invalid read of section contents whilst processing
a corrupt binary.

(From OE-Core rev: 2df642ca0a1e4a4e6616729018cf32d2108cabb2)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Fan Xin
4e5fd279b8 libxslt: Fix CVE-2017-5029
Backport upstream patch to fix CVE-2017-5029.

(From OE-Core rev: 5266e74c990df1cf965d162d9695eb5a698883ae)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Stefan Wiehler
909b50bb6c module.bbclass: Add devshell support
Adds development shell support for out-of-tree kernel modules by reproducing
the build environment of the compile task.

(From OE-Core rev: 08e366a386caab547e0dbcad2d4ee08f44814262)

Signed-off-by: Stefan Wiehler <stefan.wiehler@missinglinkelectronics.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Leonardo Sandoval
41dcb7d3bd package_ipk: correct ipk multiline descriptions
Empty descriptions lines are set with a space following by a dot and
the multiline ones require a leading space. Also, for non-empty lines,
there is no need for formating with textwrap, so remove the logic for
the latter. The documentation for multiline description was taken from [1].

[1] https://web.archive.org/web/20100727133051/http://handhelds.org:80/moin/moin.cgi/BuildingIpkgs

[YOCTO #10677]

(From OE-Core rev: c768c536e4dbee69690d0dc131df05a74b4eac8c)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Daniel Díaz
0c40be9088 piglit: add patches for unbuildable surfaceless Mesa test
Some EGL implementations do not actually ship all Khronos-
extensions. As it turns out, the Mali 450 driver does not
include any of the following symbols, used by the
egl_mesa_platform_surfaceless.c spec test:
* eglGetPlatformDisplay
* eglCreatePlatformPixmapSurface
* eglCreatePlatformWindowSurface

The Right Thing To Do was to obtain the implementation of
these functions (via eglGetProcAddress), as is provided
by their EXT counterparts. These are guaranteed to exist
since they are required by EGL_EXT_platform_base.

Upstream-Status: Submitted [piglit@lists.freedesktop.org]

(From OE-Core rev: 4f85500cfc76407fb4950bbb0df216577aea6bd7)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Daniel Díaz
58ca310b62 piglit: add patch for lack of gbm_bo_map
[Piglit Bug #100978] -- https://bugs.freedesktop.org/show_bug.cgi?id=100978

When linking against Mali 450 r6, errors like the following
can be seen:
  ../../../../lib/libpiglitutil_gl.so.0: undefined reference to `gbm_bo_unmap'
  ../../../../lib/libpiglitutil_gl.so.0: undefined reference to `gbm_bo_map'
  collect2: error: ld returned 1 exit status
  make[2]: *** [bin/point-sprite] Error 1

This is due to gbm_bo_map() and gbm_bo_unmap() being recently
added but not yet implemented by all graphics drivers.

Instead of relying on GBM's version, actually try to link
against those symbols.

Upstream-Status: Submitted [piglit@lists.freedesktop.org]

(From OE-Core rev: 2e0c8a510ee60d4ca97e58184c48995cd88a823f)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Daniel Díaz
b32d1614c7 piglit: depend on virtual/egl
While building for Hikey using Mali 450 driver (r6p0), an
error like the following appears while linking:

  [  1%] Linking C shared library ../../../../lib/libpiglitutil.so
  [...]
  [...]/aarch64-linaro-linux/gcc/aarch64-linaro-linux/6.3.1/ld: cannot find -lEGL
  collect2: error: ld returned 1 exit status
  make[2]: *** [lib/libpiglitutil.so.0] Error 1

Mesa generally provides virtual/egl (along with virtual/libgl,
which satisfies Piglit's current DEPENDS) but that is not the
implementation to use with Mali.

(From OE-Core rev: 02857bd952191e30830af54e21a675522ee3f830)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Maxin B. John
9b3a432318 bluez5: Upgrade 5.44 -> 5.45
(From OE-Core rev: 30178fed5172d0d8039dea06c32d391eb4a530b8)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Maxin B. John
e37282526a mmc-utils: Upgrade to latest git version
Updates in the new version:

37c86e6  : mmc-utils: Check for ext_csd_rev only once
c22a92f  : mmc-utils: feature spec  5.0+, Pre EOL information
34a954b  : mmc-utils: feature spec 5.0+, device life time estimation for MLC
           and pSLC mode

(From OE-Core rev: 0a6f7707bfe0a6cef613e6b413a6d89c2f684a7e)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Catalin Enache
9ed9d383b8 ghostscript: CVE-2016-7977, CVE-2016-7978, CVE-2016-7979, CVE-2017-9216
Ghostscript before 9.21 might allow remote attackers to bypass the SAFER
mode protection mechanism and consequently read arbitrary files via the
use of the .libfile operator in a crafted postscript document.

Use-after-free vulnerability in Ghostscript 9.20 might allow remote
attackers to execute arbitrary code via vectors related to a reference
leak in .setdevice.

Ghostscript before 9.21 might allow remote attackers to bypass the SAFER
mode protection mechanism and consequently execute arbitrary code by
leveraging type confusion in .initialize_dsc_parser.

libjbig2dec.a in Artifex jbig2dec 0.13, as used in MuPDF and Ghostscript,
has a NULL pointer dereference in the jbig2_huffman_get function in
jbig2_huffman.c. For example, the jbig2dec utility will
crash (segmentation fault) when parsing an invalid file.

References:
https://nvd.nist.gov/vuln/detail/CVE-2016-7977
https://nvd.nist.gov/vuln/detail/CVE-2016-7978
https://nvd.nist.gov/vuln/detail/CVE-2016-7979
https://nvd.nist.gov/vuln/detail/CVE-2017-9216

Upstream patches:
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=8abd22010eb4db0fb1b10e430d5f5d83e015ef70
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=6f749c0c44e7b9e09737b9f29edf29925a34f0cf
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=875a0095f37626a721c7ff57d606a0f95af03913
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=3ebffb1d96ba0cacec23016eccb4047dab365853

(From OE-Core rev: 584dfa2f780d5785aaff01f84fbabc18b3478d76)

Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Nicolas Dechesne
db446abd6c libdrm: upgrade to 2.4.81
(From OE-Core rev: cbac51701d82062cd86a6ee2d0e008ed9709d75a)

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Nicolas Dechesne
10a7a77d43 kmscube: upgrade version
Upgrade to a more recent kmscube commit from git. Tested on DB410c and DB820c
with s/w and h/w codecs (v4l2).

(From OE-Core rev: 71c109f19ff90f300e2c370d263d28bda0965070)

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Dmitry Rozhkov
ad9c4140bd boost: backport a regression fix for forgotten header
The v1.64 release has broken array serialization code with issues
reported in

https://svn.boost.org/trac/boost/ticket/12516
https://github.com/bmwcarit/meta-ros/issues/505

Backport the fix from boost::serialization's master.

(From OE-Core rev: e1da4cc99e57c596b2a354767cc1e261718dac52)

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:19 +01:00
Kai Kang
27200a3afd bind: build with threads and update configure options
Build without threads for bind is inherited from legacy openembedded.
All libc's support proper threading on Linux now, so enable threads
support for bind.

It is also need to disable static library build which cause package dhcp
fail to build after enable bind threads support.

Options devpoll and epoll are configured to choose most preferable
multiplex method for unix socket. The priorities are: epoll > poll >
select. When set '--enable-epoll', it just defines a var and include
header file that is available for cross compile. So use epoll for bind.

Add PACKAGECONFIG 'urandom' that could use /dev/urandom as random device.

Update file/directory ownerships to fix daemon start failure.

(From OE-Core rev: 598e5da5a2af2bd93ad890687dd32009e348fc85)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Kai Kang
291a273502 dhcp: build shared libraries
When enable bind threads support, it fails to compile dhcp:

| tmp/work/armv5e-poky-linux-gnueabi/bind/9.10.3-P3-r0/build/lib/isc/pthreads/../../../
| ../bind-9.10.3-P3/lib/isc/pthreads/thread.c:64: undefined reference to `pthread_create'

Enable build shared libraries for bind and dhcp to fix the build
failure. And the patch is ported from Fedora.

Add sub-package dhcp-libs to package shared libraries.

(From OE-Core rev: dde83ec778c09557d28b4388258e594be653875c)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Ed Bartosh
e680f23c8b runqemu: output qemu-system errors
Included error output from qemu-system into the runqemu error message.
Made error output more visible by printing new line before it.

[YOCTO #11542]

(From OE-Core rev: 7fe5f5c29ca271ab718bbd1383e596f2ae61554c)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Andrej Valek
72da61aae5 freetype: 2.7.1 -> 2.8
(From OE-Core rev: 5e4727bb424f3001178f8fbafabab592aa3b98ca)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Ross Burton
8f1663c457 gstreamer1.0-omx: delete broken m4 files
These m4 files need to be deleted so that the versions in the sysroot that we've
patched are used.  Specifically, building documentation fails as the gtk-doc
checks fail.

(From OE-Core rev: 4292886ee3b2311902af2b5aaa5f53c5b36c6bee)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Romain Perier
298dd9baab busybox: make SYSLOGD optionnal
Some distros might choose another syslogd provider like rsyslogd.
update-alternative will update the link from syslogd to the right
provider. However the syslogd feature is still present and enabled
in busybox.

This commit adds a new configuration fragment to make syslogd
optionnal in busybox.

(From OE-Core rev: 9732a2ba2edf2607e61ae4fe0d65a02b7918cfe7)

Signed-off-by: Romain Perier <romain.perier@collabora.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Li Zhou
1c0ce38ba0 python3: Move config-*/Makefile from misc package to dev package
Move config-*/Makefile in libdir from misc package to dev package for
python3, because it is only needed in development process.

(From OE-Core rev: d715dc422ce1723c8d05af7ad4183eeeb36bc2ec)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Li Zhou
0862df262d python3: Use _sysconfigdata.py to initialize distutils.sysconfig
Porting patch from
<409482251b>
to use _sysconfigdata.py to initialize distutils.sysconfig.

This patch makes that distutils.sysconfig doesn't need config-*/Makefile
in libdir any more. Next we can move it from python3-misc to python3-dev
package.

(From OE-Core rev: 659a80afc5894658f8b82fcd62ebe3562b441db9)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Kai Kang
c9f0e25a16 lsof: clear setuid
Having 'lsof' as a +s (setuid) binary could lead to security issues if
a compromise in the binary is found.  It is better that it be -s by
default as a precaution.

(From OE-Core rev: 346c65dd6855106069d1861ca965d3121eb084d1)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Richard Purdie
3730b6eded nasm: Upgrade 2.12.02 -> 2.13.01
(From OE-Core rev: 265602c5355c71e31bb6d84e0e608dc86980853b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Bruce Ashfield
8f090c03f1 kernel/meta: add virtualbox configuration fragment
As suggested by Khem, we can create a virtualbox configuration
fragment that helps to run XFCE under virtualization.

This can be enabled via KERNEL_FEATURES for targest that
require it, and may be enabled by default in the future.

(From OE-Core rev: a256addb330ec7b781c381894cc72cbd4a5005dd)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Bruce Ashfield
4b00778778 linux-yocto/meta: smp: Add config X86_BIGSMP since its needed when NR_CPUS > 8
Updating the kernel meta data with the following configuration change:

  When we set NR_CPUS to something > than 8, we also need to set
  X86_BIGSMP
  according to Kconfig:

  config X86_BIGSMP
        bool "Support for big SMP systems with more than 8 CPUs"

  otherwise NR_CPU will end up being reset to 8

[YOCTO #10362]

(From OE-Core rev: 98278549d960a84605f01fec73aefe5d8792d4bb)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Bruce Ashfield
916378e36e linux-yocto/meta: bluetooth: Adds BT_BREDR and BT_LE, which are needed as dependencies
Updating the kernel meta-data to pick up a bluetooth configuration change:

  BT_LE is nedded by BT_6LOWPAN

  BT_BREDR is needed by:
  BT_RFCOMM, BT_RFCOMM_TTY (secondary),
  BT_BNEP, BT_BNEP_MC_FILTER (secondary), BNEP_PROTO_FILTER (secondary),
  BT_CMTP, BT_HIDP

[YOCTO #10425]

(From OE-Core rev: 0457f08cce73ab8646f8a44e88884371e09f35b4)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-29 15:15:20 +01:00
Chang Rebecca Swee Fun
cd1addaaf4 cryptodev-linux: update SRC_URI
Gna! project announced that the download site from gna.org HTTP server
will soon be closing down. We have verified that the site is no longer
accessible without network proxy cache. We need to update SRC_URI to
point to new alternative (nwl.cc HTTP server) in order to avoid fetcher
issues in future.

[YOCTO #11575]

(From OE-Core rev: dc8b21ae0ed3bceb9f3df4f6cd8f8f55b9c306fb)

Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-27 14:52:45 +01:00
Kai Kang
5eed6c644f libpcap: add native package
Add package libpcap-native required by recipe daq-native in layer
meta-networking. And daq-native is added to fix snort start error.

(From OE-Core rev: 12373003cc3753421321d558813b1de95667c192)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Yuanjie Huang
204d9a0e01 binutils: fix CVE-2017-6969 in readelf
CVE: CVE-2017-6969
[BZ 21156] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21156

PR binutils/21156: Fix illegal memory accesses in readelf when
ing a corrupt binary.
PR binutils/21156: Fix another memory access error in readelf when
parsing a corrupt binary.

(From OE-Core rev: de04c9811f7ce5179ba261bd8eae921d7873d6cd)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Huang Qiyu
8759812810 mesa: 17.0.4 -> 17.0.6
Upgrade mesa from 17.0.4 to 17.0.6.

(From OE-Core rev: 53b58373c7f64fe5b03f1c90b2a0ec75d6c231a5)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Fan Xin
3c919af302 rpcbind: Fix CVE-2017-8779
This vulnerability is also called "rpcbomb".
Backport upstream patch to fix this vulnerability.

CVE: CVE-2017-8779

(From OE-Core rev: 7936c9451eb4c376a78a0ac7461d1b2430c7f1f3)

Signed-off-by: Fan Xin<fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Fan Xin
2d4ae96708 binutils: Fix CVE-2017-8392
Backport upsream commit to fix CVE-2017-8392

CVE: CVE-2017-8392

[BZ 21409] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21409

        PR 21409, segfault in _bfd_dwarf2_find_nearest_line

        PR 21409
        * dwarf2.c (_bfd_dwarf2_find_nearest_line): Don't segfault when
        no symbols.

(From OE-Core rev: dff01b827c87ae135a1d5511b1efbdad01c0eaee)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
5a88343af3 xkeyboard-config: Drop explicit dep on virtual/gettext
let gettext.bbclass provide the defaults they
are good for it.
What it needs it a dep on gettext-native for intltool-native
which now intltool-native expresses correctly

Helps compile when distros disable NLS

(From OE-Core rev: 0492eb8d781c49e29139d42973832593dd69cae5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Alejandro Hernandez
be8ceea70d intltool: Adds gettext as a DEPENDS
When setting USE_NLS="no" and building systemd-boot
(which DEPENDS on intltool), configure fails,
complaining about missing gettext:

configure: error: GNU gettext tools not found; required for intltool

This is caused because USE_NLS="no" makes the gettext class
add gettext-minimal-native to BASEDEPENDS instead of adding
gettext-native.

Since we still would like to set USE_NLS="no" and build systemd-boot,
we add gettext-native as a dependency to intltool-native, which makes it
available for the configure script of systemd-boot fixing the problem.

[YOCTO #11562]

(From OE-Core rev: 26bd53aebf3430f1b9ec459c6c6ab42c57d18319)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
California Sullivan
1431210bb0 systemd-boot.bbclass: Add configuration data to secondary EFI partition
The secondary EFI partition is used when booting in EFI mode, and
without the configuration data we don't get any boot targets.

Partial fix to [YOCTO #11503].

(From OE-Core rev: 84aa7a00810e135fdad3f77bdb1da7d1f5fb8627)

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
9777af544c systemd: Make knobs for compiler specific nn, ar, ranlib
These are used with LTO enabled so it has to be
compiler specific, making it weak default, makes
clang to override them when enabled.

(From OE-Core rev: 23cfb8416fb13a32e42ec3860c419ee419e55734)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Denys Dmytriyenko
b2b7ad4182 tcmode-default: use SDK_SYS suffix instead of SDK_ARCH for binutils-crosssdk
Commit d2eccccb70e809d482c493922f23aef4409cfd82 has changed suffixes for
all -crosssdk packages from SDK_ARCH to SDK_SYS, but missed one line with
binutils-crosssdk. This change fixes that omission.

(From OE-Core rev: 553d36ebbee364435e8c985961a7f829528658a4)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
d06896acf1 libnsl2: Add recipe
NIS functionality has been split out into independent
library from glibc

(From OE-Core rev: b73de31cbf58efb303006125f8cd22f130e21d8c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
80c00910b8 musl: Update to latest master
* f9f686b7 have posix_spawnattr_setflags check for supported flags
* 77e895dc add no-op POSIX_SPAWN_USEVFORK to spawn.h
* 55550416 s390x: provide sigcontext struct definition
* bb439bb1 implement new posix_spawn flag POSIX_SPAWN_SETSID
* 58e2396a remove va_arg hacks in printf core with undefined behavior
* e1232f5b make ttyname[_r] return ENODEV rather than ENOENT
* 1a7fa5e5 fix regression in support for resolv.conf attempts option
* 8c44a060 fix scalbn when result is in the subnormal range
* 2577b1bc allow full-range file offsets to mmap on archs with 64-bit syscall args
* b3751c32 fix dl_iterate_phdr in static PIE binaries
* 1ca59755 fix read past end of buffer in getaddrinfo backend

(From OE-Core rev: 1aceb2dcf5bd671d90ec0517ed8f6fa817ea64c0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Saul Wold
ab0747e7c6 devtool/standard.py: Enable perf to be buildable
Perf is a tool build from the kernel source, which is normally available
in /work-shared/..., but when devtool is used to modify the kernel
source code, perf is not buildable since it gets an error about being unable
to add a depends to a non-exisit task do_patch.

This patch removes do_patch from the SRCTREECOVEREDTASKS and creates an empty
do_patch task to enable the VarFlags code to have someplace to attach depends
information to.

[YOCT #11120]

(From OE-Core rev: 86c793595e560e7bc52e3cd2a2752746e6adcb76)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Aníbal Limón
989bbb9803 qemu: Upgrade to 2.8.1.1
Removed patch target-ppc-fix-user-mode.patch [1] already on
upstream.

[1] http://git.qemu.org/?p=qemu.git;a=history;f=linux-user/main.c;
h=65a769cf797254a86a7cf589d69e67595a9e1adb;hb=refs/heads/stable-2.8

(From OE-Core rev: 13f34c172dae842427365be3a891248a76104c28)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Carlos Rafael Giani
b8836853a0 kmscube: add recipe
This is a demo application that draws a three-dimensional spinning cube
using EGL on top of KMS, via Mesa's GBM library. A rough counterpart to
glxgears, it is a useful tool for BSP makers to try the 3D rendering
functionality based on EGL and OpenGL ES in a KMS environment, without
having to set up Wayland or X11.

It is also interesting for Yocto-based  projects that do not need any
windowing environment and instead render their visual output fullscreen
to KMS directly, since they can use it as a reference.

(From OE-Core rev: 399c0fdbaacf660750f874e5190dd9955ad9bb58)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Leonardo Sandoval
a3039415bb nfs-utils: upgrade to 2.1.1
(From OE-Core rev: 1143181577051ccd6de234fd79542bff24045280)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Leonardo Sandoval
560d654ebb ruby: upgrade to 2.4.1
(From OE-Core rev: 3ff2d0bc7a8e7a7e8c8e953dc0ccf84d891688ef)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
af3779d261 nspr: Fix build error due to missing stdint.h> include
(From OE-Core rev: 2c58d7176417dcb8226f6244363979e739450732)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
86638d1c8a libtirpc: Fix build error due to missing stdint.h> include
(From OE-Core rev: c74b925918e02ba0a13c8a30e510a9418f432f8d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
57527e449b iproute2: Fix build error due to missing stdint.h> include
(From OE-Core rev: 39481b72644d2779bb681bb2dba8db5ba1a3d18d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Khem Raj
13f1672157 libgcrypt: Do not restrict to ARM ISA
This works ok with thumb2 as well now a days
It was added in 2006
http://git.openembedded.org/openembedded/commit/?id=037b00e3d629962e8d2bc4fcc944c9ecf9a240be

(From OE-Core rev: 9f3401eb2c7ee6a4cf9c1b0cdeb61c8c0fdd2301)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Khem Raj
5205a9c603 libidn: Fix hardened build with musl
Re-introduce the patch that was deemed to be not needed
but it infact is still needed with musl

(From OE-Core rev: 3ba88c72e84c8c2a142b990b7547aa221f564d82)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Yeoh Ee Peng
61b2aef03a base.py: add assertExists and assertNotExists to oeselftest
Current osselftest print confusing assertion message when using
self.assertTrue(os.path.exists(filepath)) to test file path,
example of confusing assertion message:
	AssertionError: False is not true

Add the assertExists and assertNotExists to improve assertion
message and simplify coding, using selft.assertExists(filepath),
will print meaningful assertion message:
	AssertionError: <filepath> does not exist

[YOCTO #11356]

(From OE-Core rev: b0a74554ef926ce05078494ca8e67178b56232f5)

Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Joshua Lock
8da8909b7b kernel: predefine KBUILD_BUILD_USER and KBUILD_BUILD_HOST
By exporting KBUILD_BUILD_USER with a pre-defined value we improve the
reproducibility of the kernel and remove the requirement for whoami in the
HOSTTOOLS.
KBUILD_BUILD_HOST also helps improve the reproducibility of the kernel.

For more kernel reproducibility options see:
https://lwn.net/Articles/437864/

(From OE-Core rev: a5a14edb5573e33667b63b1e34cb4e19d075e8e8)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Paul Eggleton
415fbfb0cd scriptutils: fix fetch_uri() to work with RSS
Since recipe-specific sysroots were implemented, devtool add and devtool
upgrade operations that fetch from a URL that requires native sysroot
dependencies will fail to work as there is no recipe-specific sysroot
set up for them during fetching. An example was any URL pointing to a
tarball compressed with xz, e.g. devtool upgrade on gnutls.

The most expedient way to fix this is to set up a dummy recipe-specific
sysroot to use for the fetch/unpack operations. We do this in the same
manner as bitbake -b does, so we're just taking all of the sysroot
components available and creating a sysroot from those rather than
ensuring the correct dependencies are there - this means that we're
still going to have problems if e.g. xz-native hasn't been built yet,
but that issue will be trickier to solve and is tracked separately.

Fixes [YOCTO #11474].

(From OE-Core rev: 559151e783759af78b5cdd76cdbb9ce325a391e6)

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>
2017-05-25 23:59:31 +01:00
Stefan Müller-Klieser
ac344766f0 systemd: fix lz4 build
Updating lz4 in oe-core required back porting 3d4cf7de48a from master,
as versioning scheme changed.

(From OE-Core rev: ba71820ea16f2ee990dfca98b390d4ff586b7a49)

Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Bruce Ashfield
2d1c149079 linux-yocto/4.1: fix gcc7 compilation and v4.1.39
Porting the mainline commit, to fix gcc7 builds:

  474c90156c [give up on gcc ilog2() constant optimizations]

We also integrate the 4.1.39 -stable update to pick up additional
fixes.

(From OE-Core rev: f0effea8716faae749a7d15003647d68fa0cabf7)

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>
2017-05-25 23:59:31 +01:00
zhengrq
e1c6f96b25 libx11-diet: 1.6.4 -> 1.6.5
Upgrade libx11-diet from 1.6.4 to 1.6.5

(From OE-Core rev: fc514f692a122ad0df5b0f6ab72554ccab3cf9a7)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
zhengrq
d97bc45e6c libx11: 1.6.4 -> 1.6.5
Upgrade libx11 from 1.6.4 to 1.6.5

(From OE-Core rev: 2c63eded0293f8c7649bba69e5a398b24dc08986)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Khem Raj
52f48d89c7 webkitgtk: Fix build for armv5
Detect atomics during configure

(From OE-Core rev: 424ffbde2111130137e307eb9e598ad50451c865)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Max Krummenacher
a6fdea998e u-boot-mkimage: fix nativesdk build
If building for nativesdk the wrong rss sysroot is used leading the
following error message.

| ERROR: oe_runmake failed
| In file included from tools/imximage.c:13:0:
| include/image.h:1024:27: fatal error: openssl/evp.h: No such file or directory
|  # include  <openssl/evp.h>

Tools needed on the build host (script/basic/fixdep) and code compiled
for the SDK machine are both built with the build host's compiler,
leading to additinal errors.

Adding CROSS_COMPILE="${HOST_PREFIX}" and using the cross-compiler for
the SDK_ARCH fixes the build error.
The resulting binary in the SDK is working.

(From OE-Core rev: 5d3df78367be0afbfe001b4fa776a98a82e6ce54)

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Ed Bartosh
95bdb9a1bc systemd-boot: create output dir if it doesn't exist
build_efi_cfg function creates configuration files for
systemd-boot entries in 'S' directory. This directory
may not exist when api is called, which breaks the build.

Creating the directory if it doesn't exist should fix
this issue.

(From OE-Core rev: 2731d1efba7a03b2c658c8bb57629f5469184599)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:31 +01:00
Alejandro Hernandez
a3d160f9e5 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.10
Updates to Linux 4.10.15

(From meta-yocto rev: 28c2c9fc90431e0688c49874314caffc60d6014c)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:46:14 +01:00
Alejandro Hernandez
767399c07c linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.9
Updates to Linux 4.9.27

(From meta-yocto rev: 270a28fe3d7f438205f805f763396a5c3645c813)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:46:14 +01:00
Alejandro Hernandez
3f43a2bf95 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.4
Updates to Linux 4.4.67

(From meta-yocto rev: cc8a05a174e5a863c6acb4d130c65fba56307c67)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:46:14 +01:00
Alejandro Hernandez
cb40142a87 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.1
Updates to Linux 4.1.39

(From meta-yocto rev: f5fd419a0882f5bae4a7e7cf54e103cda9369142)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:46:13 +01:00
Scott Rifenbark
31ec7fa01d bitbake: bitbake-user-manual: Updated INHERIT descriptions
Fixes [YOCTO #11498]

Enhanced the glossary description for the INHERIT variable to give more
detail and to cross-reference the reader back into the Chapter 3
section describing its use.

(Bitbake rev: 362f6044fcaafe51ab4377af8f2606165b112717)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:37 +01:00
Markus Lehtonen
35c3e57686 scripts/buildstats-diff: support optimized rusage values
Buildstats from oe-build-perf-test results have been optimized to not
have child rusage values at all. There, rusage is the sum of parent and
child rusage values. This patch makes buildstats-diff compatible with
this format.

[YOCTO #11355]

(From OE-Core rev: 496a9dc179fe9dc370c940f4a2f7bcab869a804f)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:37 +01:00
Markus Lehtonen
d6c437ff6c oe-build-perf-report: implement --dump-buildstats
For dumping buildstats from the test runs being reported. The output
directory where buildstats are copied is 'oe-build-perf-buildstats/'.
Buildstats can be then further analyzed with buildstats-diff script, for
example.

[YOCTO #11355]

(From OE-Core rev: e06266798d975bd6bebdb6bfdbd3d21be1c44ffd)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Markus Lehtonen
1c46fbd628 oe-build-perf-report: two verbosity levels for --list
(From OE-Core rev: a77066751c81f27332cc16c565dff6a45c173b6c)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Markus Lehtonen
e1f84ea823 oe-build-perf-report: use correct x-axis max value in html charts
(From OE-Core rev: 1d99b018c2b6a44b9db2f2ede113e64dae751eee)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Markus Lehtonen
0aafcddab0 oeqa.utils.git: use --verify in rev_parse()
We use rev-parse for turning git object names into SHA-1 and checking
their existence. Using --verify option makes sure git-rev-parse does
what we expect.

(From OE-Core rev: f5b420c7f07a008c11d492b055c7cc8869f644d3)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Paul Eggleton
a7c686cfe6 recipetool: create: extract name of package from a repository
For git repositories in the absence of any other indicator, it's not an
unreasonable assumption that the name of the repository is the name of
the software package it contains, so use that as PN if we don't have
anything else.

(From OE-Core rev: ef73fa70f0955912b0da140922465a3c817424e9)

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>
2017-05-23 17:45:36 +01:00
Paul Eggleton
4f152bdce9 recipetool: create: skip values extracted from spec files containing macros
If a value we extract from a spec file contains an unexpanded macro
(e.g. %{macroname}) then we should discard it since we're not seeing the
actual value and we don't have an easy way of expanding it at the
moment.

This fixes for example getting %{name} as the recipe name when running
the following:

recipetool create https://github.com/gavincarr/mod_auth_tkt.git

(From OE-Core rev: eee56a19cda051da6267f808cd3a04a4c644acb3)

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>
2017-05-23 17:45:36 +01:00
Khem Raj
d40f0c916f glew: Compile with -D_GNU_SOURCE
Required with glibc 2.26
when x11 is not in distro features it errors
out due to mising CLOCK_REALTIME

 error: 'CLOCK_REALTIME' undeclared (first use in this function);
did you mean '_XOPEN_REALTIME'?
    if (clock_gettime(CLOCK_REALTIME, &ts) == -1)
                      ^~~~~~~~~~~~~~
                      _XOPEN_REALTIME

(From OE-Core rev: 389b5f96af68439cc8e135a33f1e41116cb1d1aa)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Khem Raj
67d7ea7c67 grub: Update to 2.02
Drop git recipe, add arm bits to 2.02 itself

(From OE-Core rev: 4f27e4042dfb39caa71c7c6eb0a327de6af4d563)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Huang Qiyu
f0ff93c2a5 libsndfile1: 1.0.27 -> 1.0.28
Upgrade libsndfile1 from 1.0.27 to 1.0.28.

(From OE-Core rev: 86009f82c8c8206cc79f68d14d68c7c0b3ffe491)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
53ed1b3063 vulkan: fix upstream version check
(From OE-Core rev: 76366b0e93a50a18e6c1203984e951e0f698c20f)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
014467aeeb dnf: fix upstream version check
(From OE-Core rev: dd277817ae0e1a8e8e604d7d822c3388eb2a3048)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
7b5813f416 db: fix upstream version check
(From OE-Core rev: 0bdb2260359b5e72c697ed4484e0d7f1230ab050)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
a39394cda1 ed: update to 1.14.2
(From OE-Core rev: c6c8a581958fbc988d9ad32de0305f2c93251b40)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
c65fd2c797 gnome-desktop3: update to 3.24.2
(From OE-Core rev: 958ab9fc08dea5a3fa28c513409069ffaf0685bc)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
c0c090cfed gdbm: update to 1.13
Rebase ptest.patch.

(From OE-Core rev: 1e04e38101dd0a05b37c1b3ca9b4298ac01e75b6)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
4fc6c60a66 sysprof: update to 3.24.1
(From OE-Core rev: 8ebf4933c730b6c5c9848d95b45e77d0d605ccfc)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
74f6169150 mpg123: update to 1.24.0
--with-module-suffix has been removed upstream.

(From OE-Core rev: ac5847fac825f3b4d88523a115ff12bc75542196)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
f785e0f6ea ffmpeg: update to 3.3
--enabled-x11grab option has been removed upstream
(and it was described as 'legacy' in the previous version)

(From OE-Core rev: e7be4005355808173d55bcc9f053f59939cc0048)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Carlos Rafael Giani
33dc3dd55f mpeg2dec: upgrade to version 0.5.1
(From OE-Core rev: c2790aad53075bf7d68fa79a4871abd8625eb0a6)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Jackie Huang
c6e8ce8530 icu: Use LARGE_BUFFER_MAX_SIZE for cmd
The previous patch used LARGE_BUFFER_MAX_SIZE instead
of SMALL_BUFFER_MAX_SIZE for cmd in function pkg_installLibrary,
which only fixed some of the cases when the command line
is too long, some other cases indicate that the
LARGE_BUFFER_MAX_SIZE is also needed in pkg_installCommonMode
and pkg_installFileMode to avoid overflow:

| *** buffer overflow detected ***: ../bin/pkgdata terminated

(From OE-Core rev: 2c3ec6b3c4e8faf9cf88ae33727b4fecef83d0f8)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Maxin B. John
29c426b886 connman: upgrade to 1.34
1.33 -> 1.34

1. Refreshed 0001-Fix-compile-on-musl-with-kernel-4.9-headers.patch
2. Removed upstreamed patch:
     0003-stats-Fix-bad-file-descriptor-initialisation.patch
3. Provided PACKAGECONFIGs for nftables and iptables support
4. Add new patch to fix build with nftables:
     0001-firewall-nftables-fix-build-with-libnftnl-1.0.7.patch

(From OE-Core rev: dfe40b7abbea36605e4ea8f74ec8e477505148a6)

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>
2017-05-23 17:45:36 +01:00
Marek Vasut
1fe39e8492 automake: Backport perl 5.22 fix
Backport 13f00eb4493c "automake: port to Perl 5.22 and later"
from automake upstream to fix build with perl 5.22 .

(From OE-Core rev: 7fa044e799db651d45e4732e2527acfc2bc7cd47)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Cody P Schafer
579d17ba5f cmake.bbclass: use cmake --build to build & install
Rather than presuming `make` is the generator, use cmake's generic
`cmake --build` feature (which knows to call the appropriate generator).

Both DESTDIR and VERBOSE still behave as intended when used as
environment variables instead of make variable-arguments.

As cmake-based builds don't do any configuration with `make`
invocations, we only pass `PARALLEL_MAKE{,INST}` (via a
EXTRA_OECMAKE_BUILD variable) to the underlying build tool. Make &
ninja support the same `-j N` option (and a few others), so this does
happen to work for both.

This makes it more straight forward for others to select other cmake
generators (many folks have been reaching for `ninja` lately).

CC: Andre McCurdy <armccurdy@gmail.com>
(From OE-Core rev: 2b06cb961edbe52ff66e8edccd007edd0795c30b)

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Ross Burton
74ed0a2615 kconfig-frontends: fix build race
In parallel builds utils/kconfig-tweak may be written to before utils/ exists,
so add a mkdir.

Also mark the pkgconfig patch as Submitted as I sent that upstream at the same
time.

(From OE-Core rev: 59921b3ce23fe0d391558425f7a5ade45cbcbd80)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:36 +01:00
Alexander Kanavin
cee2ed45a3 kconfig-frontends: update to 4.10.0.1
Add a couple of patches:
- move python script to use Python 3
- fix .pc file installation path

(From OE-Core rev: 3469c729a14bbf38bd2e9d7456c0651d8f313546)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:35 +01:00
Ed Bartosh
f7c2ec9f87 create-pull-request: support format-patch options
Added possibility to specify extra format-patch options
in the create-pull-request command line:
   create-pull-request -u contrib -r master -- -v3

(From OE-Core rev: 19e51f05011e827a34890e0c098f3bfa66559e1a)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:35 +01:00
Ed Bartosh
7e23b174e5 Revert "create-pull-request: add "-t in-reply-to" option"
Rasons:
 - It breaks the script if script is used without -t
 - Its functionality covered by the next patch

This reverts commit 3ad3fda6c5.

(From OE-Core rev: 9be68e6f058e2ab149e5c6f045479413cf0db69b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:35 +01:00
Ed Bartosh
c523b2ba27 selftest: fix test_unsupported_subcommand test case
Fixed failure of test_unsupported_subcommand caused by
switching to argparser by checking that parser returns
non-zero return code.

[YOCTO #9636]

(From OE-Core rev: 581db38a280bf4cb03faf568cefd8d97383b5417)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:35 +01:00
Andreas J. Reichel
db26c84474 wic: Add missing text to usage and help strings
Add missing parameters -c to and remove non-existent
parameter -i from usage string for 'wic create'.

(From OE-Core rev: da937e0e2478152968d5fd5eec7dd8cc2b922afb)

Signed-off-by: Andreas Reichel <andreas.reichel.ext@siemens.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Daniel Wagner <daniel.wagner@siemens.com>
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:35 +01:00
Andreas J. Reichel
05aa049e2c wic: Use argparse instead of optparse
* optparse is deprecated and will not be developed further
    (see: https://docs.python.org/2/library/optparse.html)
* argparse supports subcommands, which simplifies definition of
    arguments and options
* reimplement help mechanism through sub-subcommands

[YOCTO #9636]

(From OE-Core rev: 4fe9635c72a6ee1becc47d832ab54724176ee811)

Signed-off-by: Andreas Reichel <andreas.reichel.ext@siemens.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Daniel Wagner <daniel.wagner@siemens.com>
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23 17:45:35 +01:00
Chen Qi
ef506f58da cve-check-tool: backport a patch to make CVE checking work
CVE checking in OE didn't work as do_populate_cve_db failed with the following
error message.

  [snip]/downloads/CVE_CHECK/nvdcve-2.0-2002.xml is not consistent

Backport a patch to fix this error.

(From OE-Core rev: ee55b5685aaa4be92d6d51f8641a559d4e34ce64)

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>
2017-05-18 14:01:48 +01:00
Denys Dmytriyenko
1dda475da9 python3-nose: rename ${bindir}/nosetests into ${bindir}/nosetests3
This resolves a conflict when both python-nose and python3-nose are pulled
into an image and try to install ${bindir}/nosetests binary.

This matches with how other distros are solving this problem, e.g. Debian:
https://packages.debian.org/jessie/all/python3-nose/filelist

Also, other packages like python3-setuptools are already doing the same with
their binaries.

(From OE-Core rev: 1a3247d38939392bfdcb3eff1da7a1e08eff35f9)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Chang Rebecca Swee Fun
f9fc722182 ghostscript: check for incompatible host
The following warning occurs when building with meta-zephyr
with MACHINE set to arduino-101-sss:

WARNING: /srv/sdc/builds/11319/meta/recipes-extended/ghostscript/ghostscript_9.20.bb: Unable to get checksum for ghostscript SRC_URI entry objarch.h: file could not be found

This is due to the the TARGET_ARCH = "arc" for meta-zephyr is not
supported by ghostscript and causing bitbake unable to locate the
correct config file during recipe parse.

Adding checker in the recipe to raise an exception if the target
architecture is "arc". This would then only display an error if
someone specifically tries to build the recipe:

ERROR: ghostscript was skipped: incompatible with host arc-yocto-elf (not in COMPATIBLE_HOST)

[YOCTO #11344]

(From OE-Core rev: 720a7230b92d734106d5340a426270dd4e921e8e)

Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Huang Qiyu
24f4847dab libpng: 1.6.28 -> 1.6.29
1) Upgrade libpng from 1.6.28 to 1.6.29.
2) License checksum changed,since the copyright date and contributing authors were updated.

(From OE-Core rev: 1a8438601db2e7fd367b6927f6fa4e03cb74854a)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Huang Qiyu
88d8f24ac9 libpciaccess: 0.13.4 -> 0.13.5
1) Upgrade libpciaccess from 0.13.4 to 0.13.5.
3) Delete three patches, since they are integrated upstream.
   0001-Include-config.h-before-anything-else-in-.c.patch
   0002-Fix-quoting-issue.patch
   0003-linux_sysfs.c-Include-limits.h-for-PATH_MAX.patch

(From OE-Core rev: ef4bc266fb9e27d3335ba81a6a0f8ba19e3eb41f)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Choong YinThong
844f4fa43f gnupg: upgrade from 2.1.18 to 2.1.20
(From OE-Core rev: 0aa12590ef230d0b80b4fa15689c1e29309be49f)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Chin Huat Ang
9f0c6ff860 nspr: upgrade recipe to version 4.14
Upgrade to 4.14, also sanity tested to make sure rpm which depends on
nspr is working.

(From OE-Core rev: 5ac7e46e8740a2b8cf789c3ecfb1a3f9cd8402cd)

Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Yeoh Ee Peng
9e58f19bf1 man-pages: upgrade from 4.09 to 4.10
(From OE-Core rev: ab3863dcb3b6d0898ad3f89d6a365b50fcdf8102)

Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Catalin Enache
7bf386d5ff ghostscript: CVE-2016-8602, CVE-2017-7975
The .sethalftone5 function in psi/zht2.c in Ghostscript before 9.21 allows remote
attackers to cause a denial of service (application crash) or possibly execute
arbitrary code via a crafted Postscript document that calls .sethalftone5 with an
empty operand stack.

Artifex jbig2dec 0.13, as used in Ghostscript, allows out-of-bounds writes because
of an integer overflow in the jbig2_build_huffman_table function in jbig2_huffman.c
during operations on a crafted JBIG2 file, leading to a denial of service (application
crash) or possibly execution of arbitrary code.

References:
https://nvd.nist.gov/vuln/detail/CVE-2016-8602
https://nvd.nist.gov/vuln/detail/CVE-2017-7975

Upstream patches:
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=f5c7555c303
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=5e57e483298

(From OE-Core rev: 8f919c2df47ca93132f21160d919b6ee2207d9a6)

Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:48 +01:00
Maxin B. John
e60319ddb0 ofono: drop unmaintained _git recipe
Similar to gstreamer _git recipes, this recipe wasn't kept upto date
or tested regularly.

(From OE-Core rev: 9348ab34de2fe2ab04c8b84011809045c632fd87)

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>
2017-05-18 14:01:48 +01:00
Maxin B. John
f74c3dc19c ofono: upgrade to 1.20
1.19 -> 1.20

(From OE-Core rev: 9333db014a56559f96bb912436a1f9f5b453e1e0)

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>
2017-05-18 14:01:48 +01:00
Maxin B. John
18cc4144f7 harfbuzz: upgrade to 1.4.6
(From OE-Core rev: 907e9d783a08577fee0ac847f311afb78770d9d4)

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>
2017-05-18 14:01:48 +01:00
Maxin B. John
4dd0cc25fa sqlite3: upgrade to 3.18.0
(From OE-Core rev: 6949d865d3559fa37ff25de4b97c4460b42e0e9c)

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>
2017-05-18 14:01:48 +01:00
Maxin B. John
a1d5bc4a03 libsolv: upgrade to 0.6.27
(From OE-Core rev: 50020e4eb1a9407eadbccff6b79a13e749df422a)

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>
2017-05-18 14:01:47 +01:00
Maxin B. John
c15cb8103b minicom: upgrade to 2.7.1
(From OE-Core rev: c33fbbcc22c57be30619a6a53d6dd41618f3eedc)

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>
2017-05-18 14:01:47 +01:00
Maxin B. John
8bd2ad400d mc: upgrade to 4.8.19
(From OE-Core rev: 2d550e2460098e6c28aaead82ada35e180c64abf)

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>
2017-05-18 14:01:47 +01:00
Ricardo Salveti
3a392d7bde linux-firmware: package Qualcomm QCA firmware
Firmware files for the QCA61x4 ROME BT family chips. Firmware shares the
same license as used by ath10k.

(From OE-Core rev: cc5fa321bb8988344f10f4fbc843e23e5d73fe33)

Signed-off-by: Ricardo Salveti <rsalveti@rsalveti.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Aníbal Limón
c4a5fb4e81 ptest-runner: Upgrade to to 2.1+gitAUTOINC+78afe246fb
The new 2.1 version supports creating XML results specifying the
-x option.

The xml output format can be see here [1].

[1] https://wiki.yoctoproject.org/wiki/QA/xUnit_XML_Template

(From OE-Core rev: 93742e37797ef0659bb030cee23a6e3c35e92479)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Cody P Schafer
c9043894b8 binutils: package libbfd seperately
Some tools (my issue was with 'perf') only need the libbfd component of
binutils, so we can save space in images by splitting it out.

Previously, instead of `perf` pulling in `libbfd-VERSION.so`, it pulled
in all the libraries and binaries from binutils.

(From OE-Core rev: d57109e44f1a32d0e39d250ad7e71d7d80757d35)

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Alexander Kanavin
ccca9340d2 bmap-tools: switch to taking source from git
This is where new development happens; in particular Python 3.x support
will first appear here:
https://github.com/01org/bmap-tools/issues/14

(From OE-Core rev: 03a569aec764fab4dadbe4461eec15d4d38111a0)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Huang Qiyu
b59be5e7e5 libgpg-error: 1.26 -> 1.27
1) Upgrade libgpg-error from 1.26 to 1.27.
2) One file's LIC_FILES_CHKSUM checksums changed (src/gpg-error.h.in),but LICENSE remains the same.
3) Delete PR assignmen,since the version is upgraded.

(From OE-Core rev: db623a39e05b9d24ad6252dd24bb7610ed6f578a)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Alexander Kanavin
67ec852bc3 apr-util: add support for openssl 1.1 via backported patch
(From OE-Core rev: 98efbb3183a33f0a94456fd8cfe040d82a12afc3)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Alexander Kanavin
860fab8e92 bind: fix upstream version check
(From OE-Core rev: 82a47a2748869a20e992b72bcc104ae2ab81a3cc)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Alexander Kanavin
74684e30ea python: update to 3.5.3
Prior versions of python do not support openssl 1.1; updating to
Python 3.6 on the other hand is a lot more involved, and so should
be done by a specialist/maintainer.

LICENSE checksum change due to copyright years.

Drop upstreamed python3-fix-CVE-2016-1000110.patch

Rebase upstream-random-fixes.patch (taken from
ff558f5aba )

Rebase 0001-Do-not-use-the-shell-version-of-python-config-that-w.patch

Rebase 000-cross-compile.patch

(From OE-Core rev: b7b982a29e5d14c558b5fc25b4dc727810510ade)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Aníbal Limón
3266238516 selftest/devtool: change write to append config in virtual_kernel_modify
When uses write it creates a full new configuration in selftest.inc
causing to fail populate_sdk_ext linux-yocto because the signature
of the sstate changes.

[YOCTO #11300]

(From OE-Core rev: 65bab9210be51aeb431ea85c90e31ad9f0d2340c)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Markus Lehtonen
4fdb6aa28d build-perf-test-wrapper.sh: support uploading test reports
Implement new '-R' command line option for specifying an rsync
destination where to upload test reports.

[YOCTO #5049]

(From OE-Core rev: ebc37ede5b247347483128f091b505fe33356591)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Markus Lehtonen
5403db7f40 oe-build-perf-report: allow slashes in {branch} field in tag names
The target branch name might contain slashes.

(From OE-Core rev: 3ddde7d5bcffdd855dae0da6ba5feec752cbacec)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Markus Lehtonen
cdb02b7d93 oe-build-perf-report: accept parenthesis in tag names
(From OE-Core rev: b1feae0e23300ea3894d14d2e7b1c1f8b419146e)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Patrick Ohly
0ef6fc5f9b QemuRunner: avoid tainting os.environ
That a utility function permanently changes the process environment is
bad style and leads to subtle, hard to debug problems.

For example, we had one oe-selftest which used runqemu() with an
override for DEPLOY_DIR_IMAGE. Another test then just called runCmd()
and ended up passing the wrong DEPLOY_DIR_IMAGE set earlier in
os.environ.

The approach used here is to pass the desired environment dict to the
launch() method as a new, optional parameter, which then gets passed
on to subproject.Popen(). The modified env variables do not get
logged, as before.

[YOCTO #11443]

(From OE-Core rev: cab20f3b2fe668a63c58b44f2ad797fed74226fe)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Martin Kelly
5b649b4bbd scripts/runqemu.README: fix typo
(From OE-Core rev: 35d2cb0c7945d5d115b8e5a320b6bd769cb61a27)

Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:47 +01:00
Chen Qi
86795b756a cve-check.bbclass: make warning contain CVE IDs
When warning users about unpatched CVE, we'd better put CVE IDs into
the warning message, so that it would be more straight forward for the
user to know which CVEs are not patched.

So instead of:
  WARNING: gnutls-3.5.9-r0 do_cve_check: Found unpatched CVE, for more information check /path/to/workdir/cve/cve.log.
We should have:
  WARNING: gnutls-3.5.9-r0 do_cve_check: Found unpatched CVE (CVE-2017-7869), for more information check /path/to/workdir/cve/cve.log.

(From OE-Core rev: ad46069e7b58f2fba373131716f28407816fa1a6)

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>
2017-05-18 14:01:46 +01:00
Zhenbo Gao
4ef31feab1 archiver: avoid archiving source for glibc-locale
Avoid archiving source for glibc-locale as its tasks
do_fetch do_unpack and do_patch have already been deleted.

(From OE-Core rev: 50ed224ebc8d88a900febdc78013fa0c791d71cf)

Signed-off-by: Zhenbo Gao <zhenbo.gao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Patrick Ohly
23ecae6d67 archiver.bbclass: do not cause kernel rebuilds
Adding or removing archiver.bbclass from a build configuration causes
rebuilds of linux-yocto-based kernels because of the
do_kernel_configme->do_unpack_and_patch task dependency.

This particular dependency can be ignored for the do_kernel_configme
sstate signature calculcation. Idea for the fix from Richard Purdie.

Note that building the kernel and adding archiver.bbclass later to
archive sources leads to do_unpack_and_patch running after
do_kernel_configme (because that already ran in the first build),
which might be problematic. This is independent of the change here.

The use case in YOCTO #11441 is to removed archiver.bbclass between a
production build with archiving enabled and builds via oe-selftests
without archiving. That direction is fine.

Fixes: YOCTO #11441

(From OE-Core rev: fed0ed82928e6a7846fbad233ac657bd17bcefc7)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Patrick Ohly
3208824ae6 archiver.bbclass: various fixes for original+diff mode
The diff.gz gets created in do_unpack_and_patch, but
do_deploy_archives did not depend on it, so there was a race
condition. For example, "bitbake linux-intel:do_deploy_archives"
without a prior "bitbake linux-intel:do_kernel_configme" did not
deploy the diff.gz.

When do_unpack_and_patch ran first, it failed because the output
directory didn't exist yet and the error was not detected because the
result of the diff command wasn't checked.

Changing the current working directory in create_diff_gz() without
returning to the original directory caused warnings like this:
   WARNING: linux-intel-... do_unpack_and_patch: Task do_unpack_and_patch changed cwd to .../tmp-glibc/work-shared/intel-corei7-64

(From OE-Core rev: 18aac553ca35049c80b6cc82ff0e69ce8a7a03a9)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Patrick Ohly
c2221c4ca1 archiver.bbclass: enhance do_ar_recipe task signature
Previously, do_ar_recipe ran again unnecessarily when adding or
removing classes like buildhistory.bbclass, because that changes the
BBINCLUDED variable which do_ar_recipe uses to find .bbappend files.

This is both extra work and also sometimes triggered "basehash
changed" errors (seen under oe-selftest, which adds machine.inc and
bblayers.inc) because BBINCLUDED is special and does not cause
the basehash to be recalculated.

The file *content* already was not considered in the task signature,
instead relying indirectly on PF (which includes the revision assigned
by a PR server) to ensure that a new versioned source archive gets
created each time there is a rebuild.

Therefore it makes sense to use the same mechanism and also ignore the
file *list*, i.e. exclude BBINCLUDED from the task signature.

(From OE-Core rev: 9666f0e0b02efc14226c77497fd38f79fc372f98)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Alexander Kanavin
b71c46f300 parted: move test helper scripts to Python 3
(From OE-Core rev: 2513edb9a804205480b8fbe11e0c289f283627b0)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Ross Burton
dcd53ad6f9 opkg-utils: don't generate PN-dev and PN-staticdev
opkg-utils ends up in any opkg/rpm image with package management as it's the
provider for update-alternatives.  If dev-pkgs is enabled then opkg-utils-dev
will get installed, which is empty but will subsequently pull python3-dev into
the image (as opkg-utils-python depends on python3).

As this can result in all of Python appearing in otherwise small images, don't
generate these pointless packages.

(From OE-Core rev: 5da7a0ba47d39612b08b4f71518b8384a3058b3f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Alexander Kanavin
c91c70b5ab opkg-utils: move to Python 3
The scripts were fixed to be compatible with py3 some time ago,
but the shebang continued to refer to python 2.x.

(From OE-Core rev: bb5718b631151cff840bcfa171ad4f8326c2132e)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Bruce Ashfield
4725e56f8b linux-yocto/4.9: update to v4.9.27
Integrating the korg v4.9.22 -> .27 releases with the following shortlog
summary:

   89f3b8d5f264 Linux 4.9.27
   a0d50c80a29e dm ioctl: prevent stack leak in dm ioctl call
   7ad6de43deda cpu/hotplug: Serialize callback invocations proper
   e99b0ea39354 ceph: try getting buffer capability for readahead/fadvise
   1bf9bc481338 8250_pci: Fix potential use-after-free in error path
   3fbd2ba1da3f hwmon: (it87) Avoid registering the same chip on both SIO addresses
   d24261e567e1 scsi: storvsc: Workaround for virtual DVD SCSI version
   1b7f385e049c tpm_tis: use default timeout value if chip reports it as zero
   d8fd99d4721d Handle mismatched open calls
   00cca9768ebe timerfd: Protect the might cancel mechanism proper
   d071951e08ee Linux 4.9.26
   6d10a6cfe85e ftrace/x86: Fix triple fault with graph tracing and suspend-to-ram
   9cbf4337a51d ARCv2: save r30 on kernel entry as gcc uses it for code-gen
   4684be169a67 net: can: usb: gs_usb: Fix buffer on stack
   07389a140f48 macsec: avoid heap overflow in skb_to_sgvec
   36e0be3187c2 ceph: fix recursion between ceph_set_acl() and __ceph_setattr()
   d7809b9e99bb nfsd: stricter decoding of write-like NFSv2/v3 ops
   8ed0797966fd nfsd4: minor NFSv2/v3 write decoding cleanup
   fc6445df466f nfsd: check for oversized NFSv2/v3 arguments
   b88e4113250d Input: i8042 - add Clevo P650RS to the i8042 reset list
   990afef90e08 ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
   b2b93bbeec2d p9_client_readdir() fix
   92f0ddece7da MIPS: Avoid BUG warning in arch_check_elf
   6fbb6c02df30 MIPS: cevt-r4k: Fix out-of-bounds array access
   4805f8a8a2f6 MIPS: KGDB: Use kernel context for sleeping threads
   563300b9ff7f ARC: [plat-eznps] Fix build error
   59f83369d44c ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
   26b9b1565baf ALSA: firewire-lib: fix inappropriate assignment between signed/unsigned type
   827faa2e4ef7 ALSA: oxfw: fix regression to handle Stanton SCS.1m/1d
   b1fc1b057b8e ipv6: check raw payload size correctly in ioctl
   1dc1b7b50866 tcp: memset ca_priv data to 0 properly
   df1926123f0c ipv6: check skb->protocol before lookup for nexthop
   ae6a762dcdf0 net: phy: fix auto-negotiation stall due to unavailable interrupt
   62817c314af3 net: ipv6: regenerate host route if moved to gc list
   ae88c43c019f macvlan: Fix device ref leak when purging bc_queue
   7bf657201c21 net/mlx5e: Fix ETHTOOL_GRXCLSRLALL handling
   c3215c31ef5c net/mlx5e: Fix small packet threshold
   03641c4ded85 net/mlx5: Fix driver load bad flow when having fw initializing timeout
   b2440a5d3e25 ip6mr: fix notification device destruction
   291e60458ddf netpoll: Check for skb->queue_mapping
   94e5670c933d net: ipv6: RTF_PCPU should not be settable from userspace
   7ab89b176b7a gso: Validate assumption of frag_list segementation
   fcbf5a71a646 dp83640: don't recieve time stamps twice
   e344e97fb359 sh_eth: unmap DMA buffers when freeing rings
   b4580d6f10a3 net: vrf: Fix setting NLM_F_EXCL flag when adding l3mdev rule
   8c04e2acd537 net-timestamp: avoid use-after-free in ip_recv_error
   c86872a43400 ipv6: Fix idev->addr_list corruption
   479beb4c6554 tcp: clear saved_syn in tcp_disconnect()
   02f04309673e sctp: listen on the sock only when it's state is listening or closed
   dbaaa5890df7 net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
   425cc775d18a l2tp: fix PPP pseudo-wire auto-loading
   b7902607693f l2tp: take reference on sessions being dumped
   1f49c8cd2c9a net/packet: fix overflow in check for tp_reserve
   10452124bac3 net/packet: fix overflow in check for tp_frame_nr
   3ae0fc950603 l2tp: purge socket queues in the .destruct() callback
   59bc404b3829 l2tp: hold tunnel socket when handling control frames in l2tp_ip and l2tp_ip6
   501299e64381 net/mlx5: Avoid dereferencing uninitialized pointer
   0ea3c235779a bpf: improve verifier packet range checks
   d60d4e8c1b73 kcm: return immediately after copy_from_user() failure
   c63d6180076b net: phy: handle state correctly in phy_stop_machine
   4f99161f2ec5 net: neigh: guard against NULL solicit() method
   512d211207df sparc64: Fix kernel panic due to erroneous #ifdef surrounding pmd_write()
   24870a79dad6 sparc64: kern_addr_valid regression
   e88a8e0a23c2 ping: implement proper locking
   7c80a91b8877 Revert "mmc: sdhci-msm: Enable few quirks"
   a8c90ef62281 Linux 4.9.25
   c36eaa6ca346 device-dax: switch to srcu, fix rcu_read_lock() vs pte allocation
   f8bc0881fe95 x86/mce: Make the MCE notifier a blocking one
   6966a6579e1b x86/mce/AMD: Give a name to MCA bank 3 when accessed with legacy MSRs
   1bd55ab13039 powerpc/kprobe: Fix oops when kprobed on 'stdu' instruction
   790b2b5a01ce ubi/upd: Always flush after prepared for an update
   87cfeaa5e5a1 mac80211: fix MU-MIMO follow-MAC mode
   e0411f1eb549 mac80211: reject ToDS broadcast data frames
   b93858556fd1 ubifs: Fix O_TMPFILE corner case in ubifs_link()
   a260ff509b4d ubifs: Fix RENAME_WHITEOUT support
   9fc131428536 mmc: sdhci-esdhc-imx: increase the pad I/O drive strength for DDR50 card
   4420e5f323c4 ACPI / power: Avoid maybe-uninitialized warning
   11ba522d7929 Input: elantech - add Fujitsu Lifebook E547 to force crc_enabled
   3d42ca46f47a s390/mm: fix CMMA vs KSM vs others
   f79ef57911ee CIFS: remove bad_network_name flag
   0b7c97066341 cifs: Do not send echoes before Negotiate is complete
   c0a602ad31ee mm: prevent NR_ISOLATE_* stats from going negative
   d80e90712a50 ring-buffer: Have ring_buffer_iter_empty() return true when empty
   d4decac1edaa tracing: Allocate the snapshot buffer before enabling probe
   174a74dbca2d KEYS: fix keyctl_set_reqkey_keyring() to not leak thread keyrings
   b2dd90e812f3 KEYS: Change the name of the dead type to ".dead" to prevent user access
   a5c6e0a76817 KEYS: Disallow keyrings beginning with '.' to be joined as session keyrings
   2f5e58ec793f Linux 4.9.24
   35b9d61ea910 sctp: deny peeloff operation on asocs with threads sleeping on it
   c67c2be735b1 net: ipv6: check route protocol when deleting routes
   86c6667f6a5f virtio-console: avoid DMA from stack
   fb00319317c1 cxusb: Use a dma capable buffer also for reading
   28d1e8b7ef81 dvb-usb-firmware: don't do DMA on stack
   36b62c08e72b dvb-usb: don't use stack for firmware load
   2c0ad235ac77 mm: Tighten x86 /dev/mem with zeroing reads
   ef793e6e1134 rtc: tegra: Implement clock handling
   0dd962118a20 ACPI / EC: Use busy polling mode when GPE is not enabled
   c07479f4b10a x86/xen: Fix APIC id mismatch warning on Intel
   03470ba96a96 platform/x86: acer-wmi: setup accelerometer when machine has appropriate notify event
   a6ca4946676b ASoC: Intel: select DW_DMAC_CORE since it's mandatory
   25640e792f1a nbd: fix 64-bit division
   7599166d7855 nbd: use loff_t for blocksize and nbd_set_size args
   9c0c43527263 drm/nouveau/disp/mcp7x: disable dptmds workaround
   754ae7efb383 mm: memcontrol: use special workqueue for creating per-memcg caches
   b1574caf9664 ext4: fix inode checksum calculation problem if i_extra_size is small
   1992564156b5 dvb-usb-v2: avoid use-after-free
   de75264ee112 ath9k: fix NULL pointer dereference
   a28acecbaf25 parisc: Fix get_user() for 64-bit value on 32-bit kernel
   c10479591869 crypto: ahash - Fix EINPROGRESS notification callback
   64ba06dc8a1d crypto: algif_aead - Fix bogus request dereference in completion function
   7da0f8e547c2 ftrace: Fix function pid filter on instances
   e3c7258bb4fe zram: do not use copy_page with non-page aligned address
   75465e71ec31 kvm: fix page struct leak in handle_vmon
   5a4c0738998a Revert "MIPS: Lantiq: Fix cascaded IRQ setup"
   a9da1ac37ccf char: lack of bool string made CONFIG_DEVPORT always on
   666452ffdbf7 ftrace: Fix removing of second function probe
   fdaa36c75c5a irqchip/irq-imx-gpcv2: Fix spinlock initialization
   5dda157006bc cpufreq: Bring CPUs up even if cpufreq_online() failed
   5f48cacaa72c pwm: rockchip: State of PWM clock should synchronize with PWM enabled state
   088e5800500e can: ifi: use correct register to read rx status
   5ac50e714f60 libnvdimm: fix reconfig_mutex, mmap_sem, and jbd2_handle lockdep splat
   5f377c4ad271 libnvdimm: fix blk free space accounting
   0c6172ccbb59 make skb_copy_datagram_msg() et.al. preserve ->msg_iter on error
   ff76ab9e03a5 new privimitive: iov_iter_revert()
   e485875dff38 xen, fbfront: fix connecting to backend
   92f8aa7bb825 target: Avoid mappedlun symlink creation during lun shutdown
   08383b004426 scsi: sd: Fix capacity calculation with 32-bit sector_t
   64e746983c4c scsi: qla2xxx: Add fix to read correct register value for ISP82xx.
   82d181d7540f scsi: sd: Consider max_xfer_blocks if opt_xfer_blocks is unusable
   c80c158bfe61 scsi: sr: Sanity check returned mode data
   281e36cbaf43 iscsi-target: Drop work-around for legacy GlobalSAN initiator
   0ae3c95e3a31 iscsi-target: Fix TMR reference leak during session shutdown
   eff58f9084a0 efi/fb: Avoid reconfiguration of BAR that covers the framebuffer
   60174fb3eaa6 efi/libstub: Skip GOP with PIXEL_BLT_ONLY format
   1681bab7c450 parisc: fix bugs in pa_memcpy
   6ef2f0178649 ACPI / scan: Set the visited flag for all enumerated devices
   0b914aa8cdc6 acpi, nfit, libnvdimm: fix interleave set cookie calculation (64-bit comparison)
   5e29a45f1ef0 x86/vdso: Plug race between mapping and ELF header setup
   ec980b6f7dcc x86/vdso: Ensure vdso32_enabled gets set to valid values only
   a9826aa4860a x86, pmem: fix broken __copy_user_nocache cache-bypass assumptions
   59bf23088953 x86/signals: Fix lower/upper bound reporting in compat siginfo
   41d8b02f6448 x86/efi: Don't try to reserve runtime regions
   085656dad4b0 perf/x86: Avoid exposing wrong/stale data in intel_pmu_lbr_read_32()
   0ea2dcf1f9e6 Input: xpad - add support for Razer Wildcat gamepad
   730fecb3401f CIFS: store results of cifs_reopen_file to avoid infinite wait
   3d8d2f234476 CIFS: reconnect thread reschedule itself
   fd3be7eaff14 drm/etnaviv: fix missing unlock on error in etnaviv_gpu_submit()
   e6bcbdc59356 drm/nouveau/mmu/nv4a: use nv04 mmu rather than the nv44 one
   b29a17524bc1 drm/nouveau/mpeg: mthd returns true on success now
   975a7ea950c6 orangefs: free superblock when mount fails
   d19f745ea3a9 zsmalloc: expand class bit
   5c9d08320229 thp: fix MADV_DONTNEED vs clear soft dirty race
   f584803c4942 thp: fix MADV_DONTNEED vs. MADV_FREE race
   5ef6f4dec559 tcmu: Skip Data-Out blocks before gathering Data-In buffer for BIDI case
   890aec8eae09 tcmu: Fix wrongly calculating of the base_command_size
   ef599fa52429 tcmu: Fix possible overwrite of t_data_sg's last iov[]
   f44236a1b05b cgroup, kthread: close race window where new kthreads can be migrated to non-root cgroups
   c3582cc56eac Linux 4.9.23
   0ade21a2ed74 dma-buf: add support for compat ioctl
   27dedde6895c net/mlx4_core: Fix when to save some qp context flags for dynamic VST to VGT transitions
   48b2f1dd5787 net/mlx4_core: Fix racy CQ (Completion Queue) free
   cee26997a604 net/mlx4_en: Fix bad WQE issue
   ec0c5f06dba4 usb: hub: Wait for connection to be reestablished after port reset
   d7045cbf4a06 blk-mq: Avoid memory reclaim when remapping queues
   16fc98c2479f net/packet: fix overflow in check for priv area size
   0ee72d8f9b8e Revert "drm/i915/execlists: Reset RING registers upon resume"
   69fbc505c87b crypto: caam - fix invalid dereference in caam_rsa_init_tfm()
   75964d0f1914 crypto: caam - fix RNG deinstantiation error checking
   91f9f51b1836 MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch
   aa05503149b3 MIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK
   e8fa51d31aee MIPS: Switch to the irq_stack in interrupts
   aa6b1dac465e MIPS: Only change $28 to thread_info if coming from user mode
   86b54e48c468 MIPS: Stack unwinding while on IRQ stack
   742817bb77f9 MIPS: Introduce irq_stack
   760327cb080b mtd: bcm47xxpart: fix parsing first block after aligned TRX
   31c576a5fe50 rt2x00: Fix incorrect usage of CONFIG_RT2X00_LIB_USB
   f0df317b2bb3 rt2x00usb: do not anchor rx and tx urb's
   cb794d57931b rt2x00usb: fix anchor initialization
   938f8e856064 i2c: bcm2835: Fix hang for writing messages larger than 16 bytes
   f7513c9165bf orangefs: fix buffer size mis-match between kernel space and user space.
   1b9921866dc5 orangefs: Dan Carpenter influenced cleanups...
   dcac0d18e7e1 orangefs: fix memory leak of string 'new' on exit path
   17fda94d181c drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker)
   82dafcb93b0f drm/i915: Stop using RP_DOWN_EI on Baytrail
   954ce087072c drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters.
   1cbf6296fb35 drm/i915: Only enable hotplug interrupts if the display interrupts are enabled
   1435e12e4af9 drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3
   988028e55b88 drm/i915: Nuke debug messages from the pipe update critical section
   8ac9915c3f86 drm/i915/gen9: Increase PCODE request timeout to 50ms
   cf2586e60ede Linux 4.9.22
   7eae64f9195c x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk
   af11789a0548 usb-storage: Add ignore-residue quirk for Initio INIC-3619
   e5525c7419f1 x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk
   0605fff95d33 x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk
   7c6b1ad9deb5 platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT
   71f38c11cdb8 platform/x86: asus-wmi: Set specified XUSB2PR value for X550LB
   4dc1eb47fbea watchdog: s3c2410: Fix infinite interrupt in soft mode
   b18877ff66cf PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432
   5feac34f670c PCI: Sort the list of devices with D3 delay quirk by ID
   6b69d1f64499 mmc: sdhci-of-esdhc: remove default broken-cd for ARM
   0ddf07d2a130 PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports
   28dd2313a6e4 PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS
   35b366d584da ARM: smccc: Update HVC comment to describe new quirk parameter
   25bdb190ade0 drm/msm/adreno: move function declarations to header file
   bec9918bb4da firmware: qcom: scm: Fix interrupted SCM calls
   007f0a2f2c0f arm: kernel: Add SMC structure parameter
   703f48a1c302 HID: wacom: don't apply generic settings to old devices
   abb640893830 ASoC: sun4i-i2s: Add quirks to handle a31 compatible
   3d2f06d8d180 ACPI: save NVS memory for Lenovo G50-45
   09f78f116c03 ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support
   584f4318f923 ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection
   4060a32e9d24 ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10
   d572cfb66264 ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10
   58153cca226f ASoC: rt5670: Add missing 10EC5072 ACPI ID
   e4ae51e44b89 ACPI / button: Change default behavior to lid_init_state=open
   b369fd719fa4 sata: ahci-da850: implement a workaround for the softreset quirk
   f36d3f1fe79e PCI: Add ACS quirk for Intel Union Point
   a452e4eb6ee2 ARM: dts: STiH407-family: set snps,dis_u3_susphy_quirk
   9ec57c921b9d drm/mga: remove device_is_agp callback
   ae3a3e209ef1 usb: dwc3: host: pass quirk-broken-port-ped property for known broken revisions
   7bdf7bebbbed usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested
   15159247d25b usb: xhci: add quirk flag for broken PED bits
   660b38eab885 ARM: davinci: PM: support da8xx DT platforms
   db7c1706fa6d Input: gpio_keys - add support for GPIO descriptors
   80b0d7e623d1 serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x
   6b8deb108273 usb: chipidea: msm: Rely on core to override AHBBURST
   c5fc946a15dc scsi: ufs: issue link starup 2 times if device isn't active
   a17bddc4a781 scsi: ufs: introduce a new ufshcd_statea UFSHCD_STATE_EH_SCHEDULED
   e94ed347105d ASoC: Intel: bytcr_rt5640: quirks for Insyde devices
   0ed0810b8b02 drm/i915: actually drive the BDW reserved IDs
   70797929ee36 drm/i915: more .is_mobile cleanups for BDW
   0b348464eea0 drm/i915: fix INTEL_BDW_IDS definition
   14ec1cf414cf drm/edid: constify edid quirk list
   f188ee38d4cb HID: usbhid: Add quirk for Mayflash/Dragonrise DolphinBar.
   7fd75759ba07 HID: usbhid: Add quirk for the Futaba TOSD-5711BB VFD
   c1e94148f93c ACPI / sysfs: Provide quirk mechanism to prevent GPE flooding
   43cfff65c989 nvme: simplify stripe quirk
   8d620dff40ba platform/x86: acer-wmi: Only supports AMW0_GUID1 on acer family
   2bd6cc1cce47 ALSA: usb-audio: Add native DSD support for TEAC 501/503 DAC
   8ae7242fea54 PCI: Expand "VPD access disabled" quirk message
   c0aac1bbb5d8 ALSA: usb-audio: add implicit fb quirk for Axe-Fx II
   bedc629494cd scsi: ufs: add quirk to increase host PA_SaveConfigTime
   5c6b8ad1ab25 PCI: thunder-pem: Factor out resource lookup
   5582c1980eac arm64: PCI: Add local struct device pointers
   cc49b39f3f2d arm64: PCI: Manage controller-specific data on per-controller basis
   625fd9d1af70 x86/intel_idle: Add CPU model 0x4a (Atom Z34xx series)
   607ca1dccbbd svcauth_gss: Close connection when dropping an incoming message
   3a87bcdebf6e scsi: ufs: ensure that host pa_tactivate is higher than device
   d84be51d1c1d mmc: sdhci-msm: Enable few quirks
   c6e3c6628dfb HID: multitouch: do not retrieve all reports for all devices
   68a83be38135 HID: multitouch: enable the Surface 3 Type Cover to report multitouch data
   c5fcc6332ddb HID: sensor-hub: add quirk for Microchip MM7150
   39f3c9291d69 HID: sensor-hub add quirk for Microsoft Surface 3
   9b41ed79ec78 scsi: ufs: introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk
   26cbe162df3d clocksource/drivers/arm_arch_timer: Don't assume clock runs in suspend
   d2f1000c3ae3 net/mlx4_core: Use device ID defines
   dcc4c6758100 arm64: dts: hisi: fix hip06 sas am-max-trans quirk
   b340c9648c2f ASoC: Intel: bytct_rt5640: change default capture settings
   d9a97dcdf5c2 usb: dwc3: gadget: delay unmap of bounced requests
   ee670af5feed HID: i2c-hid: add a simple quirk to fix device defects
   d640c41bced6 HID: usbhid: Add quirks for Mayflash/Dragonrise GameCube and PS3 adapters
   e02a5d1d5a05 clk: lpc32xx: add a quirk for PWM and MS clock dividers
   666d5f34d897 drm/sun4i: Add compatible string for A31/A31s TCON (timing controller)
   6af7e1cae445 drm/sun4i: Add compatible strings for A31/A31s display pipelines
   06a2bb472f71 drm/sun4i: tcon: Move SoC specific quirks to a DT matched data structure
   7c0361334466 random: use chacha20 for get_random_int/long
   cddab768d134 mm/mempolicy.c: fix error handling in set_mempolicy and mbind.
   24317cb6b400 Documentation: stable-kernel-rules: fix stable-tag format
   be56f92cc0a9 MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation
   59b8725f2b1e MIPS: Flush wrong invalid FTLB entry for huge page
   186fb3c52e39 MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2
   3d5e13d891b0 MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3
   c7f6633f7657 MIPS: Lantiq: fix missing xbar kernel panic
   1e7deb9da033 MIPS: End spinlocks with .insn
   19aa26f5be49 MIPS: ralink: Fix typos in rt3883 pinctrl
   9dcb21e63b2e MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels
   7b68273f79e8 s390/uaccess: get_user() should zero on failure (again)
   f4938792af38 s390/decompressor: fix initrd corruption caused by bss clear
   6a776f6ae3f8 xtensa: make __pa work with uncached KSEG addresses
   c1dcea123655 nios2: reserve boot memory for device tree
   27d382fb6afe dm raid: fix NULL pointer dereference for raid1 without bitmap
   abbf0fd436a9 powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable()
   45c2ed941c08 powerpc: Don't try to fix up misaligned load-with-reservation instructions
   fba7546bbe65 powerpc/64: Fix flush_(d|i)cache_range() called from modules
   24d945d4791f powerpc/mm: Add missing global TLB invalidate if cxl is active
   6fbf84b5da23 powerpc: Disable HFSCR[TM] if TM is not supported
   a1db9b2c1b12 metag/usercopy: Add missing fixups
   ce154d517ae4 metag/usercopy: Fix src fixup in from user rapf loops
   4f3f0dd2a75b metag/usercopy: Set flags before ADDZ
   3dc0fe517a9f metag/usercopy: Zero rest of buffer from copy_from_user
   4a93ac814ddc metag/usercopy: Add early abort to copy_to_user
   49a292dcd86b metag/usercopy: Fix alignment error checking
   2bb52b47e7f4 metag/usercopy: Drop unused macros
   9afc076d2812 brcmfmac: use local iftype avoiding use-after-free of virtual interface
   c0321505df2e mac80211: unconditionally start new netdev queues with iTXQ support
   703cebf6e978 ring-buffer: Fix return value check in test_ringbuffer()
   f7db18998e9c xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files
   dc62935ce0fb orangefs: move features validation to fix filesystem hang
   c4fe79a44a5d Kbuild: use cc-disable-warning consistently for maybe-uninitialized
   e4a62348935e ACPI / gpio: do not fall back to parsing _CRS when we get a deferral
   ab83597b9d40 dm verity fec: fix bufio leaks
   2ff087642643 dm verity fec: limit error correction recursion
   d9fa4351037b ptrace: fix PTRACE_LISTEN race corrupting task->state
   e3b08ebe4773 mm/page_alloc.c: fix print order in show_free_areas()
   8446cb1adf95 Reset TreeId to zero on SMB2 TREE_CONNECT
   57e1e90dda74 cfg80211: check rdev resume callback only for registered wiphy
   3715dbf77f3b arm64: mm: unaligned access by user-land should be received as SIGBUS
   71b44ef83d2a iio: bmg160: reset chip when probing
   ac303c64cdb8 kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd
   a1ea31893684 arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region
   48f2825abc65 arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm
   8f8de8d2bf6c staging: android: ashmem: lseek failed due to no FMODE_LSEEK.
   d9eedab38395 sysfs: be careful of error returns from ops->show()
   4ddd24d54fed drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl()
   28c84df739e3 drm/vmwgfx: Remove getparam error message
   b116797b81e5 drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces
   604d2eac67cb drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl()
   73ab72517b61 drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl()
   92cc48166e49 drm/vmwgfx: Type-check lookups of fence objects
   9c2b46e720d5 ppdev: fix registering same device name
   bf5202b58f61 ppdev: check before attaching port

(From OE-Core rev: 4af605ae6f5ca763c65b3dca10b7ffb60f5ffa2e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Bruce Ashfield
331ea76d3a linux-yocto/4.4: update to v4.4.67
Integrating the korg v4.4.61 -> 4.4.67 releases with the following
commit summary:

   dec1dc2a0ee8 Linux 4.4.67
   3b9983bb354e dm ioctl: prevent stack leak in dm ioctl call
   da1ce38aaac7 nfsd: stricter decoding of write-like NFSv2/v3 ops
   35e13333c217 nfsd4: minor NFSv2/v3 write decoding cleanup
   16fb859f9b2b ext4/fscrypto: avoid RCU lookup in d_revalidate
   41948f88a521 ext4 crypto: use dget_parent() in ext4_d_revalidate()
   2faff9d1dfc5 ext4 crypto: revalidate dentry after adding or removing the key
   e2968fb8e798 ext4: require encryption feature for EXT4_IOC_SET_ENCRYPTION_POLICY
   fee1f42b961e IB/ehca: fix maybe-uninitialized warnings
   56cd2ed3e25a IB/qib: rename BITS_PER_PAGE to RVT_BITS_PER_PAGE
   a8d47b4b3cb6 netlink: Allow direct reclaim for fallback allocation
   35c9bfa51154 8250_pci: Fix potential use-after-free in error path
   6f81dea4037c scsi: cxlflash: Improve EEH recovery time
   24d17d7853fa scsi: cxlflash: Fix to avoid EEH and host reset collisions
   69a9e016f0cc scsi: cxlflash: Scan host only after the port is ready for I/O
   ec2170f98f9a net: tg3: avoid uninitialized variable warning
   fd79e4363258 mtd: avoid stack overflow in MTD CFI code
   ee6b88767e87 drbd: avoid redefinition of BITS_PER_PAGE
   938206b8d798 ALSA: ppc/awacs: shut up maybe-uninitialized warning
   a2b3b19acfde ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
   6c106b55eb47 Handle mismatched open calls
   911bd54922cd timerfd: Protect the might cancel mechanism proper
   0c49a2c16ca9 Linux 4.4.66
   9c4a4755d9c5 ftrace/x86: Fix triple fault with graph tracing and suspend-to-ram
   1aefe328a68d ARCv2: save r30 on kernel entry as gcc uses it for code-gen
   82a0d8aabe04 nfsd: check for oversized NFSv2/v3 arguments
   2032eebe2384 Input: i8042 - add Clevo P650RS to the i8042 reset list
   91ce8d13faeb p9_client_readdir() fix
   3bf0809930b8 MIPS: Avoid BUG warning in arch_check_elf
   1c26c382c9e7 MIPS: KGDB: Use kernel context for sleeping threads
   555f77106f77 ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
   8cbaf11c5026 ALSA: firewire-lib: fix inappropriate assignment between signed/unsigned type
   5e52fffbb11c ipv6: check raw payload size correctly in ioctl
   befb92542439 ipv6: check skb->protocol before lookup for nexthop
   114f0c66dab4 macvlan: Fix device ref leak when purging bc_queue
   bdeb026dfd9f ip6mr: fix notification device destruction
   25c104023372 netpoll: Check for skb->queue_mapping
   f6b94906b414 net: ipv6: RTF_PCPU should not be settable from userspace
   f6b34b1709ac dp83640: don't recieve time stamps twice
   78c4e3d4848d tcp: clear saved_syn in tcp_disconnect()
   52e33b4e505d sctp: listen on the sock only when it's state is listening or closed
   cc5a5c09d32b net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
   593e185eaade l2tp: fix PPP pseudo-wire auto-loading
   f710dbd92b27 l2tp: take reference on sessions being dumped
   25adf4e32a89 net/packet: fix overflow in check for tp_reserve
   cf71bd41f809 net/packet: fix overflow in check for tp_frame_nr
   8625dfcfd338 l2tp: purge socket queues in the .destruct() callback
   0e9eeb4676a7 net: phy: handle state correctly in phy_stop_machine
   428b3cefab22 net: neigh: guard against NULL solicit() method
   592d0e60a2b7 sparc64: Fix kernel panic due to erroneous #ifdef surrounding pmd_write()
   80ec183214e8 sparc64: kern_addr_valid regression
   c583862e95d2 xen/x86: don't lose event interrupts
   5709321fd962 usb: gadget: f_midi: Fixed a bug when buflen was smaller than wMaxPacketSize
   3e19487b9bf5 regulator: core: Clear the supply pointer if enabling fails
   804605eae410 RDS: Fix the atomicity for congestion map update
   b9baa0aa66ce net_sched: close another race condition in tcf_mirred_release()
   1d1cb762524f net: cavium: liquidio: Avoid dma_unmap_single on uninitialized ndata
   2907c91c9f9a MIPS: Fix crash registers on non-crashing CPUs
   49b2fe4b0207 md:raid1: fix a dead loop when read from a WriteMostly disk
   28320756e78b ext4: check if in-inode xattr is corrupted in ext4_expand_extra_isize_ea()
   99e96ce5e315 drm/amdgpu: fix array out of bounds
   10fc325c03d2 crypto: testmgr - fix out of bound read in __test_aead()
   40a55e4f9401 clk: sunxi: Add apb0 gates for H3
   531be60fc580 ARM: OMAP2+: timer: add probe for clocksources
   bd2d6cb00d1a xc2028: unlock on error in xc2028_set_config()
   716bcfeb12b8 f2fs: do more integrity verification for superblock
   418b99042b87 Linux 4.4.65
   416bd4a366f3 perf/core: Fix concurrent sys_perf_event_open() vs. 'move_group' race
   b7f47c794bc4 ping: implement proper locking
   a7544fdd1626 staging/android/ion : fix a race condition in the ion driver
   d23ef85b123d vfio/pci: Fix integer overflows, bitmask check
   65d30f7545ff tipc: check minimum bearer MTU
   9540baadb61b netfilter: nfnetlink: correctly validate length of batch messages
   0d9dac5d7cc3 xc2028: avoid use after free
   c50fd34e1089 mnt: Add a per mount namespace limit on the number of mounts
   59e0cd110fb9 tipc: fix socket timer deadlock
   abc025d1e88a tipc: fix random link resets while adding a second bearer
   d39cb4a59729 gfs2: avoid uninitialized variable warning
   9a35bc2ae545 hostap: avoid uninitialized variable use in hfa384x_get_rid
   58f80ccf09c4 tty: nozomi: avoid a harmless gcc warning
   2847736f563d tipc: correct error in node fsm
   76ca3053f32c tipc: re-enable compensation for socket receive buffer double counting
   3f3155904308 tipc: make dist queue pernet
   44b3b7e06887 tipc: make sure IPv6 header fits in skb headroom
   12f4e1f54a13 Linux 4.4.64
   6862fa9077de tipc: fix crash during node removal
   6ddbac9aa800 block: fix del_gendisk() vs blkdev_ioctl crash
   d1cc3cdd39e9 x86, pmem: fix broken __copy_user_nocache cache-bypass assumptions
   5693f3fb5a66 hv: don't reset hv_context.tsc_page on crash
   03e2fb9b5ce8 Drivers: hv: balloon: account for gaps in hot add regions
   8e7a6dbc3b71 Drivers: hv: balloon: keep track of where ha_region starts
   397488e09bf2 Tools: hv: kvp: ensure kvp device fd is closed on exec
   2a60bb635236 kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd
   e2587fba9911 x86/mce/AMD: Give a name to MCA bank 3 when accessed with legacy MSRs
   6c107bba66dc powerpc/kprobe: Fix oops when kprobed on 'stdu' instruction
   38be91ce7ea8 ubi/upd: Always flush after prepared for an update
   b812c69019e4 mac80211: reject ToDS broadcast data frames
   b74ba9dd91e5 mmc: sdhci-esdhc-imx: increase the pad I/O drive strength for DDR50 card
   6986d0d29f3c ACPI / power: Avoid maybe-uninitialized warning
   cdede60d6a30 Input: elantech - add Fujitsu Lifebook E547 to force crc_enabled
   8d5ed79fb2d7 VSOCK: Detach QP check should filter out non matching QPs.
   f803416632b5 Drivers: hv: vmbus: Reduce the delay between retries in vmbus_post_msg()
   567dd48c4e71 Drivers: hv: get rid of timeout in vmbus_open()
   5ab982a01201 Drivers: hv: don't leak memory in vmbus_establish_gpadl()
   702db976b857 s390/mm: fix CMMA vs KSM vs others
   859d615b5be1 CIFS: remove bad_network_name flag
   f8fe51c86583 cifs: Do not send echoes before Negotiate is complete
   a2a67e53f92f ring-buffer: Have ring_buffer_iter_empty() return true when empty
   1dfb1c7bd63f tracing: Allocate the snapshot buffer before enabling probe
   c9460fbceb2f KEYS: fix keyctl_set_reqkey_keyring() to not leak thread keyrings
   eb78d9877579 KEYS: Change the name of the dead type to ".dead" to prevent user access
   b5737b92560e KEYS: Disallow keyrings beginning with '.' to be joined as session keyrings
   81af21fe95ba Linux 4.4.63
   d00557976676 MIPS: fix Select HAVE_IRQ_EXIT_ON_IRQ_STACK patch.
   e2f5fb9207a6 sctp: deny peeloff operation on asocs with threads sleeping on it
   f00f18ebb3b2 net: ipv6: check route protocol when deleting routes
   990a142ee0d3 tty/serial: atmel: RS485 half duplex w/DMA: enable RX after TX is done
   8dc821b9f67d SUNRPC: fix refcounting problems with auth_gss messages.
   403a728d1a35 ibmveth: calculate gso_segs for large packets
   65596042c3af catc: Use heap buffer for memory size test
   40531b26bade catc: Combine failure cleanup code in catc_probe()
   a90604be51de rtl8150: Use heap buffers for all register access
   be570e556dee pegasus: Use heap buffers for all register access
   eb5267657d85 virtio-console: avoid DMA from stack
   6be431f91632 dvb-usb-firmware: don't do DMA on stack
   502157457f52 dvb-usb: don't use stack for firmware load
   6739cc12f3db mm: Tighten x86 /dev/mem with zeroing reads
   ba02781392fa rtc: tegra: Implement clock handling
   ccf0904c49b1 platform/x86: acer-wmi: setup accelerometer when machine has appropriate notify event
   51f8d95c89b4 ext4: fix inode checksum calculation problem if i_extra_size is small
   0cb03b6e7086 dvb-usb-v2: avoid use-after-free
   ea6d8d67001a ath9k: fix NULL pointer dereference
   2673d1c5122e crypto: ahash - Fix EINPROGRESS notification callback
   70e55aaf9f8c powerpc: Disable HFSCR[TM] if TM is not supported
   9286385a3452 zram: do not use copy_page with non-page aligned address
   c1fc1d2f214e kvm: fix page struct leak in handle_vmon
   98c953a0a51f Revert "MIPS: Lantiq: Fix cascaded IRQ setup"
   a32c5331b462 char: lack of bool string made CONFIG_DEVPORT always on
   0a6aa0d1cf27 char: Drop bogus dependency of DEVPORT on !M68K
   7fe57118a7c0 ftrace: Fix removing of second function probe
   c51451e43bf1 irqchip/irq-imx-gpcv2: Fix spinlock initialization
   66b531d3ff11 libnvdimm: fix reconfig_mutex, mmap_sem, and jbd2_handle lockdep splat
   6058cf9929d9 xen, fbfront: fix connecting to backend
   b689dfbed8c8 scsi: sd: Fix capacity calculation with 32-bit sector_t
   448961955592 scsi: sd: Consider max_xfer_blocks if opt_xfer_blocks is unusable
   925adae6664c scsi: sr: Sanity check returned mode data
   1e1de2e841e1 iscsi-target: Drop work-around for legacy GlobalSAN initiator
   05c5dd75d77c iscsi-target: Fix TMR reference leak during session shutdown
   074bcc1302fd acpi, nfit, libnvdimm: fix interleave set cookie calculation (64-bit comparison)
   ec3978e10ecc x86/vdso: Plug race between mapping and ELF header setup
   f1c5d0163586 x86/vdso: Ensure vdso32_enabled gets set to valid values only
   f42be33fe976 perf/x86: Avoid exposing wrong/stale data in intel_pmu_lbr_read_32()
   a5e2f803b891 Input: xpad - add support for Razer Wildcat gamepad
   f0899d0e1e9e CIFS: store results of cifs_reopen_file to avoid infinite wait
   a11ab9dd4b78 drm/nouveau/mmu/nv4a: use nv04 mmu rather than the nv44 one
   a737abe4d09a drm/nouveau/mpeg: mthd returns true on success now
   ef4c962825c0 thp: fix MADV_DONTNEED vs clear soft dirty race
   3144d81a7735 cgroup, kthread: close race window where new kthreads can be migrated to non-root cgroups
   a80c068fbf43 Linux 4.4.62
   7d170f270a95 ibmveth: set correct gso_size and gso_type
   ac0cbfbb1e4b net/mlx4_core: Fix when to save some qp context flags for dynamic VST to VGT transitions
   710f793a15de net/mlx4_core: Fix racy CQ (Completion Queue) free
   f1e6b1149e49 net/mlx4_en: Fix bad WQE issue
   0a007f74b826 usb: hub: Wait for connection to be reestablished after port reset
   f4522e36edaa blk-mq: Avoid memory reclaim when remapping queues
   d35f8fa0b93e net/packet: fix overflow in check for priv area size
   fd8bae310684 crypto: caam - fix RNG deinstantiation error checking
   ba7681e4eee6 MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch
   f017e58da4ab MIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK
   b39b26381668 MIPS: Switch to the irq_stack in interrupts
   93a82f8dbef8 MIPS: Only change $28 to thread_info if coming from user mode
   336365351285 MIPS: Stack unwinding while on IRQ stack
   d8b8b5528ea5 MIPS: Introduce irq_stack
   5a527d80836e mtd: bcm47xxpart: fix parsing first block after aligned TRX
   297f55bcb62a usb: dwc3: gadget: delay unmap of bounced requests
   8cfaf0ae1f56 drm/i915: Stop using RP_DOWN_EI on Baytrail
   cb0a2cba62d5 drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3

(From OE-Core rev: 34e53af8ed9d27ab010e57bcc08dee6f333da9fd)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Bruce Ashfield
eac3cb1e00 linux-yocto/4.10: update to v4.10.15
Merging the korg stable releases 4.10.10 -> 4.10.15 with the following
shortlog summary:

    b1cff0b2ed20 Linux 4.10.15
    de7b7a35c99e dm ioctl: prevent stack leak in dm ioctl call
    8dee04de5def hwmon: (it87) Avoid registering the same chip on both SIO addresses
    ad66b968a0e5 scsi: storvsc: Workaround for virtual DVD SCSI version
    fc08ba650a2b Handle mismatched open calls
    43c1696e5e91 timerfd: Protect the might cancel mechanism proper
    d08276658dee Linux 4.10.14
    3adeab312a65 ftrace/x86: Fix triple fault with graph tracing and suspend-to-ram
    13d970940217 cpu/hotplug: Serialize callback invocations proper
    bd7c4f5e1d25 net: can: usb: gs_usb: Fix buffer on stack
    43a35e671f8f macsec: avoid heap overflow in skb_to_sgvec
    e4720b009def ceph: fix recursion between ceph_set_acl() and __ceph_setattr()
    43e360377b09 nfsd: stricter decoding of write-like NFSv2/v3 ops
    144180dc4736 nfsd4: minor NFSv2/v3 write decoding cleanup
    86eb1d0aab0d nfsd: check for oversized NFSv2/v3 arguments
    b98d12a15ed1 Input: i8042 - add Clevo P650RS to the i8042 reset list
    2f680d46a0b5 ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
    bec0749254e7 p9_client_readdir() fix
    67355b67b41c MIPS: Avoid BUG warning in arch_check_elf
    7cb5877dc20e MIPS: cevt-r4k: Fix out-of-bounds array access
    09c953f73ff0 MIPS: KGDB: Use kernel context for sleeping threads
    4a71345ea6f8 ARC: [plat-eznps] Fix build error
    47dbabb85ef7 scsi: return correct blkprep status code in case scsi_init_io() fails.
    dcb730f79d33 ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
    7b2b791c65d2 ALSA: firewire-lib: fix inappropriate assignment between signed/unsigned type
    a33e886d3f19 ALSA: oxfw: fix regression to handle Stanton SCS.1m/1d
    f62c45868079 ipv6: check raw payload size correctly in ioctl
    466dfcd1d81a tcp: memset ca_priv data to 0 properly
    04630e2ed834 ipv6: check skb->protocol before lookup for nexthop
    683f8d60761c net: phy: fix auto-negotiation stall due to unavailable interrupt
    f9a8970e9eee net: ipv6: regenerate host route if moved to gc list
    e2ae71739253 macvlan: Fix device ref leak when purging bc_queue
    b073c2c3d40c tcp: mark skbs with SCM_TIMESTAMPING_OPT_STATS
    cdaf15b43bd3 tcp: fix SCM_TIMESTAMPING_OPT_STATS for normal skbs
    df4c4820a0b0 net/mlx5e: Fix ETHTOOL_GRXCLSRLALL handling
    cce19108367e net/mlx5e: Fix small packet threshold
    3faae16bf93e net/mlx5: E-Switch, Correctly deal with inline mode on ConnectX-5
    82aa6b2c1f19 net/mlx5: Fix driver load bad flow when having fw initializing timeout
    ff247bdf248a ip6mr: fix notification device destruction
    9db670f71b6a netpoll: Check for skb->queue_mapping
    5e54291edfb9 net: ipv6: RTF_PCPU should not be settable from userspace
    ee1f368e99ba gso: Validate assumption of frag_list segementation
    03940f08b972 ipv6: fix source routing
    c52ac0687247 ipv6: sr: fix double free of skb after handling invalid SRH
    3b600a30d126 dp83640: don't recieve time stamps twice
    a024074740e7 ipv6: sr: fix out-of-bounds access in SRH validation
    7e793ce3b3e1 sh_eth: unmap DMA buffers when freeing rings
    c526d0869a3a net: vrf: Fix setting NLM_F_EXCL flag when adding l3mdev rule
    9ca5d7e426dd net-timestamp: avoid use-after-free in ip_recv_error
    0d8ef98cefae ipv6: Fix idev->addr_list corruption
    29dc163a721e tcp: clear saved_syn in tcp_disconnect()
    1ebfe5cf3727 sctp: listen on the sock only when it's state is listening or closed
    280a7e34a987 net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
    c747d66b6c6f l2tp: fix PPP pseudo-wire auto-loading
    2ba7cfd4f6a9 l2tp: take reference on sessions being dumped
    0fbdeb789013 openvswitch: Fix ovs_flow_key_update()
    f9bd6b937de6 net/packet: fix overflow in check for tp_reserve
    57a88382a969 net/packet: fix overflow in check for tp_frame_nr
    5894337297ad l2tp: purge socket queues in the .destruct() callback
    7d5eb39c0d8c l2tp: hold tunnel socket when handling control frames in l2tp_ip and l2tp_ip6
    63ae30d5caa7 net/mlx5: Avoid dereferencing uninitialized pointer
    4f45e887a632 bpf: improve verifier packet range checks
    443fac9f2618 secure_seq: downgrade to per-host timestamp offsets
    a35c14672325 kcm: return immediately after copy_from_user() failure
    c79db30fd1b0 net: phy: handle state correctly in phy_stop_machine
    693d7da388c2 net: neigh: guard against NULL solicit() method
    2ec8024c5672 sparc64: Fix kernel panic due to erroneous #ifdef surrounding pmd_write()
    1797e172bf10 sparc64: kern_addr_valid regression
    7cf480444103 ping: implement proper locking
    b957be36d793 Linux 4.10.13
    9254ada03382 device-dax: switch to srcu, fix rcu_read_lock() vs pte allocation
    7d1c1be6c8d3 x86/mce/AMD: Give a name to MCA bank 3 when accessed with legacy MSRs
    1136723a6cf0 powerpc/kprobe: Fix oops when kprobed on 'stdu' instruction
    a6db433483db ubi/upd: Always flush after prepared for an update
    a32ff3f07f9b x86/mce: Make the MCE notifier a blocking one
    c77e7d37ac50 mac80211: fix MU-MIMO follow-MAC mode
    ee9b489925a0 mac80211: reject ToDS broadcast data frames
    71a3e3679e30 ubifs: Fix O_TMPFILE corner case in ubifs_link()
    c1cadf6af8b7 ubifs: Fix RENAME_WHITEOUT support
    2745665258c3 mmc: sdhci-esdhc-imx: increase the pad I/O drive strength for DDR50 card
    b478c19f3de4 mmc: dw_mmc: Don't allow Runtime PM for SDIO cards
    9b02ecd10cff ACPI / power: Avoid maybe-uninitialized warning
    7010e15d1d22 Input: elantech - add Fujitsu Lifebook E547 to force crc_enabled
    0cb760dfc75b s390/mm: fix CMMA vs KSM vs others
    71766b913996 mmc: dw_mmc: silent verbose log when calling from PM context
    9f8296778b61 CIFS: remove bad_network_name flag
    5cd77ebf2254 cifs: Do not send echoes before Negotiate is complete
    63ad4051e89c mm: prevent NR_ISOLATE_* stats from going negative
    64d253367ae0 ring-buffer: Have ring_buffer_iter_empty() return true when empty
    eff248618a59 HID: wacom: Treat HID_DG_TOOLSERIALNUMBER as unsigned
    838a281c4a17 tracing: Allocate the snapshot buffer before enabling probe
    523ae2e9e39a KEYS: fix keyctl_set_reqkey_keyring() to not leak thread keyrings
    cc4f98410688 KEYS: Change the name of the dead type to ".dead" to prevent user access
    4cbbfd6aafe1 KEYS: Disallow keyrings beginning with '.' to be joined as session keyrings
    055c0a94117c Linux 4.10.12
    e5349c13c7a8 virtio-console: avoid DMA from stack
    e0116f4d9a9a cxusb: Use a dma capable buffer also for reading
    b1bfb5083bfa mm: Tighten x86 /dev/mem with zeroing reads
    2c4d8f20cc29 rtc: tegra: Implement clock handling
    a16534a33305 ACPI / EC: Use busy polling mode when GPE is not enabled
    8a73a223fb70 x86/xen: Fix APIC id mismatch warning on Intel
    e765ef79fdf3 platform/x86: acer-wmi: setup accelerometer when machine has appropriate notify event
    35549ee08285 ASoC: Intel: select DW_DMAC_CORE since it's mandatory
    765c74b9cc27 dvb-usb-v2: avoid use-after-free
    ce5fe5a547d8 parisc: Fix get_user() for 64-bit value on 32-bit kernel
    aa7ca04fb26c crypto: lrw - Fix use-after-free on EINPROGRESS
    cb0567fc5114 crypto: ahash - Fix EINPROGRESS notification callback
    102da3a73f9a crypto: xts - Fix use-after-free on EINPROGRESS
    25308983eda6 crypto: algif_aead - Fix bogus request dereference in completion function
    a0a1e90f5057 ftrace: Fix function pid filter on instances
    58bc856c41fb zram: do not use copy_page with non-page aligned address
    9bf69094c2ad Revert "MIPS: Lantiq: Fix cascaded IRQ setup"
    1cb293ab0236 char: lack of bool string made CONFIG_DEVPORT always on
    ebe4deab5c80 drm/i915/gvt: set the correct default value of CTX STATUS PTR
    4bf7df7b3bd7 ftrace: Fix removing of second function probe
    9b35ab51a0b4 irqchip/irq-imx-gpcv2: Fix spinlock initialization
    b648679070a9 cpufreq: Bring CPUs up even if cpufreq_online() failed
    26052e29d6a2 pwm: rockchip: State of PWM clock should synchronize with PWM enabled state
    96b121b50683 can: ifi: use correct register to read rx status
    5b750d3c56e3 libnvdimm: band aid btt vs clear poison locking
    f0f306710e24 libnvdimm: fix reconfig_mutex, mmap_sem, and jbd2_handle lockdep splat
    e0d47228949e libnvdimm: fix blk free space accounting
    66481ca0750d make skb_copy_datagram_msg() et.al. preserve ->msg_iter on error
    a99a9ff2374a new privimitive: iov_iter_revert()
    939707c50352 xen, fbfront: fix connecting to backend
    22113847cd11 target: Avoid mappedlun symlink creation during lun shutdown
    53204334cca0 scsi: sd: Fix capacity calculation with 32-bit sector_t
    24c01b369765 scsi: qla2xxx: Add fix to read correct register value for ISP82xx.
    8b30ed56fa89 scsi: sd: Consider max_xfer_blocks if opt_xfer_blocks is unusable
    01fb9440938a scsi: sr: Sanity check returned mode data
    c8270f29214c iscsi-target: Drop work-around for legacy GlobalSAN initiator
    510152205d41 iscsi-target: Fix TMR reference leak during session shutdown
    c100de410c1e efi/fb: Avoid reconfiguration of BAR that covers the framebuffer
    6b8a0080915d efi/libstub: Skip GOP with PIXEL_BLT_ONLY format
    ca3e0b6d6b25 parisc: fix bugs in pa_memcpy
    87ad80ecdb5c ACPI / scan: Set the visited flag for all enumerated devices
    122c16ccc71b acpi, nfit, libnvdimm: fix interleave set cookie calculation (64-bit comparison)
    083d30d61a1a x86/vdso: Plug race between mapping and ELF header setup
    90dc1120444f x86/vdso: Ensure vdso32_enabled gets set to valid values only
    b8cb11e01a7f x86, pmem: fix broken __copy_user_nocache cache-bypass assumptions
    1a99658f083d x86/intel_rdt: Fix locking in rdtgroup_schemata_write()
    565194a42052 x86/signals: Fix lower/upper bound reporting in compat siginfo
    c6be568a2f24 x86/efi: Don't try to reserve runtime regions
    4ff9e6c2d86b perf/x86: Avoid exposing wrong/stale data in intel_pmu_lbr_read_32()
    535adf24d1a7 perf annotate s390: Fix perf annotate error -95 (4.10 regression)
    7869b4078ba9 Input: xpad - add support for Razer Wildcat gamepad
    3f17ee38a808 CIFS: store results of cifs_reopen_file to avoid infinite wait
    6e9b6937a923 CIFS: reconnect thread reschedule itself
    d38b12ab7b05 drm/fb-helper: Allow var->x/yres(_virtual) < fb->width/height again
    e97e515b7448 drm/etnaviv: fix missing unlock on error in etnaviv_gpu_submit()
    3287a46c7829 drm/nouveau: initial support (display-only) for GP107
    2efa4bd3b644 drm/nouveau/kms/nv50: fix double dma_fence_put() when destroying plane state
    b6b2448efe64 drm/nouveau/kms/nv50: fix setting of HeadSetRasterVertBlankDmi method
    8418bb809e55 drm/nouveau/mmu/nv4a: use nv04 mmu rather than the nv44 one
    cc3c096855c6 drm/nouveau/mpeg: mthd returns true on success now
    5de87d225e08 orangefs: free superblock when mount fails
    5f8cde206712 zsmalloc: expand class bit
    5c7de4610825 thp: fix MADV_DONTNEED vs clear soft dirty race
    d7847a2203a1 thp: fix MADV_DONTNEED vs. MADV_FREE race
    e2083153996d tcmu: Skip Data-Out blocks before gathering Data-In buffer for BIDI case
    acbb93eb7447 tcmu: Fix wrongly calculating of the base_command_size
    1486f834e887 tcmu: Fix possible overwrite of t_data_sg's last iov[]
    e8339b9ddfe6 audit: make sure we don't let the retry queue grow without bounds
    668e2d892499 cgroup, kthread: close race window where new kthreads can be migrated to non-root cgroups
    4c031101dc08 Linux 4.10.11
    2ef9c8dd6ecd dma-buf: add support for compat ioctl
    10e13823b0a9 net/packet: fix overflow in check for priv area size
    50d60091d294 crypto: caam - fix invalid dereference in caam_rsa_init_tfm()
    41889ca0002a crypto: caam - fix RNG deinstantiation error checking
    8e94a6f43dff MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch
    4a1fe14b16c9 MIPS: Select HAVE_IRQ_EXIT_ON_IRQ_STACK
    2c7235dbdd51 MIPS: Switch to the irq_stack in interrupts
    b21e28eafd17 MIPS: Only change $28 to thread_info if coming from user mode
    ece65a60793c MIPS: Stack unwinding while on IRQ stack
    6b720ff376fd MIPS: Introduce irq_stack
    612973c55404 rt2x00usb: do not anchor rx and tx urb's
    244ff096a321 rt2x00usb: fix anchor initialization
    df741f77edfa nfs: flexfiles: fix kernel OOPS if MDS returns unsupported DS type
    f536c2058420 orangefs: fix buffer size mis-match between kernel space and user space.
    f20e76a469c1 orangefs: Dan Carpenter influenced cleanups...
    b01252079ec7 drm/i915: Do .init_clock_gating() earlier to avoid it clobbering watermarks
    d5b5a4d3f77f drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker)
    de3571619eeb drm/i915: Stop using RP_DOWN_EI on Baytrail
    29abfd4ee598 drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters.
    b364cf79fc37 drm/i915: Only enable hotplug interrupts if the display interrupts are enabled
    56613bca0578 drm/i915: Reject HDMI 12bpc if the sink doesn't indicate support
    dba29c1139fc drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3
    fccb5940cc17 drm/i915: Nuke debug messages from the pipe update critical section
    29a9a6a329d1 drm/i915: Store a permanent error in obj->mm.pages
    432ae45238b8 drm/i915/gen9: Increase PCODE request timeout to 50ms
    b93cb4cc2eab drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl
    ec417098e18f drm/i915/fbdev: Stop repeating tile configuration on stagnation
    4f985d41bc5f drm/i915: Move updating color management to before vblank evasion
    a8a20aecc9c1 drm/i915: Fix forcewake active domain tracking
    e6925852d5b8 Linux 4.10.10
    e6c5fe2374cd x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk
    a148ee8f7156 usb-storage: Add ignore-residue quirk for Initio INIC-3619
    118b1ef49a33 x86/reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk
    2b0766deb008 x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk
    3db435d09bc3 platform/x86: asus-wmi: Detect quirk_no_rfkill from the DSDT
    d0331c21a1a6 watchdog: s3c2410: Fix infinite interrupt in soft mode
    07371cd9ef21 PCI: Add ACS quirk for Qualcomm QDF2400 and QDF2432
    e90d491bcf00 PCI: Sort the list of devices with D3 delay quirk by ID
    9fd0dee94856 mmc: sdhci-of-esdhc: remove default broken-cd for ARM
    8f24ffc2f9a0 PCI: Disable MSI for HiSilicon Hip06/Hip07 Root Ports
    f2d9c08fc9b2 PCI: Add Broadcom Northstar2 PAXC quirk for device class and MPSS
    0755d2b5fe92 ARM: smccc: Update HVC comment to describe new quirk parameter
    7dd05d366148 firmware: qcom: scm: Fix interrupted SCM calls
    cc9b9deb6197 arm: kernel: Add SMC structure parameter
    2dca786b85e2 HID: wacom: don't apply generic settings to old devices
    6ac0617424d4 ASoC: sun4i-i2s: Add quirks to handle a31 compatible
    ab0b1f481fa9 ACPI: save NVS memory for Lenovo G50-45
    36426b3a31dc ASoC: Intel: cht_bsw_rt5645: add Baytrail MCLK support
    bdbe9135ead6 ASoC: Intel: cht_bsw_rt5645: harden ACPI device detection
    88f1372e28b2 ASoC: Intel: Baytrail: add quirk for Lenovo Thinkpad 10
    770049fddd84 ASoC: codecs: rt5670: add quirk for Lenovo Thinkpad 10
    8d5dd97f5556 ACPI / button: Change default behavior to lid_init_state=open
    53a898c2dc3b sata: ahci-da850: implement a workaround for the softreset quirk
    fcfd2ac4abfb PCI: xgene: Fix double free on init error
    c259b9b74ebc PCI: Add ACS quirk for Intel Union Point
    8a4b2d4ba49c drm/mga: remove device_is_agp callback
    f08ae685954e usb: dwc3: host: pass quirk-broken-port-ped property for known broken revisions
    41d6d9750ba3 usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested
    9763fee4c38d usb: xhci: add quirk flag for broken PED bits
    afdb6b99f54e serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x
    99b4f57bffe5 usb: chipidea: msm: Rely on core to override AHBBURST
    f576c28172a3 ASoC: Intel: bytcr_rt5640: quirks for Insyde devices
    24fdd3f90f4c drm/i915: actually drive the BDW reserved IDs
    0325b5e1b637 drm/i915: more .is_mobile cleanups for BDW
    bb4c89250bcc drm/i915: fix INTEL_BDW_IDS definition
    d7f19357fe65 drm/edid: constify edid quirk list
    b04940e26f10 kvm: fix page struct leak in handle_vmon
    af7291601501 random: use chacha20 for get_random_int/long
    d57c764a703b mm/mempolicy.c: fix error handling in set_mempolicy and mbind.
    596c2d180a96 Documentation: stable-kernel-rules: fix stable-tag format
    813e1ac7259b usb: dwc3: gadget: delay unmap of bounced requests
    5e87a005ff57 drm/i915/kvmgt: fix suspicious rcu dereference usage
    cccf8321af1c drm/i915/gvt: Fix gvt scheduler interval time
    fba7cfc66b25 MIPS: c-r4k: Fix Loongson-3's vcache/scache waysize calculation
    42ce8ecfd141 MIPS: Flush wrong invalid FTLB entry for huge page
    a854a7975ce0 MIPS: Add MIPS_CPU_FTLB for Loongson-3A R2
    5dc665924208 MIPS: Check TLB before handle_ri_rdhwr() for Loongson-3
    464d88e8a0ad MIPS: Lantiq: fix missing xbar kernel panic
    187b957634f0 MIPS: End spinlocks with .insn
    0c4b9fe70343 MIPS: ralink: Fix typos in rt3883 pinctrl
    e09e410969ef MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels
    94f3dd6b140a s390/uaccess: get_user() should zero on failure (again)
    5d4d57697aa1 s390/decompressor: fix initrd corruption caused by bss clear
    a66f5106e710 xtensa: make __pa work with uncached KSEG addresses
    36463a76abeb nios2: reserve boot memory for device tree
    be9fe9d48988 x86/mce: Don't print MCEs when mcelog is active
    fe96b265778a dm raid: fix NULL pointer dereference for raid1 without bitmap
    5c67d5410bbb powerpc/crypto/crc32c-vpmsum: Fix missing preempt_disable()
    d625e1a1530d powerpc: Don't try to fix up misaligned load-with-reservation instructions
    b129e418406b powerpc/64: Fix flush_(d|i)cache_range() called from modules
    12502ae4c9a1 powerpc/mm: Add missing global TLB invalidate if cxl is active
    2a3134e106d4 powerpc: Disable HFSCR[TM] if TM is not supported
    be5569719b5c drm/msm: adreno: fix build error without debugfs
    169b36bef88f metag/usercopy: Add missing fixups
    191e4c735549 metag/usercopy: Fix src fixup in from user rapf loops
    e6ca39ac0c0d metag/usercopy: Set flags before ADDZ
    b03dd10e4c58 metag/usercopy: Zero rest of buffer from copy_from_user
    60a0b56ea119 metag/usercopy: Add early abort to copy_to_user
    e61ffb12b6ac metag/usercopy: Fix alignment error checking
    804453ff0993 metag/usercopy: Drop unused macros
    6d855e027553 brcmfmac: use local iftype avoiding use-after-free of virtual interface
    96499191fe6d mac80211: unconditionally start new netdev queues with iTXQ support
    ab23a82a0176 ring-buffer: Fix return value check in test_ringbuffer()
    24d108e4dfec xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files
    1d656a4d8e87 orangefs: move features validation to fix filesystem hang
    b92a638e002b jump label: fix passing kbuild_cflags when checking for asm goto support
    7b73b72fbf82 Kbuild: use cc-disable-warning consistently for maybe-uninitialized
    52b38ad09a6c ACPI / scan: Prefer devices without _HID for _ADR matching
    e56bb92202f7 ACPI / gpio: do not fall back to parsing _CRS when we get a deferral
    1c9925e63abb dm verity fec: fix bufio leaks
    88c358b1f453 dm verity fec: limit error correction recursion
    523a19324267 dax: fix radix tree insertion race
    8bdc69ccb9f8 ptrace: fix PTRACE_LISTEN race corrupting task->state
    0666cf6c9c18 mm/page_alloc.c: fix print order in show_free_areas()
    674850494e19 Reset TreeId to zero on SMB2 TREE_CONNECT
    c793e3374981 cfg80211: check rdev resume callback only for registered wiphy
    b48b63d5f583 arm64: mm: unaligned access by user-land should be received as SIGBUS
    3d44ecc1206e iio: bmg160: reset chip when probing
    2501a0af1734 iio: st_pressure: initialize lps22hb bootime
    a16d8c4e8f77 iio: core: Fix IIO_VAL_FRACTIONAL_LOG2 for negative values
    0d50669ca41f kvm: arm/arm64: Fix locking for kvm_free_stage2_pgd
    e8c3d6542edb arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region
    fc29073a15e8 arm/arm64: KVM: Take mmap_sem in stage2_unmap_vm
    fb3ce7a85213 staging: android: ashmem: lseek failed due to no FMODE_LSEEK.
    38b4b8a0969d sysfs: be careful of error returns from ops->show()
    a709613559d6 PCI: thunder-pem: Fix legacy firmware PEM-specific resources
    f8709a9ec8ae PCI: thunder-pem: Add legacy firmware support for Cavium ThunderX host controller
    44eed6f02491 drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl()
    a2d474ab560c drm/vmwgfx: Remove getparam error message
    009eb75f7fb0 drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces
    7a392c9a4563 drm/vmwgfx: avoid calling vzalloc with a 0 size in vmw_get_cap_3d_ioctl()
    0570c0cd987f drm/vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl()
    3622a033c419 drm/vmwgfx: Type-check lookups of fence objects

(From OE-Core rev: 58063bcdb78c9434b4d36e3a73df977b64d1640f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 14:01:46 +01:00
Richard Purdie
8238165be5 bitbake: data_smart: Don't cache/process capitalised overrides
Bitbake now only processes overrides which are lowercase since
this allows variables like SRC_URI not to pollute the cache.

There was a corner case where XXX_append_SomeThing was still being
processed (yet XXX_append_SomeThing_SomeOtherThing would not be).

This patch ensures we're consistent and only process lowercase
_append/_prepend and _remove operators too.

(Bitbake rev: 6eb56624e6d8dc1944e559b4f6584bfe66f566ba)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 13:19:55 +01:00
Scott Rifenbark
b7626dc36f ref-manual: Updated image-live.bbclass description
Fixes [YOCTO #9001]

Updated the image-live class description to specifically mention
creating *.iso and *.hddimg images as "live" images.  Provided more
explanation about usage through the NOISO and NOHDD variables.

Also, provided a cross-referencing link back to the updated
image-live class from the EFI_PROVIDERS variable.

(From yocto-docs rev: 788061b2911339c8396b798a0ab5635ab5bb89e1)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 13:18:56 +01:00
Scott Rifenbark
69d1f536e4 ref-manual: Enhanced the glossary description for INHERIT
Fixes [YOCTO #11498]

I enhanced the description of the INHERIT variable's glossary
description to provide more detail.  I also included a link into the
section of the BB manual where INHERIT is described.

(From yocto-docs rev: 663cde3cf05ebf564ff3a28cd37b696be2f91ad8)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 13:18:56 +01:00
Joshua Lock
4c68c5dac6 ref-manual: Fixed typo for "Installation"
(From yocto-docs rev: fbd983cda864174ac056cb4b9b54296d0f0c22e4)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-18 13:18:56 +01:00
Alexander Kanavin
2568e18701 byacc: remove the recipe
It was used only by rpm5 and will be moved to meta-oe

(From OE-Core rev: 138f3e3f81d866e8272b01dd88c164b367adc4cd)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
820778cb31 python3-pygpgme: remove the recipe
It was required only by dnf, which has switched to official gpgme bindings.
pygpgme itself is old and unmaintaned.

(From OE-Core rev: 2e3432f6ff7580726c047637b44fdac89dfa73ee)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
8c37bb4baa dnf: update to 2.3.0
Drop dependency on pygpgme, replace it with gpgme's own bindings.

Add a patch that fixes an upstream regression.

(From OE-Core rev: ee5dcf78f3abfec40e278591ccbd1e475ca6df15)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
528abed7b1 libdnf: update to 0.8.1
Rebase the patches.

(From OE-Core rev: de098813f3c94a96d69ea393e711eb682e29948e)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Ng Wei Tee
c132ac3d15 linux-firmware: enable netronome firmware
It was previously disabled, as rpm refused to package it into noarch
package, due to the firmware being considered arch-specific. This
check is disabled in rpm now.

The netronome binaries has ELF headers which will trigger an
arch-specific error. INSANE_SKIP variable is used to skip some
package_qa check usage.

(From OE-Core rev: 8b2f6b308019e697c9d3e66969807eb573350d78)

Signed-off-by: Ng Wei Tee <wei.tee.ng@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Ng Wei Tee
9cf8705ce2 rpm: allow arch-dependent binaries in noarch packages
This is needed for packages like linux-firmware which have a
legitimate reason for it. Oe-core has a separate package_qa
test for this situation, so any accidental inclusions of such
binaries will still be caught.

[YOCTO #11329]

(From OE-Core rev: 6aaff392d703183d19192e2d171e10a92f259c65)

Signed-off-by: Ng Wei Tee <wei.tee.ng@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Aníbal Limón
6bf3ee8d72 libxml-sax-base-perl: upgrade to 1.09
(From OE-Core rev: e16c5b5bc78b779ffd1eb07be1939aff300f3669)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
e3503c856e liberation-fonts: update to 2.00.1
'fontforge issue' was actually a non-issue; fontforge is required only
when building ttf fonts from sfd source. We took prebuilt ttf fonts
when using 1.04 version, and can do the same thing with 2.00.1 version,
it's just that the tarball name for prebuilt fonts has slightly changed
and no one noticed somehow.

License has changed from GPLv2 to Open Font License v.1.1

(From OE-Core rev: 9b60def67028df65fa8894c49cf09e601f1670df)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
85267a1034 mobile-broadband-provider-info: upgrade to 20170310
(From OE-Core rev: a89da82567f95d4fcd467003359ebcd13571fc0d)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
af739020e9 btrfs-tools: upgrade to 4.10.2
(From OE-Core rev: a580ec51cfe347a910fc98ba12dc3c926c5d5579)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
07418678b3 libpthread-stubs: upgrade to 0.4
(From OE-Core rev: 38658c2460f0a9f47e0ab6e5caacdabb3fb6ab78)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
e96e7afe80 vala: upgrade to 0.36.2
Make libxslt-native dependency conditional on api-documentation distro feature,
as vala now defaults to rebuilding the manual (which is slow).

(From OE-Core rev: f7f87b8840f5997f65ddf643f26dde0ed5f6c308)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Ross Burton
48e42e7514 gcr: add missing dependency on xsltproc if introspection is enabled
gcr needs xsltproc at build time if GObject Introspection is enabled.

Also, remove the explicit disabling of g-i and gtk-doc on x86-64 targets, this
appears to work now.

(From OE-Core rev: 58922a43f93f89dcf344394d8b1c84d82276b6a5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
9cf88f94cd iso-codes: upgrade to 3.75
(From OE-Core rev: 9acb0de00bcb8e8904be18bb3aaf7fc678ac9726)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
be8190f1f5 dtc: upgrade to 1.4.4
(From OE-Core rev: 39b39ef2dc429485fadf0b2e8b42b9d8424cea6a)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Marc Ferland
6196ab9253 speex: upgrade 1.2rc2 -> 1.2.0
Upgrade speex to 1.2.0. Very small diff between 1.2rc2 and 1.2.0, mostly
compiler warning fixes, tabs vs spaces, trailing whitespaces and one
liners.

(From OE-Core rev: 3e414545d650835e351f2939375c92ac7aca0569)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:30 +01:00
Alexander Kanavin
6fde0f638c mc: do not package Python-based extfs helpers
They have not been ported to Python 3, and they are for
browsing Amazon s3+ and Commodore 64/128 emulator filesystems -
hardly consequential.

(From OE-Core rev: f41a7b81a1957669e80e21e57df27d8cbc5cdbb8)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
b76bd897b7 packagegroup-self-hosted: remove python-git dependency
Only python3-git is needed anymore.

(From OE-Core rev: 9cfd9cfe7559d463d2afc8b20451eecdecc841a2)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
368ed227ae webkitgtk: remove native python dependency
Using host python seems to be fine.

(From OE-Core rev: 7cf80640f53bd8faa4874c2dad5f630a935475f6)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
3e79377a5b mklibs-native: remove native python dependency
It's not actually required; host python is fine.

(From OE-Core rev: 1ac1280046a40b02ba3f432ee8d302f0b66f6ed2)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
3bc1e30c31 mesa: drop pythonnative inherit
Mesa is perfectly capable of using host python nowadays.

(From OE-Core rev: 0ae97611bbd0d23f689a9ea4ff5c18fe6fc396fb)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
baf8cc35a9 mesa: remove the git recipe
It hasn't been touched in almost two years; clearly the idea of
providing separate _git.bb recipes is not working.

(From OE-Core rev: d7147f677aaff5dc3f63c1e1138ca86b1ea93e23)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
b419ea077f asciidoc: drop distutils inherit, not actually required
(From OE-Core rev: 15373057c3a87e247f0b3bcdc71bed7d6d3092e6)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Huang Qiyu
445abb9be1 dbus-test: 1.10.14 -> 1.10.18
Upgrade dbus-test from 1.10.14 to 1.10.18.

(From OE-Core rev: eb0ec6e806c097c4fd9e0487ab78289090db841b)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Huang Qiyu
8888ecef3a dbus: 1.10.14 -> 1.10.18
Upgrade dbus from 1.10.14 to 1.10.18.

(From OE-Core rev: c3480297d295b9cee3e6f5e271c57960877a6fde)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Nathan Lynch
ad3770910a lttng-modules: update to 2.9.2
This version bump adds support for Linux 4.11.

(From OE-Core rev: feec4f2d77f66f4d7d1debd770a933a3107e9bd8)

Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
6d0cfe6a70 bluez5: cleanup tabs and spaces
(From OE-Core rev: 476e730df93223033ba2b3b36cdc47abb3ba30ae)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
934087843e bluez5: do not install audio.conf
The audio.conf file has been removed, stop installing it.

(From OE-Core rev: 4354fcad22322a80375668bc1beaac9219291136)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
c99e6b4505 bluez5: add PACKAGECONFIG option for cups
(From OE-Core rev: 49d27787d48bab371dbacaf44419fc66f697628a)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
8970a40839 bluez5: add PACKAGECONFIG option for systemd
(From OE-Core rev: 3eb9a546c0eae4a5ea8526445ba0bf1e7ed5517e)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
49530170ec bluez5: add PACKAGECONFIG option for midi
(From OE-Core rev: 057f642b45c740c68c0b10b48eb57c3eac321085)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
a104bde188 bluez5: remove libasound-module references
Cleanup references to libasound-module since this code has been
completly removed from Bluez.

(From OE-Core rev: 8b433f49c8ea153f75d986e5b9ad89dd3f625cba)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Marc Ferland
feacb428b0 bluez5: Upgrade 5.43 -> 5.44
New feautures/fixes in this version:

* fixes to BLE
* a new midi plugin
* support for single-mode controllers w/o public address
* most of the experimental tools have been promoted and are now part of
  the official tools
* 'experimental' has been renamed to 'testing' (hence the addition of
  the 'testing' package config option)
* classic command line tools like hciattach and hciconfig are now enabled
  by the "--enable-deprecated" configure option (enabled by default for
  backward compatibility).

(From OE-Core rev: dec3620bd13d43575bcfc5d99f40659672d7252b)

Signed-off-by: Marc Ferland <ferlandm@amotus.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Andrej Valek
2865683b6a libevent: 2.0.22 -> 2.1.8
Update libevent to version 2.1.8 and fix test directory creation

License file has been changed due to new MIT license in source code.

(From OE-Core rev: 028f3aaa29e23f0eff044698e7a39ec327450d49)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Alexander Kanavin
c43c3ec8f9 portmap: remove recipe
It was dropped from Debian years ago, and superseded by rpcbind (which we also ship).
https://packages.qa.debian.org/p/portmap.html

The upstream source is no longer available either since a few days ago.

(From OE-Core rev: aa4bc52a0b885c6ed4af5260e54ab6b2348839e3)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:29 +01:00
Huang Qiyu
dd110fe8a4 libarchive: 3.2.2 -> 3.3.1
1) Upgrade libarchive from 3.2.2 to 3.3.1.
2) Fix an unknown-configure-option "--without-lzmadec" when do_configure.
3) Delete three patches, since they are integrated upstream.
   0001-archive_write_disk_posix.c-make-_fsobj-functions-mor.patch
   0002-Fix-extracting-hardlinks-over-symlinks.patch
   non-recursive-extract-and-list.patch

(From OE-Core rev: b5a5ca83670f93879048758d0637ea0f0a3866ac)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Peter Kjellerstedt
8033fd4ad1 base-files: profile: Simplify setting variables conditionally
It is preferred to use `[ "$FOO" ] || ...` instead of
`[ -z "$FOO" ] && ...` as the latter leaves $? set to 1.

(From OE-Core rev: d76c68505c36dbf383a989f3c2458abc765e2c19)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Ross Burton
ad2778693e oeqa/selftest: add test for package manager version comparison
This test case verifies that opkg, dpkg, and rpm all have the same behaviour for
version ordering, specifically the behaviour of ~ which should be sorting
*before* nothing:

  1.0 < 2.0~pre < 2.0 < 2.0-fix

(From OE-Core rev: 0bf875ea234bb9ff50d347345782e14d6b7d3ff9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Ross Burton
37c1dd150c oeqa/selftest: relax whitespace matches in search regex
Latest DNF has changed the amount of whitespace it outputs so use matches
instead of hardcoding the exact number of spaces.

(From OE-Core rev: 9ebeb374e49ecedecba8fe16fff3717edbc41994)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Leonardo Sandoval
9f269d1e51 selftest/runtime-test: Split the config values
Split the configuration values (common and specific) so it is easier to read
what goes into the config file. Also the specific configurations are
set in every loop so these do not append on each iteration.

(From OE-Core rev: 58d43b470ffa9b498234b6845cacfd867218ca03)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Panagiotis Tamtamis
6830a969f2 rootfs-postcommands.bbclass: Check if "/etc/fstab" exists
Using "read-only-rootfs" feature in minimal or special
purpose images (eg mounted images) makes build to fail
because ${IMAGE_ROOTFS}/etc/fstab file does not exist.

(From OE-Core rev: 43714514fb29a40830e6619552980d7f88d77fb7)

Signed-off-by: Panagiotis Tamtamis <panagiotis.tamtamis@unify.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Cody P Schafer
be0bac2125 cmake.bbclass: remove unneded cd ${B}
The default dir for do_compile & do_configure is already ${B}, no need
to cd (other than broken appends)

CC: Andre McCurdy <armccurdy@gmail.com>
(From OE-Core rev: c5da7a3637b0eb8ec5b7368c7ac732d802a703f9)

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Pascal Bach
66ecc9354f image.bbclass: allow override of image LICENSE
Currently the LICENSE of every image is hard set to MIT.
This allows this to be overriden in derived images.

(From OE-Core rev: 62454568c12d4fd19bb69b1b679e9c7b6dc95927)

Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
David Vincent
6ea5de4433 image.bbclass: Set ROOTFS_RO_UNNEEDED correctly
Use a weak assignment for ROOTFS_RO_UNNEEDED to let users define their
own list overriding defaults.

(From OE-Core rev: aeec0b2ccdf8566dd07961f8c4c44fcff13b70c8)

Signed-off-by: David Vincent <freesilicon@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Alistair Francis
7243c21bf8 runqemu: Automatically add a TFTP directory for slirp boot
When booting QEMU with slirp networking we want to use QEMUs TFTP server
to make the images in deploy accessible to the guest.

(From OE-Core rev: a6bef2fa065f8bb74d0084e44dd0ca47d7859113)

Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Markus Lehtonen
ef8c15852c oe.lsb: add get_os_release()
Move get_os_release() from oeqa.utils.metadata to oe.lsb, merging the
code with release_dict_osr() from oe.lsb. This removes some code
duplication and makes get_os_release() more robust.

(From OE-Core rev: 56b883f7765f6bd72e83dec26a5db8c7108c835d)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Richard Purdie
a11e87f179 useradd: Create lib/oe/useradd function library
The code in useradd-staticids is generally useful for user addition
functionality but is not reusable in its current form. Refactor the
code into a set of library functions.

(From OE-Core rev: a638ef304b1f1acb4c88f4f90b1ef22526cb8d2f)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Richard Purdie
e4e8435886 populate_sdk_ext: Avoid build failures where sstate was used
If sstate was used to populate the build and one of the universal-4.8
or universal-4.9 mirror urls was used, the sstate checks during eSDK
construction could fail as it would zero out the SSTATE_MIRRORs
variable.

Use the same mirrors variable setting as the eSDK would end up using
to perform the checks to avoid this.

(From OE-Core rev: 6b9e8b780dcd8d5ffba3df35cfe41674413ee26d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Richard Purdie
dec53367a8 gcc-configure/gcc-target: Move arm6/7 config to target only
We only build one gcc-cross per architecture and having target specific
flags means gcc-cross would rebuild. These flags are really for the
on target case, so they should be set in gcc-target only.

(From OE-Core rev: 851937dde81de2a9ef54c5f19a78fb12fb82afd4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Richard Purdie
0d245c8cfb glibc: Avoid errors if you accidentally create a git symlink in the glibc source dir
If you accidentally create symlinks in the glibc sources directory, it
fails in very hard to understand ways. Whilst most people don't do this,
since I debugged it, specifify the list of plugins we use to avoid
this biting anyone else.

(From OE-Core rev: 38a1d4ae4df8dd21546b7442e5a3bddca32a4734)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Richard Purdie
558807cc30 base: Simplify BASEDEPENDS construction
This code dates from distant times before we had class overrides.
The comments are also rather stale. Rewrite this code using class
overrides which makes it safer, more modern and more easily
understandable.

(From OE-Core rev: fb3b160a6bf20a601d6cecf3f06a2b71c03fa91f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-16 14:08:28 +01:00
Paul Eggleton
3dea90e8b7 bitbake: lib/bb/fetch2: fix typo in conflicting revision message
spcify -> specify

(Bitbake rev: c46f183b3ea94789dd83cb280a1bf5735189c9bc)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-15 16:21:21 +01:00
Paul Eggleton
5cba1620e4 bitbake: lib/bb/COW.py: fix typo in Tim Ansell's name
See AUTHORS for reference.

(Bitbake rev: a6345899ffeb595ca287b295945713eb95032124)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-15 16:21:20 +01:00
Jose Lamego
5d301e9f19 python*-git: Upgrade to version 2.1.3
Both python-git and python3-git need to be upgraded to latest
upstream
version.
This change was tested using qemux86 with core-image-sato.

(From OE-Core rev: c59fa3bd71b42410bf032846ee8fdb6e6eb1b95c)

Signed-off-by: Jose Lamego <jose.a.lamego@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:10 +01:00
Alexander Kanavin
6d60e8fb0e libunwind: update to 1.2
Switch to using tarballs as git is unreliable (not responding right now).

LICENSE file is gone; COPYING has an additional line on top with
copyright attribution, the license text that follows has not changed.

(From OE-Core rev: fd55e8a463f42e4012aeedacb2d168f41232bf25)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Oleksandr Kravchuk
dc8202e5b4 curl: upgrade to 7.54.0
(From OE-Core rev: cf0fe542b13e2bb64caeebb7d80a7642bbf8416c)

Signed-off-by: Oleksandr Kravchuk <oleksandr.kravchuk@pelagicore.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Fabio Berton
febb87bfc3 mesa: Update to version 17.0.4
This commit apply bug fixes found in both mesa 17.0.2 and mesa 17.0.3
releases.

  - Mesa 17.0.4 is a bug fix release which fixes the following bugs
    found since the 17.0.3 release:

      Bug 99515  - SIGSEGV MAPERR on Android nougat-x86 with mesa 17.0.0rc
      Bug 100391 - SachaWillems deferredmultisampling asserts
      Bug 100452 - push_constants host memory leak when resetting command buffer
      Bug 100582 - [GEN8+] piglit.spec.arb_stencil_texturing.glblitframebuffer
                   corrupts state.gl_texture* assertions

  - Mesa 17.0.3 is a bug fix release which fixes the following bugs
    found since the 17.0.2 release:

      Bug 96743  - [BYT, HSW, SKL, BXT, KBL] GPU hangs with GfxBench 4.0 CarChase
      Bug 99246  - [d3dadapter+radeonsi & bisect] EVE-Online : hang on wormhole sight
      Bug 100061 - LODQ instruction generated with invalid dst mask
      Bug 100182 - Flickering in The Talos Principle on Sky Lake GT4.
      Bug 100201 - Windows scons build with MSVC toolchain and LLVM 4.0 fails

(From OE-Core rev: 70ad501c9c49318dbed7e0c3adfd4fea1a59f7ac)

Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Zhixiong Chi
9ef73fbeba bash: CVE-2016-0634
A vulnerability was found in a way bash expands the $HOSTNAME.
Injecting the hostname with malicious code would cause it to run
each time bash expanded \h in the prompt string.

Porting patch from <https://ftp.gnu.org/gnu/bash/bash-4.3-patches/
bash43-047> to solve CVE-2016-0634

CVE: CVE-2016-0634

(From OE-Core rev: 7dd6aa1a4bf6e9fc8a1998cda6ac5397bb5cd5cb)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
68002417e4 libepoxy: 1.4.0 -> 1.4.1
Upgrade libepoxy from 1.4.0 to 1.4.1.

(From OE-Core rev: 841da7e566799d6a2f2c6c7f3de885d328e8a972)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
79f2c696b6 byacc: 20161202 -> 20170201
1)Upgrade byacc from 20161202 to 20170201.
2)License checksum changed,since the copyright years were updated.

(From OE-Core rev: f859b95c0d3dce36c6d39f5aba414a27f855a18d)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
4e14f9bce2 gdk-pixbuf:2.36.5 -> 2.36.6
Upgrade gdk-pixbuf from 2.36.5 to 2.36.6.

(From OE-Core rev: 17c1fb65df2423cdd28fde7579e9fa806cbfca6d)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Ross Burton
0903700ea8 coreutils: don't use version-specific patch directory
As we only ship one version of coreutils, having this directory be versioned
just complicates upgrades.

(From OE-Core rev: 860e9c7d5653deb31dc0f1b0ea55c8e2a843d2fa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
485e8a3e9e coreutils: 8.26 -> 8.27
Upgrade coreutils from 8.26 to 8.27.

(From OE-Core rev: f59039820389cef334fa50d879e9a14d88ac8fb6)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Dengke Du
6539d02f41 openssh: upgrade to 7.5p1
(From OE-Core rev: 2e8b43d89c61b32e5fafd0f57eea2241316628e5)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
67055d8545 at-spi2-core: 2.22.0 -> 2.24.0
Upgreade at-spi2-core from 2.22.0 to 2.24.0.

(From OE-Core rev: 1d3894f7117a2195c699fb27760a1daf6558b698)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
83e0ffa792 at-spi2-atk : 2.22.0 -> 2.24.0
Upgrade at-spi2-atk from 2.22.0 to 2.24.0.

(From OE-Core rev: eeb92e742de9a1756674aa20243010ae56b3fe6c)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Armin Kuster
b501f06535 lz4: update to lastest 1.7.4
update SRC_URI: as of 1.7.3, repo changed. same owner
Renamed recipe to reflect PV and added Epoch
Added ptest, tests added v1.7.3
updated LICENSE to be more accurate.

(From OE-Core rev: 962459c55406432537e10ab743cfa325b703e12a)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Khem Raj
99df0c3470 webkitgtk: Upgrade to 2.16.1
Fix build with gcc7
Move all patches to webkit folder
Drop patches that were backports or have been upstreamed

(From OE-Core rev: bfbdd1a2069f199be9ba0909dd512469ff17b65e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Khem Raj
2b070ef738 boost: Upgrade to 1.64.0
drop upstreamed patches

(From OE-Core rev: 9ba71dc40dd782d192504b0827ca91f0fe180abe)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Khem Raj
7ee0540f5c json-c: Upgrade to 0.12.1 release
Backport fix for gcc7 warning along the way

Remove --disable-rpath as this configure doesn't support it anymore [RB].

(From OE-Core rev: ccf630e78aad488da7b80f2981037d3d0559cfad)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Khem Raj
82b555aef2 nss: Update to 3.29.1
Also fix build with gcc7 along

(From OE-Core rev: 5b8c7e4cc54353014e9e023e29a6ff97aefd5179)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Huang Qiyu
13fcd3fdec libdrm: 2.4.75 -> 2.4.80
Upgrade libdrm from 2.4.75 to 2.4.80.

(From OE-Core rev: 042917c0fe5bf527ff2ca2a8e6bcc1c6c7d56e39)

Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:51:09 +01:00
Richard Purdie
aee1b57539 package_ipk/deb: Tweak functions for better cleanup and layout
This uses more modern formatting to handle the lockfiles and control
file cleanup with try/finally, taking advantage of the previous
extra indentation.

(From OE-Core rev: 9cd7c2631b0840a57b9ed6c201bcb4fc80094f71)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Richard Purdie
086e0db582 package_deb: Split do_package_write_deb into two functions
This prepares the way to parallelise deb generation and splits the iteration
over packages and the package generation into separate functions. Whitespace
indentation is unchanged deliberately and is fixed in a followup patch. There
should be no functional change.

Some checks on variables are removed as they were pointless when you looked
at the code.

(From OE-Core rev: 5054f66f8fbaaa422f74a4b5d0e61e68de6ffe91)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Richard Purdie
8454756453 package_ipk: Split into two functions
This prepares the way to parallelise ipk generation and splits the iteration
over packages and the package generation into separate functions. Whitespace
indentation is unchanged deliberately and is fixed in a followup patch. There
should be no functional change.

(From OE-Core rev: f190d8456c7e135164d3073acfb3319e75c9de76)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Richard Purdie
c22953e8ec staging: Allow BB_LIMITEDDEPS to avoid BB_TASKDEPDATA
In the limited dependency case we don't use any of the data from
BB_TASKDEPDATA. Restructure the code so this variable doesn't have
to be set. This allows the function to be called from other contexts
without creating artificial constructs. There should be no functional
change, behaviour remains unchanged.

(From OE-Core rev: 71e5243e3ebadb90b45fe418dac3eaa2c1b896bd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Richard Purdie
c38d8a3352 sstate: Ensure native/cross recipes have relocation of HOSTTOOLS_DIR
The previous change to relocate HOSTTOOLS wasn't complete as some files,
particularly in gcc stashed build directories were not being correctly
relocated. This patch addresses the issue.

(From OE-Core rev: 21dd36cc12a033b012544c5d15a6f8afd84dabc9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Richard Purdie
31be35c248 python.inc: Fix python2/3 hosttools path references
Both native and target versions of this file reference mkdir and install
in hosttools paths. Use the version from PATH instead.

(From OE-Core rev: 080197bf3bdf612da8104c2ae7f0b2c8dea32a0b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Richard Purdie
099224f81b rpm: Ensure macros file doesn't reference HOSTTOOLS
Currently the file encodes full paths to various host tools in the
HOSTTOOLS directory which is bad in native and target cases. We can
simply use the versions from PATH quite safely in OE.

(From OE-Core rev: be901200d94beaa35e1d05eb502b117b3b523609)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-12 08:45:36 +01:00
Gernot Hillier
641ba7069a tcf-agent: enable default target debugging features
A number of features were disabled in OE due to historic problems
on ARM. In tcf-agent 1.4, they compile cleanly on all architectures
besides mips and libc-musl. These features are required for target
debugging with Eclipse Neon, CDT and TCF plugins - for example used
by Xilinx Vivado SDK 2016.4.

For MIPS and libc-musl, at least re-enable SERVICE_Symbols and
SERVICE_LineNumbers which compile cleanly.

(From OE-Core rev: b07242cfe4544e99daf0a8d2f7062530e366bfae)

Signed-off-by: Gernot Hillier <gernot.hillier@siemens.com>
Signed-off-by: Tim Offermann <tim.offermann@siemens.com>
Acked-by: Eugene Tarassov <eugene.tarassov@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Gernot Hillier
36c71efe92 tcf-agent: fix machine setting for arm64 build
tcf-agent uses "a64", not "aarch64", see agent/Makefile.inc. This fix
allows to re-enable features like SERVICE_Breakpoints and SERVICE_
MemoryMap on arm64.

(From OE-Core rev: 60c9b55d2247ca4a5074804eb42189c31d33fcf8)

Signed-off-by: Gernot Hillier <gernot.hillier@siemens.com>
Acked-by: Eugene Tarassov <eugene.tarassov@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Ross Burton
10fdf0e535 libcap: clean up gperf enabling logic
There's no need to sed the Makefile (especially the wrong Makefile) when there's
a variable we can pass.

(From OE-Core rev: 43f7652baa0f1973477731ce05786eda2cc81c09)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Andre McCurdy
c64160e347 gnutls: move BBCLASSEXTEND from gnutls.inc into the gnutls recipe
There may be alternative gnutls recipes outside oe-core which include
gnutls.inc but which don't want BBCLASSEXTEND = "native nativesdk".

(From OE-Core rev: 1160b51fbe5661be83959c0e135e4b4231c94349)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Ross Burton
62b28136c0 python3: add python3 metapackage
Many new users add "python3" to their image using IMAGE_INSTALL and are then
surprised that they can't import any of the standard library. This is because we
split up the standard library into a number of packages, and python3-core (the
interpreter and essential modules only) RPROVIDES 'python3'.

Solve this by moving the RPROVIDES of 'python3' to python3-modules, so that the
entire Python standard library is installed.

[ YOCTO #11182 ]

(From OE-Core rev: 54a2549802a911cad2475a6aa379315a834419d8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Ming Liu
f9eff2eebf classes/image_live: allow different filesystems to be used for live images
The idea is copied from commit df0b217f3df2c36a32e5c4afaec36a28bfc77bbb:
[ classes/image_vm: allow different filesystems to be used for VM images ]

The same logic should apply to image_live.bbclass, to allow other
filesystems to be used vs just ext4. The default value of ext4 is kept
so there is no functional change unless LIVE_ROOTFS_TYPE is set in the
inherting recipe.

(From OE-Core rev: 270cd793fa2777bf15930ee4873c7b44a22ad005)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
California Sullivan
0cff8d03ff parselogs: whitelist failed to enable keyboard error on intel-corei7-64
This error is seen on the Braswell RVP platform we have been using for
testing. The error is caused by atkbd.c keyboard driver, which is only
for AT and PS/2 keyboards. I tested a PS/2 keyboard with the board,
which worked fine, and the board does not have a separate AT connector,
so this error won't cause any functional issues.

[YOCTO #10110].

(From OE-Core rev: c9f83639242313ca04ec36b49602a8464e10dae8)

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
California Sullivan
0100bfa01c parselogs: whitelist bluetooth firmware load error for intel-corei7-64
The NUC6 has issues bringing up Bluetooth early in the boot sequence. We
see:

[    4.091790] Bluetooth: hci0: Minimum firmware build 1 week 10 2014
[    4.097326] Bluetooth: hci0: Found device firmware: intel/ibt-11-5.sfi
[    4.145317] Bluetooth: hci0: Failed to send firmware data (-38)

Followed by this later on:

[   11.509870] Bluetooth: hci0: Minimum firmware build 1 week 10 2014
[   11.509988] Bluetooth: hci0: Found device firmware: intel/ibt-11-5.sfi
[   13.090308] Bluetooth: hci0: Waiting for firmware download to complete
[   13.090829] Bluetooth: hci0: Firmware loaded in 1549114 usecs
[   13.090987] Bluetooth: hci0: Waiting for device to boot
[   13.101958] Bluetooth: hci0: Device booted in 10818 usecs

Bluetooth does successfully come up and the firmware is loaded. This
behavior is consistent across all kernels I've tested.

[YOCTO #10628].

(From OE-Core rev: 045ee89342ea8ce16e78fea9f1c73d978d66a337)

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Alexander Kanavin
234d041003 libxml2: move python module to Python 3
(From OE-Core rev: e73ac0196f031d254969f6c693a0e31071270cab)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Jose Lamego
3ad3fda6c5 create-pull-request: add "-t in-reply-to" option
The create-patch-request script creates patches as replies to a cover
letter, in the form of an email thread. If further revisions are sent to
the mailing list without referencing to the first revision, these new
revisions are not identified at the mailing list as part of the original
thread, but as a new thread instead.

This change adds the "[-t in_reply_to]" option, where "in_reply_to" is
the original cover letter's Message-Id, so this reference is added
to the new cover letter to ensure the thread continuity.

[YOCTO #11294]

(From OE-Core rev: 8a3879a8ca71db7fb313417d86b3ac7904cb0f0e)

Signed-off-by: Jose Lamego <jose.a.lamego@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:19 +01:00
Nathan Lynch
79189ea3b2 lttng-modules: work around GCC 7 changes
Avoid using LTTng's BUILD_RUNTIME_BUG_ON macro, as it appears to run
into a similar problem as Linux experienced with __builtin_constant_p
and dead code elimination.

(From OE-Core rev: 22af48a50d40d6872adaa4f6b0bf144ef5781c1c)

Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Ross Burton
95ee489660 libiconv: fix linker failure under GCC 7
(From OE-Core rev: 7e646dd052c7013416d99d4c0201b4694fc1bbb6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
f9a30c184c diffutils: Fix build with gcc7
(From OE-Core rev: 4e3aa0d6860788b984e50276540d684817e8ac4a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
49b6d84fe3 ovmf: Fix build with gcc7
backport a patch which fixing warnings with gcc7

(From OE-Core rev: 74fb6043f6d74b84f7efc282ac6cfc54fcb71882)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
9169daddaa valgrind: Fix arm build with gcc7
Add function to remove -mcpu compiler options on arm

(From OE-Core rev: 6a053573dc4e6c7490e0e86fd043e425ea85f12c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
1335c252a8 puzzles: Add -Wno-error=format-overflow if compiler supports it
Fixes build with gcc7 in such a way that it keeps working
with older compilers who dont support -Wno-error=format-overflow=
option

(From OE-Core rev: 4b159968d6181155c270e2547706933b9df4d80b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
947a22d0be gnu-efi: Fix build with gcc7
(From OE-Core rev: 7f14d7de88da7e6e1b6934f9c608d67d80dc8398)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
0bec7a977a gstreamer1.0-libav: Fix build with gcc7
(From OE-Core rev: 828a7dd0a7f2a02118a97ece49ae35d1b0bc4611)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
63bafcca5d mdadm: Backport and make fixes for building with gcc7
(From OE-Core rev: c901af4574693ede5f1dcbccccc7c5a820b3d659)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
7f5437ac91 aspell: Fix build with gcc7
(From OE-Core rev: 4d417d0a9bb71d6bf068481c5ac0e3e3b2601d66)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
39bf88ed40 pax: Fix build with gcc7
(From OE-Core rev: 9c222c25e6a8b0414eee3e5f2e7c018b0c51ca4f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
25c5139593 libtirpc: Enable des APIs for musl
Use memset() API instead of __bzero()
Drop the patch removing des_* functions for musl

(From OE-Core rev: 2be873301420ec6ca2c70d899b7c49a7e2b0954d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
0edafa9ca7 libtirpc: Expose key_secretkey_is_set API
libnsl needs this API

(From OE-Core rev: 188fca2dec4b2da66c2f335bd92bfe874e3e7715)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
2b3d7e3a10 libidn: Fix build with gcc7
Replace a local patch for format warning with the one
that got committed upstream

(From OE-Core rev: 0f3e67a5d9bcd304fef0618f62f48fcf087d30c7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
b7bc9156a7 rpcbind: Remove uneeded patches
We were carrying patches which are no longer
needed when building rpcbind for musl

(From OE-Core rev: 56b3b440fa139c8f132b2b71dc6b8eb0ee974e7a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Khem Raj
c564d57c5b libtirpc: Backport fixes from 1.0.2rc3
These fixes are needed for it to work with gcc7

(From OE-Core rev: 7302d099f65215fe161f16593ad6f87e1944a8f7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Alexander Kanavin
53073a1dce libsolv: switch on ENABLE_COMPLEX_DEPS
This is required by recent versions of libdnf.

(From OE-Core rev: cb9596a822dc75319ce39b8f0a7133a1e58fec43)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:59:18 +01:00
Maxin B. John
0fcbb4d0ec GNU_MIRROR: switch from ftp to https
Based on the same reason behind DEBIAN's switch from ftp:
https://www.debian.org/News/2017/20170425

(From OE-Core rev: ba119d836c0f4b20a39c92fa2e64abb0d5a55ad4)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:56:00 +01:00
Maxin B. John
97e194e555 DEBIAN_MIRROR: switch from ftp to http
All public-facing debian.org FTP services will be shut down on November 1, 2017
The mirrors should just be accessed using HTTP instead.

https://www.debian.org/News/2017/20170425

Fixes [YOCTO #11413]

(From OE-Core rev: c2cdc4d9155d7a3b9cba60fa9cbb448cf64c62bd)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:56:00 +01:00
Maxin B. John
eb30ca2b31 useradd: remove preinst script referring to recipe sysroot
Remove recipe-specific-sysroot details from the preinst scripts
generated by useradd.bbclass.

This was added to match the default from bitbake.conf. Unlike the default
case, the dependencies used by useradd mean that a default passwd/group
file is always present. This means we don't need the native sysroot fallback.

Fixes [YOCTO #11460]

(From OE-Core rev: dfc9323c1cd7814989766be5bd1861fbaa739d2d)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:56:00 +01:00
Peter Kjellerstedt
7b56a4327b useradd.bbclass: Handle COMPONENTS_DIR when restoring state
The export of PSEUDO in useradd_sysroot() contains references to
${COMPONENTS_DIR}. These need to be handled when restoring
postinst-useradd-${PN} from the sstate cache.

(From OE-Core rev: 097875bc9ab9d60a452b01ac6825775983684d68)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:56:00 +01:00
Peter Kjellerstedt
439bb8cc71 bitbake.conf: Add COMPONENTS_DIR for ${STAGING_DIR}-components
The path to where to install and find the sysroot components is used
in many places. This warrants it to get its own variable.

(From OE-Core rev: 70a84b525470f72339568409daf84845904e4cab)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-11 16:55:59 +01:00
Scott Rifenbark
3e655f9c7f yocto-project-qs: Updated output for git clone of meta-intel.
(From yocto-docs rev: 446ca716612ced4931b42abd769e0743a3413710)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
4b0bec5211 yocto-project-qs: Updated git clone output for pyro poky.
(From yocto-docs rev: 50b2ca338312309dd434418e0c88e725c3791ee1)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
f670640669 ref-manual: Removed section on checking for build-time dependencies.
This scheme has changed due to recipe-specific sysroots making it
obsolete.  Removed the entire section.

(From yocto-docs rev: c52a896829212863402e5532dd8fb7fe4c247fca)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
0241215d3e ref-manual, dev-manual: replaced "depexp" with "taskexp"
(From yocto-docs rev: 3d7a13357a12b70d0c46b8aafdaf2ace20dcb970)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
e801e6e7dd ref-manual: Removed text surrounding BB_SETSCENE_VERIFY_FUNCTION* vars
The BB_SETSCENE_VERIFY_FUNCTION2 variable no longer exists.  I removed
a link to the BB manual to this variable description, which no
longer exists.  Also, removed a paragraph in the discussion around
setscene that talked about the variable.

(From yocto-docs rev: 1f8e3d53ee72c369cb1211332e074976737fd76b)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
d815dfbea3 dev-manual: Cleaned up "Gdbserver" term
This should be "gdbserver" when referred to generically.

(From yocto-docs rev: 83b2be50e34b0c07cce1f27b55e595752b80b3ea)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
cbea3d8b6b dev-manual: Updated a few occurrences of "dnf" to "DNF"
These depend on context.  In general, "DNF" is the preferred
terminology unless directly referring to an application or such.

(From yocto-docs rev: 29012a8f8e21b964e1ea6d32841dffa8dae7df9f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
bcf22c0bb6 dev-manual: Changed "Dnf" to "DNF" for consistency
(From yocto-docs rev: 22ca6c591fd28995a5444635dc787c67f8af822a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
bc1c16f616 ref-manual: Added links for variables
Needed to add cross-links into the glossary for various variables.

(From yocto-docs rev: 45acf78a2f99e8fda91042c2bee30094255e5a10)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
171b714ed2 ref-manual: Added 4 DISTRO_FEATURES* variable descriptions.
Added the following:

 * DISTRO_FEATURES_NATIVE
 * DISTRO_FEATURES_NATIVESDK
 * DISTRO_FEATURES_FILTER_NATIVE
 * DISTRO_FEATURES_FILTER_NATIVESDK

to the variables glossary.

(From yocto-docs rev: ee68291c32cdbf8004c24295784c0f70f02c0a55)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
b1dc0ee121 ref-manual, dev-manual: Completed first draft of 2.3 migration section.
(From yocto-docs rev: 42ab9e34da640b46d39741c9c83648dc65518ec1)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
7fdd0ac087 ref-manual: Applied 2.3 Migration review comments.
(From yocto-docs rev: 08a077adea37d5b3eb3ac119b1a5981a6fef21a3)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Scott Rifenbark
744cd8cfd7 ref-manual: Added new glossary entries for HOSTTOOLS* variables.
Entry added for HOSTTOOLS and HOSTTOOLS_NONFATAL.

(From yocto-docs rev: c766920a13071c1bb46a195ea07be38962d2e12d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-10 12:13:32 +01:00
Richard Purdie
381897c640 build-appliance-image: Update to master head revision
(From OE-Core rev: 123962018251dfb1d6ca5aa5c0d02534007de3ab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-01 08:56:47 +01:00
Peter Kjellerstedt
1d57ca352f sstate.bbclass, staging.bbclass: Handle HOSTTOOLS_DIR when restoring state
Paths to host tools that have been copied to ${HOSTTOOLS_DIR} may end
up in the sstate cache. They thus need to be corrected when restoring
from the sstate cache.

(From OE-Core rev: f8671aecf05a286dd2b34b07bb5fbbe0c31e26d0)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-01 08:56:35 +01:00
Peter Kjellerstedt
160c4fd9ae bitbake.conf: Add HOSTTOOLS_DIR for ${TMPDIR}/hosttools
The path to where to install and find the tools copied from the host
environment is already used in a couple of places. This warrants it to
get its own variable.

(From OE-Core rev: 8164c466943ffedff399009bf5547dba4f06d6c8)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-01 08:56:35 +01:00
Richard Purdie
a00f8981d8 build-appliance-image: Update to master head revision
(From OE-Core rev: 4fe59183dae7c556363bc885cfda11a38c0d2d47)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:58 +01:00
Scott Rifenbark
22f57cfbb1 ref-manual: Added warning for nativesdk recipe naming convention
Fixes [YOCTO #11411]

To help clear up the importance of the naming convention a user
must follow when creating a nativesdk-myrecipe.bb recipe that
inherits the nativesdk class, I placed a warning note at the end
of the section for the "nativesdk.bbclass" section.

(From yocto-docs rev: e6dc512aaeb0267c2c15c17a599c6950728b4547)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:52 +01:00
Scott Rifenbark
ef7e8f10a1 poky.ent: Added "iputils-ping" to Ubuntu/Debian essential packages
Fixes [YOCTO #11310]

Added the "iputils-ping" package to the list of essential host
packages.

(From yocto-docs rev: c6478419940405091d59312d22c45e3f32f9c94d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:52 +01:00
Scott Rifenbark
5f737111a3 poky.ent: Added "python3-pexpect" to distros
Fixes [YOCTO #11310]

Added this package to Ubuntu/Debina, Fedora, and OpenSUSE.

(From yocto-docs rev: e010d1abc083ed064c5340146bcac213286d973c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:52 +01:00
Richard Purdie
e1de6c05d0 build-appliance-image: Update to master head revision
(From OE-Core rev: 766bef5755521960e24ed7192214bf66bbee8354)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:36 +01:00
Andreas Oberritter
470995c3c6 package_deb.bbclass: Avoid writing empty custom fields
Avoids parser errors if PACKAGE_ADD_METADATA_DEB is set to an
empty value.

(From OE-Core rev: f0959c0908dfb386d29f13fcd3e57b2b004c6c14)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Andreas Oberritter
a428745d15 package_deb.bbclass: Fix multi-line package descriptions
In deb control files, each line of a long description starts with
a single space. Empty lines are represented by a single space
followed by a single full stop character.

(From OE-Core rev: f66278f471c0bf9421ce2c55a56a144a0f9332bf)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Andreas Oberritter
33dd5fb96c busybox: make bash a valid login shell if enabled
Add bash to /etc/shells if busybox is built with bash applet anabled
to fix login via dropbear.

(From OE-Core rev: 86a2db0b2997fd05882ae0119ef45b1ea5411d39)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Jussi Kukkonen
1565a24918 gst-player: Disable visualizations as workaround
Audio playback in gtk-play is broken with vaapi because the
visualizations do not work: disable visualizations as workaround.
This should be reverted as soon as [YOCTO #11410] is fixed.

(From OE-Core rev: 1092a8d4bc78a53f60ad0137aeb08b31853db9eb)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Catalin Enache
d7ec005904 libxml2: CVE-2016-9318
libxml2 2.9.4 and earlier, as used in XMLSec 1.2.23 and earlier
and other products, does not offer a flag directly indicating that
the current document may be read but other files may not be opened,
which makes it easier for remote attackers to conduct XML External
Entity (XXE) attacks via a crafted document.

Reference:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-9318

Upstream patch:
https://git.gnome.org/browse/libxml2/commit/?id=2304078555896cf1638c628f50326aeef6f0e0d0

(From OE-Core rev: 0dd44c00e3b2fbc3befc3f361624a3a60161d979)

Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Catalin Enache
5970acb3fe ghostscript : CVE-2016-10219, CVE-2016-10220, CVE-2017-5951
The intersect function in base/gxfill.c in Artifex Software, Inc. Ghostscript
9.20 allows remote attackers to cause a denial of service (divide-by-zero
error and application crash) via a crafted file.

The gs_makewordimagedevice function in base/gsdevmem.c in Artifex Software, Inc.
Ghostscript 9.20 allows remote attackers to cause a denial of service (NULL
pointer dereference and application crash) via a crafted file that is
mishandled in the PDF Transparency module.

The mem_get_bits_rectangle function in base/gdevmem.c in Artifex Software, Inc.
Ghostscript 9.20 allows remote attackers to cause a denial of service (NULL
pointer dereference and application crash) via a crafted file.

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-10219
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-10220
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-5951

Upstream patches:
http://git.ghostscript.com/?p=ghostpdl.git;h=4bef1a1d32e29b68855616020dbff574b9cda08f
http://git.ghostscript.com/?p=ghostpdl.git;h=daf85701dab05f17e924a48a81edc9195b4a04e8
http://git.ghostscript.com/?p=ghostpdl.git;h=bfa6b2ecbe48edc69a7d9d22a12419aed25960b8

(From OE-Core rev: 6679a4d4379f6f18554ed0042546cce94d5d0b19)

Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Yi Zhao
8913e94511 bind: Security fix CVE-2016-6170
CVE-2016-6170: ISC BIND through 9.9.9-P1, 9.10.x through 9.10.4-P1, and
9.11.x through 9.11.0b1 allows primary DNS servers to cause a denial of
service (secondary DNS server crash) via a large AXFR response, and
possibly allows IXFR servers to cause a denial of service (IXFR client
crash) via a large IXFR response and allows remote authenticated users
to cause a denial of service (primary DNS server crash) via a large
UPDATE message.

External References:
https://nvd.nist.gov/vuln/detail/CVE-2016-6170

Patch from:
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=commit;h=1bbcfe2fc84f57b1e4e075fb3bc2a1dd0a3a851f

(From OE-Core rev: 14abd767349bc868ca59838f1af3aaf17dfe4350)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Yi Zhao
e9c8cbdf02 bind: Security fix CVE-2016-8864
CVE-2016-8864: named in ISC BIND 9.x before 9.9.9-P4, 9.10.x before
9.10.4-P4, and 9.11.x before 9.11.0-P1 allows remote attackers to cause
a denial of service (assertion failure and daemon exit) via a DNAME
record in the answer section of a response to a recursive query,
related to db.c and resolver.c.

External References:
https://nvd.nist.gov/vuln/detail/CVE-2016-8864

Patch from:
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=commit;h=c1d0599a246f646d1c22018f8fa09459270a44b8

(From OE-Core rev: c06f3a5993c7d63d91840c2a4d5b621e946ef78f)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Alexander Kanavin
ad6bb68906 linux-libc-headers: fix upstream version check
(From OE-Core rev: 83d55bcc63510d3704078f19c255c524d8fffc39)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Alexander Kanavin
aaba16de6f libproxy: speed up upstream version check
Something in the fetched webpage made the default regex matching really slow.

(From OE-Core rev: e4d1100a84e28cb97438c18df6d9f98996a7d578)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Alexander Kanavin
ac6bc39893 boost: fix upstream version check
(From OE-Core rev: b64c4d7e033acf5d58c0fdee6907ea6983a67138)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Alexander Kanavin
9cb2695786 python3-iniparse: fix upstream version check
(From OE-Core rev: 21e9e3642d1dbd3d868a4472716f633bd5626b08)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Alexander Kanavin
913adc49bd acpica: fix upstream version check
(From OE-Core rev: a5d5a244717259c15145c65e0f44e37544afe8ee)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Dengke Du
495c395bb4 lsbtest: add option --ignoreos to rpm install command
After change to the rpm4, the rpm packages in lsbtest, such as:

    lsb-setup-4.1.0-1.noarch.rpm
    lsb-dist-checker-5.0.0.1-1.x86_64.rpm
    ......
    lsb-cmdchk-5.0.3-1.x86_64.rpm

When install above rpm packages, the error log appears:

    package lsb-setup-4.1.0-1.noarch is intended for a different operating system
    ......

So we should add option "--ignoreos" to the rpm install command in LSB_Test.sh
in ./meta/recipes-extended/lsb/lsbtest directory. In this way we can make sure
the correct installation of those rpm packages.

The YOCTO bug #11224 didn't create logs, this is because the above test rpm
packages didn't install.

[YOCTO #11224]

(From OE-Core rev: db2798d967dbffed834070b52fe778efa18cb4ae)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Alexander Kanavin
475786d0f3 rpm: properly relocate additional native tools
These tools are not currently used for anything, but we should
still provide working versions of them.

[YOCTO #11400]

(From OE-Core rev: da11fbde6f8164e2774068b99bab84e4b6084713)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Andre McCurdy
fd9d421d0e libcap: drop obsolete attr PACKAGECONFIG option and libattr dependency
In the 2.25 release, libcap dropped its dependency on an external
libattr library:

  https://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git/commit/?id=85f38a573fc47472ab792e813b6f6b6f0b1df112

(From OE-Core rev: 9ad941b512e3fcfd748d40b00d7d715d753c7b55)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Andre McCurdy
33f378ee33 cmake.bbclass: use weakest ??= assignment for default OECMAKE_SOURCEPATH
Make it slightly easier to support situations where the default path
needs to be over-ridden more than once.

(From OE-Core rev: 07390e3d45cdf244079a6b91175512ebac789da0)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Peter Kjellerstedt
edb7672c27 cmake.bbclass: Do not use bitbake variable syntax for shell variables
Using bitbake variable syntax (i.e., ${FOO}) for shell variables is
bad practice. First of all it is confusing, but more importantly it
can lead to weird problems if someone actually defines a bitbake
variable with the same name as the shell variable.

Also use lower case for local shell variables.

(From OE-Core rev: ea6befae799f45cf93771442f242cb023dd809d1)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Patrick Ohly
1fb309447f runqemu: support virtio drive type
Setting QB_DRIVE_TYPE=/dev/vd selects virtio without triggering any
warnings. Previously, that was only possible by setting an unknown
value and relying on the fallback to virtio, which caused some
warnings to be printed.

(From OE-Core rev: 5cbf102662dde6f706a19fa133cfd1e7475eb8c1)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Diego Rondini
ba9e1066b0 bitbake.conf: Add python2 to HOSTTOOLS
Add python2 to HOSTTOOLS as, according to
https://www.python.org/dev/peps/pep-0394/, the command "python2" should be the
one used in scripts that are not yet ported to Python 3.

(From OE-Core rev: b85e41eeef3fddc2c15439cf78b8cc8542b5bc22)

Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Khem Raj
625732083c bitbake.conf: Add pr to list of hosttools
pr is used by gstreamer1.0-libav during configure

(From OE-Core rev: cb6c02bd8c65ea033a939011cbba21ad0442acf0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Jose Perez Carranza
71fd36a8ab devtool: Avoid touch sstates when cleaning linux-yocto environment
sstates are cleaned when ruining  test_devtool_virtual_kernel_modify to
have a clean environment but this is affecting eSDK test that are
dependent of those sstates, hence “cleansstate” is replaced for
“clean”.

[YOCTO #11300]

(From OE-Core rev: 182fdb97ed6c11c7b55fdb99773da6f72c9828b3)

Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Kristian Amlie
e3e78df1b2 wic: Fix typo in help screen.
This was overlooked when f6a064d969 was merged.

(From OE-Core rev: 29a209822488ab687abdb1ceffdd9c7af5b3db68)

Signed-off-by: Kristian Amlie <kristian.amlie@mender.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Jussi Kukkonen
081e0a28f2 gstreamer1.0-vaapi: Fix playback breaking bug
gstreamer-vaapi fails to play files with specific frame sizes
because of buffer allocation issues. Fix is a backport.

Fixes [YOCTO #11311].

(From OE-Core rev: e01eb9b37ba5512d6fd9893c70b1f4d766fab2ac)

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>
2017-04-29 11:17:22 +01:00
Ross Burton
1bc292fe25 selftest/bbtests: improve download rename test
This test was assuming the format of SRC_URI so broke when SRC_URI was changed.
Fix the test by hardcoding a complete SRC_URI instead of appending and hoping
for the best.

(From OE-Core rev: afe1d3073a435ef6c838cc676748842af4c4af83)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Bruce Ashfield
929cebfb97 kernel-yocto/kern-tools: fix do_validate_branches clean stage
It was reported that do_validate_branches was failing with the following
error:

  Log data follows:
  | DEBUG: Executing shell function do_validate_branches
  | HEAD is now at fe0fb8d Merge tag 'v4.10.9' into standard/base
  | mkdir: cannot create directory .: File exists
  |
  | [ERROR] Can't find patch dir at ./patches/standard/base
  | usage: kgit s2q
  | WARNING: exit code 1 from a shell command.
  | ERROR: Function failed: do_validate_branches

This was triggered by the execution of 'kgit-s2q --clean' after forcing
the SRCREV to something other than the tip of the branch. --clean is
being run to remove any sentinel files from previous kernel builds to
ensure that the tree is in a consistent state.

There were two bugs, --clean was being executed and not exiting the
script as it was supposed to. Hence validation for applying patches
was done, and threw the error that eventually makes it to the console.

And the second bug is that since do_validate_branches actually calls
kgit-s2q --clean, the dependency on kern-tools-native needs to be on
that function (versus do_kernel_metadata which runs later).

With the tweaked kern-tool + the dependency fix, we no longer see this
error.

(From OE-Core rev: 4d5890b54cbdac01ee748759578b7b22ed8e61a2)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Robert Yang
52493384aa oe-find-native-sysroot: don't clear OECORE_NATIVE_SYSROOT
The OECORE_NATIVE_SYSROOT may come from environment vars, so don't clear
it, otherwise it broke runqemu-extract-sdk on sdk.

[YOCTO #11409]

(From OE-Core rev: 91faa9132821db4e7010b79943b2cfb804d6f4c5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Martin Jansa
9784ad79a4 runqemu-gen-tapdevs: fix runqemu-ifup script call
The tunctl binary is here:

OE @ /OE/openembedded-core # find /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/sysroot-providers
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/sysroot-providers/qemu-helper-native
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/usr
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/usr/bin
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/usr/bin/tunctl

But the script still complains that it cannot find tunctl:

OE @ /OE/openembedded-core # ./scripts/runqemu-gen-tapdevs 1026 1026 4 /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/
Note: Destroying pre-existing tap interface tap0...
TUNSETIFF: Device or resource busy
Creating 4 tap devices for UID: 1026 GID: 1026...
Creating tap0
Error running tunctl: Error: Unable to find tunctl binary in '/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/', please bitbake qemu-helper-native

The message is actually from runqemu-ifup, which is called from runqemu-gen-tapdevs as:
++ ./scripts/runqemu-ifup 1026 1026 /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/

But runqemu-ifup expects 3rd parameter to be STAGING_BINDIR_NATIVE directly not just SYSROOT dir
STAGING_BINDIR_NATIVE=$3
because tunctl is then used as:
TUNCTL=$STAGING_BINDIR_NATIVE/tunctl

It looks like it got broken by:
commit cc5513bf7a6114e14bb307acb88a44e9cf0aed8a
Author: Ed Bartosh <ed.bartosh@linux.intel.com>
Date:   Wed Apr 12 23:40:59 2017 +0300

    runqemu: use bindir_native property to run ifup/down scripts

    Used self.bindir_native to point out to the native sysroot
    when running runqemu-ifup and runqemu-ifdown scripts.

    [YOCTO #11266]
    [YOCTO #11193]

    Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
    Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Seemingly obvious fix would be to call runqemu-gen-tapdevs with path to STAGING_BINDIR_NATIVE in 4th parameter as well, but that won't work, because runqemu-gen-tapdevs checks for TUNCTL=$SYSROOT/usr/bin/tunctl

OE @ /OE/openembedded-core # ./scripts/runqemu-gen-tapdevs 1026 1026 4 /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/usr/bin/
Error: /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/usr/bin//usr/bin/tunctl is not an executable

I've tested that with this change it can call tunctl:
OE @ /OE/openembedded-core # ./scripts/runqemu-gen-tapdevs 1026 1026 4
/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/qemu-helper-native/usr/bin
Note: Destroying pre-existing tap interface tap0...
TUNSETIFF: Device or resource busy
Creating 4 tap devices for UID: 1026 GID: 1026...
Creating tap0
Creating tap1
Creating tap2
Creating tap3
Note: For systems running NetworkManager, it's recommended
Note: that the tap devices be set as unmanaged in the
Note: NetworkManager.conf file. Add the following lines to
Note: /etc/NetworkManager/NetworkManager.conf
[keyfile]
unmanaged-devices=interface-name:tap*

but runqemu itself still doesn't work for me:
OE qemux86@ ~/build/oe-core $ runqemu
runqemu - INFO - Running MACHINE=qemux86 bitbake -e...
runqemu - INFO - Running ls -t /OE/build/oe-core/tmp-glibc/deploy/images/qemux86/*.qemuboot.conf...
runqemu - INFO - CONFFILE: /OE/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427174052.qemuboot.conf
runqemu - INFO - Overriding conf file setting of STAGING_DIR_NATIVE to /OE/build/oe-core/tmp-glibc/work/i586-oe-linux/defaultpkgname/1.0-r0/recipe-sysroot-native from Bitbake environment
runqemu - INFO - Continuing with the following parameters:

KERNEL: [tmp-glibc/deploy/images/qemux86/bzImage--4.10.9+git0+ad2e885015_fe0fb8da3d-r0.2-qemux86-20170427085800.bin]
MACHINE: [qemux86]
FSTYPE: [ext4]
ROOTFS: [tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427174052.rootfs.ext4]
CONFFILE: [/OE/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427174052.qemuboot.conf]

runqemu - INFO - Running /bin/ip link...
runqemu - INFO - Acquiring lockfile /tmp/qemu-tap-locks/tap0.lock...
runqemu - INFO - Using preconfigured tap device tap0
runqemu - INFO - If this is not intended, touch /tmp/qemu-tap-locks/tap0.skip to make runqemu skip tap0.
runqemu - INFO - Network configuration: 192.168.7.2::192.168.7.1:255.255.255.0
runqemu - INFO - Running ldd tmp-glibc/work/x86_64-linux/qemu-helper-native/1.0-r1/recipe-sysroot-native/usr/bin//qemu-system-i386...
runqemu - INFO - Running tmp-glibc/work/x86_64-linux/qemu-helper-native/1.0-r1/recipe-sysroot-native/usr/bin//qemu-system-i386 -device virtio-net-pci,netdev=net0,mac=52:54:00:12:34:02 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -drive file=tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427174052.rootfs.ext4,if=virtio,format=raw -vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci   -cpu qemu32 -m 256 -serial mon:vc -serial null -kernel tmp-glibc/deploy/images/qemux86/bzImage--4.10.9+git0+ad2e885015_fe0fb8da3d-r0.2-qemux86-20170427085800.bin -append 'root=/dev/vda rw highres=off  mem=256M ip=192.168.7.2::192.168.7.1:255.255.255.0 vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1 '
qemu-system-i386: -netdev tap,id=net0,ifname=tap0,script=no,downscript=no: could not configure /dev/net/tun (tap0): Device or resource busy
runqemu - INFO - Releasing lockfile for tap device 'tap0'
Traceback (most recent call last):
  File "/OE/build/oe-core/openembedded-core/scripts/runqemu", line 1235, in <module>
    ret = main()
  File "/OE/build/oe-core/openembedded-core/scripts/runqemu", line 1228, in main
    config.start_qemu()
  File "/OE/build/oe-core/openembedded-core/scripts/runqemu", line 1139, in start_qemu
    raise Exception('Failed to run %s' % cmd)
Exception: Failed to run tmp-glibc/work/x86_64-linux/qemu-helper-native/1.0-r1/recipe-sysroot-native/usr/bin//qemu-system-i386 -device virtio-net-pci,netdev=net0,mac=52:54:00:12:34:02 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -drive file=tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427174052.rootfs.ext4,if=virtio,format=raw -vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci   -cpu qemu32 -m 256 -serial mon:vc -serial null -kernel tmp-glibc/deploy/images/qemux86/bzImage--4.10.9+git0+ad2e885015_fe0fb8da3d-r0.2-qemux86-20170427085800.bin -append 'root=/dev/vda rw highres=off  mem=256M ip=192.168.7.2::192.168.7.1:255.255.255.0 vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1 '

(From OE-Core rev: a31b1434c5f1edbd4e8faca813b4f084297c061d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Mark Hatle
d4dafce19b useradd-statids.bbclass: Add support for -P / --clear-password option
The commit 31dee7946340bf0f1e94e4e714191d3d6ca3bf6a added a new useradd and
groupadd option to specify a clear text password.  The parsing logic in the
useradd-staticid class did not understand this new option.  If the
meta-skeleton examples were run with the class enabled an error would be
generated, as an example uses the -P option.

Note, the code has a check that we do not attempt to set both a crypt and
clear text password.  It is not allowed that these two options are set
at the same time, so we prefer the crypt option if they happen to be.

(From OE-Core rev: a1715970d5c454dd24d04972ffb9cf735b5d1338)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:22 +01:00
Richard Purdie
7a0e795373 build-appliance-image: Update to master head revision
(From OE-Core rev: e584be78f92ee6f08f570c239698d56ac78d05f9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-21 08:22:18 +01:00
brian avery
36db8f2b78 testimage.bbclass: add additional dependency
qemu-native-helper has an additional task that needs to be run in order
for testimage to work. This task is usually run by default in a full
build but there are use cases where it might be skipped. This commit
adds the dependency explicitly.

Also, this commit adds a try/catch error message to make it clearer what
you need to do if you try to run testimage before you have built or
downloaded the image artifacts.

[YOCTO #11375]

(From OE-Core rev: 6e019537b9eb3af482e474a8cb248fe7312f4b58)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-21 08:22:09 +01:00
Jussi Kukkonen
a59bfd05d1 openssl: Bump SONAME to match the ABI
Commit 7933fbbc637 "Security fix Drown via 1.0.2g update" included
a version-script change from Debian that was an ABI change. It did
not include the soname change that Debian did so we have been calling
our ABI 1.0.0 but it really matches what others call 1.0.2.

Bump SONAME to match the ABI. In practice this changes both libcrypto
and libssl sonames from 1.0.0 to 1.0.2.

For background: Upstream does not do sonames so these are set by
distros. In this case the ABI changes based on a build time
configuration! Debian took the ABI changing configuration and bumped
soname but e.g. Ubuntu kept the deprecated API and just made it not
work, keeping soname. So both have same version of openssl but support
different ABI (and expose different SONAME).

Fixes [YOCTO #11396].

Thanks to Alexander Larsson et al for detective work.

(From OE-Core rev: 1b430eef7131876bc735c22d66358379b0516821)

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>
2017-04-21 08:22:09 +01:00
Ross Burton
4f462ee588 Revert "logrotate: set downloadfilename"
Sadly this breaks previous OE releases as it means the source mirror contains a
tarball with the same name but different checksums as was previously available.

This reverts commit 99c6e89db1.

(From OE-Core rev: eb4fee616287ae731f7af52e0fe5fc81f2eea2c0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-21 08:22:08 +01:00
Andre McCurdy
a9268f9ac2 busybox: fix typo in CVE-2016-2147_2.patch Upstream-Status tag
(From OE-Core rev: 7fe8bb9c736eadbd1201c008e57527cee9de9a71)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-21 08:22:08 +01:00
Richard Purdie
55a53f5326 build-appliance-image: Update to master head revision
(From OE-Core rev: 0126fe8934ecae3c91e441c4e1f5a86a15837679)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 08:16:46 +01:00
Scott Rifenbark
c0dc8d492e dev-manual, ref-manual: Updated various wordings and links
Fixes [YOCTO #10995]

I implemented various wording changes based on feedback from the
review.  One section title changes so some links in the ref-manual
and the dev-manual needed updating as well.

(From yocto-docs rev: 43a35a311a006d47db50602822e44ab431ca3e43)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 08:16:38 +01:00
Richard Purdie
e14f9743f9 build-appliance-image: Update to master head revision
(From OE-Core rev: 0b8167fa3e792dac272e24e3f06af88ada90ff14)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 08:16:18 +01:00
Richard Purdie
05784551a0 poky.conf: Bump version for 2.3 pyro release
(From meta-yocto rev: 7ce21b84d984f56f3664660b9f55d2315709f0f5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 08:15:06 +01:00
David Reyna
c519dc1cd4 bitbake: toaster: move release lookup from morty to pyro
Move the release name lookup into the layer index
from 'morty' to the 'pyro'.

Move the bitbake branch from 1.32 to 1.34.

[YOCTO #11377]

(Bitbake rev: 21d963149b5d97452420230a252101115b708d85)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:59:40 +01:00
Paul Eggleton
d45f5be977 bitbake: lib/bb/command: fix overrides in remote datastores where there is no default
If you have, for example, no value set for a variable VARIABLE and a
then VARIABLE_pn-something = "value" and then you parse something.bb,
you expect getVar('VARIABLE') on the resulting datastore to return
"value", but the code here assumed that if the variable wasn't set
without overrides then we didn't need to return the overridedata and
thus we didn't get the overridden value.

In OE this affected the ability to get RECIPE_MAINTAINER for a recipe
in a script using tinfoil (since this is only set from an inc file with
_pn- overrides for each recipe, and no default is set).

(Bitbake rev: b3d2c9917c5fd8278878328794daa107ddf79b64)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:59:40 +01:00
Aníbal Limón
7bde854ef7 kexec-tools: Add again the x32 patch
kexec-tools upstream previously integrated the patch into master rev
587778e24c9 but for a bug report it was remove [1][2], after an intensive
testing on OpenSUSE 13.1 64 bits and in poky variants: qemux86 [3],
qemux86-64-x32 [4] and generix86-64 (minnow) [5] it worked.

I think that the upstream revert was due to some integration issue while
testing into OpenSUSE [2], i will try to push again to upstream.

[1] http://lists.infradead.org/pipermail/kexec/2015-March/013482.html
[2] 5041d45b1c
[3] https://bugzilla.yoctoproject.org/show_bug.cgi?id=11050#c3
[4] https://bugzilla.yoctoproject.org/show_bug.cgi?id=11050#c4
[5] https://bugzilla.yoctoproject.org/show_bug.cgi?id=11050#c4

[YOCTO #11050]

(From OE-Core rev: c6cd5865b6914521a841ae0c9f4e2bcda99beff2)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:56:09 +01:00
Aníbal Limón
becf5aeefc Revert "kexec-tools: Remove unused patch"
This reverts commit ec1f1c4abe.

(From OE-Core rev: c53a609eae3023d2e2b1009c65721db97fd7b095)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:56:09 +01:00
Ross Burton
03f4eb4ebe maintainers: move to TI
(From meta-yocto rev: b4a77002ec6e82178ebc9a98500d792523094414)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
Ross Burton
7b0d45967b maintainers: reassign to OS Systems
(From meta-yocto rev: c19383f1d06180d52122090ca5f94bb449800a3f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
Ross Burton
a052b6e524 maintainers: reassign to montavista
(From meta-yocto rev: 2530c7c61cf046bbd04059bc903aa9b65dceb9c3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
Ross Burton
98765c005b maintainers: move u-boot to marek
(From meta-yocto rev: 9e07c711e022f54162603a6175cad928c883accf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
brian avery
b2b422c190 qemuboot.bbclass: save relative paths in conf file
This saves relative paths in the qemuboot.conf file instead of absolute
paths. This is to allow the images and kernels to be relocated and still
have the testimage and runqemu work.

[YOCTO #11375]

(From OE-Core rev: 235243d7be5df57df4767e4710b846e83f0aa9fd)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
brian avery
a6275df081 rootfs-postcommands.bbclass: save relative paths
We pass the TOPDIR to do a search/replace in export2json so that we save
relative paths in the testdata.json file rather than absolute paths.
This is to allow the images and kernels to be relocated yet still allow
testimage to work.

[YOCTO #11375]

(From OE-Core rev: 7f9f1bdd714fbc6b2adc62f64bf0e4fd1d98ce05)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
brian avery
ecd485650c meta: add search, replace strings to export2json
We want to be able to save relative paths so that we can relocate the
deploy dir images and kernels, yet still have qemu and testimage work
correctly.  This extends export2json with 2 named arguments so a
search/replace operation can be done to remove the leading path.

[YOCTO #11375]

(From OE-Core rev: 4829f1ebd89dc91860cf72fbbdc7b6bb0d5822bc)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
Juro Bystricky
7f0f7df8b3 kernel-arch.bbclass: conditional error message
The single purpose of "map_kernel_arch" is to set

   export ARCH = "some-arch"

The case when "some-arch" is not a valid Linux architecture results in an error.
This makes sense if the TARGET_OS is Linux, but that is not always the case.
kernel-arch is also inherited by toolchain-script, which may be used to build
toolchains for architectures not supported by Linux.

Rather than modifying toolchain-script to provide its own version of "map_arch"
this patch bypasses the error if the TARGET_OS is not linux.

(From OE-Core rev: 0b931e983b1f663d5d7dc65f1db7687334dd3ef2)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:26 +01:00
Aníbal Limón
9cb58a7f2b package_rpm.bbclass: Dosen't filter Conflicts if found in Provides
This filter was add to make compilence with debian packaging but in
package_deb.bbclass is allowed to have the same values in Conflicts and
Provides.

With this filtering errors in recipe meta-data are hidden and could end
on install two packages that conflicts [2].

Reviewing the RPM spec from Fedora doesn't have anything that denies to
use the both Conflicts and Provides with the same value [3], also in
debian manual section 7.6.2 of [4] this behaviour is allowed to force
the removal of the conflicted package and RPM is compilence with this
behaviour after remove the filtering this is seen [5].

[1]
http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=4b611b66743a5ec220aef34d796af63029bb5fd9
[2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=9349#c9
[3]
https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-advanced-packaging.html
[4] https://www.debian.org/doc/debian-policy/ch-relationships.html
[5] https://bugzilla.yoctoproject.org/show_bug.cgi?id=9349#c12

(From OE-Core rev: 2ba9dd490d69544553fc8a837fb5034a6746ab51)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:25 +01:00
Kai Kang
33212a8129 libsdl2: fix build failures on powerpc
Backport patch from upstream to fix build failures on ppc and ppc64.

(From OE-Core rev: 705669f8221027b525773a512beb25a7ea5f0275)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:25 +01:00
Richard Leitner
5882e890e8 bitbake.conf: add sha256sum to HOSTTOOLS
icedtea-native from meta-java needs sha256sum for checksum validation.
Therefore add sha256sum to HOSTTOOLS (as md5sum is already in there).
Without it the icedtea-native build will fail during configuration at
current master.

(From OE-Core rev: d0d3abdf9e2dec57f3849813faa5e7e3d34b83a4)

Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:25 +01:00
Jussi Kukkonen
adea8003ab package_manager.py: Reverse rpm arch order
The architecture list used by dnf/libsolv was in the wrong order.
As a result, the images were built with wrong and unpredictable
packages.

$ MACHINE=intel-corei7-64 bitbake core-image-sato
$ MACHINE=qemux86-64 bitbake core-image-sato
$ MACHINE=intel-corei7-64 bitbake -ccleansstate core-image-sato
$ MACHINE=intel-corei7-64 bitbake core-image-sato

The first image had 0 core2_64 packages in it, but the last one had
583 core2_64 packages (which were built for the qemu image in
between).

Reverse the arch order in etc/dnf/vars/arch.

Fixes [YOCTO #11384].

(From OE-Core rev: 4a82433de42943f8219beca3286f40b67157172f)

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>
2017-04-20 07:55:25 +01:00
Andre McCurdy
b73ceb2594 documentation.conf: update TCLIBC[doc] to match current options in oe-core
(From OE-Core rev: 3a482d55b6e9be263e53e36a67a6e29fbdddc0b1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:25 +01:00
Andre McCurdy
42d2e74b65 tclibc-musl.inc: fix stray comment reference to uclibc
(From OE-Core rev: e130039bfa92884bfcd25a33245e809eff76d9bc)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-20 07:55:25 +01:00
Richard Purdie
1423508b29 bitbake: bitbake: Update version to 1.34.0 for stable release
(Bitbake rev: b4da94a368c6c44c6e5b6e6e9a1e041ed84b4554)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:42:12 +01:00
Paul Eggleton
2f3e34537e ext-sdk-prepare.py: use quiet mode when preparing sysroot
In order to have a shared sysroot usable within the eSDK after recipe
specific sysroots were implemented, we need to run
bitbake build-sysroots as a separate call. However, unlike the first
call, --quiet wasn't being specified and that somewhat undermined the
earlier effort to clean up the eSDK installation output. Make this
second call quiet as well so that the output is tidier.

(From OE-Core rev: 56b73788edaa0796e53f1a30e9ebdb2ae85b1646)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:38:37 +01:00
Paul Eggleton
9e267ad173 classes/populate_sdk_ext: work around runqemu behaviour within the eSDK
Currently, in order to figure out variable values when run within the
eSDK, runqemu does not use the standard SDK method nor is it able to run
bitbake (since the eSDK environment isn't initialised like the normal
OE build environment). runqemu really ought to be fixed, but the quick
workaround is to set DEPLOY_DIR_IMAGE in the environment so that runqemu
can find image files.

Fixes [YOCTO #10447].

(From OE-Core rev: 1ef833b6393366a10f4bb65df89725ad65761386)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:38:37 +01:00
Paul Eggleton
6ffec971e8 runqemu: fix incorrect calls to get variable values
We were specifying a default parameter; the get() function defined here
does not take such a parameter. I appears this code had not been tested.
This fixes runqemu erroring out immediately when used within the eSDK.

(From OE-Core rev: e4548531112c824653ae42b9bcc335a7ca8588e0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:38:36 +01:00
Juro Bystricky
00d49a05a6 bitbake: command.py: multiconfig support for findBestProvider
In a multiconfig environment, a tinfoil call such as

    tinfoil.parse_recipe("multiconfig:arduino-101-sss:gcc")

can fail with an error such as:

  File "/data/master/poky/bitbake/lib/bb/tinfoil.py", line 373, in get_recipe_file
    raise bb.providers.NoProvider('Unable to find any recipe file matching "%s"' % pn)
bb.providers.NoProvider: Unable to find any recipe file matching "multiconfig:arduino-101-sss:gcc"

The culprit is findBestProvider, which does not handle multiconfig.
This patch fixes the error and in the case mentioned above the tinfoil call returns:

  "multiconfig:arduino-101-sss:/data/master/poky/meta/recipes-devtools/gcc/gcc_6.3.bb"

[YOCTO#11210]

(Bitbake rev: e9c03fbfd7b057b28645affa263cb4aebfa24b04)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:20:24 +01:00
Kyle Russell
3b3aab0e8d cmake.bbclass: Set CMAKE_CROSSCOMPILING correctly
If CMAKE_SYSTEM_NAME is defined, CMake assumes we're cross-compiling,
which is not necessarily the case.

(From OE-Core rev: bd082c9be6191e67ea1b1bf10ce5e130a3433ab5)

Signed-off-by: Kyle Russell <bkylerussell@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Ross Burton
ae5d643114 package_manager: don't race on a file when installing complementary packages
PackageManager.install_complementary() uses WORKDIR/installed_pkgs.txt as a
temporary file but if two tasks are executing for the same recipe which uses
this file (e.g. bitbake my-image my-image:do_populate_sdk) then it's possible
for the file to be overwritten or deleted.

Instead of using a static filename, use tempfile to generate a unique name and
ensure it is cleaned up when finished.

Also move the glob generation/expansion earlier in the function as if there are
no globs to install, we don't need to generate a package list.

(From OE-Core rev: f5a1013ffa9815f22e13989e2bcb83f966e7ce2c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Maxin B. John
4c6d7a20bc pixbufcache.bbclass: update postinst script name
The name of postinst scripts created by pixbufcache class
contains "useradd" in it. Remove it to avoid confusion.

As suggested by RP.

(From OE-Core rev: 2b939cd143549a3a6fc640c7c512c4ac5c246bff)

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>
2017-04-19 10:18:43 +01:00
Jussi Kukkonen
7fe30a5df4 Revert "openssl: Fix symlink creation"
This reverts commit 991620f3962a9917fa99abb5582f4b72ebd42a3d.

The commit breaks openssl-native (you can no longer generate keys
because it can't find the configuration file). Also the idea that we
would install configuration files normally but then add the symlinks
pointing to them in a postinstall feels wrong.

Fixes [YOCTO #11296]. The bug contains an alternative fix but I'm
sending a revert as I cannot fully understand the motive of the
original patch. See also discussion in
http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135176.html

(From OE-Core rev: b192daef5d1e7f3501c533b92dc75e2d996afc13)

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>
2017-04-19 10:18:43 +01:00
Jackie Huang
d31eead2af ltp: fix an incorrect macro checking
The previous patch added a check but incorrectly
change the elif to if, then it always return 0
for cpuid if the machine is not __i386__

getcpu01    1  TFAIL  :  getcpu01.c:140: getcpu() returned wrong value expected cpuid:7, returned value cpuid: 0

After this fix:
getcpu01    1  TPASS  :  getcpu() returned proper cpuid:7, node id:0

(From OE-Core rev: ca798705b3b8fa9b2f6467970e9bda9d9433986c)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Robert Yang
99c6e89db1 logrotate: set downloadfilename
Otherwise, the filename is r3-9-1.tar.gz which isn't straightforward.

(From OE-Core rev: b0e5c8f6a5041010347f6b70e39e41886829d928)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Trevor Woerner
0b11cfb57b mesa-demos: add glut dependency
If the user wants to enable the 'glut' PACKAGECONFIG for mesa-demos, freeglut
is required to provide the dependency before the demos can be compiled.

NOTE! this is a cross-layer dependency (freeglut is currently only available
in meta-oe). However 'glut' is not a default PACKAGECONFIG (so this is
allowed).

(From OE-Core rev: cbf1708cf8d9fb8ace5520c9b6fec46c5fc9e9c8)

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Robert Yang
f81c0de905 acl: fix race issue when do_compile
Fixed race issue:
 In file included from acl_copy_entry.c:22:0:
 libacl.h:19:21: fatal error: sys/acl.h: No such file or directory
  #include <sys/acl.h>

[snip]

 compilation terminated.
 acl_get_file.c:27:24: fatal error: acl/libacl.h: No such file or directory
  #include <acl/libacl.h>
                         ^

The acl.h is in "include" directory, and include/Makefile creates
symlink "sys" and "acl" poinst to current dirctory:
$ ls include/ -l
acl -> .
sys -> .

So if "libacl" target runs before "include", the error would happen
since no "acl" or "sys" directory.

Let libacl depend on include can fix the problem.

[YOCTO #11349]

(From OE-Core rev: 73d3d81fcdb92dd85c6ad1609e3a6eb20f1ea539)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Andre McCurdy
567329b566 devupstream.bbclass: minor typo fix
(From OE-Core rev: a7761023696fbefb0d38906b0b02bf4ed211b3fb)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-19 10:18:43 +01:00
Scott Rifenbark
def638ebd6 poky.ent: Removed "python3-expect" package from 3 distros.
Fixes [YOCTO #11310]

After a bit of deliberation.. it was decided that
"python3-expect" is not needed in the Debian, Fedora,
and OpenSUSE distros as an essential package.  They are
gone.

(From yocto-docs rev: 07fcb23a03122e5f4f9bb2a32e585d9cba7d5d93)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-18 15:51:44 +01:00
Scott Rifenbark
3db3344859 ref-manual, dev-manual: Updates to support recipe-specific sysroots
Changes covered several areas.  Version 2.3 of the YP now supports
recipe-specific sysroots and is not limited to machine-specific
as was prior releases.  Manual changes were as follows:

dev-manual: "Sharing Files Between Recipes" - Wordings were changed
to support the new functionality.

ref-manual: do_prepare_recipe_sysroot task added to the list of
tasks described in "Configuration and Compilation".

ref-manual: Extensive re-write of the "staging.bbclass" section.

ref-manual: Added a section to the build structure for
build/tmp/work/tunearch/recipename/version/.  This section breaks
down the recipe-specific subdirectories used to create (stage)
the sysroot.

ref-manual: New section (entry) for the do_prepare_recipe_sysroot
task in the task chapter.

ref-manual: Added a variable glossary description for the
SSTATE_SCAN_FILES variable.

In addition to these changes, I sprinkled in a liberal amount
of cross-referencing for the readers pleasure.

(From yocto-docs rev: 3a8ca96861f4c5d3badb91d0cdc5a3df513d4e59)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-18 15:51:44 +01:00
Robert Yang
1fa1a7f174 oe-run-native: print more error messages
Fixed:
$ bitbake bmap-tools-native -ccleansstate && bitbake bmap-tools-native && oe-run-native bmap-tools-native bmaptool --help
[snip]
Error: Unable to find '' in <PATH>
[snip]

Note the blank '' word, it was because "tools" was overrided, now fix it.

And also check whether the recipe is a native one or not.

(From OE-Core rev: ba2884f6ad3a4e746fc80cbd707f83fa8abd4210)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 23:25:54 +01:00
Richard Purdie
c5269fd210 pseudo: Backport two upstream fixes
Backport fixes from pseudo master for an acl issue and more importantly, a segfault
issue with bash which can be triggered by the recent useradd changes.

(From OE-Core rev: 949214761998a93fc6b8b009f1cdad0db3bfa5db)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 23:25:54 +01:00
Kevin Hao
0bf9cb2272 meta-yocto-bsp: bump to the latest linux stable kernel for the non-x86 BSPs
Bump to the latest stable kernel for 4.4, 4,9 and 4.10.

(From meta-yocto rev: d45f5894d8f73425b47e3cacbe07d0d5cf36dcd2)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:32 +01:00
Richard Purdie
045d01c63d populate_sdk_ext: Add do_addto_recipe_sysroot to BB_SETSCENE_ENFORCE_WHITELIST
Without this, eSDK builds are failing due to qemu-helper-native's dependency on this
task. It makes sense to allow this to execute in eSDK contexts (its a non-sstate task
intentionally).

(From OE-Core rev: 3e8ade8c0772c4492efd93824f78cb043281d235)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:09 +01:00
Chang, Rebecca Swee Fun
2248d18697 linux-firmware: Fix build failure when update SRCREV to latest HEAD
When we update the SRCREV to latest, we will encouter the following
bitbake error.

Build error message:
| Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
| error: Arch dependent binaries in noarch package
|
|
| RPM build errors:
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0081-0001_1x40.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0099-0001_2x25.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0097-0001_8x10.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0081-0001_4x10.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0097-0001_4x10_1x40.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0099-0001_2x10.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0097-0001_2x40.nffw
|     Missing build-id in /home/phoongst/work2/test00/tmp/work/all-poky-linux/linux-firmware/1_0.0+gitAUTOINC+44d8e8d4fd-r0/package/lib/firmware/netronome/nic_AMDA0096-0001_2x10.nffw
|     Deprecated external dependency generator is used!
|     Arch dependent binaries in noarch package
| WARNING: exit code 1 from a shell command.

This is due to netronome firmware is not included in noarch package.
Hence we removed the netronome firmware before it is packaged,
until the rpm issue is resolved.

(From OE-Core rev: cdfa43191f84dc3b1a592ce2e813509f6820184d)

Signed-off-by: Chang, Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>
Signed-off-by: Ng, Wei Tee <wei.tee.ng@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:09 +01:00
Ng, Wei Tee
9a5039d563 linux-firmware: Set the license for carl9170 to GPLv2
linux-firmwara-carl9170 was set to a wrong license string.
Carl9170 firmware is bounded by GPLv2 via code inspection on
linux firmware source tree. Hence we include GPLv2 in LICENSE
field and set carl9170 firmware to the correct license.

[YOCTO #11090]

(From OE-Core rev: a062b2aa51e28aa14e75435d8a618859499e1bd5)

Signed-off-by: Ng, Wei Tee <wei.tee.ng@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Ng, Wei Tee
a6ace3153e linux-firmware: update to revision a4dde74b
-change in amdgpu firmware copyright year
-change in radeon firmware copyright year
-LICENCE.mwl8335 was removed in linux-firmware source tree
-specify the copyright year for siano
-change in qla2xxx firmware copyright year

(From OE-Core rev: d80b3bcfefc811ed159c1d860a1e333aa9b4db73)

Signed-off-by: Ng, Wei Tee <wei.tee.ng@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Andre McCurdy
c52cc23531 busybox: drop unmaintained _git recipe
The busybox _git recipe is not formally tested or kept up to date.
The gstreamer _git recipes were recently removed from oe-core and the
justifications for that change apply to the busybox _git recipe too.

(From OE-Core rev: 139c97fa7f71a554ce85900ac33054a216db62e9)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Ross Burton
b6353f5c43 unzip: add missing CVE headers to patches
(From OE-Core rev: de7ff341d18f46d68abeabcb53ba07d012090c15)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Ross Burton
135afdff02 Revert "dnf: remove systemd units in nativesdk builds"
nativesdk builds now control the DISTRO_FEATURES (oe-core 731744) so this
workaround is no longer required.

This reverts commit 415b72ffcb.

(From OE-Core rev: 4f1f05295f12f619c87fb53e16e19a11775c2c84)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Ian.Arkver
2bc2e67dd0 package_manager.py: Generate separate repo entries per arch
dnf requires a serparate repo for each architecture. This patch
writes one config file per PACKAGE_FEED_URIS entry with an entry
for each architecture, if any.

It also uses a space separated version of the repo id as the repo
name instead of just the id again.

(From OE-Core rev: 3eed822b5c5661aa9f43af6582c1481bacf0d39a)

Signed-off-by: Ian.Arkver <ian.arkver.dev@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Alexander Kanavin
b4a093735c gpgme: add a dependency on python-unixadmin to Python bindings package
(From OE-Core rev: 67bce43ef15bf641f1b1153a0408c4dc841ae8d6)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Alexander Kanavin
575f8b4819 gpgme: correctly avoid host contamination
Existing patch was actually doing the wrong thing and
sometimes removing a linking flag (-lgpgme) that should be present.

Instead, gpgme-config actually has internal logic to remove /usr/lib from the output,
which works only in non-multilib setups, so it is adjusted to include all possible
/usr/lib* and /lib* directories.

(From OE-Core rev: 84cb611079b7cf78b9921c78978943fa4adae1c7)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Mikko Ylinen
a84a323e4d classes/populate_sdk_ext: reset TCLIBCAPPEND to get consistent TMPDIR
populate_sdk_ext sets TMPDIR to a known static value with '/tmp' directory
name and that name is hard coded in a few places (e.g., in
meta-environment-extsdk.bb that writes the eSDK environment variables).

Distros that do not reset TCLIBCAPPEND (poky does) end up getting
TMPDIR = /tmp-${TCLIBCAPPEND} via defaultsetup.conf and that breaks
the functionality in eSDK that expects everything is in /tmp.

To get TMPDIR consistent, we also need to reset TCLIBCAPPEND in
populate_sdk_ext.bbclass.

Fixes: [YOCTO #11298]

(From OE-Core rev: 9ec29153f279bb9e1dbcddc2c66e00fdbe3fd6e9)

Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Paul Eggleton
bce0b509bf devtool: extract: drop erroneous bb.event.TaskStarted
This is a non-existent event - we already have the actual
bb.build.TaskSucceeded further down in the list hence why it wasn't
noticed earlier.

(From OE-Core rev: 4e059a5ceb6f44401154e89e37f56de1d664a7cb)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Paul Eggleton
02c39d3fad devtool: extract: fix handling of failed tasks
If a task such as do_fetch fails when we're extracting source for a
recipe (within devtool modify / upgrade / extract / sync) then we should
naturally stop processing instead of blundering on; in order to do that
we need to be listening for the TaskFailed event. Thanks to Richard
Purdie for noticing and fixing this.

(From OE-Core rev: 9174b845bf6a6be7753bf6b921959b1f3f2dcbc0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Paul Eggleton
2338032d0b devtool: modify: add --keep-temp option for debugging
Most of the other extract-based commands have this option but oddly I
left it out for modify - I guess because if I was debugging an issue here
I just used devtool extract to do so, but there's no reason why we can't
have it here and it is useful.

(From OE-Core rev: 98fbc46e1a51237213bd7825a922389d3ab2ad9b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Robert Yang
1593f5de8a grep: do_configure: fix "Argument list too long"
Fixed when len(TMPDIR) = 410:
aclocal: error: cannot open echo 'm4_define [snip]' configure.ac |: Argument list too long'

This is becuase it has a lot of m4 files, use relative path for them
can fix the problem.

(From OE-Core rev: 081974e75cc0cfa0a1a1bb01cd9f9cbc585b7692)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Robert Yang
7b4a8a2fb8 apt: fix libdir path for apt.systemd.daily
It should be ${libdir} rather than /usr/lib, otherwise it would fail
when multilib:

MACHINE = "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake apt
[snip]
install: target /path/to/apt/1.2.12-r0/image/usr/lib/apt is not a directory: No such file or directory
[snip]

(From OE-Core rev: bf867019c33c34dc997e10a3bdba4aeee81f559a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Robert Yang
8cedb5f3f0 binconfig.bbclass: fix typo in get_binconfig_mangle()
It should be -IOEINCDIR, not -I-IOEINCDIR.

(From OE-Core rev: 3c432e130b47461f845e1618b565f174417e1aa5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Richard Purdie
b5c383074a base-passwd/useradd: Various improvements to useradd with RSS
Currently there are multiple issues with useradd:

* If base-passwd rebuilds, it wipes out recipe specific user/group additions
  to sysroots and causes errors
* If recipe A adds a user and recipe B depends on A, it can't see any of the
  users/groups A adds.

This patch changes base-passwd so it always works as a postinst script
within the sysroot and copies in the master files, then runs any
postinst-useradd-* scripts afterwards to add additional user/groups.

The postinst-useradd-* scripts are tweaked so that if /etc/passwd doesn't exist
they just exit, knowning they'll be executed later. We also add a dummy entry to
the dummy passwd file from pseudo so we can avoid this too.

There is a problem where if recipe A adds a user and recipe B depends on A but
doesn't care about users, it may not have a dependency on the useradd/groupadd
tools which would therefore not be available in B's sysroot. We therefore also
tweak postinst-useradd-* scripts so that if the tools aren't present we simply
don't add users. If you need the users, you add a dependency on the tools in the
recipe and they'll be added.

We add postinst-* to SSTATE_SCAN_FILES since almost any postinst script of this
kind is going to need relocation help.

We also ensure that the postinst-useradd script is written into the sstate
object as the current script was only being added in a recipe local way.

Thanks to Peter Kjellerstedt <pkj@axis.com> and Patrick Ohly for some pieces
of this patch.

[Yocto #11124]

(From OE-Core rev: 1b5afaf437f7a1107d4edca8eeb668b9618a5488)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Leonardo Sandoval
053e545b9d maintainers: change ownership on cve-check-tool, nfs-utils, ttf-bitstream-vera and which
(From meta-yocto rev: c6bbd7f45260d0921ad1c5f8c1f1f7846aa42270)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 23:55:40 +01:00
Alejandro Hernandez
fe47bff64b linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.10
Updates to Linux 4.10.9

(From meta-yocto rev: f2b6a42f6842e28c448a11a6778d140f984b6d3d)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:37 +01:00
Alejandro Hernandez
7a68e4aa06 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.9
Updates to Linux 4.9.21

(From meta-yocto rev: 6a64ad7c034250c122e72e8473ef7de11430b1a1)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:37 +01:00
Alejandro Hernandez
0cfc7650ff linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.4
Updates to Linux 4.4.60

(From meta-yocto rev: 1199d8da4cce623adc09c074e4c747e672e3eb78)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:37 +01:00
Zhixiong Chi
bcab5e12c1 bitbake: bitbake-layers: add signal hander to avoid exception
Fixed:
bitbake-layers show-recipes | less
press "q" to exit

There will be a Broken pipe error output as follows:
"BrokenPipeError: [Errno 32] Broken pipe"

(Bitbake rev: 4fca9a07f2d6b0544977112672b786982d7bb8f2)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:37 +01:00
brian avery
314df06b81 oe-run-native: explicitly use bash
This script sources another script (oe-find-native-sysroot) with
arguments.  It was using /bin/sh. Sourcing with arguments works only in
bash so it was failing in dash.  This commit makes it dash proof.

(From OE-Core rev: 334020a800434d20e7c3312890a2baca295c41c7)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:11 +01:00
brian avery
c8b67a463f oe-find-native-sysroot: add appopriate suggestion
right now, if it fails, the script tells the user to run bitbake foo
-caddto_recipe_sysroot. This works for native recipes but not things
like meta-ide. This patch checks whether the recipe is native and gives
out the appopriate warning.

(From OE-Core rev: fc61211efd57d1858954e5cd241fce58dee9d01b)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:11 +01:00
Robert Yang
4a0b6af446 oe-find-native-sysroot: work with RSS
The generic STAGING_DIR_NATIVE is gone since RSS, so when find
OECORE_NATIVE_SYSROOT, the user has to specify which recipe's
STAGING_DIR_NATIVE will be used as OECORE_NATIVE_SYSROOT.

* The usage is changed from ". oe-find-native-sysroot" to
  ". oe-find-native-sysroot <recipe>".
* The oe-run-native's usage has changed from
  "oe-run-native tool" to "oe-run-native native-recipe tool".

(From OE-Core rev: e2f6d937bd897083779507ecb9ecd15513b35f1f)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Ed Bartosh
5897c5edc4 Revert "scripts: change way we find native tools (pseudo)"
This reverts commit f200f37699.

This reverts the patch that fixed runqemu-extract-sdk. It failed
to fix other issues in the script/tools that were introduced by RSS. The
following patch from Robert Yang fixes both.  Therefore, reverting this
patch in favor of his.

(From OE-Core rev: 33263b69e6b470b4f02172dabe6815df8ab0cd0a)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Ed Bartosh
4273422072 sstate.bbclass: check if mirror directory is writable
Commit 51edde6537 makes a wrong assumption
that SSTATE_MIRRORS have write permissions.

A mirror is by definition outside of it's user control. In my use case
it happens I does not have permissions to update the access time of the
dereferenced symbolic-link file.

Checked if file is writable before changing its atime.

Thanks to Paulo Neves for the patch.

[YOCTO #11307]

(From OE-Core rev: b8f26c011d5ed888d85fef040bd821400d54c8fe)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Ed Bartosh
ec9b108f46 qemuboot: write native sysroot of qemu-helper into qemuboot.conf
Native sysroot of qemu-helper contains all required tools
(qemu-system and tunctl atm) for runqemu to work. It's not
removed by rm_dir and should always exist. It makes sense
to write it into qemuboot.conf to make runqemu to use it
as a default directory for native tools.

This should also speed up runqemu as it doesn't need to run
to run 'bitbake qemu-helper -e' to get its native sysroot.

[YOCTO #11266]
[YOCTO #11193]

(From OE-Core rev: 0f207bfc1f7a4fd509b78d32bbe1a8d4ebea8053)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Ed Bartosh
4393cc550b runqemu: use bindir_native property to run ifup/down scripts
Used self.bindir_native to point out to the native sysroot
when running runqemu-ifup and runqemu-ifdown scripts.

[YOCTO #11266]
[YOCTO #11193]

(From OE-Core rev: cc5513bf7a6114e14bb307acb88a44e9cf0aed8a)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Ed Bartosh
4d3bececf6 runqemu: add bindir_native property
Isolated logic of getting path to native bin directory in
new bindir_native property method.

This property is going to be used to obtain location of
qemu-sytem and tunctl.

(From OE-Core rev: 26e97f7ebb7e3302e3d3c6646fb58baf395d62be)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Ed Bartosh
7ffcdd0a07 runqemu: get qemu from qemu-helper-native sysroot
If rm_work is enabled image native sysroot can be removed.
This makes runqemu to fail trying to find qemu binary.

Used native sysroot of qemu-helper-native to find system qemu
binary.

(From OE-Core rev: d42c02caaa4d6fb47681aa7ffe8b27fa38141e6a)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
brian avery
0637c5ab25 qemu-helper-native: prepare native sysroot for runqemu
Make sure that native sysroot contains qemu and tunctl binaries for
runqemu usage:
  - excluded native sysroot from rm_work
  - added qemu-native to DEPENDS to put qemu binaries into native sysroot
  - forced addto_recipe_sysroot task

[YOCTO #11266]
[YOCTO #11193]

(From OE-Core rev: 2e7a155774952705d21109720985f6833fba2669)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Bruce Ashfield
6cd16dcde4 linux-yocto-dev: update to v4.11+
(From OE-Core rev: c2da28fd955901b1be9a155c5ca256345fdcee43)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Bruce Ashfield
5bb82084b2 linux-yocto/4.10: update to v4.10.9
Updating to the korg stable release, with the following changes:

   f6392b77fb91 Linux 4.10.9
   59529be9c99e drm/i915: A hotfix for making aliasing PPGTT work for GVT-g
   0efab45f7092 drm/i915: Let execlist_update_context() cover !FULL_PPGTT mode.
   e47bc4fb5db4 drm/i915: Move the release of PT page to the upper caller
   e33cb9747fdf nvme/pci: Disable on removal when disconnected
   2bfe1b12a496 nvme/core: Fix race kicking freed request_queue
   311cd5ae37e7 padata: avoid race in reordering
   a591a05f1d0a blk: Ensure users for current->bio_list can see the full list.
   75a778ed4f3d blk: improve order of bio handling in generic_make_request()
   b576c5833134 MIPS: Lantiq: Fix cascaded IRQ setup
   77149f08767e ARM: dts: BCM5301X: Correct GIC_PPI interrupt flags
   1229cd2fa5e0 drm/armada: Fix compile fail
   847f0ffc12ae mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd()
   61b76d7af8e4 mm: workingset: fix premature shadow node shrinking with cgroups
   9f424db185a2 mm: rmap: fix huge file mmap accounting in the memcg stats
   fb29fe35575a lib/syscall: Clear return values when no stack
   be6647667608 x86/mce: Fix copy/paste error in exception table entries
   4ea2e307c7cf x86/mm/KASLR: Exclude EFI region from KASLR VA space randomization
   d0a9dba54764 drm/i915/kvmgt: Hold struct kvm reference
   65e5e864aad9 drm/etnaviv: (re-)protect fence allocation with GPU mutex
   4a1b7b6c82dc drm/vc4: Allocate the right amount of space for boot-time CRTC state.
   7a8453634601 drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags
   5b79ca06a51d KVM: kvm_io_bus_unregister_dev() should never fail
   00a3ca394871 KVM: x86: clear bus pointer when destroyed
   b3ff1bac80ab serial: mxs-auart: Fix baudrate calculation
   782cb86b0155 USB: fix linked-list corruption in rh_call_control()
   6f168275df2e xhci: Set URB actual length for stopped control transfers
   3cacfce024b1 tty/serial: atmel: fix TX path in atmel_console_write()
   3eadc2dccb51 tty/serial: atmel: fix race condition (TX+DMA)
   4f6116cf520c ACPI: Do not create a platform_device for IOAPIC/IOxAPIC
   af7550a70dad ACPI: Fix incompatibility with mcount-based function graph tracing
   92bca7fa882f parisc: Fix access fault handling in pa_memcpy()
   fc12a50f7742 parisc: Avoid stalled CPU warnings after system shutdown
   37e623429737 parisc: Clean up fixup routines for get_user()/put_user()
   4bcd2ca3c361 dt-bindings: rng: clocks property on omap_rng not always mandatory
   be14ea08d26f nfsd: map the ENOKEY to nfserr_perm for avoiding warning
   8f5cfd1af067 NFSv4.1 fix infinite loop on IO BAD_STATEID error
   61e6e72e9f9c ARCv2: SLC: Make sure busy bit is set properly on SLC flushing
   9fef1e65279d crypto: xts,lrw - fix out-of-bounds write after kmalloc failure
   5a16448c2132 crypto: ccp - Make some CCP DMA channels private
   79105a2f8146 mmc: sdhci-of-at91: fix MMC_DDR_52 timing selection
   41ece35ef4b4 mmc: sdhci: Disable runtime pm when the sdio_irq is enabled
   d4dd65ff6716 HID: wacom: Don't add ghost interface as shared data
   617c6850480b ASoC: rt5665: fix getting wrong work handler container
   29f675437ceb ASoC: Intel: Skylake: fix invalid memory access due to wrong reference of pointer
   48a5a47a050c ASoC: atmel-classd: fix audio clock rate
   e12a232e9b64 ALSA: hda - fix a problem for lineout on a Dell AIO machine
   c36ef6467420 ALSA: seq: Fix race during FIFO resize
   d2e79b56ba2e PCI: thunder-pem: Use Cavium assigned hardware ID for ThunderX host controller
   d9c6a97b3fae PCI: iproc: Save host bridge window resource in struct iproc_pcie
   ef97d9485efa scsi: scsi_dh_alua: Ensure that alua_activate() calls the completion function
   2b1725d1df36 scsi: scsi_dh_alua: Check scsi_device_get() return value
   905385ad1309 scsi: libsas: fix ata xfer length
   f7019040f6d7 scsi: sg: check length passed to SG_NEXT_CMD_LEN
   f031e4f54f98 xfs: try any AG when allocating the first btree block when reflinking
   83d33266c371 xfs: use iomap new flag for newly allocated delalloc blocks
   ee74519c0876 xfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask
   87cdf91a6bf4 xfs: fix and streamline error handling in xfs_end_io
   1c0d974bea21 xfs: only reclaim unwritten COW extents periodically
   5d834e1adcb0 xfs: tune down agno asserts in the bmap code
   854a9bf0acb1 xfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment
   8c1e9cfd5b67 xfs: don't reserve blocks for right shift transactions
   a3aca9b42d6f xfs: fix uninitialized variable in _reflink_convert_cow
   1d7babf19237 xfs: split indlen reservations fairly when under reserved
   177227735045 xfs: handle indlen shortage on delalloc extent merge
   0b20c0afbb84 xfs: don't fail xfs_extent_busy allocation
   e8eb2c060902 xfs: correct null checks and error processing in xfs_initialize_perag
   304ec448ee8b xfs: update ctime and mtime on clone destinatation inodes
   900c499df454 xfs: reject all unaligned direct writes to reflinked files
   17c17805b76e xfs: reset b_first_retry_time when clear the retry status of xfs_buf_t
   b0f88f0deb50 xfs: mark speculative prealloc CoW fork extents unwritten
   a0c46fae264a xfs: allow unwritten extents in the CoW fork
   1dc0e72c13e7 xfs: verify free block header fields
   58565508b2b3 xfs: check for obviously bad level values in the bmbt root
   2b9dcb947e73 xfs: filter out obviously bad btree pointers
   cb308466d6dc xfs: fail _dir_open when readahead fails
   8059f06199f0 xfs: fix toctou race when locking an inode to access the data map
   025770917bcb xfs: fix eofblocks race with file extending async dio writes
   696bfc8ec85c xfs: sync eofblocks scans under iolock are livelock prone
   ff4ea420698d xfs: pull up iolock from xfs_free_eofblocks()
   3eb243290edf KVM: nVMX: fix nested EPT detection
   8a7eb087a5a4 libceph: force GFP_NOIO for socket allocations
   3fdae700a361 Linux 4.10.8
   d6854f591c22 usb: musb: fix possible spinlock deadlock
   ca908a9a57e7 sched/rt: Add a missing rescheduling point
   15eea140d991 qla2xxx: Allow vref count to timeout on vport delete.
   f7c1a6ec45d6 metag/ptrace: Reject partial NT_METAG_RPIPE writes
   400763ea4357 metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS
   3e0a29e1b6c6 metag/ptrace: Preserve previous registers for short regset write
   fc1ff8342c66 sparc/ptrace: Preserve previous registers for short regset write
   d1b2aeaa4bcd mips/ptrace: Preserve previous registers for short regset write
   53adbfdf3133 h8300/ptrace: Fix incorrect register transfer count
   ff7ff50d9c07 c6x/ptrace: Remove useless PTRACE_SETREGSET implementation
   90a1cbf54eb6 pinctrl: qcom: Don't clear status bit on irq_unmask
   d4a3eba0eb0f virtio_balloon: init 1st buffer in stats vq
   71a434f7c9b8 KVM: x86: cleanup the page tracking SRCU instance
   737f7378c7e9 KVM: nVMX: Fix nested VPID vmx exec control
   843e5b6c801a xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder
   ffcf5de81520 xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window
   58333eaf3123 xfrm: policy: init locks early
   55db23d3a51e Linux 4.10.7
   0dad3de86825 crypto: algif_hash - avoid zero-sized array
   f9955dcaceae fbcon: Fix vc attr at deinit
   2a3241044b1c drm: reference count event->completion
   597584832d0c xen: do not re-use pirq number cached in pci device msi msg data
   535693055d2a cpuidle: Validate cpu_dev in cpuidle_add_sysfs()
   a27142e6d0eb scsi: sd: Check for unaligned partial completion
   66c0812889de device-dax: fix pmd/pte fault fallback handling
   96aa12df2410 libceph: don't set weight to IN when OSD is destroyed
   8b38e3191816 mmc: block: Fix is_waiting_last_req set incorrectly
   f2a9bf4d93df Drivers: hv: vmbus: Don't leak memory when a channel is rescinded
   840065777b4d Drivers: hv: vmbus: Don't leak channel ids
   f8dd767b84e2 intel_th: Don't leak module refcount on failure to activate
   7bf105ac9277 jbd2: don't leak memory if setting up journal fails
   8668c61ba509 auxdisplay: img-ascii-lcd: add missing sentinel entry in img_ascii_lcd_matches
   67dfc0850f71 drm/amd/amdgpu: add POLARIS12 PCI ID
   a7a14362e278 drm/amdgpu: reinstate oland workaround for sclk
   51d3848c10b3 cpsw/netcp: cpts depends on posix_timers
   16379a79ee45 blk-mq: don't complete un-started request in timeout handler
   fee328fee946 cgroup, net_cls: iterate the fds of only the tasks which are being migrated
   3742b9a08682 cpufreq: Restore policy min/max limits on CPU online
   fc0af2511915 arm64: kaslr: Fix up the kernel image alignment
   f464f86d8b8d ARM: at91: pm: cpu_idle: switch DDR to power-down mode
   166fdccc86a5 Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node"
   514e122cf8d0 iommu/exynos: Workaround FLPD cache flush issues for SYSMMU v5
   03d92bd5b426 iommu/exynos: Block SYSMMU while invalidating FLPD cache
   b7d02d90d03a iommu/vt-d: Fix NULL pointer dereference in device_to_iommu
   fa477d804fd3 xen/acpi: upload PM state from init-domain to Xen
   8b0219e35b43 vfio: Rework group release notifier warning
   0d05871e5e43 fscrypt: remove broken support for detecting keyring key revocation
   f115bf08b7d2 crypto: ccp - Assign DMA commands to the channel's CCP
   c62625b6b383 ath10k: fix incorrect wlan_mac_base in qca6174_regs
   2f69745c309c mwifiex: pcie: don't leak DMA buffers when removing
   ad3b48d36e0d clk: sunxi-ng: mp: Adjust parent rate for pre-dividers
   9300e322b68d clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock
   76b5eb51114a hwrng: geode - Revert managed API changes
   9b35f163f7fe hwrng: amd - Revert managed API changes
   ce6c155ada08 mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power
   f89c8a5007b2 mmc: sdhci: Do not disable interrupts while waiting for clock
   b821a0a5fde9 mmc: sdhci-of-arasan: fix incorrect timeout clock
   116418547216 mmc: sdhci-of-at91: Support external regulators
   a0c48115cd23 audit: fix auditd/kernel connection state tracking
   72c89fa6106a powerpc/64s: Fix idle wakeup potential to clobber registers
   35637b59f675 ext4: lock the xattr block before checksuming it
   26512e52106d ext4: mark inode dirty after converting inline directory
   762602796be6 ppdev: fix registering same device name
   f8155f4e6368 parport: fix attempt to write duplicate procfiles
   c3a22b5f4339 mei: don't wait for os version message reply
   0dc119af06a5 mei: fix deadlock on mei reset
   bf1aedff42b2 iio: magnetometer: ak8974: remove incorrect __exit markups
   6c2aab07d124 iio: hid-sensor-trigger: Change get poll value function order to avoid sensor properties losing after resume from S3
   9323d92a280b iio: sw-device: Fix config group initialization
   a12d1eadd0d1 iio: adc: ti_am335x_adc: fix fifo overrun recovery
   f4004c87c8c6 mmc: core: Fix access to HS400-ES devices
   a56eba20b447 nl80211: fix dumpit error path RTNL deadlocks
   f876c1039440 mmc: ushc: fix NULL-deref at probe
   90c2bb66e98e uwb: hwa-rc: fix NULL-deref at probe
   05393ccea6e3 uwb: i1480-dfu: fix NULL-deref at probe
   bb486e80a13f USB: usbtmc: fix probe error path
   ad1bbccdf018 USB: usbtmc: add missing endpoint sanity check
   9ec0027442cb usb: hub: Fix crash after failure to read BOS descriptor
   9eae384ab967 usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer
   a769fe27a7cf USB: wusbcore: fix NULL-deref at probe
   bcf394acf736 USB: idmouse: fix NULL-deref at probe
   f615aa74026f USB: lvtest: fix NULL-deref at probe
   0918c32f09dd USB: uss720: fix NULL-deref at probe
   dfdd59a3ec07 usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk
   aacb73b7ae2f dvb-usb-firmware: don't do DMA on stack
   f1b221121b16 usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval
   c37fcc17bf36 ACM gadget: fix endianness in notifications
   7cdfdddb2e61 USB: serial: qcserial: add Dell DW5811e
   b1849b029cc1 USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems
   37e91f5d0105 ALSA: hda - Adding a group of pin definition to fix headset problem
   0b7e15f1a165 ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call
   4c381c7affcb ALSA: seq: Fix racy cell insertions during snd_seq_pool_done()
   9ccad2dfe28c Input: sur40 - validate number of endpoints before using them
   fb50058c7970 Input: kbtab - validate number of endpoints before using them
   865b020ff2a1 Input: cm109 - validate number of endpoints before using them
   69cbb678881a Input: yealink - validate number of endpoints before using them
   e8861cb37faf Input: hanwang - validate number of endpoints before using them
   9318ae922a52 Input: ims-pcu - validate number of endpoints before using them
   ed6a66dc2f7a Input: iforce - validate number of endpoints before using them
   b5157d07935b Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000
   f1d4be3d754c Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw
   b87dd1d7dacc Input: ALPS - fix trackstick button handling on V8 devices
   0186e6a4e501 Input: ALPS - fix V8+ protocol handling (73 03 28)
   00ca1a71292c HID: sony: Fix input device leak when connecting a DS4 twice using USB/BT
   de93e41f7734 net: solve a NAPI race
   a1fd7338b43e amd-xgbe: Fix the ECC-related bit position definitions
   d3add547afd3 tcp: initialize icsk_ack.lrcvtime at session start time
   a3639645a94b genetlink: fix counting regression on ctrl_dumpfamily()
   aaa31c62f737 socket, bpf: fix sk_filter use after free in sk_clone_lock
   1880e1308e9d ipv4: provide stronger user input validation in nl_fib_input()
   212508f709ab net: bcmgenet: remove bcmgenet_internal_phy_setup()
   30b72691dbca ipv6: make sure to initialize sockc.tsflags before first use
   4162e85c7134 net/mlx5e: Count LRO packets correctly
   4ec387a74cdc net/mlx5e: Count GSO packets correctly
   345aad1f4602 net/mlx5: Increase number of max QPs in default profile
   458034b72f35 net/mlx5e: Avoid supporting udp tunnel port ndo for VF reps
   daa6e01308ad net/mlx5e: Use the proper UAPI values when offloading TC vlan actions
   b709b83ea5ec net/mlx5: E-Switch, Don't allow changing inline mode when flows are configured
   402073e7e39a net/mlx5e: Change the TC offload rule add/del code path to be per NIC or E-Switch
   5e96d44bbdd4 net/mlx5: Add missing entries for set/query rate limit commands
   eccc68710eff net: vrf: Reset rt6i_idev in local dst after put
   29323e2def48 qmi_wwan: add Dell DW5811e
   4f320b855b8a net: unix: properly re-increment inflight counter of GC discarded candidates
   d965848569f9 openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD
   ae9d577f3dbb amd-xgbe: Fix jumbo MTU processing on newer hardware
   5dd697af3014 net: properly release sk_frag.page
   200caa0be5d2 net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled
   3c9f2c656aca net/openvswitch: Set the ipv6 source tunnel key address attribute correctly
   df6ed56f4352 Linux 4.10.6
   dcb196787cd9 drm/amdgpu/si: add dpm quirk for Oland
   9ec87191ecee cgroup/pids: remove spurious suspicious RCU usage warning
   db79c1978953 percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages
   a69813714424 gfs2: Avoid alignment hole in struct lm_lockname
   d369c16ffb46 isdn/gigaset: fix NULL-deref at probe
   169c4019c7be target: Fix VERIFY_16 handling in sbc_parse_cdb
   4a657746c52a scsi: mpt3sas: Avoid sleeping in interrupt context
   d4700e2050df scsi: libiscsi: add lock around task lists to fix list corruption regression
   5b769ee1ff5f scsi: lpfc: Add shutdown method for kexec
   a62438951a61 target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export
   11de2d238d6f md/raid1/10: fix potential deadlock
   a42f27d91de7 hwrng: omap - Do not access INTMASK_REG on EIP76
   65eb69be1999 hwrng: omap - use devm_clk_get() instead of of_clk_get()
   48207bda7d79 hwrng: omap - write registers after enabling the clock
   fd6fb9243d56 powerpc/boot: Fix zImage TOC alignment
   602ef5c5b0c5 cpufreq: Fix and clean up show_cpuinfo_cur_freq()
   84f16bb39c77 NFS prevent double free in async nfs4_exchange_id
   a3c7894422c9 xprtrdma: Squelch kbuild sparse complaint
   3e037a0fe0b6 md/r5cache: fix set_syndrome_sources() for data in cache
   2fe91a8e5fd3 perf/core: Fix event inheritance on fork()
   b1769d8402f2 perf/core: Fix use-after-free in perf_release()
   f194549ebe65 parisc: Fix system shutdown halt
   f81a9940e5ad parisc: support R_PARISC_SECREL32 relocation in modules
   13ad0be78574 parisc: Optimize flush_kernel_vmap_range and invalidate_kernel_vmap_range
   13b178142b19 qla2xxx: Fix request queue corruption.
   b7306a2e2f62 qla2xxx: Fix memory leak for abts processing
   afd4fdd0da49 give up on gcc ilog2() constant optimizations

(From OE-Core rev: 5674ca07a98f404156afa9c0f01e9469a8fb7fdc)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Bruce Ashfield
85eab8b0ed linux-yocto/4.9: update to v4.9.21
Updating to the korg -stable release, with the following shortlog
summary:

   37feaf8095d3 Linux 4.9.21
   02b23e059a9d nvme/pci: Disable on removal when disconnected
   a5e39a7f2985 nvme/core: Fix race kicking freed request_queue
   eb8c62a3848e padata: avoid race in reordering
   5959cded91e3 blk: Ensure users for current->bio_list can see the full list.
   d5986e0078f2 blk: improve order of bio handling in generic_make_request()
   e3a55294fc20 mm: workingset: fix premature shadow node shrinking with cgroups
   362721c4957d MIPS: Lantiq: Fix cascaded IRQ setup
   1b442f9bdf9a ARM: dts: BCM5301X: Correct GIC_PPI interrupt flags
   c1716f0c35cc qla2xxx: Allow vref count to timeout on vport delete.
   5ed56ca86f96 ARM: BCM5301X: Add back handler ignoring external imprecise aborts
   40c5b99f8ace mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd()
   b5707920e4d8 mm: rmap: fix huge file mmap accounting in the memcg stats
   673dfb6d1bb4 lib/syscall: Clear return values when no stack
   af5ef6dafea0 x86/mce: Fix copy/paste error in exception table entries
   2211d19ac6dd x86/mm/KASLR: Exclude EFI region from KASLR VA space randomization
   4366c7e346ce drm/etnaviv: (re-)protect fence allocation with GPU mutex
   6acf52070857 drm/vc4: Allocate the right amount of space for boot-time CRTC state.
   fa68e1d3cecc drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags
   1563625c717c KVM: kvm_io_bus_unregister_dev() should never fail
   ef46a13b9c4e KVM: x86: clear bus pointer when destroyed
   5289f1ce39a7 serial: mxs-auart: Fix baudrate calculation
   67e41b1368b1 USB: fix linked-list corruption in rh_call_control()
   1f1c9e29651d tty/serial: atmel: fix TX path in atmel_console_write()
   e087ae68e87b tty/serial: atmel: fix race condition (TX+DMA)
   b3641939b1ae ACPI: Do not create a platform_device for IOAPIC/IOxAPIC
   000d2bb6c059 ACPI: Fix incompatibility with mcount-based function graph tracing
   76343bfbcafa parisc: Fix access fault handling in pa_memcpy()
   99e354a59ac5 parisc: Avoid stalled CPU warnings after system shutdown
   09b931fcb87c parisc: Clean up fixup routines for get_user()/put_user()
   3967cf7e6a91 nfsd: map the ENOKEY to nfserr_perm for avoiding warning
   461bbb90942a NFSv4.1 fix infinite loop on IO BAD_STATEID error
   80df2b3e185e mmc: sdhci-of-at91: fix MMC_DDR_52 timing selection
   fa3b4f4f574a mmc: sdhci: Disable runtime pm when the sdio_irq is enabled
   8d6c33224261 HID: wacom: Don't add ghost interface as shared data
   e5a134739151 ASoC: Intel: Skylake: fix invalid memory access due to wrong reference of pointer
   7a042a4eeb8d ASoC: atmel-classd: fix audio clock rate
   8aabccdc9d4f ALSA: hda - fix a problem for lineout on a Dell AIO machine
   74a2c1ff88a4 ALSA: seq: Fix race during FIFO resize
   0dd5b335ed69 PCI: iproc: Save host bridge window resource in struct iproc_pcie
   8f9155989f12 scsi: scsi_dh_alua: Ensure that alua_activate() calls the completion function
   68b275b7cbf0 scsi: scsi_dh_alua: Check scsi_device_get() return value
   cf31d6d21559 scsi: libsas: fix ata xfer length
   c2a869527865 scsi: sg: check length passed to SG_NEXT_CMD_LEN
   d5dbd1c95920 xfs: try any AG when allocating the first btree block when reflinking
   da617af8f0c6 xfs: use iomap new flag for newly allocated delalloc blocks
   77aedb0cbe6a xfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask
   d07b5855ab7f xfs: fix and streamline error handling in xfs_end_io
   3b83a02af271 xfs: only reclaim unwritten COW extents periodically
   a24029369433 xfs: tune down agno asserts in the bmap code
   9559c48c1a7d xfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment
   5db7b41b607d xfs: don't reserve blocks for right shift transactions
   e5e2e56fd4dd xfs: fix uninitialized variable in _reflink_convert_cow
   c251c6c2dec9 xfs: split indlen reservations fairly when under reserved
   2d7c1c7ffafd xfs: handle indlen shortage on delalloc extent merge
   47d7d1ea6c5f xfs: don't fail xfs_extent_busy allocation
   5bbf5ba693ac xfs: reject all unaligned direct writes to reflinked files
   67eb7bf836af xfs: update ctime and mtime on clone destinatation inodes
   e060f4884c93 xfs: reset b_first_retry_time when clear the retry status of xfs_buf_t
   e02f0ff252f2 xfs: mark speculative prealloc CoW fork extents unwritten
   8370826f7d32 xfs: allow unwritten extents in the CoW fork
   3d2bd2fd5cba xfs: verify free block header fields
   4056a74aafba xfs: check for obviously bad level values in the bmbt root
   efab3ae29c15 xfs: filter out obviously bad btree pointers
   7e2dd1fb7102 xfs: fail _dir_open when readahead fails
   0a6844abacc1 xfs: fix toctou race when locking an inode to access the data map
   4127a5d9fb89 xfs: fix eofblocks race with file extending async dio writes
   4d725d7474df xfs: sync eofblocks scans under iolock are livelock prone
   798b1dc5cbdf xfs: pull up iolock from xfs_free_eofblocks()
   08a2a2681682 xfs: use per-AG reservations for the finobt
   9be1c33d4a99 xfs: only update mount/resv fields on success in __xfs_ag_resv_init
   8b08aec62c24 xen/setup: Don't relocate p2m over existing one
   860153772461 libceph: force GFP_NOIO for socket allocations
   f67677274670 Linux 4.9.20
   1dc3a068cc11 usb: musb: fix possible spinlock deadlock
   916c5cfeab40 sched/rt: Add a missing rescheduling point
   2984e52c75c6 fscrypt: remove broken support for detecting keyring key revocation
   21c95eca627b metag/ptrace: Reject partial NT_METAG_RPIPE writes
   2d6532ceb45b metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS
   2739b4874165 metag/ptrace: Preserve previous registers for short regset write
   84b94c4356c6 sparc/ptrace: Preserve previous registers for short regset write
   0ba34c87f7ce mips/ptrace: Preserve previous registers for short regset write
   616fe993f410 h8300/ptrace: Fix incorrect register transfer count
   d77bd2d6a478 c6x/ptrace: Remove useless PTRACE_SETREGSET implementation
   dd6054234bd8 pinctrl: qcom: Don't clear status bit on irq_unmask
   b82b2f930c2b virtio_balloon: init 1st buffer in stats vq
   3e8c6bd9dbc4 KVM: x86: cleanup the page tracking SRCU instance
   79191ea36dc9 xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder
   64a5465799ee xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window
   f68a09c7944e xfrm: policy: init locks early
   c8e131605de2 Linux 4.9.19
   bc959a402d1e crypto: algif_hash - avoid zero-sized array
   3fd37725c4e0 fbcon: Fix vc attr at deinit
   c75fe7899538 drm: reference count event->completion
   56769e7a0526 nl80211: fix dumpit error path RTNL deadlocks
   7b3c8b2a2e63 drm/bridge: analogix dp: Fix runtime PM state on driver bind
   eae72468c45d device-dax: fix pmd/pte fault fallback handling
   81ec3dc1de0a libceph: don't set weight to IN when OSD is destroyed
   df1fe6c9ad48 Drivers: hv: vmbus: Don't leak memory when a channel is rescinded
   b1f6b0a5a066 Drivers: hv: vmbus: Don't leak channel ids
   3076066bb507 intel_th: Don't leak module refcount on failure to activate
   b176a6eed370 jbd2: don't leak memory if setting up journal fails
   90f39ad2ce94 auxdisplay: img-ascii-lcd: add missing sentinel entry in img_ascii_lcd_matches
   9740abe0fd18 drm/amdgpu: reinstate oland workaround for sclk
   21d17f1b53ce blk-mq: don't complete un-started request in timeout handler
   62f6341c858b cgroup, net_cls: iterate the fds of only the tasks which are being migrated
   f565084692d6 cpufreq: Restore policy min/max limits on CPU online
   b9ed800f7188 arm64: kaslr: Fix up the kernel image alignment
   2ab97521ce11 ARM: at91: pm: cpu_idle: switch DDR to power-down mode
   ca5477ad190b Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node"
   352c0214b7f2 iommu/vt-d: Fix NULL pointer dereference in device_to_iommu
   bc63212d2271 xen/acpi: upload PM state from init-domain to Xen
   b1ef9daa50cc crypto: ccp - Assign DMA commands to the channel's CCP
   cb6e07ba5878 mwifiex: pcie: don't leak DMA buffers when removing
   35ef543eb372 clk: sunxi-ng: mp: Adjust parent rate for pre-dividers
   867f7804ce65 clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock
   c445f9969641 hwrng: geode - Revert managed API changes
   5d6f7b36111d hwrng: amd - Revert managed API changes
   0d69a8804134 mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power
   b43ba21b3523 mmc: sdhci: Do not disable interrupts while waiting for clock
   2ab2e879110b mmc: sdhci-of-arasan: fix incorrect timeout clock
   ace22e6fdb4f mmc: sdhci-of-at91: Support external regulators
   1e360905f61f powerpc/64s: Fix idle wakeup potential to clobber registers
   9a9dc3ec7ce1 ext4: lock the xattr block before checksuming it
   f572ba9a7138 ext4: mark inode dirty after converting inline directory
   0f29bcfdcf68 parport: fix attempt to write duplicate procfiles
   1e6b50335012 iio: magnetometer: ak8974: remove incorrect __exit markups
   9808ff151781 iio: hid-sensor-trigger: Change get poll value function order to avoid sensor properties losing after resume from S3
   cf43d679ccc5 iio: sw-device: Fix config group initialization
   ec271b0e05b2 iio: adc: ti_am335x_adc: fix fifo overrun recovery
   dfcacd07bf06 mmc: ushc: fix NULL-deref at probe
   2e7486a05b81 uwb: hwa-rc: fix NULL-deref at probe
   f01c54fe0a8f uwb: i1480-dfu: fix NULL-deref at probe
   5e50afb2273c USB: usbtmc: fix probe error path
   73c4e2ede5a9 USB: usbtmc: add missing endpoint sanity check
   4e615886770a usb: hub: Fix crash after failure to read BOS descriptor
   51a3f3ec531a usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer
   46aeeb2ac18a USB: wusbcore: fix NULL-deref at probe
   a4887ea588e9 USB: idmouse: fix NULL-deref at probe
   21e0621e3cd7 USB: lvtest: fix NULL-deref at probe
   e4942716bb78 USB: uss720: fix NULL-deref at probe
   222ccd4f837b usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk
   d8ec35ad8b36 usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval
   ff8d97a822c6 ACM gadget: fix endianness in notifications
   381420a46ae5 USB: serial: qcserial: add Dell DW5811e
   21586e4dcc9b USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems
   0fe8771373c2 ALSA: hda - Adding a group of pin definition to fix headset problem
   e800ff1fade6 ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call
   ca79952dfc63 ALSA: seq: Fix racy cell insertions during snd_seq_pool_done()
   425823646eae Input: sur40 - validate number of endpoints before using them
   b1feb4e5aab4 Input: kbtab - validate number of endpoints before using them
   83d920e464fa Input: cm109 - validate number of endpoints before using them
   9f6a8dca9874 Input: yealink - validate number of endpoints before using them
   d9a3e6424e61 Input: hanwang - validate number of endpoints before using them
   1f5a512844a8 Input: ims-pcu - validate number of endpoints before using them
   0afac79f6696 Input: iforce - validate number of endpoints before using them
   de2ba8081e6d Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000
   3c9da7cfb7cf Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw
   4ccef6bd3a02 Input: ALPS - fix trackstick button handling on V8 devices
   81643d000315 Input: ALPS - fix V8+ protocol handling (73 03 28)
   9e13bcef2469 tcp: initialize icsk_ack.lrcvtime at session start time
   a53ea6051c7f socket, bpf: fix sk_filter use after free in sk_clone_lock
   62e85fe59072 ipv4: provide stronger user input validation in nl_fib_input()
   2f94dd54cfe6 net: bcmgenet: remove bcmgenet_internal_phy_setup()
   d80caeb9b86d ipv6: make sure to initialize sockc.tsflags before first use
   c87ef8734d25 net/mlx5e: Count LRO packets correctly
   36bb24fadbaa net/mlx5e: Count GSO packets correctly
   0ceb7181e876 net/mlx5: Increase number of max QPs in default profile
   38d23e13ba07 net/mlx5e: Use the proper UAPI values when offloading TC vlan actions
   f375f73c720b net/mlx5: Add missing entries for set/query rate limit commands
   4e7c821b6862 net: vrf: Reset rt6i_idev in local dst after put
   4b9b7f17bab1 qmi_wwan: add Dell DW5811e
   91ad0c0885c8 net: unix: properly re-increment inflight counter of GC discarded candidates
   ef7c1e297d44 openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD
   fafc9555d87a amd-xgbe: Fix jumbo MTU processing on newer hardware
   e9c1b1ab1225 net: properly release sk_frag.page
   4d5bc781eb2c net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled
   03e9554ac48f net/openvswitch: Set the ipv6 source tunnel key address attribute correctly
   2a486264b736 Linux 4.9.18
   c2eeabe94145 ext4: fix fencepost in s_first_meta_bg validation
   dea2f1e0c5e9 drm/amdgpu/si: add dpm quirk for Oland
   228514bf2430 cgroup/pids: remove spurious suspicious RCU usage warning
   3f406ecddf8a percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages
   a33e71c5f0cb gfs2: Avoid alignment hole in struct lm_lockname
   c795d8780cc8 isdn/gigaset: fix NULL-deref at probe
   033850b95300 target: Fix VERIFY_16 handling in sbc_parse_cdb
   de1ff848c74f scsi: libiscsi: add lock around task lists to fix list corruption regression
   42ba2c265b08 scsi: lpfc: Add shutdown method for kexec
   f8e24eab9bcd target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export
   ad5166415ff3 md/raid1/10: fix potential deadlock
   4265e0b487da powerpc/boot: Fix zImage TOC alignment
   bb8c61ad784d cpufreq: Fix and clean up show_cpuinfo_cur_freq()
   b76d4fb2d944 NFS prevent double free in async nfs4_exchange_id
   87144ec25091 xprtrdma: Squelch kbuild sparse complaint
   69efd8e21246 perf/core: Fix event inheritance on fork()
   c04a938229e7 perf/core: Fix use-after-free in perf_release()
   13695ce5b102 parisc: Fix system shutdown halt
   a690a42ae7b9 parisc: Optimize flush_kernel_vmap_range and invalidate_kernel_vmap_range
   66e70bdca599 qla2xxx: Fix request queue corruption.
   c5ad350d6144 qla2xxx: Fix memory leak for abts processing
   85f687708c81 give up on gcc ilog2() constant optimizations
   2bbcbc24474e drm/vc4: Use runtime autosuspend to avoid thrashing V3D power state.
   dd0b0e22a588 drm/vc4: Fix termination of the initial scan for branch targets.

(From OE-Core rev: d42d49cfed9ab7afbf6aceaa4547cece9564c75e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Bruce Ashfield
2a26619fda linux-yocto/4.4: update to v4.4.60
Updating to the korg stable relase with the following shortlog summary:

   8f8ee9706b0a Linux 4.4.60
   84bd21a708b8 padata: avoid race in reordering
   5cca175b6cda blk: Ensure users for current->bio_list can see the full list.
   2cbd78f4239b blk: improve order of bio handling in generic_make_request()
   063d30f187f5 power: reset: at91-poweroff: timely shutdown LPDDR memories
   42462d23e60b KVM: kvm_io_bus_unregister_dev() should never fail
   3a1246b46df5 rtc: s35390a: improve irq handling
   a55ae9d1937b rtc: s35390a: implement reset routine as suggested by the reference
   fdd4bc9313e5 rtc: s35390a: make sure all members in the output are set
   b3ed3864912e rtc: s35390a: fix reading out alarm
   6280ac931a23 MIPS: Lantiq: Fix cascaded IRQ setup
   47e2fe17d14d mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd()
   ef55c3df5dbd drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags
   3eb392056aeb KVM: x86: clear bus pointer when destroyed
   eac3ab3e6915 USB: fix linked-list corruption in rh_call_control()
   0a1757cfa5ba tty/serial: atmel: fix TX path in atmel_console_write()
   74b8fc017d76 tty/serial: atmel: fix race condition (TX+DMA)
   566a8711a7dd ACPI: Do not create a platform_device for IOAPIC/IOxAPIC
   3342857ac074 ACPI: Fix incompatibility with mcount-based function graph tracing
   ab48ab614b8c ASoC: atmel-classd: fix audio clock rate
   ce3dcfdbff04 ALSA: hda - fix a problem for lineout on a Dell AIO machine
   a90d7447e4a1 ALSA: seq: Fix race during FIFO resize
   75a03869c93a scsi: libsas: fix ata xfer length
   a92f411914ca scsi: sg: check length passed to SG_NEXT_CMD_LEN
   18639c4bad72 scsi: mpt3sas: fix hang on ata passthrough commands
   1eed198ce16b xen/setup: Don't relocate p2m over existing one
   ba46d8fab00a libceph: force GFP_NOIO for socket allocations
   61a4577c9a44 Linux 4.4.59
   2bed5987692c sched/rt: Add a missing rescheduling point
   7a5202190810 fscrypt: remove broken support for detecting keyring key revocation
   573341eba9c4 metag/ptrace: Reject partial NT_METAG_RPIPE writes
   e441102d8c07 metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS
   2d9bc3695012 metag/ptrace: Preserve previous registers for short regset write
   962b95a88574 sparc/ptrace: Preserve previous registers for short regset write
   c8693666856c mips/ptrace: Preserve previous registers for short regset write
   e1dc8904b33b h8300/ptrace: Fix incorrect register transfer count
   6e174bbd0631 c6x/ptrace: Remove useless PTRACE_SETREGSET implementation
   800791e7e0fd pinctrl: qcom: Don't clear status bit on irq_unmask
   927d04793f8a virtio_balloon: init 1st buffer in stats vq
   22c9e7c092f6 xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder
   cce7e56dd73f xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window
   a9a76a3e318e xfrm: policy: init locks early
   0a5766a6a73b Linux 4.4.58
   f8a62dbc7902 crypto: algif_hash - avoid zero-sized array
   540d6d756ff8 fbcon: Fix vc attr at deinit
   ac601978a2aa serial: 8250_pci: Detach low-level driver during PCI error recovery
   b8687d83b34c ACPI / blacklist: Make Dell Latitude 3350 ethernet work
   d3607fc2976e ACPI / blacklist: add _REV quirks for Dell Precision 5520 and 3520
   4e2c66bb6658 uvcvideo: uvc_scan_fallback() for webcams with broken chain
   ce5494107946 s390/zcrypt: Introduce CEX6 toleration
   7023f502c835 block: allow WRITE_SAME commands with the SG_IO ioctl
   9fd9e1436380 vfio/spapr: Postpone allocation of userspace version of TCE table
   4110080574ac PCI: Do any VF BAR updates before enabling the BARs
   bcbdcf48469b PCI: Ignore BAR updates on virtual functions
   d4f09ea7e35c PCI: Update BARs using property bits appropriate for type
   131f7969048b PCI: Don't update VF BARs while VF memory space is enabled
   40a85d68185f PCI: Decouple IORESOURCE_ROM_ENABLE and PCI_ROM_ADDRESS_ENABLE
   1278c9f87f11 PCI: Add comments about ROM BAR updating
   cef498a2c75a PCI: Remove pci_resource_bar() and pci_iov_resource_bar()
   a87693ec42f2 PCI: Separate VF BAR updates from standard BAR updates
   e4ce31c0265d x86/hyperv: Handle unknown NMIs on one CPU when unknown_nmi_panic
   ca7e3bdc9c7e igb: add i211 to i210 PHY workaround
   4db313df4946 igb: Workaround for igb i210 firmware issue
   ec52364445a4 xen: do not re-use pirq number cached in pci device msi msg data
   6d43e485e006 xfs: clear _XBF_PAGES from buffers when readahead page
   f154de03f416 USB: usbtmc: add missing endpoint sanity check
   74c8dd066cc0 nl80211: fix dumpit error path RTNL deadlocks
   7922c1becb36 xfs: fix up xfs_swap_extent_forks inline extent handling
   c4cf86f69597 xfs: don't allow di_size with high bit set
   48da8f817b9d libceph: don't set weight to IN when OSD is destroyed
   73dd1edf50a6 raid10: increment write counter after bio is split
   175039632065 cpufreq: Restore policy min/max limits on CPU online
   e1af444e52ce ARM: dts: at91: sama5d2: add dma properties to UART nodes
   2705b183263b ARM: at91: pm: cpu_idle: switch DDR to power-down mode
   55b6c187cf9d iommu/vt-d: Fix NULL pointer dereference in device_to_iommu
   c856b66c8aac xen/acpi: upload PM state from init-domain to Xen
   52e40a2fcc39 mmc: sdhci: Do not disable interrupts while waiting for clock
   27d9bf096406 ext4: mark inode dirty after converting inline directory
   c7d1545c48ff parport: fix attempt to write duplicate procfiles
   7413d1f8991e iio: hid-sensor-trigger: Change get poll value function order to avoid sensor properties losing after resume from S3
   8f189e1d0eca iio: adc: ti_am335x_adc: fix fifo overrun recovery
   dcf879cb9ed3 mmc: ushc: fix NULL-deref at probe
   2c251e568e1a uwb: hwa-rc: fix NULL-deref at probe
   815321da2e26 uwb: i1480-dfu: fix NULL-deref at probe
   14a2032287d4 usb: hub: Fix crash after failure to read BOS descriptor
   47285be050ca usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer
   a7cb1fafe429 USB: wusbcore: fix NULL-deref at probe
   d6389d6abb8a USB: idmouse: fix NULL-deref at probe
   a7712869e2e7 USB: lvtest: fix NULL-deref at probe
   73490abe249c USB: uss720: fix NULL-deref at probe
   2c929ea720f9 usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk
   8a8a8007871a usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval
   19f0fe67b9d0 ACM gadget: fix endianness in notifications
   9218793a39de USB: serial: qcserial: add Dell DW5811e
   8f0f081647cc USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems
   1ea551eec703 ALSA: hda - Adding a group of pin definition to fix headset problem
   ed00b613bbcb ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call
   b55ffcb1bc8a ALSA: seq: Fix racy cell insertions during snd_seq_pool_done()
   549993001e7d Input: sur40 - validate number of endpoints before using them
   b3c4c0c470b5 Input: kbtab - validate number of endpoints before using them
   c05490638ddf Input: cm109 - validate number of endpoints before using them
   e916f1d6188e Input: yealink - validate number of endpoints before using them
   0812c6855c89 Input: hanwang - validate number of endpoints before using them
   6bed7c1e2b78 Input: ims-pcu - validate number of endpoints before using them
   a07d3669654a Input: iforce - validate number of endpoints before using them
   5f9243e4fca6 Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000
   9ac7bd114e13 Input: elan_i2c - add ASUS EeeBook X205TA special touchpad fw
   afaed241928f tcp: initialize icsk_ack.lrcvtime at session start time
   95aa915c2f04 socket, bpf: fix sk_filter use after free in sk_clone_lock
   38dece41e5be ipv4: provide stronger user input validation in nl_fib_input()
   85f00dac91a1 net: bcmgenet: remove bcmgenet_internal_phy_setup()
   fdcee7c1e2f8 net/mlx5e: Count LRO packets correctly
   9d1894cba25c net/mlx5: Increase number of max QPs in default profile
   610c6bcc5fcf net: unix: properly re-increment inflight counter of GC discarded candidates
   ae43f9360a21 amd-xgbe: Fix jumbo MTU processing on newer hardware
   f3126725228c net: properly release sk_frag.page
   12f0bffc489d net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled
   b362d6735156 net/openvswitch: Set the ipv6 source tunnel key address attribute correctly
   a5c3f390eb77 Linux 4.4.57
   5fa513cb0721 ext4: fix fencepost in s_first_meta_bg validation
   d88b83e66bbf percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages
   e08f608ab428 gfs2: Avoid alignment hole in struct lm_lockname
   4f47ca488256 isdn/gigaset: fix NULL-deref at probe
   d267ecbdfdb4 target: Fix VERIFY_16 handling in sbc_parse_cdb
   246760c61d9c scsi: libiscsi: add lock around task lists to fix list corruption regression
   82bd06aba880 scsi: lpfc: Add shutdown method for kexec
   0a621633cdfa target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export
   582f548924cd md/raid1/10: fix potential deadlock
   b24473976b98 powerpc/boot: Fix zImage TOC alignment
   09875d1393d4 cpufreq: Fix and clean up show_cpuinfo_cur_freq()
   f02729f2ab87 perf/core: Fix event inheritance on fork()
   4cb0c0b73d1c give up on gcc ilog2() constant optimizations
   6052eb871217 kernek/fork.c: allocate idle task for a CPU always on its local node
   6cc5b73d7969 hv_netvsc: use skb_get_hash() instead of a homegrown implementation
   cea050150323 tpm_tis: Use devm_free_irq not free_irq
   13a26889cbc1 drm/amdgpu: add missing irq.h include
   68ea3948ed3d s390/pci: fix use after free in dma_init
   50730d7f361f KVM: PPC: Book3S PR: Fix illegal opcode emulation
   e2d9577854f5 xen/qspinlock: Don't kick CPU if IRQ is not initialized
   b1a0f744f8e6 Drivers: hv: avoid vfree() on crash
   0a2512768f16 Drivers: hv: balloon: don't crash when memory is added in non-sorted order
   3787a071d145 pinctrl: cherryview: Do not mask all interrupts in probe
   962c66c74184 ACPI / video: skip evaluating _DOD when it does not exist
   12e1a3cd11ea cxlflash: Increase cmd_per_lun for better throughput
   f8c07cbc2e72 crypto: mcryptd - Fix load failure
   10659b8f5c60 crypto: cryptd - Assign statesize properly
   c78c3376ec67 crypto: ghash-clmulni - Fix load failure
   45d9558837d4 USB: don't free bandwidth_mutex too early
   ac1a97d8a562 usb: core: hub: hub_port_init lock controller instead of bus

(From OE-Core rev: 52a6823d4279d580a2b4bbfdc06234a903a17d93)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Mylène Josserand
04f3423a2a meta: classes: Add building dir to uImage creation
On the do_uboot_mkimage task from kernel-uimage.bbclass, in case
KEEPUIMAGE is different than the default "yes" value, the uboot-mkimage
command fails because the path of the created uImage does not exist.

On this task, we are under the BUILDDIR so there is no folder arch/<ARCH>/boot.
Add the ${B} (for kernel build directory) as prefix to this folder fixes the problem.

(From OE-Core rev: e5a6ee0d0655827d06a6030380277ee61a6db0ef)

Signed-off-by: Mylène Josserand <mylene.josserand@free-electrons.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Markus Lehtonen
11747280b5 oe-build-perf-report-email.py: use pwd for getting user name
Use pwd data instead of os.getlogin() to get the username for fallback
email address. os.getlogin() basically returns the name of the user
logged in on the controlling terminal of the process and raises an
exception on some systems if the process does not have a controlling
terminal - when executed from a cron script, for example.

(From OE-Core rev: 66b7f495bb000c043ae24176dcdec0cb087eeecf)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Richard Purdie
ffabe5d1b9 oe-selftest: Error if known problem variables are set
Setting SANITY_TESTED_DISTROS or PRSERV_HOST are known to break oe-selftest.
Rather than have the user experience this, refuse to execute unless the
environment is correct.

Ideally we'd try and unset these but that is a more invasive change and this
at least makes people aware of the problem.

[YOCTO #11292]

(From OE-Core rev: 0c9b981e88c76da316e76f17e6da3a03b87c5008)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Leonardo Sandoval
3f32ca2a57 oeqa/core/runner: Append PID in the test result folder name
It was found a case (see the bugzilla entry) where two runners were running at the same
second, creating identical test result folders, so one of them (the second runner)
was not able to create the folder because the other has already created it,
raising the following exception (many text was removed from log)

NOTE: Executing RunQueue Tasks
NOTE: Running task 1 of 2 (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/recipes-core/images/core-image-minimal.bb:do_testsdkext)
NOTE: Running task 2 of 2 (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/recipes-sato/images/core-image-sato.bb:do_testsdkext)
NOTE: recipe core-image-sato-1.0-r0: task do_testsdkext: Started
NOTE: recipe core-image-minimal-1.0-r0: task do_testsdkext: Started
.
.
The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:do_testsdkext(d)
     0003:
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/classes/testsdk.bbclass', lineno: 188, function: do_testsdkext
     0184:
     0185:testsdkext_main[vardepsexclude] =+ "BB_ORIGENV"
     0186:
     0187:python do_testsdkext() {
 *** 0188:    testsdkext_main(d)
     0189:}
     0190:addtask testsdkext
     0191:do_testsdkext[nostamp] = "1"
     0192:
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/classes/testsdk.bbclass', lineno: 171, function: testsdkext_main
     0167:        except Exception as e:
     0168:            import traceback
     0169:            bb.fatal("Loading tests failed:\n%s" % traceback.format_exc())
     0170:
 *** 0171:        result = tc.runTests()
.
.
File: '/usr/lib64/python3.5/os.py', lineno: 241, function: makedirs
     0237:            cdir = bytes(curdir, 'ASCII')
     0238:        if tail == cdir:           # xxx/newdir/. exists if xxx/newdir exists
     0239:            return
     0240:    try:
 *** 0241:        mkdir(name, mode)
     0242:    except OSError:
     0243:        # Cannot rely on checking for EEXIST, since the operating system
     0244:        # could give priority to other errors like EACCES or EROFS
     0245:        if not exist_ok or not path.isdir(name):
Exception: FileExistsError: [Errno 17] File exists: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/build/TestResults_20170409130114'

[YOCTO #11318]

(From OE-Core rev: 10aa09d39c1b70ce2a88f59601f1f8dbc96ed817)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Patrick Ohly
68079d0f87 yocto-compat-layer: better handling of per-machine world build breakage
It is fairly common that BSP layers enable recipes when choosing
machines from that layer without checking whether the recipe actually
builds in the current distro. That breaks "bitbake world", retrieving
signatures and thus the test_machine_signatures test.

It's better to let that test continue with the signatures that can be
retrieved and report the broken world build separately. Right now, the
new test_machine_world iterates over all machines. More elegant and
useful in combination with a (currently missing) selection of which
tests to run would be to generate one test instance per machine. But that
is not straightforward and has to wait.

The "-k" argument alone was not enough to proceed despite failures,
because bitbake then still returns a non-zero exit code. The existance
of the output file is taken as sign that the bitbake execution managed
was not fatally broken.

(From OE-Core rev: 02f5d7836b726e40fef82b50b8145acc839b360b)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Patrick Ohly
de76d1cc94 yocto-compat-layer: test signature differences when setting MACHINE
Selecting a machine is only allowed to affect the signature of tasks
that are specific to that machine. In other words, when MACHINE=A and
MACHINE=B share a recipe foo and the output of foo, then both machine
configurations must build foo in exactly the same way. Otherwise it is
not possible to use both machines in the same distribution.

This criteria can only be tested by testing different machines in combination,
i.e. one main layer, potentially several additional BSP layers and an explicit
choice of machines:
yocto-compat-layer --additional-layers .../meta-intel --machines intel-corei7-64 imx6slevk -- .../meta-freescale

To simplify the analysis and limit the amount of output, mismatches
are sorted by task order such that tasks that run first are also
reported first. Following tasks for the same recipe and set of
machines then get pruned, because they are likely to be different
because of the underlying task (same approach as in
test_signatures). The difference here is that we get information about
all machines. The task order in the base configuration serves as
heuristic for sorting that merged list.

The test has already found issues in go-cross (depended on
tune-specific libgcc) and gdb-cross (had a tune-specific path
unnecessarily), so it is also useful to uncover issues that are not
caused by the BSP layer itself.

(From OE-Core rev: cb0d3de4540e412cfcb7804b4b1689141c80e3a1)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Paul Eggleton
40d1771944 recipetool: create: hide missing npm error when called from devtool
If devtool is called with a URL to a source repository containing a
node.js module, we don't know that until recipetool has fetched it, and
due to the structure of the code we have to exit with a special code in
order to let devtool know it needs to build nodejs-native. We also want
to suppress the error message that recipetool would normally print under
these circumstances; there is already a mechanism for this but it wasn't
operative in the case where we're pointed to a source repository rather
than an npm:// URL, so create some plumbing so that we know to hide the
message.

(From OE-Core rev: 0c2d0fbb1c6c5b82183799eb7ef80074f86bcfc4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Paul Eggleton
48f8d1201a devtool: add: prevent repeatedly running recipetool
If recipetool returns with exit code 14 this means devtool needs to
build nodejs-native and then call it again. If recipetool returns exit
code 14 again then clearly something has gone wrong and we should just
quit with an error.

(From OE-Core rev: 8d7cced6e06d7c2037f5ab75ac859f501129532e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Paul Eggleton
bb8f141d0c devtool: add: fix node.js/npm handling with recipe specific sysroots
The change over to recipe specific sysroots means that we can no longer
get a known location simply from configuration for the npm binary - we
need to get the recipe sysroot for nodejs-native, look there for npm if
we need to check it's present, and add that to PATH when calling out to
npm. Unfortunately this means anywhere we need to get that path we have
to have parsed all recipes, otherwise we have no reliable way of
resolving nodejs-native. Thus we have to change recipetool create to
always parse all recipes (the structure of the code does not allow us to
do this conditionally).

In the worst case, if npm hasn't already been added to its own sysroot
and we are fetching from a source repository rather than an npm
registry, this gets a bit ugly because we end up parsing recipes three
times:
1) recipetool startup, which then fetches the code and determines it's
   a node.js module, finds that npm isn't available and then exits with
   a specific error to tell devtool it needs to build npm
2) when we invoke bitbake -c addto_recipe_sysroot nodejs-native
3) when we re-invoke recipetool

This code is badly in need of refactoring, but now is unfortunately not
the time to do that, so we're going to have to live with this ugliness
for now.

Fixes [YOCTO #10992].

(From OE-Core rev: acfdbd796c99882b8586023c8c6b848716105c8d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:10 +01:00
Paul Eggleton
0440cbccda recipetool: create: fix for regression in npm license handling
OE-Core commit c0cfd9b1d54b05ad048f444d6fe248aa0500159e added handling
for AND / OR in license strings coming from npm, but made the assumption
that an & would always be present in the license value. Check if it's
there first so we don't fail if it isn't.

(From OE-Core rev: abe2955df2dc558de6068d9373dfcb47d690704b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:09 +01:00
Robert Yang
9dc4707035 blacklist.bbclass: fix for multilib
* Fixed:
  The netmap has been blacklisted in
  meta-networking/recipes-kernel/netmap/netmap_git.bb, but lib32-netmap still can
  be built (suppose it doesn't depend on another broken recipe netmap-modules, it
  is a little complicated, will talk below):
  $ bitbake lib32-netmap

  This is because of the old code masks on bb.event.ConfigParsed which can only
  handle global blacklist, netmap sets blacklist in the recipe, so it can't be
  handled, and lib32-netmap can be built. which was incorrect:
  blacklist_multilib_eventhandler[eventmask] = "bb.event.ConfigParsed"

  Move multilib code into multilib.bbclass can fix the problem easily:
  $ bitbake lib32-netmap
    ERROR: Nothing PROVIDES 'lib32-netmap'
    ERROR: lib32-netmap was skipped: Recipe is blacklisted: BROKEN: <foo>

* Not fixed
  Another problem is netmap-modules has also been blacklisted in the recipe, and
  the recipe inherits module.bbclass, so multilib.bbclass doesn't handle it as the
  code shows:
    # There should only be one kernel in multilib configs
    # We also skip multilib setup for module packages.
    provides = (e.data.getVar("PROVIDES") or "").split()
    if "virtual/kernel" in provides or bb.data.inherits_class('module-base', e.data):
        raise bb.parse.SkipPackage("We shouldn't have multilib variants for the kernel")

  And netmap-modules provides lib32-netmap-modules which is handled in
  multilib_global.bbclass, so bitbake lib32-netmap-modules can't show
  the blacklist message:
  $ bitbake netmap-modules
  ERROR: Nothing PROVIDES 'netmap-modules'
  ERROR: netmap-modules was skipped: Recipe is blacklisted: BROKEN: <foo>
  ERROR: netmap-modules was skipped: We shouldn't have multilib variants for the kernel

  $ bitbake lib32-netmap-modules
  ERROR: Nothing PROVIDES 'lib32-netmap-modules'. Close matches:
    netmap-modules
    netmap-modules
    lib32-fbset-modes

  Note the different messages between netmap-modules and lib32-netmap-modules.
  This is because multilib.bbclass doesn't handle the "module" recipe so
  there is no PN called lib32-netmap-modules, therefore blacklist.bbclass can't
  handle it.

  Note, there are two "netmap-modules" which needs to be fixed later.

(From OE-Core rev: c8749ed1edcbb544f6656ee5da80f2cf647c405a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-13 10:54:09 +01:00
Scott Rifenbark
94467d5087 dev-manual, ref-manual: Edits to the "Incrementing Binary Package" section.
Fixes [YOCTO #10995]

I applied some revisions to the related sections for incrementing
a binary package version and revision sections.  Mainly clarified
terminology and pulled the sections into one single section head.

I also cleaned up referencing to all these sections throughout the
YP manual set (i.e. the ref-manual).

(From yocto-docs rev: 7deda18dd496cc383c5de71a10f2b11b1ca0688f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
f9e7fba02f dev-manual, ref-manual: Created new section on linear revision for packages
Fixes [YOCTO #10995]

For the dev-manual, I added a new section on incrementing package
revision numbers that explains how the build system uses various
variables to create linearly numbered revisions for packages.

For the ref-manual, I cross-referenced into the new section from the
AUTOSRC and SRCREV variables.

(From yocto-docs rev: 53c3092e0f0293f4db0a88659abb4cf1c93f208c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
7f47526f5c ref-manual: Initial draft of 2.3 migration section.
(From yocto-docs rev: c4c995aa94e5100e0d306eb91f490c23726ea91f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
beb301c03a dev-manual: Added section on using headers to interface with devices
Fixes [YOCTO #8596]

Added a new section to describe the right way to use headers to
interface to a device or custom Linux kernel API.  Too often a
user wants to modify the libc header file, which absolutely wrong.
This new section provides some guidance.

(From yocto-docs rev: 960c49bf6446398a9efb2d018d09d63b49e97196)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
e2232e6813 dev-manual, ref-manual: Added PACKAGE_WRITE_DEPS and concept support
Fixes [YOCTO #11274]

When a post-installation or pre-installation script uses tools that
have dependencies, you need to specify the tools using the new
PACKAGE_WRITE_DEPS variable.  I added this information at the end
of the "Post Installtion Scripts" section in the dev-manual.

I also added a new variable entry for the PACKAGE_WRITE_DEPS variable
in the glossary.

(From yocto-docs rev: 4d130b63cba5ebabd4af52b62421d387a4b54353)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
1d5745f959 sdk-manual: Fixed link to Neon download site.
Fixes [YOCTO #11263]

(From yocto-docs rev: c7e68a533045ff482b5fc022886df58e199dd4b7)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
e0a4972087 dev-manual: Added cross-reference to QA and Test Infrastructure section.
Fixes [YOCTO #10887]

I placed a small paragraph at the end of the introduction to the
"Performing Automated Runtime Testing" section that points into the
new section on QA and testing infrastructure in the ref-manual.

(From yocto-docs rev: 493051e1770e07b89c19a1f235f1dd226610c77a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
43fefd1211 ref-manual: Added section on test and QA infrastructure
Fixes [YOCTO #10887]

There needed to be an overview of the test and QA infrastructure
used by the YP development team for releases and that is visible
to the developer.  I added a new section for this information into
the existing section on YP release processes.

(From yocto-docs rev: 17b3d6898b37bdbfbd23a333a4d659a9746696d0)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:35:00 +01:00
Scott Rifenbark
c53ba427ef dev-manual: Added YP Compatibility feature
Fixes [YOCTO #10596]

No information existed for the version 1.0 YP Compatibility Program
for layers.  Additionally, the version 2.0 flavor is adding a script
as part of the application process.  I put in a new section on the
whole topic.  Also, integrated the information into relevant sections
with some cross-referencing.

(From yocto-docs rev: 6341705d4c08901b2657c489f4e995968db00d85)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 19:34:59 +01:00
Nathan Rossi
97f30c70bd busybox: In defconfig enable ASH_CMDCMD for built-in 'command'
It is common for *ash shells to have 'command' available as a built-in
function. POSIX 2008 also documents the availability of this command.

Additionally the /etc/profile of base-files requires this command to be
available as of commit e77cdb7611 ("base-files: profile: Do not assume
that the tty command exists"). If it is not available the following
message is output during login on a image using busybox.

    -sh: command: not found

It however should be noted that tcsh and csh do not provide 'command'
(built-in or otherwise).

(From OE-Core rev: e41c90b852167bbcb434da57b84280e855acae33)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:18:46 +01:00
Nathan Rossi
bf0fc2da66 bitbake: lib/bb/{data, siggen}: Don't warn on SkipRecipe exceptions
Recipes/variables that raise a SkipRecipe exception are intentionally
skipped, and should not generate warnings.

[YOCTO #11319]

(Bitbake rev: edf6e6094a9f7ad4b2ba06eef8fd34756edbedce)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:16:05 +01:00
Richard Purdie
000b7d3d1c bitbake: data_smart: Ensure _remove operations on newly set variables are cleared
We clear append/prepend on newly set variables, we should also clear
remove operations. If we don't do this, there is no way we can actually
delete a remove operation. Bitbake internally uses parsing=True to avoid
these side effects when making its own internal calls.

Also add a testcase to bitbake-selftest to ensure we remain consistent going
forward from here.

(Bitbake rev: 3a319f079d699c870d8531e051ab65e6278d1fa5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Ed Bartosh
64a379b325 wic-image-minimal: stop using core-image-minimal
Removed dependency to core-image-minimal rootfs from the
recipe and .wks file. This was a bad idea as recipes are
not allowed to use other recipe's rootfs or anything else
from workdir.

This should also fix test_qemu test case when rm_work is
enabled.

(From OE-Core rev: 0f1879982ab6006f14ac2c9f5546a7b1f79460cd)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Patrick Ohly
31e53430f1 yocto-compat-layer: add --additional-layers
The new --addditional-layers parameter takes a list of layer
directories and adds them to the build configuration before starting
testing. The resulting base configuration then more closely matches
a full distro.

This is relevant in two cases:
1. some layers like meta-freescale dynamically enable more recipes
   in their layer.conf depending on which other layers are active,
   so testing only against OE-core might miss problems which occur
   only when also some other layers are active
2. BSP layers might be fine in combination with machines from
   OE-core, but might break in combination with some other machines

As before, test_signatures only warns about signature changes
introduced by the layer which is under testing, and not those changes
introduced by the additional layers.

(From OE-Core rev: 0e8528f7c6201e8a5d2799123241c0e1b85081ce)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Patrick Ohly
e93a2ab3e3 yocto-compat-layer: also determine tune flags for each task
locked-sigs.inc groups tasks according to their tune flags (allarch,
i586, etc.). Also retrieve that information while getting signatures,
it will be needed to determine when setting a machine changes tasks
that aren't machine-specific.

(From OE-Core rev: 67f9a8759f47680dbf349797801b2a1e8d149377)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Patrick Ohly
937c1ea974 yocto-compat-layer: include bitbake-diffsigs output
After filtering out potential false positives, it becomes feasible to
include the output of bitbake-diffsigs for those tasks which
definitely have a change.

Depends on bitbake-diffsigs with the "--signature" parameter.

Enhanced output now is:

   AssertionError: False is not true : Layer meta-xxxx changed 120 signatures, initial differences (first hash without, second with layer):
      gstreamer1.0-plugins-base:do_fetch: 76973f19f2e30d282152bdd7e4efe5bb -> e6e7c6fa9f2bd59d7d8d107f7c6ca1ac
         Task dependencies changed from:
         ['PV', 'SRCREV', 'SRC_URI', 'SRC_URI[md5sum]', 'SRC_URI[sha256sum]', 'base_do_fetch']
         to:
         ['GST_IMX_PATCHES_TO_APPEND', 'PV', 'SRCREV', 'SRC_URI', 'SRC_URI[md5sum]', 'SRC_URI[sha256sum]', 'base_do_fetch']
         basehash changed from d679d30bd1ea41c56e57419b57587f3c to 090a79b45f5fa26d10f9d34e2ed7a1e6
            List of dependencies for variable SRC_URI changed from '{'PV', 'SRC_URI[md5sum]', 'SRC_URI[sha256sum]'}' to '{'GST_IMX_PATCHES_TO_APPEND', 'PV', 'SRC_URI[md5sum]', 'SRC_URI[sha256sum]'}'
         changed items: {'GST_IMX_PATCHES_TO_APPEND'}
         Dependency on variable GST_IMX_PATCHES_TO_APPEND was added
         Variable SRC_URI value changed:
         "     http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz     file://get-caps-from-src-pad-when-query-caps.patch     file://0003-ssaparse-enhance-SSA-text-lines-parsing.patch     file://0004-subparse-set-need_segment-after-sink-pad-received-GS.patch     file://encodebin-Need-more-buffers-in-output-queue-for-bett.patch     file://make-gio_unix_2_0-dependency-configurable.patch     file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch     file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch     file://0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch     file://0003-riff-add-missing-include-directories-when-calling-in.patch     file://0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch [--] {+${GST_IMX_PATCHES_TO_APPEND}+}"

      pulseaudio:do_install: 6bb6fe23e11a6d5fef9c3a25e73e4f9c -> 3f54ea75673a792e307197cfa6ef2694
         basehash changed from ac4efcfa783bd04a5a98a2c38719aedd to 37679d99623a37c8df955da3a01415a5
         Variable do_install value changed:
         @@ -1,3 +1,7 @@
              autotools_do_install
           	install -d ${D}${sysconfdir}/default/volatiles
          	install -m 0644 ${WORKDIR}/volatiles.04_pulse  ${D}${sysconfdir}/default/volatiles/volatiles.04_pulse
         +    if [ -e "${WORKDIR}/daemon.conf" ] && [ -e "${WORKDIR}/default.pa" ]; then
         +        install -m 0644 ${WORKDIR}/daemon.conf ${D}${sysconfdir}/pulse/daemon.conf
         +        install -m 0644 ${WORKDIR}/default.pa ${D}${sysconfdir}/pulse/default.pa
         +    fi

[YOCTO #11161]

(From OE-Core rev: 312edd42b6cc553de4d476c76e8e36a882e11cdd)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Patrick Ohly
3e903cb42f recipes/*-cross recipes: ignore TARGET_ARCH sstate hash
"yocto-compat-layer.py --machines" showed that shared packages like
gcc-cross-powerpc64 have a sstate signature that depends on
TUNEFLAGS. As a result, there are unnecessary rebuilds and potential
conflicts in a multiconfig.

That's due to the way how TARGET_ARCH is set. Richard Purdie suggested
setting TARGET_ARCH[vardepvalue] as fix, which works. It would be
shorter to do that in cross.bbclass instead of repeating the relevant
line in different recipes, but Richard was concerned about potential
side-effects in other usages of cross.bbclass.

TARGET_GOARM as used in go.inc is still causing signature differences
for go-cross-powerpc64 and machines b4420qds-64b and p5020ds-64b. This
needs further investigation.

(From OE-Core rev: 39bfa0dd3237cbca47e7fca1075d521f9d073f25)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Patrick Ohly
fc43f10a51 gdb-cross: avoid tune specific paths
gdb-cross used to be specific to the tune flags, but isn't
anymore. Therefore it is enough to use TARGET_SYS instead of
TUNE_PKGARCH to create a unique path.

Fixes a sstate signature difference that was found via
yocto-compat-layer.py's test_machine_signatures check. In practice it
probably showed up as unnecessarily rebuilding gdb-cross when
switching between machines like intel-corei7-64 and qemux86-64.

(From OE-Core rev: f346473a4868563db7fb63665e808c3fe25a8b58)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Patrick Ohly
30686e2fd6 go-cross: avoid libgcc dependency
libgcc gets compiled differently depending on the tune flags for the
target. That dependency would make go-cross also tune specific and
prevent sharing it between different machines using the same
architecture.

For example, MACHINE=intel-corei7-64 and MACHINE=qemux86-64 shared the
same go-cross-x86_64, but compiled libgcc differently.

The libgcc dependency gets inherited from go.inc, but does not seem to
be necessary for go-cross (compiling go-helloworld still succeeds).
The dependency is left in go.inc conditionally, just in case that it
really is relevant for the various on-target recipes which inherit
that.

Because go-cross*.bb includes go*.bb, moving the DEPENDS into a .inc
file that only gets included for the target recipes doesn't
work. Reshuffling the content of three .bb files seems too intrusive
at this point.

(From OE-Core rev: 58149a7be4172074349951aaf5af95fa40fd4bdb)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Maxin B. John
a9f119382b ed: update SRC_URI to yoctoproject mirror
Upstream has removed the 1.14.1 release from ftp.gnu.org and
moved to the latest 1.14.2. Since we don't want to upgrade at
this point of time, temporarily move the SRC_URI to yoctoproject
mirror.

(From OE-Core rev: a2f1026b3d8c9f9810cb4389a8a93fabb04e15a4)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Jussi Kukkonen
db1f1adace native/nativesdk: Use fixed DISTRO_FEATURES
There seems to be little advantage to letting distro features affect
native builds. There is a significant disadvantage: a change to
DISTRO_FEATURES will trigger a lot of unnecessary native tasks. In a
test like this:
  $ bitbake core-image-minimal
  # append " systemd" to DISTRO_FEATURES
  $ bitbake core-image-minimal
The latter build takes 44 minutes (28%) of cpu-time less with this
patch (skipping 135 native tasks). Sadly wall clock time was not
affected as glibc remains the bottleneck.

Set native distro features to DISTRO_FEATURES_NATIVE appended with
an intersection of DISTRO_FEATURES and DISTRO_FEATURES_FILTER_NATIVE.
Current default values (baitbake.conf) are
* DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation" (as gtk-doc-native
has much less dependencies when built without it)
* DISTRO_FEATURES_NATIVE ?= "x11" (to enable native UIs even if target
does not containe them)

Do the variable setting in native_virtclass_handler() because otherwise
it could still be overridden by appends and the feature backfilling.
Shuffle the early returns so DISTRO_FEATURES gets set as long as
the packagename ends with "-native".

Add similar variables for nativesdk.

To make nativesdk work we need to enable the locale options so
nativesdk-glibc-locales can build and to avoid the init manager check
in the nativesdk case so add those fixes.

(From OE-Core rev: 731744d5538e315702be828e6f2bd556309dee07)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Ian.Arkver
f2e41a197f package_manager.py: Add a name for the generated dnf repo.
This adds repo_name as the name, which is the same as the
repo ID and hence a bit pointless, but it stops dnf from
complaining that the repo doesn't have a configured name.

(From OE-Core rev: c92cff23893e87cfb7ef9f77b16761310104543a)

Signed-off-by: Ian.Arkver <ian.arkver.dev@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:58 +01:00
Robert Yang
620655697d selftest/wic.py: vda -> sda
Previously, runqemu grep root=/dev/sd or root=/dev/hd on the image, and
would use vda if no grep result, now we have set QB_DRIVE_TYPE to
"/dev/sd" by default, and the device will be /dev/sda, so use sda to
replace vda in the test case.

(From OE-Core rev: a722016df3f452f7a870157a99a1abb7d97d8280)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Ed Bartosh
8838dd2dbd oe-selftest: test wic sparse_copy API
Added new parameter 'api' to sparse_copy function to specify
underlying filemap API to use. By default sparse_copy will
try both available APIs.

Added test case for sparse_copy to wic test suite.

(From OE-Core rev: 88701cef6ba399e82f96ed1b0eef9a44ed8c1687)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Robert Yang
7792688ac2 qemux86-directdisk.wks: vda -> sda
Previously, runqemu grep root=/dev/sd or root=/dev/hd on the image, and
would use vda if no grep result, now we have set QB_DRIVE_TYPE to
"/dev/sd" by default, and the device will be /dev/sda, so use sda to
replace vda in the test case.

(From OE-Core rev: 3f1f42984021d87ac43aaa16f38b706c2c965e02)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Robert Yang
be72eaf86f runqemu: use self.rootfs to replace self.nfs_dir
We can use self.rootfs as self.nfs_dir when self.fstype is nfs, this can
reduce the code's complexity and we can re-use the code of checking
ROOTFS conflictions.

(From OE-Core rev: 1aafa13ae6faf620acac7338c42a8838e75da6b9)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Robert Yang
d538cbb95e wic-image-minimal.wks: vda -> sda
Previously, runqemu grep root=/dev/sd or root=/dev/hd on the image, and
would use vda if no grep result, now we have set QB_DRIVE_TYPE to
"/dev/sd" by default, and the device will be /dev/sda, so use sda to
replace vda in the test case.

(From OE-Core rev: aa8df7e17bb4bb0a92938cbc36cd8b22bcf14cfa)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Robert Yang
f57393b386 runqemu: do not rely on grepping images
Fixed when the image is large and not enough memory:
  grep: memory exhausted
  Aborted

[YOCTO #11073]

(From OE-Core rev: a99deb30a0138594147ae28aab016fe4b74b8959)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Robert Yang
f2c09f7867 runqemu: run without arguments
Since we can get MACHINE and others from env vars and "bitbake -e",
"runqemu" can work without any arguments.

(From OE-Core rev: 9ebcb2b6f41420ae3686afad03bb26a68cfacf95)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Robert Yang
f6aaba31cf runqemu: support env vars explicitly
Use self.env_vars to support get vars from environment explicity. The
MACHINE, ROOTFS and KERNEL was supported by shell based runqemu, and
the help text says support them from env vars, so add them back.

[YOCTO #11141]

(From OE-Core rev: 20008d0bfe2cacecba77e11b0a0faf3d959eaf1e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:09:57 +01:00
Aníbal Limón
b283b10d53 ptest-runner: Upgrade to minor version 2.0.2
To fix a problem when print ERROR after a ptest timeout, this
causes the user confusion about if a test ends or not.

[YOCTO #10842]

(From OE-Core rev: 210c518ba8f8d6ec6e9d34e0df8b963a3b2e0593)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Carlos Rafael Giani
7252450159 gstreamer1.0-plugins-good: Backport patch for v4l2object videometa
This patch ensures videometa is added to mem2mem decoder output in case
the output frames have padding rows/columns

(From OE-Core rev: ef94ffee8f11db57ecea398af76dc22576c2068a)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Carlos Rafael Giani
a9dfae4e26 gstreamer1.0-plugins-bad: Update packageconfigs and config flags
(From OE-Core rev: 5acad7f33aebfac4c5a3a68778f5860f954904fe)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Richard Purdie
283a9b3883 staging: Fix sysroot problem with populate_sysroot dependencies on do_fetch
Dependencies on svn:// urls were failing as the cleandirs on do_fetch was destroying
any sysroot setup by the extend_recipe_sysroot function.

Add code so that if the task do_fetch, we move the cleandirs to a separate function before
the extend_recipe_sysroot prefunc else we'd wipe out the sysroot we just created.

This allows fetcher do_populate_sysroot dependencies to work correctly again.

I did try various other approaches and a seperate function with cleandirs was the
cleanest way to add this without code duplication or too much complexity.

(From OE-Core rev: b32fbfc85b14059f0bfdeeffe2c52f8d3c20f276)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Yuanjie Huang
ca22ef73d0 binutils: Fix CVE-2017-6965 and CVE-2017-6966
Backport upstream commit to address vulnerabilities:

CVE: CVE-2017-6965
[BZ 21137] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21137

Fix readelf writing to illegal addresses whilst processing corrupt input
files containing symbol-difference relocations.

	PR binutils/21137
	* readelf.c (target_specific_reloc_handling): Add end parameter.
	Check for buffer overflow before writing relocated values.
	(apply_relocations): Pass end to target_specific_reloc_handling.

CVE: CVE-2017-6966
[BZ 21139] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21139

Fix read-after-free error in readelf when processing multiple, relocated
sections in an MSP430 binary.

	PR binutils/21139
	* readelf.c (target_specific_reloc_handling): Add num_syms
	parameter.  Check for symbol table overflow before accessing
	symbol value.  If reloc pointer is NULL, discard all saved state.
	(apply_relocations): Pass num_syms to target_specific_reloc_handling.
	Call target_specific_reloc_handling with a NULL reloc pointer
	after processing all of the relocs.

(From OE-Core rev: 8c52a530ba2beb438aa47956bcec3777a1eafe5f)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Alexander Kanavin
40bf913a72 libsolv: correctly attribute musl fixing patches
Also, they were previously squashed into a single patch; restore
the original two-patch arrangement.

As requested here:
http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135460.html

(From OE-Core rev: 378b333fb09d106fb04901f5a4362fc0eb076e82)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Li Zhou
a2d5c0b602 python2/3: Move config/Makefile from core package to dev package
Move config/Makefile in libdir from core package to dev package for
python, because it is only needed in development process.

(From OE-Core rev: 8b55d055f046677c18eeaefe3ca18869eedeb14d)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Alexander Kanavin
124b3ea99b openssl: fix the reference to native perl in ptests
This was causing a couple of ptest failures.

[YOCTO #10840]

(From OE-Core rev: 2e8e72790d3cc3236b6a785f3e04702e71e1ac3f)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Joshua Lock
1b4bd1b659 oeqa/sdk/cases/buildcpio: enable use of cached cpio from DL_DIR
All build project test cases will try to copy the requested source
artefacts from DL_DIR before fetching. This testcase is referencing bzipped
tarball whereas the recipe fetches a gzipped tarball.

Switch to fetching the gzipped tarball in the test case so that we're able
to use a cached tarball from DL_DIR

(From OE-Core rev: 27a5883e8ae01e69f5425efe8b035bea7087b2f9)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
David Reyna
ba1d8e3691 toaster: fix SDK artifact capture
Use the TaskArtifacts event to scan the SDK and ESDK manifests
to cleanly collect the respective artifact files.

The previous method was broken when the SDK file deployment moved
from the do_populate_sdk[_ext] tasks to their sstate tasks. That
method is disabled (but not yet removed) in preparation for the
rest of refactor work for the parent #10283 work.

[YOCTO #10850]

(From OE-Core rev: a6ec56d372f833be50f57bcb79b6ebe78bb93be0)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Andre McCurdy
31a293d0dc mtd-utils: refresh patches now merged upstream
Update Upstream-Status tags and apply 010-fix-rpmatch.patch
unconditionally, since it's merged unconditionally upstream.

(From OE-Core rev: 87dcaf2094baf9a7b7993c2ff1f60db73f4248f4)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Paul Eggleton
3df7ee4755 classes/buildhistory: save output file signatures for sstate tasks
Save a file per task listing sha256sums for each file staged, i.e.
the output of the task. Some caveats:

1) This only covers sstate tasks since it uses SSTATEPOSTUNPACKFUNCS,
   however those are generally the most interesting in terms of output
   anyway.
2) The signature is taken before applying any relocations, so any
   relocated files will actually have different signatures, but that's
   churn that you probably won't want to see here.
3) At the moment if you run the same build twice without sstate you will
   very likely see changes in the output for certain tasks due to things
   like timestamps being present in the binary output. Fixing that is
   a general Linux ecosystem problem - see this page for our efforts to
   resolve it on our side:
     https://wiki.yoctoproject.org/wiki/Reproducible_Builds

NOTE: you need to set your BUILDHISTORY_FEATURES value to include
"task" to enable collection of these signatures as it is is disabled by
default.

(From OE-Core rev: ca5d1273432e20059ab66d721a9eb314a54e81e7)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Paul Eggleton
54426c3a3b classes/uninative: set SSTATEPOSTUNPACKFUNCS[vardepvalueexclude] properly
Append to the value with appendVarFlag() instead of setting it outright,
so that we can also append to it in other places. Accordingly, this
varflag is pipe-separated (since we want to be able to exclude any
string fragment, in this case including the leading space), thus put a
leading pipe character to play nicely with any existing value.

(From OE-Core rev: a147838c3dfd4c53084a19b052b8d4e183293412)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Paul Eggleton
1f19d9dfe5 buildhistory-diff: add option to compare actual signature differences
Use the code underpinning bitbake-diffsigs to add an option to
buildhistory-diff to determine and display the differences between the
actual signature inputs, with a twist - we collapse identical
changes across different tasks, showing only the most recent task to
have that difference, meaning that there's less noise to wade through
when you just want to know what changed in order to cause some
rebuilding you're seeing.

(From OE-Core rev: 86cb4b01f2020553902554e512c02147eb4e0f51)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Paul Eggleton
9049c09793 buildhistory-diff: add option to compare task signature list
Having added writing out of the task signature list to buildhistory
(when BUILDHISTORY_FEATURES includes "task"), we now need a way to
compare the list. This just shows which tasks have been added / changed
signature / removed.

(From OE-Core rev: 63bd7e9f780a98dda458d612877495756bcc5463)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Paul Eggleton
6774995322 classes/buildhistory: write out task signatures on every build
If we want to determine what changed since the last build, one angle
from which to look at it is to check the signatures. However, if we
don't actually have the signatures from the last build we don't have
anywhere to start. Save the signatures on each build in order to give us
the starting point.

NOTE: you need to set your BUILDHISTORY_FEATURES value to include
"task" to enable collection of these signatures as it is is disabled by
default.

(From OE-Core rev: 11f68f65c46c5bc26ddeeade3021e83b3a7f895a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Paul Eggleton
313e551b55 buildhistory-diff: operate from buildhistory directory
If the cwd is named "buildhistory" and the user hasn't specified an
alternative path on the command line, then assume that the current
directory is the buildhistory directory. This makes it easier to run
buildhistory-diff and also interact with the buildhistory git repository
as you no longer have to jump into the buildhistory directory and up to
the parent again when doing so.

(From OE-Core rev: e4ccec2e4c2f521a2bb473083b42aefd494eea23)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Khem Raj
069c46922e musl: Upgrade to latest tip
* 54807d47 aarch64: add single instruction math functions
* b6e1fe0d fix strptime output for %C without %y
* 834ef7af fix processing of strptime %p format
* 85dfab7e fix off-by-one in strptime %j
* 9571c531 regex: fix newline matching with negated brackets
* e6917ece increase limit on locale name length from 15 to 23 bytes
* e4fc9ad7 search locale name variants for gettext translations
* 16319a5d make setlocale return a single name for LC_ALL if all categories match
* 0c53178e fix dlopen/dlsym regression opening libs already loaded at startup
* dbff2bb8 fix POSIX-format TZ dst transition times for southern hemisphere
* 74bca42e s390x: fix fpreg_t and remove unused per_struct
* a393d5cc precalculate gnu hash rather than doing it lazily in find_sym inner loop
* 8cba1dc4 fix threshold constants in j0f, y0f, j1f, y1f

(From OE-Core rev: 340b3fa6be034bf6a4cd9b2d1ad4788668fabb5b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Choong YinThong
e1eea200b8 logrotate: replace fedorahosted.org SRC_URI with github.com source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to github.com.
Update the ${PN} to ${BPN} in order to pass the autobuilder
mulitlib enable configuration.

[YOCTO #11226]

(From OE-Core rev: 73a358bdef99771b493fefb5114a936138cb78ce)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Patrick Ohly
874a46b6a7 buildhistory.bbclass: do not influence sstate of do_rootfs
Enabling or disabling buildhistory caused a rebuild of images, which
is undesirable. For example, it prevented image reuse from a main
build with buildhistory in a following oe-selftest where buildhistory
must be disabled.

The reason are the additional ROOTFS_POSTUNINSTALL_COMMAND and
ROOTFS_POSTUNINSTALL_COMMAND entries. Those need to be excluded both
via vardepvalueexclude and vardepsexclude.

(From OE-Core rev: e4c28ea05ef4514deb3d19e8e33f81d352712455)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Ian.Arkver
ae65b95354 package_manager.py: Split feed_archs for RPM repo URIs
By default the feed_archs variable is split into single characters
resulting in very many broken short repo_uris. Add a split() to
split the string into words first.

(From OE-Core rev: 7bd6a4d56c08bf7f9ced7c07327e6163216fee08)

Signed-off-by: Ian.Arkver <ian.arkver.dev@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Saul Wold
aa524152d8 gnu-efi: copy header files for x32 build
Gnu-efi needs to be build for 64bit since it is a boot time tool. It
needs these 2 headers to be in 64 bit versions, we can use the existing
32bit ones as there is not really any difference.

[YOCTO #11051]

(From OE-Core rev: 3398552663e1e18aaf352d682a77a8ad3af94e5a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Juro Bystricky
34db499e6b classutils.py: deterministic sorting
The method "prioritized" returns a list sorted by the value
of the "priority" field, in descending order. However, if several
list items have the same priority, the ordering of those items
within the priority-sorted list becomes random. As a consequence,
we may end up with a non-deterministic oe-terminal spawning, as several
terminals have the same priority. So running commands such as

$ bitbake xxx -cdevshell
$ bitbake yyy -cmenuconfig

may spawn a different terminal each time, for example sometimes Gnome
and sometimes Konsole as hey have the same priority.
Rather than modifying the priorities so they all differ, we sub-sort
the list based on (terminal) names.
This way we achieve a deterministic outcome.

[YOCTO#10938]

(From OE-Core rev: 82ae62f28dd2d5fb2fb261478ac6161315ac6c38)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:17 +01:00
Kevin Hao
a4cca6a131 meta-yocto-bsp: bump to the latest linux stable kernel for the non-x86 BSPs
Bump to the latest stable kernel for 4.4, 4,9 and 4.10.

(From meta-yocto rev: ee6e8f2926a7e2bd02b6b7991ba30ea6e6c9f2f2)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:06:25 +01:00
Kevin Hao
e7434c17b4 meta-yocto-bsp: workaround the X malfunction on beaglebone
After the change in kernel commit a291b6b3d287 ("ARM: dts:
am335x-boneblack: Add blue-and-red-wiring -property to LCDC node"),
the pixel format we support for 32bit bpp has been changed from
XRGB8888 to XBGR8888. But the fbdev created by modesetting driver use
the XRGB8888 format by default, this causes the X malfunction. There is
no easy way to adjust the pixel format of the fbdev created by the
modesetting driver. So we create a xorg.conf to use the 16bit bpp to
work around this issue.

[YOCTO #11267]

(From meta-yocto rev: 1ef8a9584298a8745a28c0c92fa3ecbf92ffe494)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:06:25 +01:00
David Reyna
b06f7cbb94 bitbake: toaster: fix SDK artifact capture
Use the TaskArtifacts event to scan the SDK and ESDK manifests
to cleanly collect the respective artifact files.

The previous method was broken when the SDK file deployment moved
from the do_populate_sdk[_ext] tasks to their sstate tasks. That
method is disabled (but not yet removed) in preparation for the
rest of refactor work for the parent #10283 work.

[YOCTO #10850]

(Bitbake rev: 1360d7b847cc01031edb2f4b289fac9560d72fa7)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:05:09 +01:00
Paul Eggleton
f187553b6d bitbake: bitbake-diffsigs: fix traceback with no arguments
In the move over to argparse we've made the two signature file arguments
optional and thus if -t is not in use we need to explicitly check if at
least one signature file has been specified - and if not, show an error
and the command-line help.

(Bitbake rev: 9011366689b26305281fcb2d412dcacece917e18)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:05:09 +01:00
Markus Lehtonen
fc6370626e bitbake: cache: prevent division-by-zero in load_cahefile()
[YOCTO 11315]

(Bitbake rev: 227c5acd4b40154bc61202e7bb67a13818a7d727)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:05:09 +01:00
David Reyna
2a40a0587e bitbake: toaster: fix add layer button for Machines
Fix a missing close quote in the layer add button, and
use the layer index for the xhr_layer call.

[YOCTO #11213]

(Bitbake rev: 54d61e7c64c97799de85b3563119f0f5d051675e)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:05:09 +01:00
David Reyna
d8be835e28 bitbake: toaster: Toaster filters are broken
A syntax fix inadvertantly broke the Toaster filter feature.

[YOCTO #11317]

(Bitbake rev: 29c9fa31d0f03553e24391568d2a5cb588595420)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:05:09 +01:00
Richard Purdie
0793c758b1 Revert "staging: Fix sysroot problem with populate_sysroot dependencies on do_fetch"
There seems to be an issue with the patch, revert for now.

This reverts commit cd5e0a32184d98beb8d81e6b5527166d3ca4fb3c.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 00:57:03 +01:00
Richard Purdie
177d4be3c1 staging: Fix sysroot problem with populate_sysroot dependencies on do_fetch
Dependencies on svn:// urls were failing as the cleandirs on do_fetch was destroying
any sysroot setup by the extend_recipe_sysroot function.

Add code so that if the task do_fetch, we move the cleandirs to the extend_recipe_sysroot
task else we'd wipe out the sysroot we just created.

This allows fetcher do_populate_sysroot dependencies to work correctly again.

(From OE-Core rev: cd5e0a32184d98beb8d81e6b5527166d3ca4fb3c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Richard Purdie
684eefd7a3 scripts: Drop cleanup-workdir
This script appears broken and is actively breaking build directories.
For example, binutils-cross-i586 gets run do_fetch to do_populate_sysroot by:

$ oe-selftest -r devtool.DevtoolTests.test_devtool_virtual_kernel_modify

then:

$ oe-selftest -r oescripts.BuildhistoryDiffTests.test_buildhistory_diff

wipes out the contents of tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/
but does not wipe out the corresponding stamps, then:

$ oe-selftest -r runtime-test.Postinst.test_postinst_rootfs_and_boot

needs binutils-cross-i586:do_populate_lic and if and only if this is
unavailable from sstate, it fails since it thinks the source is already
unpacked when it isn't resulting in:

WARNING: binutils-cross-i586-2.28-r0 do_populate_lic: Could not copy license file /home/pokybuild/yocto-autobuilder/yocto-worker/nigh
tly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/git/COPYING3.LIB to /home/pokybuild/yocto-autobuilder/yocto
-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/license-destdir/binutils-cross-i586/COPYING3.LI
B: [Errno 2] No such file or directory: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-l
inux/binutils-cross-i586/2.28-r0/git/COPYING3.LIB'
ERROR: binutils-cross-i586-2.28-r0 do_populate_lic: QA Issue: binutils-cross-i586: LIC_FILES_CHKSUM points to an invalid file: /home/
pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/git/COPYING3 [license-checksum]

and similar errors.

Its safer for users to wipe tmp than try and maintain scripts which try
to remove pieces of tmp and get it wrong so remove the script.

(From OE-Core rev: 809b23c829f352c0eae455ea89f53e2a9ee87f06)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Richard Purdie
503009b831 oeqa/selftest: Don't use cleanup-workdir
cleanup-workdir isn't a partcularly good way to attempt to cleanup after
tests and in some cases is actively breaking the workdir. Whilst this is
a bug in cleanup-workdir, I'd prefer it didn't break tests, particularly
when as far as I can see, these calls are "belt and braces" and don't appear
to serve a specific purpose. If this introduces bugs, we should fix this
bugs.

For the purposes of history, binutils-cross-i586 gets run do_fetch to
do_populate_sysroot by:

$ oe-selftest -r devtool.DevtoolTests.test_devtool_virtual_kernel_modify

then:

$ oe-selftest -r oescripts.BuildhistoryDiffTests.test_buildhistory_diff

wipes out the contents of tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/
but does not wipe out the corresponding stamps, then:

$ oe-selftest -r runtime-test.Postinst.test_postinst_rootfs_and_boot

needs binutils-cross-i586:do_populate_lic and if and only if this is
unavailable from sstate, it fails since it thinks the source is already
unpacked when it isn't resulting in:

WARNING: binutils-cross-i586-2.28-r0 do_populate_lic: Could not copy license file /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/git/COPYING3.LIB to /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/license-destdir/binutils-cross-i586/COPYING3.LIB: [Errno 2] No such file or directory: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/git/COPYING3.LIB'
ERROR: binutils-cross-i586-2.28-r0 do_populate_lic: QA Issue: binutils-cross-i586: LIC_FILES_CHKSUM points to an invalid file: /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/x86_64-linux/binutils-cross-i586/2.28-r0/git/COPYING3 [license-checksum]

and similar errors.

(From OE-Core rev: a66857096df3f68d38271b3a6792150f009a54b1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Dmitry Rozhkov
0e138bf56d python-pycurl: create python3-pycurl recipe
The python-pycurl recipe can be used with python2 only even
though python3 is officially supported by upstream.

Create python3-pycurl recipe enabling the pycurl module for
python3.

(From OE-Core rev: 6cb9c0a4e75c647b38c81d2d7217b54b2fdfd972)

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Markus Lehtonen
dff701ffd4 scripts/oe-build-perf-report: improve guessing of args
Search remote branches, too, when finding the latest commit.

(From OE-Core rev: 7b502702be5d484c6f1f903426ba63cf04f8ca4a)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Markus Lehtonen
182dd45f1f oe-build-perf-report-email.py: use proper fallback email address
Use properly formatted fallback email address instead of just the
username.

(From OE-Core rev: 5e07504d7a74f0641e2a374b9d12590ce9c9cc89)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Markus Lehtonen
60658499c2 build-perf-test-wrapper.sh: support extra args for email script
Make it possible to provide (extra) command line arguments to the
oe-build-perf-test-email script via a new environment variable
OE_BUILD_PERF_REPORT_EMAIL_EXTRA_ARGS.

(From OE-Core rev: 9cdd4ea5e006fe326bdf39ea437b9ba61a66b778)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Richard Purdie
343cc9646d uninative-flags.inc: Build binutils-native as pie
Some distros (ubuntu 16.10, debian-testing) default to gcc configured with
--enable-default-pie (see gcc -v). This breaks e.g. prelink-native on a pie
default system if binutils-native was built on a system which is not pie default
We therefore enable pie unconditionally for native recipes where static libs are
used such as libiberty from binutils, for now, until our minimum distro set is
all default pie.

(From OE-Core rev: 80b450cca746f068dd63e4546fa4c1eef2d86a0d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Richard Purdie
dc52b27f4c ncurses: Drop incorrect option
The --disable-static option doesn't exist in ncurses. Its equivalent is
--without-normal so remove the option which does nothing.

(From OE-Core rev: 974ddd2f99be04f44978c1bce054ed75c9367631)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Richard Purdie
bdc3ba2eb6 no-static-libs: Add entry for ncurses
Yes, the option to disable static libraries in boost really is
"--without-normal". Add this for ncurses and its variants.

(From OE-Core rev: 6b386e444e494b852b59a9f9e80426d564382139)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Richard Purdie
90c1bb7569 selftest/sstatetests: Replace glibc-initial with linux-libc-headers
The intent in these tests was to find something early in the bootstrap
process to run tests against which didn't require long build times.
This breaks with the removal of the glibc-initial do_build target.
Replacing it with linux-libc-headers seems like a good choice
and simplifies the conditionals too.

(From OE-Core rev: c37d610272f9d0a506334ff9f724c025acace137)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Ming Liu
863b6d4f80 cross-canadian.bbclass: override TARGET_* flags
Some TARGET_* flags are being exported in bitbake.conf currently, so
they are impacting all the tasks of a cross-canadian recipe even they
are not in use at all.

This can lead a lot of churn when the cross-canadian sysroot are shared
by machines while they have defined different TARGET_* flags.

Fix it by overriding with BUILDSDK_* flags.

(From OE-Core rev: 767335c92b7cc657a008722a908380a3c89c3c66)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Ming Liu
e378c0ee4b nativesdk.bbclass: override TARGET_* flags
Some TARGET_* flags are being exported in bitbake.conf currently, so
they are impacting all the tasks of a nativesdk recipe even they are
not in use at all.

This can lead a lot of churn when the nativesdk sysroot are shared by
machines while they have defined different TARGET_* flags.

Fix it by overriding with BUILDSDK_* flags.

(From OE-Core rev: 85b69a5ec9ba9ea9ebdcd8ac18e1e147ddb1ff33)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Ming Liu
0ab2c6e82d crosssdk.bbclass: override TARGET_* flags
Some TARGET_* flags are being exported in bitbake.conf currently, so
they are impacting all the tasks of a crosssdk recipe even they are
not in use at all.

This can lead a lot of churn when the crosssdk sysroot are shared by
machines while they have defined different TARGET_* flags.

Fix it by overriding with BUILD_* flags.

(From OE-Core rev: 3facbe700a2f28a11620c4954686ed5d5e47a3d9)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Ming Liu
b9f9bb443b cross.bbclass: override TARGET_* flags
Some TARGET_* flags are being exported in bitbake.conf currently, so
they are impacting all the tasks of a cross recipe even they are not
in use at all.

This can lead a lot of churn when the cross sysroot are shared by
machines while they have defined different TARGET_* flags.

And sometimes it even causes "Taskhash mismatch" errors.

Fix it by overriding with BUILD_* flags.

(From OE-Core rev: 55c83cb239df5faf5e2143fffca47f2f16931cb3)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Paul Eggleton
23095a6b01 lib/oe/sstatesig: avoid reporting duplicate siginfo files from sstate
In find_siginfo(), which is used by bitbake-diffsigs among other things,
avoid adding a siginfo file from the sstate-cache where we've already
collected a sigdata file from the stamps directory with the same hash.
This avoids the possibility that the top two files (as picked by default
using the bitbake-diffsigs -t option) are for the same signature and
thus the tool would report no differences. In order to do that, just use
the hashfiles dict that we already have - we just need to change the
code to populate that even if we're collecting matching files without
looking for a fixed set of hashes (i.e. taskhashlist isn't set).

This replaces previous code in bitbake-diffsigs that attempted to filter
these out with limited success.

(From OE-Core rev: 5b69eef40868180c59400624096d7ebbbbea446b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Paul Eggleton
27b7de94f0 lib/oe/sstatesig: fix finding native siginfo files in sstate-cache
When comparing signatures with bitbake-diffsigs -t or bitbake -S
printdiff, we use this find_siginfo() function implemented in this
module to find the siginfo/sigdata files corresponding to the tasks
we're looking for. However, native sstate files go into a
NATIVELSBSTRING subdirectory and there was no handling for this when
asking about native recipes.

I'm not even sure why we were walking SSTATE_DIR in order to find
this - we don't need to, we just need to run glob.glob() on the filespec
we calculate, which should be a little bit more efficient.

(From OE-Core rev: 8cb472e4ed25e56ec0d9cf6d8d101d1ab6687a5b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:44 +01:00
Martin Kelly
e340af0449 qemu: use python2.7 instead of python2
meta/conf/bitbake.conf puts python2.7 into the HOSTTOOLS variable but not
python2, so only python2.7 is guaranteed. In addition, on some distros -- such
as Amazon Linux -- /usr/bin/python2 doesn't exist but python2.7 does. So, use
python2.7 for the --python= argument in the qemu configure step.

(From OE-Core rev: 88dc8b532817f4779b35422a413d5c700c130a74)

Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Leonardo Sandoval
4d1b21fd6d selftest/recipetool: skip create_git in case x11 feature is not present
The unit test requires x11 as distro feature, otherwise it will fail
while building the test requirements.

[YOCTO #10903]

(From OE-Core rev: 2fe8f39b5f5e7390cc46f8cb47c2503b3c5f78e2)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Ed Bartosh
88cd926de2 qemux86*.conf: changed dependency task for syslinux
Changed dependency task for syslinux from do_build to
do_populate_sysroot as do_build dependency caused conflicts in
populating image recipe sysroot using conflicting recipes. This
makes do_image_wic task to fail with FileExistsError trying to
copy the same file from two conflicting recipes.

This should also speed up image creation a bit as do_populate_sysroot
task is faster than do_build.

[YOCTO #11295]

(From OE-Core rev: b7bb02901b7002641a8e8cc3fc0b6ec31e5a21f7)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Joshua Lock
f70179e280 gcc-6.3: backport fix of check for empty string in ubsan.c
Building gcc-cross-initial with GCC7 on the host fails due to the
comparison of a pointer to an integer in ubsan_use_new_style_p, which
is forbidden by ISO C++:

ubsan.c:1474:23: error: ISO C++ forbids comparison between pointer and
integer [-fpermissive]
       || xloc.file == '\0' || xloc.file[0] == '\xff'

Backport the fix from upstream GCC to enable the build with GCC 7

(From OE-Core rev: 7a7fcbab0365b9501c737dbc02715be14dda72a3)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Joshua Lock
5784961762 elfutils: fix building elfutils-native with GCC7
Backport a fix from upstream for a -Wformat-truncation=2 warning
and implement a simple fix for a -Wimplicit-fallthrough warning.

(From OE-Core rev: aaf4c4f3d09ac3897205417eb15e19d54e0c0d05)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Richard Purdie
34313c4047 sstate: Skip glibc do_stash_locale and gcc do_gcc_stash_builddir tasks
We never need these tasks as dependencies of other sstate tasks since
they're only ever needed to build artefacts so we can always skip them
and save some time/space.

(From OE-Core rev: 246df3df4b7da4b75de0745938438124c2b1d4a5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Juro Bystricky
950be7ae8d license.bbclass: improve reproducibility
Two identical builds can end up having deploy/licenses folders
that differ. This is observed in cases where there are several
different license files of the same name in different folders,
i.e. "COPYING". In those case we have to differentiate the files
somehow and we do it via file expensions such as COPYING.0, COPYING.1.
However, which file will get which extension is presently random.
This means, for example, that COPYING.0 in one build is the same
as COPYING.1 in the other (and vice versa).
Although there is mothing wrong with this, for the sake of binary
reproducibility it is preferable to have a deterministic outcome.

(From OE-Core rev: 007ebc84979b1bc8b7520097793c7ab6d646c243)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Leonardo Sandoval
f91aedf6b5 selftest/wic: skip wic unit tests in case NLS is disable
WIC test case requires wic-tools which in turn depends on intltool-native and
gettext-native. However, if NLS is disable, the gettext-minimal-native is used instead
of gettext-native causing a failure on intltool-native as seen below:

  checking for msgfmt... no
  checking for gmsgfmt... no
  configure: error: GNU gettext tools not found; required for intltool
  ERROR: Function failed: do_configure (log file is located at /home/lsandov1/poky/build/tmp/work/i586-poky-linux-musl/systemd-boot/232-r0/temp/log.do_configure.7518)
  ERROR: Task (/home/lsandov1/poky/meta/recipes-bsp/systemd-boot/systemd-boot_232.bb:do_configure) failed with exit code '1'
  NOTE: Tasks Summary: Attempted 609 tasks of which 604 didn't need to be rerun and 1 failed.

[YOCTO #10902]

(From OE-Core rev: ccd2faca99331e010badbb78d42b0ee644ca1a0a)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Dmitry Rozhkov
e9cf698d09 python3: fix run-time deps for core python3 libraries
The http.server module from python3-netclient imports the html module
which is in python3-html. Also xmlrpc.server imports pydoc which is a
part of python3-pydoc. But those run-time dependencies are missing
from python3-netclient and python3-xmlrpc respectively.

Add the missing run-time dependencies.

(From OE-Core rev: 8e30b726c44f873e5fd9d3f36c3464a29b97abd8)

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Martin Jansa
57bbedcfeb eudev: set LGPL-2.1+ for libudev package
(From OE-Core rev: d9430de1b8b40b5f6cba74de20ea2bf69667e64c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
2752d71e8d kmod: set ac_cv_path_DOLT_BASH to /usr/bin/env bash
The shebang's length is usually 128 as defined in /usr/include/linux/binfmts.h:
  #define BINPRM_BUF_SIZE 128

So there would be errors when /path/to/hosttools/bash is longer than 128:

/bin/sh: ./doltcompile: [snip]: bad interpreter: No such file or directory

Set ac_cv_path_DOLT_BASH to "/usr/bin/env bash" to fix the problem.

(From OE-Core rev: fd2758ed26e8ed6d76c66af0275c4aafbec758ac)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
607bc59588 autogen-native: fix POSIX_SHELL and perl
The shebang's length is usually 128 as defined in /usr/include/linux/binfmts.h:
  #define BINPRM_BUF_SIZE 128

So there would be errors when /path/to/hosttools/perl is longer than 128.

This patch fixes the problem when POSIX_SHELL and perl are used as the interpreters.

(From OE-Core rev: 055838283349530e6f60f4169d9190aa5b59b190)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
7daf525d37 guile: do_configure: fix "Argument list too long"
Fixed when len(TMPDIR) =  410:
Can't exec "/bin/sh": Argument list too long at /usr/lib/perl/5.18/IO/File.pm line 65.

This is becuase it has a lot of m4 files, use relative path for them
can fix the problem.

(From OE-Core rev: 123df94f511cbaad088b25bbbae1f1137f957c7e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
8d26272740 m4: do_configure: fix "Argument list too long"
Fixed when len(TMPDIR) =  410:
Can't exec "/bin/sh": Argument list too long at /usr/lib/perl/5.18/IO/File.pm line 65.

This is becuase it has a lot of m4 files, use relative path for them
can fix the problem.

(From OE-Core rev: 7e8fece3a09bed18bc72c529b8b471ccbc144bf5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
af440a00c5 valgrind: set ac_cv_path_PERL to /usr/bin/env perl
The shebang's max length is usually 128 as defined in
/usr/include/linux/binfmts.h:
  #define BINPRM_BUF_SIZE 128

So there would be errors when /path/to/hosttools/perl is longer than 128.

Set ac_cv_path_PERL to "/usr/bin/env perl" to fix the problem.

(From OE-Core rev: e828223a8238d85d47e9314e1dcc30b83b7ba3da)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
7b0a757413 mc: replace "perl -w" with "use warnings"
The shebang's max length is usually 128 as defined in
/usr/include/linux/binfmts.h:
  #define BINPRM_BUF_SIZE 128

There would be errors when @PERL@ (hostools/perl) is longer than 128,
use '/usr/bin/env perl' can fix the problem, but '/usr/bin/env perl -w'
doesn't work:

/usr/bin/env: perl -w: No such file or directory

So replace "perl -w" with "use warnings" to make it work.

(From OE-Core rev: 85decf26fe580acdf072baf561418bf73b7bfca4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Robert Yang
9356d02da0 groff: replace "perl -w" with "use warnings"
The shebang's max length is usually 128 as defined in
/usr/include/linux/binfmts.h:
  #define BINPRM_BUF_SIZE 128

There would be errors when @PERL@ (hostools/perl) is longer than 128,
use '/usr/bin/env perl' can fix the problem, but '/usr/bin/env perl -w'
doesn't work:

/usr/bin/env: perl -w: No such file or directory

So replace "perl -w" with "use warnings" to make it work.

(From OE-Core rev: f3408bcf9d2710b07f5825683931e28571de130c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Richard Purdie
75001927cd glibc/gcc/libgcc-initial: Delete do_build tasks for -initial
We've had a lot of users running into RSS issues where -initial recipes
were being installed into sysroots alongside their counterparts and
causing overlapping files issues.

In general this was through do_build dependencies. Such dependencies are
bad in general and I'd encourage people to compare the taskgraphs with
using a more specific dependency like do_populate_sysroot, do_image_complete
or do_deploy as often the more specific dependency will result in a much
cleaner build.

Regardless, we don't want -initial dependencies getting in the way like
this and there are cases a do_build dependency could make sense.

Deleting the do_build task in these cases makes sense since this is not
a build "endpoint" we'd ever want a user to use, its a behind the scenes
piece of bootstrappping.

Unfortunately to make this work, we need a newer bitbake version which
has a bitbake bug fixed.

(From OE-Core rev: 04c053d42ab05f77b2d1ca93a0fabae44073d57e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Richard Purdie
66bd8b8247 sanity: Require bitbake 1.33.4
We need the bitbake bug in recrdeptask handling of missing tasks fixed in
order to apply a fix for OE-Core.

(From OE-Core rev: ef16288f3e1e801e5c763ed49fad8eb0c885183e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:43 +01:00
Peter Kjellerstedt
16b822509a base-files: profile: Do not assume that the tty command exists
This avoids the following error when logging in to a host that does
not have the tty command:

-sh: tty: not found

Reported-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>
(From OE-Core rev: e77cdb761169e404556487ac650dc562000da406)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Peter Kjellerstedt
227ec4809d base-files: profile: Whitespace clean up
(From OE-Core rev: 479a6202236832367bb48e4e089a6d99818685e5)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Martin Balik
104dac10f2 busybox: Security fix BUG9071
(From OE-Core rev: 0354a9b7adad27b012bcd6bb6cab54dfe0297bcd)

Signed-off-by: Martin Balik <martin.balik@siemens.com>
Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Catalin Enache
6df3fde8e9 ghostscript: CVE-2017-7207
The mem_get_bits_rectangle function in Artifex Software, Inc.
Ghostscript 9.20 allows remote attackers to cause a denial
of service (NULL pointer dereference) via a crafted PostScript
document.

Reference:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-7207

Upstream patch:
http://git.ghostscript.com/?p=ghostpdl.git;h=309eca4e0a31ea70dcc844812691439312dad091

(From OE-Core rev: 0f22a27c2abd2f2dd9119681f139dd85dcb6479d)

Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
David Vincent
77de4e58bf package.bbclass: add CONFFILES to pkgdata
Emit CONFFILES variable in pkgdata, or else the get_conffiles function
will return 'None' for some packages instead of the expected value. This
is especially true for optional module packages.

(From OE-Core rev: ee44dabc065912ac17f1ee5f06f12695c90b5482)

Signed-off-by: David Vincent <freesilicon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Mariano Lopez
78971cee15 package_ipk.bbclass: Replace empty lines in DESCRIPTION with '.'
opkg uses empty lines as separator for next package and if an ipk file was
packaged with empty lines in DESCRIPTION opkg won't be able to handle such ipk
file, this happens at execution time.

This commit will replace empty lines in DESCRIPTION with a '.' when generating
an ipk package to avoid this issue.

[YOCTO #10677]

(From OE-Core rev: 3e678d9b6a9eaeed76ce538d7f6ecf9f423864bc)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Patrick Ohly
7d4fa58c5c yocto-compat-layer: limit report of signature changes
Typically a single change cascades through the entire task dependency
chain. Developers had to figure that out themselves, based on hard to
read and interpret output (not sorted, no indention, no explanations):

   $ yocto-compat-layer.py -n meta-xxxx
   ...
   AssertionError: True is not false : Layer meta-xxxx changed signatures.
   webkitgtk:do_install changed fe2edc9082bc0da98f9cb1391c52f565 -> b3a44684c5cd9aacd3f7c6ed88eefab5
   gstreamer1.0-plugins-good:do_configure changed 3b2f8211be3fe08422bf6087f3af16d1 -> 7d80e42fa1f4f01ff4dfe2ea4477d382
   pulseaudio:do_package_qa changed 5d0a58ada66ff17f5576555302ac319a -> 0e13bcb96143d1ae54c451bc3de0aa30
   epiphany:do_prepare_recipe_sysroot changed 29e1b277dbcb005bd54950594c50d91b -> d3c45527b37677a0668ce483c6db3052
   ...
   gst-player:do_packagedata changed 9ce6efdd357dd74919bc4957458b1e95 -> d0c083ce629f37adfc9c4ba9eff81f83
   gstreamer1.0-plugins-base:do_install changed 1161cd867d15bea63e5dd5d9abf0519c -> 5bf2b652a2d77fee3eedb35af2f201a0
   gstreamer1.0-rtsp-server:do_packagedata changed 6781dc3070f80b843ed1970d74dd323e -> 454620c2e3b9fea87e525d14b6ed0344
   alsa-plugins:do_packagedata changed 1808c3f737cb805b169d004e948ea19c -> 480124b7fa5eab1f73bf96440d725231

Now the tool automates the problem analysis: it retrieves the depgraph
using the tinfoil API and only reports those tasks with modified
signatures whose dependencies have not changed, i.e. those tasks which
definitely introduce a change.

>From the previous example, that just leaves two tasks that need to be
checked:

   AssertionError: False is not true : Layer meta-xxxx changed 120 signatures, initial differences (first hash without, second with layer):
      gstreamer1.0-plugins-base:do_fetch: 76973f19f2e30d282152bdd7e4efe5bb -> e6e7c6fa9f2bd59d7d8d107f7c6ca1ac
      pulseaudio:do_install: 668eb1e30af129df9806b0aa0d7c10cd -> 1196bdb88eef56eeee4613bb06b9387e

This pruning might be a bit too aggressive in the sense that tasks
which inherit a change and then add more changes themselves won't be
reported initially. They will be found when fixing the reported tasks
and re-running the check.

For a developer it seems better to have something listed which
definitely is a problem and needs fixing instead of everything,
including the tasks which don't need fixes.

(From OE-Core rev: 7ab0e09de75bfd7e7498bfa72d1f2f5d02a96747)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Patrick Ohly
efd3b0ee30 yocto-compat-layer: fix also other command invocations
In commit 5b9ac62ab535d, one place was fixed where a command was
invoked such that failures caused double stack traces and stderr was
lost. The same problem also occurs elsewhere, triggered for example by
a layer with parsing problems.

Now a new utility method is used instead of repeating the code.

(From OE-Core rev: b6c72c0d169473e2626938be2ee59f850624612e)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Markus Lehtonen
f81a532dd6 oe-build-perf-report-email.py: fix one file path
Sending report email was not working correctly if the script was given
an html report path that contained directory components.

(From OE-Core rev: 1da641661bb5963fcbd7ac2c20bc997c3eae6f18)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Andrej Valek
36b2865318 busybox: Security fix CVE-2016-6301
ntpd: NTP server denial of service flaw

CVE: CVE-2016-6301
(From OE-Core rev: 301dc9df16cce1f4649f90af47159bc21be0de59)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Robert Yang
74d7d12b37 runqemu: use realpath for imgdir
The DEPLOY_DIR_IMAGE maybe relative or absolute path since it can be
read from env vars, so use realpath for both imgdir and
DEPLOY_DIR_IMAGE when compare.

(From OE-Core rev: dad9f27278850d0d3818344fea877835632576cb)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Robert Yang
c70a74402f runqemu: fix 2 typos
* "is it" -> "it is"
* Remove "<image>.qemuboot.conf =" in the error message which looked strange.

(From OE-Core rev: a6152dd9f6f4e17855548ceffa8d864855a67f5c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Paul Eggleton
b372e85d9b bitbake: bitbake-diffsigs: colourise output
If the output is a TTY, add colour to the output in order to make it
easier to read. At the moment this is fairly basic, just add colour to
the "titles" of each change and to the diff output.

I tried to introduce this without changing the code too much - rather
than moving everything over to the new python formatting style, I've
introduced a color_format() function which takes care of the colour
formatting, either accepting additional format arguments or
alternatively leaving the caller to use the old-style formatting (%) to
insert values.

(Bitbake rev: 04a023c8fdea1e1812fcdcaf00345aab59f9abe1)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
5f7bf1f66d bitbake: lib/bb/siggen: show word-diff for single-line values containing spaces
If a variable value has changed and either the new or old value contains
spaces, a word diff should be appropriate and may be a bit more readable.
Import the "simplediff" module and use it to show a word diff (in the
style of GNU wdiff and git diff --word-diff).

Also use a similar style diff to show changes in the runtaskhashes list.
I didn't use an actual word-diff here since it's a little different - we
can be sure that the list is a list and not simply a free-format string.

(Bitbake rev: 20db6b6553c80e18afc4f43dc2495435f7477822)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
5d8b89fc0b bitbake: lib/bb/siggen: add collapsed mode to compare_sigfiles()
If we just want to drill down to the actual differences then we don't
need to see certain things in the output, e.g. basehash changing or the
signature of dependent tasks. This will be used for comparing signatures
within buildhistory-diff in OE-Core; the default mode as used by
bitbake-diffsigs and bitbake -S printdiff remains unchanged for the
moment.

(Bitbake rev: 6543a59b1ebd3194a7c6421cffc66ebe31a67c62)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
f79a969c3a bitbake: bitbake-diffsigs: add an option to find and compare specific signatures
With the -t option which recurses to find the ultimate cause of a
signature change, it was hardcoded to take the last two executions of
the specified task. On the other hand, if you have two specific task
hashes (say from bitbake output, or some other tool) then you'll want to
pick those, so provide an option to specify those as well. (Note, the
new -s option needs to be specified alongside -t rather than instead of
it.)

(Bitbake rev: d9813b1a4223cf8dc80cab90e467ddf4bf8d1078)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
e0eda80371 bitbake: bitbake-diffsigs: change to use argparse
Argparse is a bit easier to deal with than optparse, and since we're
about to add some options, migrate this script over.

(Bitbake rev: 7f130e0b5ce6cfc6b35176465f260092cd3b3d64)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
8c015e45ff bitbake: lib/bb/siggen: don't show unchanged runtaskdeps list
If the runtaskdeps list hasn't actually changed (but the signatures of
some of the tasks did) then it doesn't make sense to print out the old
and new lists as they are both the same and may be very long, e.g. for
do_rootfs in OE.

(Bitbake rev: cb170543605288b3e8badfac3a54c588f4c95413)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
445e622b23 bitbake: lib/bb/siggen: show a diff when dumping changes to multi-line values
When dumping changes to signatures e.g. output of bitbake -s printdiff,
if for example a function has changed, it's much more readable to see a
unified diff of the changes rather than just printing the old function
followed by the new function, so use difflib to do that.

Note: I elected to keep to one item in the returned list per change,
rather than one line per line of output, so that the caller can still
look at changes individually if needed. Thus I've added some handling to
bitbake-diffsigs to split the change into lines so that each line is
displayed indented.

(Bitbake rev: 4d254ae63a35231c98e3f73f669b040ed1144042)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
d88a4ade7e bitbake: bitbake-diffsigs: drop naive logic for removing duplicate files
This logic doesn't work in practice, certainly not with current versions
where sigdata files are preserved in the stamps directory and therefore
there will often be multiple sigdata files - you can now easily get
files for the same signature from sstate and the stamps directory with the
result that bitbake-diffsigs reports nothing has changed. Instead, let's
change the find_siginfo function in OE-Core to simply not return
duplicates so we don't have to filter them out here.

(Bitbake rev: f0d7ab259d8ef95643e7229474b7850608aa4426)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
8f6094135b bitbake: bitbake-diffsigs: properly report which signature is missing
If just one of the two signatures we want to compare aren't available,
report that one rather than misleadingly claiming both are missing.

(Bitbake rev: c87764b9147792a10efad3ed5378f36f0a055bc6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
f3b010b39a bitbake: lib/bb/siggen: add missing path separator to cleaned paths
Printing "pbzip2pbzip2_1.1.13.bb" is ugly, we need to add a separating
slash so that we get "pbzip2/pbzip2_1.1.13.bb" instead.

(Bitbake rev: 55cd4045a37afc954f4d5091f524756b266064fc)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
ef05969dc6 bitbake: bitbake-diffsigs: fix -t picking wrong files to compare
We weren't picking the right files to compare here - according to the
order in which the list is sorted (by mtime), we need to be taking the
last two items and not the first two.

(Bitbake rev: 99f49b56115b1f8d1a0a0b911da62ffd1f997b5f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
David Reyna
123ec6ebc2 bitbake: toaster:test:Create selenium tests for project dashboard page
Added 7 new testcases that verify the UI interface and elements of the project detail page.
This testcases can be found on testopia in the links:

Verifies that the project is created and that you get redirected to the configuration page
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1514

Verifies that the left side bar menu, all links are clickable and they show on the UI
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1515

Verifies that after creating a project the default project configuration is created
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1516

Verifies that the default machine is set, once creating the project
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1517

Verifies the built recipes information of the project detail page
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1518

Verifies the default release information of the project
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1519

Verifies that the default layers are assigned to the project
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=1520

Verifies that the links to the Configuration, Builds, Import layer and New Custom Image are present and work.

[YOCTO #9808]

(Bitbake rev: eaeddaf96efb8079b307652eac208f4ab5019ad4)

Signed-off-by: Libertad Cruz <libertad.cruz@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Belal, Awais
f45a5a5de8 bitbake: toaster: toastergui: implement machine name validation
Valid machine names cannot include spaces anywhere
in the name and doing so will result in a build failure.
This implements a mechanism to alert the user against
such a misconfiguration and does not allow input of
such machine names.

[YOCTO #8721]

(Bitbake rev: 6fb642935a3787659aa316ca906025d2d87964cf)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Richard Purdie
eb7430e5b9 bitbake: Bump version to 1.33.4
(Bitbake rev: fe5d8a0fdaec99721455dead626ecfb72bdeb616)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Richard Purdie
ee0ef7d13c bitbake: runqueue: Allow recrdeptask not to exist for all recipes
Currently if you specify a recrdeptask, it must exist for all recipes or
you get a python traceback. This is a bug and it should be possible to have
recipes which don't have the specified task.

As well as preventing such a traceback (which shouldn't happen, it should be
a user readable error), this allows us to fix issues in OE-Core which would
otherwise trigger the traceback.

(Bitbake rev: f93a77f2f188e18de9e3d812e86d77c2f3c71889)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:32 +01:00
Paul Eggleton
4c1f654311 poky-world-exclude.inc: add python-pyqt
python-pyqt in meta-qt4 is about to require sip 4.19 that only meta-oe
provides; as we only bring in meta-qt4 for LSB, there's no need to be
building this as part of world and it would fail without meta-oe anyway.

(From meta-yocto rev: 202598d670a1d335d2a8de7685244fa7f480bd26)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 17:03:28 +01:00
Joshua Lock
633ad6c9f4 oeqa/runtime/utils/targetbuildproject: use parent classes defaults tmpdir
Rather than hard-coding the tmpdir for TargetBuildProject to /tmp allow the
parent's default handling to define an appropriate tmpdir.

(From OE-Core rev: 901659a51cd53625a93f57a9c5865e90a07ec09d)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-06 10:13:39 +01:00
Joshua Lock
fa2e536c44 oeqa/utils/targetbuild: tmp dir improvements
Don't hard-code /tmp as the tmpdir, instead use WORKDIR as the tmpdir if the
instantiater doesn't specify a value.

(From OE-Core rev: c43c966e0ed4ed836bdf90b1d4c3f2f45426f1ec)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-06 10:13:39 +01:00
Joshua Lock
04cf8ad80e oeqa/utils/buildproject: create a more unique tmp dir
Rather than hardcoding /tmp as the default tmpdir make a more unique tmpdir
with tempfile.mkdtemp() when the caller doesn't specify a tmpdir value.

(From OE-Core rev: 9425c2658fea0b45468a04574cd77bffc6668a8d)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-06 10:13:39 +01:00
Ming Liu
3468b4d96c glibc: fix nativesdk ldd RTLDLIST
Override RTLDLIST for nativesdk, or else ldd would fail to run on
SDK targets.

(From OE-Core rev: 3a1cce659156ef2654a55a6e3c6922fa2dc780e4)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Jussi Kukkonen
a99bb57bba net-tools: Fix build with USE_NLS="no"
The configuration change was already done for -native but
we really want it when USE_NLS is set.

Fixes [YOCTO #11285].

(From OE-Core rev: 95d6910bb5d9331adb7a693fcb4f7b1271c68cc6)

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>
2017-04-05 23:22:13 +01:00
Andre McCurdy
3ed3ba16cb busybox.inc: drop comment explaining '-e MAKEFLAGS=' in EXTRA_OEMAKE
EXTRA_OEMAKE no longer contains '-e MAKEFLAGS=' so the comment
explaining that it needs to be removed / over-ridden is obsolete.

(From OE-Core rev: 19be2237798f51c01c1c21a68382d114a2f6ead2)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Paul Barker
6e5176cf90 ethtool: Switch to download mirror
The md5sum & sha256sum for ethtool-4.8.tar.gz have changed upstream :(

(From OE-Core rev: bb3a0bef3b7e012ba7ce6d31d0470d43e7a21077)

Signed-off-by: Paul Barker <pbarker@toganlabs.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Leonardo Sandoval
e3c3d09562 selftest/devtool: skip test in case of poky-tiny distro
The recipe being tested (devtoo-test-patch-gz) by devtool has dependencies (at
least libxres and virtual/libx11) that cannot be built with poky-tiny distro so
skip the test for this particular policy.

[YOCTO #10891]

(From OE-Core rev: 03751783cb063bc6a57cd19357bc1016bfa2a814)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Dmitry Rozhkov
79fcbb5157 libxml2: make dependencies on python conditional
The library libxml2 can provide its own bindings for python2 in addition
to the third party python-lxml and python3-lxml packages if this
functionality is enabled in PACKAGECONFIG.

But in case the functionality is disabled there's no need to depend
on python2.

Make the dependency on python2 enabled only if the python feature
is added to PACKAGECONFIG. Also add missing run-time dependency on make
to libxml2-ptest.

(From OE-Core rev: 3f1be2c3875fc112d9c67af16759091e007e5b99)

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Joshua Lock
89622db7c2 yocto-uninative: Update to the 1.6 release
This release includes fixes for Windows/Mingw support.

(From OE-Core rev: b5f471b74b2da533abfad2601b221fa806fcf3b2)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Philip Balister
90e9ccdf0a u-boot: Add bc-native to DEPENDS to fix u-boot/spl build.
(From OE-Core rev: 02a76f320d3cddbfaae2fc5bee7d3660d95e6b7a)

Signed-off-by: Philip Balister <philip@balister.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Ross Burton
d6b5be863c libjpeg-turbo: don't depend on NASM for non-x86 targets
NASM is a x86-specific assembler so it is only required when building for x86
targets.  Use x86-architecture and class-target overrides to depend on NASM, but
explicitly disable and don't depend on it for native as complications in the
native overrides meant NASM was enabled for x86-64 but disabled for x86 (this
will be investigated later).

Original patch by Tristan Van Berkom <tristan.vanberkom@codethink.co.uk>, more
work to solve selftest failures by Richard Purdie
<richard.purdie@linuxfoundation.org>.  I just wrote a nice commit message.

Also fix some missing whitespace in _appends.

[ YOCTO #11240 ]

(From OE-Core rev: 3b1871b7c6df66d3bf3453668f46566b8af3e6d9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Jussi Kukkonen
e908ffe3cd quilt: Fix paths for patch and perl
Currently some shebang lines end up as
    #! /usr/bin/env perl -w
env does not like the argument. Also the current sed to insert env
does not cover the copies ptests use. Fix these issues by:
 - using --with-perl to insert "env"
 - Replacing "-w" in shebang lines with a new "use warning;" line

Remove a EXTRA_OECONF_append_class_target from the native recipe.
Don't overwrite EXTRA_OECONF in native: the values should be correct
for native as well.

--with-patch is used within the gnu patch wrapper only: before this
commit the wrapper contained a (build host) path to native patch.

Also tweak one test so busybox mv output is accepted.

All ptests should now pass: Fixes [YOCTO #11221].

(From OE-Core rev: 4b667d268fe410a21cacaecd1b5e3bfbbe7d53d8)

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>
2017-04-05 23:22:13 +01:00
Chen Qi
9cacf8488c wic: improve error message
When using `wic create mkefidisk -e core-image-minimal', the following
error message appeared.

  Please bake it with 'bitbake parted-native' and try again.

However, following this command doesn't do any help. The same problem
still appeared.

The problem is that when we 'bitbake parted-native', it doesn't have
anything to do with core-image-minimal. And the required tool 'parted'
is not under core-image-minimal's recipe-sysroot-native directory.

Improve the error message so that following it could get things done.

(From OE-Core rev: f0425c0a0f1c98f65bf61fd9aa7e023ed41a35fa)

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>
2017-04-05 23:22:13 +01:00
Ed Bartosh
b5bc885ba7 Revert "filemap: remove FilemapSeek class"
FIEMAP API is not supported by tmpfs file system, but
SEEK_HOLE/SEEK_DATA is supported.

Returned back FilemapSeek class that implements support
of SEEK_HOLE/SEEK_DATA API to make sparse_copy API working
on tmpfs again.

This reverts commit 6b80c13f7a.

(From OE-Core rev: e75bd6a7dd5c1b4bad039c35cf4a2ffc2f77c60a)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
86eaa6d83f build-perf-test-wrapper.sh: support sending email reports
Add new '-E' command line option for sending an email report to
specified recipient.

(From OE-Core rev: 46e76ffd460933ab35da4cfd3509f7c5de5ecd93)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
7e7c31fd00 build-perf-test-wrapper.sh: support pushing to remote Git
Implement new '-P' option for spefifying a Git remote where to push
results after committing to a local Git repository.

(From OE-Core rev: d8e14df29d28bfe805dc746f43c9f3a7726e57ce)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
5576ce2de3 build-perf-test-wrapper.sh: correctly check test script exit status
Test of the exit code was accidentally moved to wrong place when
oe-git-archive was taken into use.

(From OE-Core rev: ed43b2dfe019f35086967a0c8dc605bc6629c75b)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
d3d24ef2f2 build-perf-test-wrapper.sh: make it possible to specify Git branch name
Support <branch>:<commit> format for the -c argument. This makes it
possible to test older commits of a certain branch (not just the tip of
it) so that the branch name will still be correctly recorded in the test
report data.

(From OE-Core rev: be3d1718a99e59e636f349586e0a64eb8e2824a4)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
04e31f33c8 scripts/oe-build-perf-report: fix typo
(From OE-Core rev: 0a05ccfeba2f185ef9ea78a23bc376d4b97ec547)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
df20260016 scripts/oe-build-perf-report: fix 'charts ready' console message
The javascript console log messages are used in scraping, when
converting an html test report to html email. Before this patch a
console message indicating that all charts have been drawn was not
correctly sent if the last test failed (or didn't have chart data for
some other reason) which, in turn, caused oe-build-perf-report-email.py
script to fail with a timeout.

(From OE-Core rev: 79b90ae02257002ea831a48f6798794b7711c1f8)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Markus Lehtonen
728c668473 scripts/oe-build-perf-report: better guessing of args
When getting info from the latest commit, don't search all refs but only
branches. We don't get correct data from refs/tags/* or refs/notest/*,
for example.

(From OE-Core rev: f84d0bd7deb4c19fdb1e821b3a50e8c8f54a731b)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Mark Hatle
6afe0e07ec yocto-compat-layer.py: Fix the signature validation
The initial signatures need to be collected -after- the dependency layers have
been added to the system.  Otherwise changes that happen due to dependencies,
outside of the layer being scanned, will show up as signature problems.

The add_layer function was split into two pieces so that we can process
the dependencies first, and then add the layer itself for the comparison.

(From OE-Core rev: 4eb0932e755b7cb582a8db811aeed1397ecb92cc)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Mark Hatle
d2d019a11b compatlayer/__init__.py: Allow add_layer to process recursive deps
When processing a layer for dependencies, you have to process the layer
itself, it's dependencies, the dependencies dependencies and so forth until
all items have been processed.

i.e.:  LayerA requires LayerB requires LayerC requires layerD

The end result should be LayerB, LayerC and LayerD are all dependencies of
LayerA.

(From OE-Core rev: 6e0a268b750fb6701604dd936cd2cf3b47a6e804)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Mark Hatle
efd07494c5 yocto-compat-layer.py: Add --dependency argument
When processing a large number of items, there are times that it would be
nice to be able to pass in a series of layers that can be used as dependencies
for the layer that is being scanned.  This avoids the significant overhead
of processing all of the layers to compatibility.

(From OE-Core rev: 57fc8a9771174b7d0533a42c045053adefa537a8)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Mark Hatle
2a04cb8d22 yocto-compat-layer.py: Add status for skipped items
If items were skipped because the dependencies could not be found, we
want to record this was skipped so we can display it later.

(From OE-Core rev: 402ef1c8bd1ea994581a39672f31ab1203a0899d)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Aníbal Limón
704613b2ec scripts: Add yocto-compat-layer-wrapper
This script will be used to create it's own build directory to make
runs of yocto-compat-layer.py againts layers isolated.

Example:

$ source oe-init-build-env
$ yocto-compat-layer-wrapper LAYER_DIR LAYER_DIR_N

[YOCTO #11164]

(From OE-Core rev: 9414382f96d4a5d81cca440c75140950ca515aab)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Peter Kjellerstedt
4bd647af83 update_gio_module_cache: Do not chown a non-existing file
Only change the ownership of ${libdir}/gio/modules/giomodule.cache if
it exists.

(From OE-Core rev: df2e1a8fbadffac0f1781a0d07e050356a007327)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
934dc65f06 chkconfig: replace fedorahosted.org SRC_URI with github.com source
fedorahosted.org was retired on March 1st, 2017. This is to update
the SRC_URI to point to github.com.

[YOCTO #11226]

(From OE-Core rev: 0fb5427937576fe46d463b9c9953d0bcdc1f256a)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
e66da71d31 selftest/recipetool: replace fedorahosted.org SRC_URI with github.com source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to github.com.

[YOCTO #11226]

(From OE-Core rev: 9b3c9193d4a04061e64e43d55782a4d73ee166ad)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
2ca7644603 cronie: replace fedorahosted.org SRC_URI with github.com source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to github.com.

[YOCTO #11226]

(From OE-Core rev: b0703175ed650d89870309e4065cda917199ac93)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
724255393f liberation-fonts: replace fedorahosted.org SRC_URI with pagure.io source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to pagure.io. pagure.io is a
replacement for fedorahosted.

[YOCTO #11226]

(From OE-Core rev: 441ad240db4ce64d854e263e14dc6a1752aed956)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
b0cf9311c2 libnewt: replace fedorahosted.org SRC_URI with pagure.io source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to pagure.io. pagure.io is a
replacement for fedorahosted.

[YOCTO #11226]

(From OE-Core rev: b85905bc8b845c9da7d2a086ea239ec00d5142e3)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
f8a538c533 libuser: replace fedorahosted.org SRC_URI with pagure.io source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to pagure.io. pagure.io is a
replacement for fedorahosted.

[YOCTO #11226]

(From OE-Core rev: bbe3cde5fc2102fd84ba065ed14f2732bcd0d420)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Choong YinThong
54aab227e1 xmlto: replace fedorahosted.org SRC_URI with pagure.io source
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to pagure.io. pagure.io is a
replacement for fedorahosted.

[YOCTO #11226]

(From OE-Core rev: 79ae1e98a7c3fd4c732ea4cd0b3099d4e319a111)

Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Jose Perez Carranza
163bb0e21b runtime/dnf : Add ID to the dnf test cases
Add the corresponding Testopia ID to the test cases for dnf

(From OE-Core rev: 434b48566f2febcc5bd5d6cd9c04788f008ffce1)

Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Ross Burton
c3186382ae gpgme: fix configure if 'import distutils' causes output on stderr
There are a number of reasons that importing a module could cause output on
stderr that isn't a fatal error (compatibilty problems with inputrc, or encoding
warnings) so backport a patch from autoconf-archive to only check the exit code
instead of asserting that stderr is empty.

[ YOCTO #11231 ]

(From OE-Core rev: ebfd79ae6e5954253c3bb0886d476be480b24de8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Leonardo Sandoval
e19289f28f selftest/devtool: use kernel provider instead of recipe allowing other kernel providers
To generalize the unit test for other kernel providers, use virtual/kernel instead
of linux-yocto, allowing to run the selftest on non-poky distros, i.e. poky-tiny.

(From OE-Core rev: 087e1204fb27e2952f16c2e4761f5993b7722732)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Leonardo Sandoval
b84671102e selftest/commands: extend variable regex to include A_B variable notation
This change allows quering for variables with the format A_B, i.e.
PREFERRED_PROVIDER_virtual/kernel instead of just A.

(From OE-Core rev: 3810738eff6bdcf27c7e291dbeaedc699ab14bfc)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Martin Jansa
37cfcd2cca x86-base.inc, qemuarm.conf: prefer 4.10 version of linux-yocto
* 4.8 version was removed in:
  commit 466e6e45ca04a07ebe1b1f52de747f077b362d54
  Author: Bruce Ashfield <bruce.ashfield@windriver.com>
  Date:   Tue Mar 28 08:58:07 2017 -0400

    linux-yocto: drop 4.8 recipes

    We have 4.1 (LTSI), 4.4 (LTS), 4.9 (LTS/LTSI) and 4.10 available in
    master. 4.8 is no longer required, so we drop the recipe to keep
    the version selection under control.
* causing each build to start with 188 lines of this stuff:
  NOTE: preferred version 4.8% of linux-yocto not available (for item virtual/kernel)
  NOTE: versions of linux-yocto available: 4.1.38+gitAUTOINC+7140ddb86e_4d2c95e78c 4.10.5+gitAUTOINC+01f18cba44_b97dcd4f06 4.4.56+gitAUTOINC+271b0c8d51_01aaede0a2 4.9.17+gitAUTOINC+8b97a445fa_3ff3760c2a
  NOTE: preferred version 4.8% of linux-yocto not available (for item kernel-module-raid456)
  NOTE: versions of linux-yocto available: 4.1.38+gitAUTOINC+7140ddb86e_4d2c95e78c 4.10.5+gitAUTOINC+01f18cba44_b97dcd4f06 4.4.56+gitAUTOINC+271b0c8d51_01aaede0a2 4.9.17+gitAUTOINC+8b97a445fa_3ff3760c2a

(From OE-Core rev: 57357d4e7f5d256a5cc657798f955f1ac8416665)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Ming Liu
5e3a636b20 kernel.bbclass: move in addtask kernel_link_images statement from linux-yocto.inc
Add kernel_link_images task in kernel.bbclass instead of adding it in
linux-yocto.inc, or else the recipes inheriting kernel.bbclass might
run into implicit dependency issues.

(From OE-Core rev: 3211d43d80f69d9c200a0e4f90fd37736046aafe)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
brian avery
0ffc7b8d2e devtool: point runqemu to correct native bindir
devtool/runqemu.py was relying on STAGING_BINDIR_NATIVE to find the host
tools it needed like qemu-system-<arch>.  In the post RSS world, this no
longer exists. This patch points it to
{STAGING_DIR}/{BUILD_ARCH}/{bindir_native}.

[YOCTO #11223]

(From OE-Core rev: 1910f9e9336bfedc8278a3bc02e7e7f934a4fc86)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
brian avery
83e6eb613d meta-ide-support: exclude this recipe from rm_work
The results of meta-ide-support are used by utilities like runqemu and
runqemu-extract-sdk.  Since the usr/bin that meta-ide-support creates is
subsequently removed bu rm_work, we exclude this recipe from the rm_work
list.

[YOCTO #11119]

(From OE-Core rev: 6c0fc4daee0e32c85c8895ce77126d3d0c6c2ed5)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
brian avery
f200f37699 scripts: change way we find native tools (pseudo)
oe-find-native-sysroot: Recipe Specific Sysroots have eliminated the
large STAGING_DIR_NATIVE. Now, we will rely on the meta-ide-support
sysroot that is what was populating the large STAGING_DIR_NATIVE in
previous versions anyway. We now look for RECIPE_SYSROOT_NATIVE.

[YOCTO #11119]

(From OE-Core rev: d8b4c58676705e9749347be0e8f191ccccc37f05)

Signed-off-by: brian avery <brian.avery@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Ross Burton
bb81269c3d sanity: explain where TMPDIR is if we're telling the user to delete it
(From OE-Core rev: c03de901213846d7c8cc2a12a97034273aa904c3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:12 +01:00
Richard Purdie
a584c181ac recipe_sanity: Drop now unused FILESDIR
FILESDIR is long dead and unreferenced pretty much anywhere now, drop these
sanity references too.

(From OE-Core rev: 760ab75be6b794fdcd0b1717439fcea605db9e0b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:11 +01:00
Richard Purdie
2334036502 bitbake: fetch/local: Drop FILESDIR
This has long since been deprecated and is no longer used anywhere, FILESPATH
is the commonly used varaible which offers much more flexibility. Remove
the FILESDIR code and references from bitbake.

(Bitbake rev: 751c9dc51fd01fa64a1ff37ba2638110335f71af)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:20:03 +01:00
Paul Eggleton
2d704e445c bitbake: codeparser: add some comments
Add a few comments at the top of the file explaining what it's for, and
a comment pointing out that you need to increment the cache version when
changing any code that changes the output.

(Bitbake rev: c1780bc1872bb35bc28c76eff9110717f02d9db2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:19:17 +01:00
Paul Eggleton
1fe95cfc12 bitbake: bitbake-selftest: add contains tests
Add some tests to verify that we are extracting "contains" information
from python expressions in the code in the bb.data and bb.codeparser
modules.

(Bitbake rev: 88fda492df875dd79b7aecf1f34b38517fc1eb33)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:19:17 +01:00
Paul Eggleton
7b7c238b2d bitbake: codeparser: improve handling of contains_any() and filter()
Ensure we handle bb.utils.contains_any() as separate items, rather than
how we handle contains() where every item must be in the list.
Additionally, enable handling bb.utils.filter() which for the purposes
of looking at dependencies is the same as contains_any().

Additionally bump the codeparser cache and recipe cache versions to
invalidate the user's existing caches (ensuring that the changes take
effect and avoiding "taskhash mismatch" errors respectively).

(Bitbake rev: 496e3c84820a2a889d99d3604659e47a550941d5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:19:17 +01:00
Paul Eggleton
f217b65f12 bitbake: lib/bb/data: fix dependency handling for contains and multiple values
The code that determines variable dependencies uses the codeparser to
find references to "contains" type operations e.g. bb.utils.contains().
That function can take multiple items to check, and all specified items
have to be present. However this code didn't handle that - it assumed
that only one item would be specified and thus it was treating the
multiple items as a single item with spaces in between. Split the value
and check if all words are present in order to determine whether the
check is "set" or "unset".

(Bitbake rev: 272f1245acdd4fb85cb78612aa03627a9c246d8f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:19:17 +01:00
Scott Rifenbark
eff56e4f0d bitbake: bitbake-user-manual: Fixed special character in -D output
Fixes [YOCTO #9962]

The new output for -D was copied into the manual and merged by
the engineering team before checking to see if the manual
would make properly.  The next output for -D introduced an
error through the string "<task>".  The angled bracket
characters are illegal in docbook and must be replaced by
"&lt;" and "&gt;", respectively.  I made this fix.

(Bitbake rev: 0476ec4605c94b9e0208cfd3fa48ecf3e3f04181)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-03 22:32:02 +01:00
Peter Kjellerstedt
4077dcb565 bitbake: fetch2: Do not fail to create symbolic links if they already exist
When the fetcher retrieves file:// URLs, there is no lock file being
used. This means that in case two separate tasks (typically from two
concurrent invocations of bitbake) want to download the same file://
URL at the same time, there is a very small chance that they also end
up wanting to create a symbolic link to the file at the same time.
This would previously lead to one of the tasks failing as the other
task would have created the link.

(Bitbake rev: 58a03531c8183b165bb7dcad86d8559c92bc150d)

Signed-off-by: Peter Kjellerstedt <pkj@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:41 +01:00
Serhii Popovych
4aa21211a3 automake: Adjust shebang lines to remove interpreter path hardcode
If build host perl (and other tools) is old and we use some kind
of toolchain to provide recent perl/python/etc to the OE build
we still locked to use build host perl due to hardcoded shebang
lines in automake scripts.

Behaviour was observed with Enterprise Linux 6 and devtoolset
toolchain from SCL (Software Collections) used to provide recent
version of perl (not provided with default buildtools-tarball).

Pass /usr/bin/env perl in ac_cv_path_PERL configuration variables
for class-native and class-nativesdk. Use patch to automake to replace
-w option in shebang line with modern way to enable warnings on perl
(i.e. "use warnings").

Also add nativesdk-autoconf to RDEPENDS to bring runtime dependencies
inline with other targets.

Note that ac_cv_path_PERL must be valid perl interpreter path
since configure will check perl version and Flock implementation.
It is not possible currently to use nativeperl from native
sysroot because automake does not DEPENDS on perl-native (and
doing so fails due to circular dependencies). Only possible
solution is to overwrite shebangs with nativeperl somewhere at
do_install() and update RDEPENDS for class-native. Or add perl
symlinks to nativeperl in sysroot.

For now it seems good to use perl found by /usr/bin/env from
automake-native.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: 3b7111b30dbd9a4cdd141b594164da18c15ae970)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:20 +01:00
Serhii Popovych
e44946bff1 autoconf: Adjust shebang lines to remove interpreter path hardcode
If build host perl (and other tools) is old and we use some kind
of toolchain to provide recent perl/python/etc to the OE build
we still locked to use build host perl due to hardcoded shebang
lines in autoconf scripts.

Behaviour was observed with Enterprise Linux 6 and devtoolset
toolchain from SCL (Software Collections) used to provide recent
version of perl (not provided with default buildtools-tarball).

Pass /usr/bin/env perl in ac_cv_path_PERL configuration variables
for class-native and class-nativesdk. Use patch to autoconf to replace
-w option in shebang line with modern way to enable warnings on perl
(i.e. "use warnings").

Also add nativesdk-m4 and nativesdk-gnu-config to RDEPENDS to bring
runtime dependencies inline with other targets.

Note that ac_cv_path_PERL must be valid perl interpreter path
since configure will check perl version and Flock implementation.
It is not possible currently to use nativeperl from native
sysroot because autoconf does not DEPENDS on perl-native (and
doing so fails due to circular dependencies). Only possible
solution is to overwrite shebangs with nativeperl somewhere at
do_install() and update RDEPENDS for class-native. Or add perl
symlinks to nativeperl in sysroot.

For now it seems good to use perl found by /usr/bin/env from
autoconf-native.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: 443d2d31732fa5700aa00ff020a0d79ab245c114)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:20 +01:00
Markus Lehtonen
034702f520 scripts/contrib: add oe-build-perf-report-email
Script for sending build perf test reports as an email. Mangles an html
report, generated by oe-build-perf-report, into a format suitable for
html emails. Supports multipart emails where a plaintext alternative can
be included in the same email.

Dependencies required to be installed on the host:
- phantomjs
- optipng

[YOCTO #10931]

(From OE-Core rev: 9e97ff174458f7245fc27a4c407f21a9d2e317ab)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:20 +01:00
Markus Lehtonen
9f299876f7 scripts: add oe-build-perf-report script
A new tool for pretty-printing build perf test results stored in a Git
repository. The scripts is able to produce either simple plaintext
report showing the difference between two commits, or, an html report
that also displays trendcharts of the test results. The script uses
Jinja2 templates for generating HTML reports so it requires
python3-jinja2 to be installed on the system.

[YOCTO #10931]

(From OE-Core rev: 3b25404f0f99b72f222bdca815929be1cf1cee35)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:20 +01:00
Khem Raj
5a85d39c9d binutils: Detect 64bit mips target for gold
(From OE-Core rev: b007eb12a80d81c2aa498941961df3f2899ece7e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:19 +01:00
Juro Bystricky
7d369d794a ncurses_6.0: Improve reproducibility
Build static libraries without the binutils "ar" -U option.
This option deliberately breaks deterministic mode.
The option seems to be a relic from 2015, intended as a workaround
for some unspecified build problems.

[YOCTO#11247]

(From OE-Core rev: 46c757d0ca7ff294a7e55c130698fd256b69b62e)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:19 +01:00
Bob Cochran
1771bfd1a7 python: remove stale link to "Python for Embedded Systems Site"
Reference url is a stale, non existent site that returns a 404, so get rid of it

Change impacts both the manifest files and the scripts that generate the manifests

Run the following from within recipes-devtools/python

../../../scripts/contrib/python/generate-manifest-2.7.py > python-2.7-manifest.inc
../../../scripts/contrib/python/generate-manifest-2.7.py -n > python-native-2.7-manifest.inc

../../../scripts/contrib/python/generate-manifest-3.5.py > python-3.5-manifest.inc
../../../scripts/contrib/python/generate-manifest-3.5.py -n > python-native-3.5-manifest.inc

(From OE-Core rev: ae13f580b759211c1a6b59a276f75d589f1db11c)

Signed-off-by: Bob Cochran <openembedded@mindchasers.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:19 +01:00
Richard Purdie
2bdfce59bd dpkg: Add PACKAGECONFIG for liblzma and enable it
liblzma is part of xz and we already build it but configure it out. This makes
no sense. Enabling it means we gain multithreaded compression and it speeds
dpkg-deb up massively. It also removes the fork overhead of separate xz processes.

Turning the existing config into a PACKAGECONFIG and turning it on by default
therefore makes best use of what we have available.

The manual RDEPENDS are no longer needed since it uses liblzma which is picked
up by the shlibs code magically.

(From OE-Core rev: 97b2a20b55acf76ebaacff0054e0f3c2b4236847)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:19 +01:00
Saul Wold
19e99786be yocto-bsp/i386 machine.cfg: Explicitly disable 64BIT
Since we do not set the 64 bit flags, newer kernels seem to build 64bit
config files by default. This is due to a hard-coded uname -m check that
selects the KBUILD_DEFCONFIG based on the host, not the cross target.

Similar to e9ec769926b2378e63380bd7762ce7ce201af151 in the yocto-kernel-cache repo

(From meta-yocto rev: e35017cc67f6d3c5cc00488d3460de0dcec773b3)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:15:32 +01:00
Ming Liu
c09a0631b5 kernel.bbclass: introduce INITRAMFS_IMAGE_NAME
It defaults to ${INITRAMFS_IMAGE}-${MACHINE} if INITRAMFS_IMAGE is not
empty.

This allows the end users to be able to override the initramfs image
name with a customized value.

(From OE-Core rev: e788fb2b894852f71b1c545abde71b45b9f230dc)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Daniel Díaz
63c605b841 base-files: resize only serial tty's in profile
We don't want to run resize on non serial consoles. There's
been an earlier attempt (6557787), so this builds upon that.

The problem we're seeing is that if there is text buffered in
the virtual console (like from a desperate user trying to
enter login details), resize will get stuck while calling
  ioctl(tty, TCSETAW);

Since serial consoles are named (not just numbered), this
change limits resize's reach even further to run only on
/dev/tty[A-z] (thus avoiding /dev/tty[0-9]).

(From OE-Core rev: 474ef7c95722aa68ee5dfbae2920d7c3d436d717)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Peter Kjellerstedt
0324617782 lsb: Create ${base_prefix}/lib64 correctly when needed
There were two remaining cases that could end up creating /lib64
rather than ${base_prefix}/lib64. The difference matters when building
with usrmerge.

(From OE-Core rev: b791f13286c8c58ce1f3fa3745ffdd5bd5ff1d02)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Peter Kjellerstedt
3041659c43 lsb: Avoid using double slashes in paths
Use ${D}${var} rather than ${D}/${var} for variables where ${var}
contains an absolute path.

(From OE-Core rev: 2799eda9f373b430ad64c8b61f8047abce7f1e22)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Leonardo Sandoval
63a3081006 selftest/pkgdata: replace the glibc recipe allowing execution on non-poky distros
Replace the glibc recipe for zlib on unit tests, otherwise tests are restricted
to glibc distros (poky).

[YOCTO #10890]

(From OE-Core rev: b77cf437e89a2ec21de6a69d5e34736925f1eeba)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Robert Yang
f57a53d5ab oe-run-native: OLDPATH -> OLD_PATH
It's a typo.

(From OE-Core rev: 1271d50e622cb3a0eef662de7112da04f05ef5bb)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Enrico Jorns
64fd22e42e systemd: make vconsole a PACKAGECONFIG option
Allowing to remove the systemd-vconsole-setup package without specifying
the --disable-vconsole configure option for systemd will make the system
boot with the failure prompt

| systemd-udevd[142]: failed to execute '/lib/systemd/systemd-vconsole-setup' '/lib/systemd/systemd-vconsole-setup': No such file or directory
| systemd-udevd[96]: Process '/lib/systemd/systemd-vconsole-setup' failed with exit code 2.

as the 90-vconsole.rules will still be installed with having a
RUN+="/lib/systemd/systemd-vconsole-setup" in it that attempts to
execute a non-existing binary.

(From OE-Core rev: 396e9dcf308a2a6660a84eb36c5ff29f8a0d08de)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ming Liu
35565057fa kernel.bbclass: fix a typo
In a addtask statement, do_strip should be strip.

(From OE-Core rev: 8413e26164644230615f4503ca9488b5b4021aeb)

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Daniel Schultz
28997864e2 wic: partition: Update fsck parameters
These parameters are copied from the ext image class.

-D will let fsck perform further directory optimizations
-v might be helpful for debugging purpose

(From OE-Core rev: be93e378506a85772503005294503cfc348a552c)

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ed Bartosh
67ec097bc3 wic: remove prepare_empty_partition_squashfs
There is not much sense in creation of empty squashfs
partition. It's also not possible to create empty squashfs
partition of specified size.

Even more, prepare_empty_partition_squashfs method is
absolutely broken. It raises exception when called and
even its signature differs from the rest of of similar
methods. It means that nobody uses it and it's safe
to remove it.

Removed prepare_empty_partition_squashfs method and
testing of empty squashfs partition.

(From OE-Core rev: 9152960f250cb4df1e559d747fb09005675a0d75)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ed Bartosh
5efb8e039b oe-selftest: test creation of msdos partition
Added msdos partition to the .wks file in test_fs_types
wic test case.

[YOCTO #11137]

(From OE-Core rev: 044dd146d39542d0e6b598ee1dcadc49e0db3de9)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ed Bartosh
d62a97ec54 wic: fix list of supported fstypes in help content
Added vfat and msdos to the list of supported fstypes in
'wic help kickstart' output.

[YOCTO #11137]

(From OE-Core rev: ab7f2a77e124d8859002619e7ba3117e8a165df7)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ed Bartosh
1586663fb3 wic: set correct system id for msdos partitions
Explicitly set system id 0x6(FAT16) for msdos partitions.

Removed old code that attempts to achieve the same result
using 'parted ... lba off'.

(From OE-Core rev: 230452faf151e277bfb2b49526923f8097755b35)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ed Bartosh
e5959eb480 wic: set FAT 16 for msdos partitions
Used '-F 16' parameter for mkdosfs to create FAT16 partitions for
'msdos' partition type.

[YOCTO #11137]

(From OE-Core rev: b6243a03ced9a719a5801afcee014b03313cc43c)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:58 +01:00
Ed Bartosh
88e1d55de2 wic: support 'msdos' fstype
Added prepare_empty_partition_msdos and prepare_rootfs_msdos
methods to support 'msdos' filesystem type.

Created aliases prepare_empty_partition_vfat and prepare_rootfs_vfat
to continue supporting creation of vfat patitiions.

(From OE-Core rev: f06c507078da72f616f45effe5005cc01615a17c)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
b4d15e0713 wic: don't silently skip unknown fstypes
Fixed wic code that loops through hard-coded list of known fstypes
to find prepare_rootfs_<fstype> or prepare_empty_partition_<fstype>
methods and silently skipping unknown fstypes.

(From OE-Core rev: ebb8fb5f81f473156c9aa4bf1965e538492a851b)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
54cd064c66 wic: allow only supported fstypes
Restricted possible values of --fstype to the list of
supported types. This should catch incorrect values
when .wks file is being parsed.

Removed checks for empty fstype and mentioning of
unsupported fstype 'ontrackdm6aux3'.

(From OE-Core rev: 21af89a6d44ccea6aef975ffd2483a8fad1231de)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
09548406e1 oe-selftest: fix incorrect fstype
Fixed typo in wks content: squash->squashfs

(From OE-Core rev: cf06e6763d06e3e631bed85e2cb087f713808e6d)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
a24ffc7088 oe-selftest: add test_image_bootpart_globbed test for wic
Test image-bootpart wic plugin with globbed value of
IMAGE_BOOT_FILES variable to increase test coverage.

[YOCTO #10618]

(From OE-Core rev: 4da2526800de1d40b51db96b0d5ab44dbaff68ff)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
ad1bce56c4 wic: remove unused code from runner module
Removed unused APIs 'outs' and 'quiet'.
Removed 'catch' parameter from runner.runtool API as wic
uses only one value of it. Removed the code that handles
unused values of 'catch' parameter.

[YOCTO #10618]

(From OE-Core rev: 1e45a4f72b16c7ab64f46907d2d2ee9cd749dc23)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
d39a158855 wic: remove runner.show API
Replaced runner.show call to exec_cmd call in bootimg-pcbios
plugin. Removed runner.show API as it's not used anywhere else.

[YOCTO #10618]

(From OE-Core rev: 9749336c37249af99c92478c3e4dc8821cb9a816)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
2122dd7718 wic: use wic-tools STAGING_DATADIR as bootimg_dir
If bootloader artifacts are not found in default bootimg_dir
use wic-tools sysroot for the same purpose. This should
prevent wic from failing if bootloader artifacts can't be
found in image native sysroot.

(From OE-Core rev: 9674bbd0585fc25ccd362f233b83d07ff8f6ff53)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
3a53361084 wic: remove fsimage plugin
Removed fsimage plugin and prepare_rootfs_from_fs_image API as
they duplicate functionality of rawcopy plugin. Fsimage plugin makes
wic to remove the image artifact from deployment directory, which
can cause problems too.

[YOCTO #10618]

(From OE-Core rev: 9a470752f5698f791f8f78e28d163a0b9c695186)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
a7f22bd46f oe-selftest: add kickstart_parser test case
Added test_kickstart_parser test case to test wks parser
options not yet covered by tests.

[YOCTO #10618]

(From OE-Core rev: 36779a95f2e1e2c0d94ba81d30c8b1fc9dd161e4)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
6b80c13f7a filemap: remove FilemapSeek class
FIEMAP API was added to Linux kernel 2.6.28 back in 2008
SEEK_HOLE and SEEK_DATA API was added much letter.
As FIEMAP is used by filemap module as a default API it's
safe to remove FileMpSeek class as it's never used.

[YOCTO #10618]

(From OE-Core rev: 44e9406ea6e3263d2fb95e9d534a21f74f318480)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
fae19c345d oe-selftest: add wic test case test_fs_types
Added wic test case to test all possible filesystem
types for empty and not empty partitions.

[YOCTO #10618]

(From OE-Core rev: 95ec9e6b987706fac9bd410681f0950f957989bb)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Ed Bartosh
0de9b2ade8 wic-tools: add btrfs-tools squashfs-tools to DEPENDS
Added btrfs-tools-native and squashfs-tools-native to DEPENDS as
wic uses these tools to support btrfs and squashfs filesystems.

(From OE-Core rev: d6fea657671637af30fe9bf9a2264746b5bd6deb)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Joe Slater
fcd48092d7 volatile-binds: correct some errors reported by systemd
systemd-tmpfiles-setup will fail at boot, so we suppress
the default versions of etc.conf and home.conf.

We also make sure that /var/{cache,spool} and /srv are writeable
if they exist.

(From OE-Core rev: 4a44a7658cebafab336f061f270b6ff44150a6d6)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Mariano Lopez
739130370f oeqa/runtime/cases: Migrate underscore cases
There were two missing cases to be migrated to the new framework: _qemutiny and
_ptest.

qemutiny was straightforward.

ptest on the other hand wasn't working even in previous releases; it has been
migrated from smart to dnf, and how ptest packages are gathered to be
installed, adapted to use unicode, and removed a lot of code that wasn't needed
anymore.

(From OE-Core rev: ee7c19546b686e852d01df25143504d9798d10d6)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Alexander Kanavin
34a7654689 openssl: add a "openssl10" PROVIDES
In 2.4 development cycle openssl 1.1 will replace openssl 1.0 as the
default openssl version. Openssl 1.0 will stay but will be renamed
to openssl10, and eventually it will be removed (hopefully much
sooner than the official end of support date of Dec 2019, as we do not
want an unsupported openssl version in supported Yocto releases).

There are several recipes that are not API compatible with 1.1; some
of them will eventually be fixed, but others will never be (such as Qt4).
To avoid breaking such recipes when openssl 1.1 is added to oe-core,
let's provide "openssl10" already now and change the recipes to depend
on that where necessary; Qt4 is a particularly pressing issue as it is
causing failures on the autobuilder with my work in progress
openssl 1.1 branch, and so I'm not able to see what else would fail
later in the build process.

(From OE-Core rev: cffc3a88608bd295eb1220fadae56eb4676414df)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Serhii Popovych
7cce71cf54 perl-native: Bring build dependencies inline with target perl package
Make sure we have all build time dependencies of perl-native
satisfied before we start building it.

Behaviour was observed with RHEL6 build hosts where perl-native
build fails at linging stage when attempting to link to the build
hosts old Berkley DB because virtual/db-native is missing in
native sysroot.

Add dependencies to the native packages taken from perl recipe.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: c0e0b3774313f6acb00374c87a4f99201daa2270)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 08:14:57 +01:00
Scott Rifenbark
3303027113 poky.ent: Removed python3-expect from the CentOS distro
Fixes [YOCTO #10854]

Feedback from the review indicated that CentOS python3-pip and
python3-expect should be python34-pip.  Did this change.

(From yocto-docs rev: ae307a183328b3c572e3f63c0274806af244c618)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:18 +01:00
Scott Rifenbark
c015fed613 dev-manuual: Replaced "smart" with "dnf"
Fixes [YOCTO #9675]

I missed one occurrence of changing "smart" to "dnf" in the
Enabling Tests section.  Corrected.

(From yocto-docs rev: b5106c7a38f51dbfea6d200072039f624be7ed3a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:18 +01:00
Scott Rifenbark
a51a7e9d87 ref-manual: Rewording of devtool-deploy target command caveats
Fixes [YOCTO #10350]

Based on Henry's assesment that the wording was unclear in some
spots, I did a little smithing to try and help.

(From yocto-docs rev: b52bb8d73071ad6b7a0956dec2f84a84ae1c7045)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:18 +01:00
Scott Rifenbark
d7c5376946 kernel-dev: Provided better wording for recipe-space metadata section
Fixes [YOCTO #10946]

Based on feedback, I made some minor rewrites to a sentence describing
when you need to use a different form to get BitBake to pick up
hierarchical data as kernel data.

(From yocto-docs rev: 65fcd23826e9a69152933f84cb3f8bac650cd4e5)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:18 +01:00
Scott Rifenbark
1a4c0bfafd dev-manual; ref-manual: Updates to replace "smart" with "dnf"
Fixes [YOCTO #9675]

Various fixes to replace the "smart" package manager references
with "dnf".

(From yocto-docs rev: 721dc7fb637c4c03534eb19f61b0b08a7303826d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:17 +01:00
Scott Rifenbark
646130271f ref-manual: Fixed wording for clarity
Fixes [YOCTO #10898]

I altered the verbiage used to describe the inclusive nature of
the beginline and endline note to be clear to non-native English
speaker based on feedback.

(From yocto-docs rev: 5edf417cd044ded30d1f8366ac0cde336d0da016)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:17 +01:00
Scott Rifenbark
af4ef8adbc ref-manual, yocto-project-qs, poky.ent: Fixed CentOS essentials
Fixes [YOCTO #10854]

I added extra "yum" commands and a make command to deal with
some essential packages needed for CentOS distribution.  These
packages were missing.

(From yocto-docs rev: 38ac6cf0165f7dd7bbfd583e218b6948dafae29c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:17 +01:00
Scott Rifenbark
ed0d609c7c bsp-guide, kernel-dev: Updates to how kernel metadata is found
Fixes [YOCTO #10946]

There was insufficient information in the combination of the
BSP Guide and the Kernel Development Manual on just how to locate
and use kernel metadata.

 * bsp-guide - Removed the detailed append file example for the
   kernel recipe.  This is moved now to the chapter in the kernel
   manual that describes append files.

 * kernel-dev - Placed the example from the BSP Guide into the
   section that describes kernel append files.  Cleaned up some
   terminology issues throughout chapter 3.  Added information
   about how BitBake picks up kernel metadata when the metadata
   is in a hierarchical directory and not just a simple *.scc
   file.

(From yocto-docs rev: 1048acb7127e77ca9c1f524a208fe25344fcb57c)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 12:14:17 +01:00
Alejandro Hernandez
730617f8d0 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.4 Updates to Linux 4.4.56
(From meta-yocto rev: 327840b481d4d82f68aae5aa84c0aed16ebec035)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:30 +01:00
Alejandro Hernandez
80fa61e3d8 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.10 Updates to Linux 4.10.5
(From meta-yocto rev: 582958c2113ae0d0f968da48270307160ff61526)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:30 +01:00
Alejandro Hernandez
06fd392de5 linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.9 Updates to Linux 4.9.17
(From meta-yocto rev: 1dc5a4e88d35b51dd6f871f7d1f8b949d5b83f06)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:30 +01:00
Alejandro Hernandez
c5814108bc linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.1 Updates to Linux 4.1.38
(From meta-yocto rev: 2a532145978940adb73e435ab44116e730d49a43)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:30 +01:00
Serhii Popovych
5156cdc36b distutils3.bbclass: Fix path to python for scripts
This change is similar to the recently introduced
change to the distutils.bbclass fixing shebang
line in python scripts for nativesdk class builds.

v2: Rebased on top of new head.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: 49772e1a1f291d1cacce27b381009dbb441c483e)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:30 +01:00
Serhii Popovych
253ce5d6c0 distutils.bbclass: Fix path to python for scripts
Commit 11229de (distutils: Replacing path to native python by path
to python in the image to support python packages with
console-script setup) replaces path to python-native with path
to the python interpreter in the target image.

However on nativesdk builds ${bindir} expanded to the
${SDKPATHNATIVE}${prefix_nativesdk} making shebang line
pointing to the absolute path to env(1) in SDKPATHNATIVE
which may not be present if coreutils isn't part of nativesdk.

On the other hand commit cf63d90 (bitbake.conf: Define USRBINPATH
globally instead of individually) introduces USRBINPATH variable
which has correct value regarding build class and intended for
this use case.

v2: Rebased on top of new head.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: 2a83c22a510e10b169015ce936eb51a6fc959ec1)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Max Krummenacher
43832aa6c1 openssl: Fix regression when building for thumb2
Commit 'c8da8ce openssl: Fix build with clang' introduced a regression.
do_compile fails when building with gcc/thumb2.

Note that I did not test if it still builds with clang.

Prevents the following when building with thumb2:

| ghash-armv4.S: Assembler messages:
| ghash-armv4.S:88: Error: thumb conditional instruction should be in IT block -- `ldrplb r12,[r2,r3]'
| ghash-armv4.S:98: conditional infixes are deprecated in unified syntax
| ghash-armv4.S:98: Error: thumb conditional instruction should be in IT block -- `ldrplb r8,[r0,r3]'
| ghash-armv4.S:105: Error: thumb conditional instruction should be in IT block -- `eorpl r12,r12,r8'
| ghash-armv4.S:107: Error: thumb conditional instruction should be in IT block -- `andpl r14,r12,#0xf0'
| ghash-armv4.S:108: Error: thumb conditional instruction should be in IT block -- `andpl r12,r12,#0x0f'
| ghash-armv4.S:144: conditional infixes are deprecated in unified syntax
| ghash-armv4.S:144: Error: thumb conditional instruction should be in IT block -- `ldrneb r12,[r2,#15]'
| ghash-armv4.S:231: conditional infixes are deprecated in unified syntax
| ghash-armv4.S:231: Error: thumb conditional instruction should be in IT block -- `ldrplb r12,[r0,r3]'
| ghash-armv4.S:248: Error: thumb conditional instruction should be in IT block -- `andpl r14,r12,#0xf0'
| ghash-armv4.S:249: Error: thumb conditional instruction should be in IT block -- `andpl r12,r12,#0x0f'

(From OE-Core rev: 65cfb24033278fd4fb27013d3272394197649ca2)

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Ross Burton
22d9e285fe nasm: remove COMPATIBLE_HOST
nasm can build on every architecture, it just can't generate anything but X86
code.  As we can't know what the user intends to do with nasm, remove the
COMPATIBLE_HOST line.

(From OE-Core rev: 41d6e5bb295e952de6e1a3e36b313caa58e935bf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Patrick Ohly
271b06d8b9 net-tools: enable native and nativesdk variant
net-tools-native is needed by swtpm-wrappers (in meta-security)
because swtpm_setup.sh calls netstat, which cannot be assumed to be
present in all Linux installations (for example, it is not in OpenSUSE
minimal base).

(From OE-Core rev: 508163bef169cf0d9aa97e73c02d1ecc68480e91)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Ross Burton
2a934a3df7 base.bbclass: ensure HOSTTOOLS links point to executables
Use the new executable argument to bb.utils.which() to ensure that the symlinks
point to executable files and not for example directories with the right name
which happened to be on $PATH.

[ YOCTO #11256 ]

(From OE-Core rev: 7f40c934c3aeb1d34f95f30b281e25a17c428fce)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
555c48fb01 sanity.conf: Increase minimum version requirement to 1.33.3
This pulls in changes to bb.utils.which() for HOSTTOOLS.

(From OE-Core rev: 398fd35bfc2b4795067e25659841adaeea211809)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
707e74ffbc linux-libc-headers: Remove reference to cross-linkage
This is long dead (thankfully), remove stale reference/comment.

(From OE-Core rev: 2340fcb1af3c9ca350dba89d48a44f414277d1a8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
978bce0d49 linux-libc-headers: Drop 4.4
We've been using 4.10 for a while now, I think 4.4 was accidentally left
behind so clean it up.

(From OE-Core rev: b114d2f2f53e2c1b327f140fb5d29f8bf1641ac9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
6897b33abe glibc-package: Allow 32 and 64 bit headers to exist on arm
With this change (combined with the previous linux-libc-header fix), a
combined sysroot for 32 and 64 bit arm works meaning our SDK works
correctly for that multilib setup.

(From OE-Core rev: 4690cd8e34fc23de10400cc1c178b2c73c7690c7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
69ac4e284d linux-libc-headers: Allow arm kernel headers to coexist on 32/64 bit
Its rather sad we need to do this but in order to make combined 32 and 64 bit
SDKs work, we need a common set of headers and this is the delta that
allows things to work. It only applies on arm.

(From OE-Core rev: 592ae8e521a3926e8e5f87e2364e1ba8d92b8c2d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
8b41b5ddfe multilib_header: Update wrapper to handle arm 32/64 bit
Having arm 32/64 bit headers coexisting turns out to be tricky. Unfortunately
our wrapper works using wordsize.h and this differs on arm so we can't use it.

Therefore replicate the logic here for arm. I did look into writing our
own wordsize.h but we also need to remap kernel headers on arm and
since wordsize.h comes from libc, that doesn't work for kernel headers.

(From OE-Core rev: 141dc7136c9c62da1d30132df4b3244fe6d8898d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
408e0b46ae bitbake.conf: Drop MULTIMACH_HOST_SYS
There are no users of this left after recipe specfic sysroots was implemented,
drop the variable as it no longer makes sense or is useful.

(From OE-Core rev: a2fbf85f68b685c32049fb48aed0248369911c49)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
33887b5c07 ccache: Use MULTIMACH_TARGET_SYS not HOST_SYS
I suspect this was a typo and that TARGET_SYS makes more sense here. Its
also the only remaining user of MULTIMACH_HOST_SYS in OE-Core. Change it.

(From OE-Core rev: fd51900f203ae997b0f606f94ab87c12e37696c0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
236a291abc sanity: Drop obsolete TMPDIR ABI conversions
When we get to version 12 we have a hard break as we can't convert to newer
versions. There is no point in running the old conversions on an old tmpdir
only to hit that block. Remove all the old conversions to avoid that and
make things clearer.

(From OE-Core rev: 163b27bdfe323b648929240375aaf251e8d5edf4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
8babb56c92 bitbake.conf: Add DEPLOY_DIR to BB_HASHBASE_WHITELIST
Users should be able to locally choose DEPLOY_DIR without impacting
the reuse of sstate, this change allows that.

[YOCTO #11110]

(From OE-Core rev: 460f6ca573667dfcbd66f5efcaebf686f1442b36)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Aníbal Limón
0dae983296 scripts/lib/compatlayer: detect_layers always use realpath's
If you are using relative paths and change to other folder for
execution it will fail, so use realpaths always.

[YOCTO #11164]

(From OE-Core rev: 14283700f8ec9dcb29cbc00c92d76173f1601bf5)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Patrick Ohly
caf1c90871 populate_sdk_ext.bbclass: enhance compatibility with rm_work.bbclass
"bitbake -c populate_dsk_ext" must not trigger do_rm_work, because it
is impossible to declare that the additional tasks activated by "-c
populate_dsk_ext" must run before do_rm_work. When do_populate_dsk_ext
and do_rm_work are both active, the resulting race condition breaks
do_populate_dsk_ext.

The existing bitbake dependencies can't be used for that, because
"addtask populate_dsk_ext before do_rm_work" would then always execute
populate_dsk_ext also in normal builds.

do_populate_dsk_ext triggers do_rm_work indirectly through the
dependency on do_build of the SDK_TARGETs. Using the new
do_build_without_rm_work instead (when available, with do_build as
before if not) avoids the problem.

However, one has to be careful to not trigger do_rm_work in the same
build in some other way.  "bitbake core-image-sato:do_populate_sdk_ext
core-image-sato:do_build" still fails, for example. Doing one after
the other works.

Fixes: [YOCTO 11042]

(From OE-Core rev: 00b1911c65fa1b21c3dedec40170998573b62178)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Patrick Ohly
d83e16a99c rm_work.bbclass: introduce do_build_without_rm_work
Some classes, for example populate_sdk_ext.bbclass, must be able to
trigger a full build of a recipe without also triggering
do_rm_work. They cannot depend on do_build anymore, because that would
trigger do_rm_work.

Instead, do_build_without_rm_work can be used. It has the exact same
dependencies as do_build, minus do_rm_work and do_rm_work_all.

This may also be useful in a test build of a recipe where one wants
to preserve the work directory without having to modify configuration
settings:
   bitbake foobar:do_build_without_rm_work

(From OE-Core rev: 04a7b8d6d2e86cc4dd1362c775f5e3ac1eb1d19d)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Patrick Ohly
8e7f76bd8a ovmf: avoid linking with gold
Linking with gold fails due to an internal error in gold. The ovmf
linker is gcc, which has a -fuse-ld=bfd option to choose the linker
which (for ovmf) is known to work.

Like the choice of the compilers, this is done in ovmf-native. To keep
that recipe independent of DISTRO_FEATURES, choosing bfd is done
unconditionally.

(From OE-Core rev: 7ee548b9f6f2893caf6b5ade8c892f2968d4ec47)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:10:29 +01:00
Richard Purdie
b152870bf4 bitbake: bitbake: Bump version to 1.33.3
(Bitbake rev: 2c424b8cb39cba8f20f807e55efe6270996fa356)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:08:36 +01:00
Ross Burton
8ce18c5c44 bitbake: bb/utils: extend which() so it can look for just executables
Normally bb.utils.which() is used by the unpack code to find a file in a variety
of places, but it is useful as a slightly more powerful version of os.which().

Support this by allowing it to only return matches which are executable files,
instead of just the first filename that matches.

(Bitbake rev: c0b94f02f0cba7a424aaa16cf98c0f7a3f62b889)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:08:36 +01:00
Richard Purdie
f46846dc11 bitbake: wget: Fix handling of urls with user/password
URL decoding was improved in the core a while ago and this looks like
a leftover from those times which caused urls needing a user/password to
fail. Use the parameters from the core instead of the broken split
implementation.

[YOCTO #11262]

(Bitbake rev: 6a917ec99d659e684b15fa8af94c325172676062)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:08:36 +01:00
Paul Eggleton
03b4226242 bitbake: tinfoil: improve get_recipe_file() exception text
* Turn reasons from a list into a string (usually there will be only one
  reason, but the interface provides for more than one) and state up
  front that the recipe is unavailable for clarity
* Use quotes around invalid recipe name

(Bitbake rev: 8922f1d23400049d2894a97915a533769a24ca07)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:08:35 +01:00
Paul Eggleton
c2ac78c4d8 bitbake: tinfoil: fix get_recipe_file() to return an error on invalid recipe
This function calls cooker.findBestProvider() but didn't handle the fact
that that function returns a tuple (None, None, None, None) when there
is no matching recipe. (This fixes devtool in OpenEmbedded showing a
traceback when an invalid recipe is specified instead of a proper error
message.)

(Bitbake rev: 54a4757ca706afc6e98c7692f960592e80cab12b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-31 10:08:35 +01:00
Elizabeth 'pidge' Flanagan
e5e463fbbb bitbake: s3.py: Remove hardcoded aws
This commit looks to see if FETCHCMD_s3 is set and if not, sets
it.

This is needed because I've use cases where I don't use aws, but
s3cmd (due to license).

(Bitbake rev: fdeaed70a7d1ff8be1a1de937cb864130b0c2c86)

Signed-off-by: Elizabeth 'pidge' Flanagan <pidge@toganlabs.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-30 10:42:18 +01:00
Elizabeth 'pidge' Flanagan
d828ccb05e bitbake.conf: Add aws to HOSTTOOLS_NONFATAL
This adds aws to HOSTTOOLS_NONFATAL in order to get the s3 fetcher
working again.

(From OE-Core rev: 6d6d0737a29bbf3dcd231bfefe13784ed16dd55a)

Signed-off-by: Elizabeth 'pidge' Flanagan <pidge@toganlabs.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-30 10:02:40 +01:00
Serhii Popovych
2935151498 dnf: Use lnr to create relative symlinks
Make use of lnr while creating relative symlinks to enable
builds on host with old ln that does not support -r option.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: dd162286921ccac4981e091de1df4c36d5cfbf5b)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-30 10:02:39 +01:00
Leonardo Sandoval
2acc741dd0 maintainers.inc: Add maintainers to go-native and vulkan software package recipes
(From meta-yocto rev: 6edf4e6bf8202378069496eda9f30b9ff7ef85f2)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:28 +01:00
Richard Purdie
6751dce4cf linux-yocto: drop 4.8 recipes
We have 4.1 (LTSI), 4.4 (LTS), 4.9 (LTS/LTSI) and 4.10 available in
master. 4.8 is no longer required, so we drop the recipe to keep
the version selection under control.

(From meta-yocto rev: 8be1b026d1f56ef18d19fae90cbae45bd7dd97c7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:28 +01:00
Christopher Larson
6b0abc9b7c systemd-boot: write startup.nsh
This aligns with the behavior of grub-efi and gummiboot, and is needed to fix
auto-boot of intel-corei7-64 for non-GPLv3 builds.

(From OE-Core rev: c187326afcf1e9d781c1bd0923e1362a6f50f613)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:28 +01:00
Christopher Larson
87ec35603d sysroot-relativelinks: also consider links to dirs on the host
Dead symlinks, or symlinks to existing files will show up in 'files' of an
os.walk, but symlinks to existing directories show up in 'dirs', so we need to
consider both.

As one example where this is an issue, the symlink from /usr/lib/ssl/certs was
left pointing to /etc/ssl/certs rather than the relative path when the sdk was
built on hosts where the latter exists.

(From OE-Core rev: c5b522378fff13962a5187d9d09979866f805cb5)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Abdur Rehman
07171aba2b update_gio_module_cache: fix host user contamination
update_gio_module_cache intercept creates file:
$D${libdir}/gio/modules/giomodule.cache

Change ownership of this file to root:root to avoid user contamination
by host.

(From OE-Core rev: 9a23af37ad11a7176248ade88511f34fe6dd97bb)

Signed-off-by: Abdur Rehman <abdur_rehman@mentor.com>
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Aníbal Limón
7effe18700 scripts/yocto-compat-layer.py: Add dependency validation in add_layer
Some layers don't have dependencies so add a validation to avoid
exception when trying to None.split().

(From OE-Core rev: 39103285029a0bb7b64dc5a305c484988b4c651a)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Bruce Ashfield
1632f6623c linux-yocto: drop 4.8 recipes
We have 4.1 (LTSI), 4.4 (LTS), 4.9 (LTS/LTSI) and 4.10 available in
master. 4.8 is no longer required, so we drop the recipe to keep
the version selection under control.

(From OE-Core rev: 466e6e45ca04a07ebe1b1f52de747f077b362d54)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Bruce Ashfield
fa86ca6e6f linux-yocto/4.9: integrate 4.9-rt12
Paul Gortmaker has made the 4.9-rt12 available to linux-yocto, so
we integrate it here and update the SRCREVs.

(From OE-Core rev: 919a789adbb06d8220e7f9025ebe983832132bf3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Bruce Ashfield
b3d4b70220 linux-yocto/4.9: update to v4.9.17
Integrating the korg -stable release with the following shortlogs:

   c3825da143fc Linux 4.9.17
   ecdc5b12d7a0 crypto: powerpc - Fix initialisation of crc32c context
   c40609652267 locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y
   1522181f4bc1 futex: Add missing error handling to FUTEX_REQUEUE_PI
   6244ffc5a122 futex: Fix potential use-after-free in FUTEX_REQUEUE_PI
   9f9115b67aa5 x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm
   24ba2842a49d x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y
   5ec98e6ffdce x86/tsc: Fix ART for TSC_KNOWN_FREQ
   095635be809a irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065
   61e79860b4bc arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs
   8ca7ef0d9af9 drm/vc4: Fix ->clock_select setting for the VEC encoder
   6b3306706733 drm/vc4: Fix race between page flip completion event and clean-up
   f4d40cfd61ea clk: bcm2835: Fix ->fixed_divider of pllh_aux
   7885195b9177 powerpc/mm: Fix build break when CMA=n && SPAPR_TCE_IOMMU=y
   ce7aeffe7596 usb: gadget: udc: atmel: remove memory leak
   4fa1c65cf040 serial: 8250_pci: Detach low-level driver during PCI error recovery
   56c28e7983a8 ACPI / blacklist: Make Dell Latitude 3350 ethernet work
   5c19e9070df8 ACPI / blacklist: add _REV quirks for Dell Precision 5520 and 3520
   bc01eb939899 slub: move synchronize_sched out of slab_mutex on shrink
   bd2de45031b9 uvcvideo: uvc_scan_fallback() for webcams with broken chain
   e627116c0c35 s390/zcrypt: Introduce CEX6 toleration
   61a153d06ef4 block: allow WRITE_SAME commands with the SG_IO ioctl
   0042afe117c6 drm/nouveau/disp/nv50-: specify ctrl/user separately when constructing classes
   5001756c1c70 drm/nouveau/disp/nv50-: split chid into chid.ctrl and chid.user
   ddc23b5212b9 drm/nouveau/disp/gp102: fix cursor/overlay immediate channel indices
   53e18968a9c0 vfio/spapr: Postpone default window creation
   2e60baca235b vfio/spapr: Add a helper to create default DMA window
   080eb13542a8 powerpc/mm/iommu, vfio/spapr: Put pages on VFIO container shutdown
   92e44bcd71ae vfio/spapr: Reference mm in tce_container
   5b34666bd2e7 powerpc/iommu: Stop using @current in mm_iommu_xxx
   2ba7ef21820e powerpc/iommu: Pass mm_struct to init/cleanup helpers
   5d8b3e755974 vfio/spapr: Postpone allocation of userspace version of TCE table
   3c0cbb47a8d6 Drivers: hv: ring_buffer: count on wrap around mappings in get_next_pkt_raw() (v2)
   3e5a7f5b95f0 ibmveth: calculate gso_segs for large packets
   fb7c521a1460 PCI: Do any VF BAR updates before enabling the BARs
   3d58444dea81 PCI: Ignore BAR updates on virtual functions
   74cce811a4b6 PCI: Update BARs using property bits appropriate for type
   a38012dc69eb PCI: Don't update VF BARs while VF memory space is enabled
   bb479246bb3e PCI: Decouple IORESOURCE_ROM_ENABLE and PCI_ROM_ADDRESS_ENABLE
   ed09d211d28e PCI: Add comments about ROM BAR updating
   7b65c3a84311 PCI: Remove pci_resource_bar() and pci_iov_resource_bar()
   6a5f3e664ac7 PCI: Separate VF BAR updates from standard BAR updates
   29d928785f5e x86/hyperv: Handle unknown NMIs on one CPU when unknown_nmi_panic
   456be98b4e79 scsi: ibmvscsis: Synchronize cmds at remove time
   94700877c25f scsi: ibmvscsis: Synchronize cmds at tpg_enable_store time
   189491f81cf6 scsi: ibmvscsis: Rearrange functions for future patches
   4d36f4859fa4 scsi: ibmvscsis: Clean up properly if target_submit_cmd/tmr fails
   29022860df8e scsi: ibmvscsis: Return correct partition name/# to client
   0ad1d7660a57 scsi: ibmvscsis: Issues from Dan Carpenter/Smatch
   61229e62c1aa igb: add i211 to i210 PHY workaround
   15ffc931eeb9 igb: Workaround for igb i210 firmware issue
   4b40611a9b7e xen: do not re-use pirq number cached in pci device msi msg data
   2382c1486c62 dmaengine: iota: ioat_alloc_chan_resources should not perform sleeping allocations.
   0e0f1d6fdb35 bpf: fix mark_reg_unknown_value for spilled regs on map value marking
   1889d6d9b5e7 bpf: fix regression on verifier pruning wrt map lookups
   b7f5aa1ca0be bpf: fix state equivalence
   1411707acb85 bpf: Detect identical PTR_TO_MAP_VALUE_OR_NULL registers
   9e38375a4b17 dccp: fix memory leak during tear-down of unsuccessful connection request
   beaa66cce556 tun: fix premature POLLOUT notification on tun devices
   98933eb36dd2 dccp/tcp: fix routing redirect race
   9bce26f224d8 bridge: drop netfilter fake rtable unconditionally
   683100ed4576 ipv6: avoid write to a possibly cloned skb
   4a8d3bb73a82 ipv6: make ECMP route replacement less greedy
   87c0286a07f9 mpls: Do not decrement alive counter for unregister events
   b61206e25302 mpls: Send route delete notifications when router module is unloaded
   47c8dc47c008 act_connmark: avoid crashing on malformed nlattrs with null parms
   ccb65adc6ca6 uapi: fix linux/packet_diag.h userspace compilation error
   b07eed8f7119 net/tunnel: set inner protocol in network gro hooks
   db6e7796186a vrf: Fix use-after-free in vrf_xmit
   7c0eaeec84d1 dccp: fix use-after-free in dccp_feat_activate_values
   5f79aab41ded net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump
   f157cc1d7251 net: fix socket refcounting in skb_complete_tx_timestamp()
   98fa3d2a8e39 net: fix socket refcounting in skb_complete_wifi_ack()
   07753bc6a281 tcp: fix various issues for sockets morphing to listen state
   4547f03d1a62 strparser: destroy workqueue on module exit
   51ae1fbcf173 dccp: Unlock sock before calling sk_free()
   0bcc319d554c ipv6: orphan skbs in reassembly unit
   3d87dce3dfd6 net: net_enable_timestamp() can be called from irq contexts
   62fe0521fb6c net: don't call strlen() on the user buffer in packet_bind_spkt()
   fa7c48fb3ad1 net: bridge: allow IPv6 when multicast flood is disabled
   bbaeb9b73fa8 tcp/dccp: block BH for SYN processing
   8f4db60c7fb5 mlxsw: spectrum_router: Avoid potential packets loss
   02595f472548 geneve: lock RCU on TX path
   0a40da4a74f1 vxlan: lock RCU on TX path
   feaa5bab4335 net: phy: Avoid deadlock during phy_error()
   837786cbbb60 l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv
   063893e4ec88 net sched actions: decrement module reference count after table flush.
   36931eb015ee ipv4: mask tos for input route
   a64407fafe09 vxlan: don't allow overwrite of config src addr
   f7081057d12c vti6: return GRE_KEY for vti6
   ee2da79de289 vxlan: correctly validate VXLAN ID against VXLAN_N_VID
   0c6e38e791e9 net/mlx5e: Fix wrong CQE decompression
   a63326646995 net/mlx5e: Do not reduce LRO WQE size when not using build_skb
   9e354abf9ce3 net/mlx5e: Register/unregister vport representors on interface attach/detach
   8a16224b4054 Linux 4.9.16
   c8186699527b IB/mlx5: Verify that Q counters are supported
   8fed8fc18839 ext4: don't BUG when truncating encrypted inodes on the orphan list
   39df5977fd41 rc: raw decoder for keymap protocol is not loaded on register
   21582cd0b64c dm: flush queued bios when process blocks to avoid deadlock
   d29e6215e5ab KVM: arm/arm64: Let vcpu thread modify its own active state
   9d89c20f3b8f KVM: s390: Fix guest migration for huge guests resulting in panic
   ce8ab5f168f6 serial: samsung: Continue to work if DMA request fails
   d0ef6ecee85e USB: serial: io_ti: fix information leak in completion handler
   449b0bb23708 USB: serial: io_ti: fix NULL-deref in interrupt callback
   f06b17020a84 USB: iowarrior: fix NULL-deref in write
   653418adaf10 USB: iowarrior: fix NULL-deref at probe
   6d6c5895f454 USB: serial: omninet: fix reference leaks at open
   0ab90ddba78a USB: serial: safe_serial: fix information leak in completion handler
   24db1c5a1c52 usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers
   d86376790752 usb: host: xhci-dbg: HCIVERSION should be a binary number
   03123df08e6b Revert "usb: gadget: uvc: Add missing call for additional setup data"
   5ce2e4ce4a8a usb: gadget: function: f_fs: pass companion descriptor along
   40192c96660f usb: ohci-at91: Do not drop unhandled USB suspend control requests
   accadd8164b7 usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox()
   808ee146d733 usb: dwc3: gadget: make Set Endpoint Configuration macros safe
   de90394b0c6b usb: gadget: dummy_hcd: clear usb_gadget region before registration
   ed99f5a09cc6 PCI: Prevent VPD access for QLogic ISP2722
   1ced52ead244 powerpc/xics: Work around limitations of OPAL XICS priority handling
   bc8d2eefe63f powerpc: Emulation support for load/store instructions on LE
   ac4666a7fd1a i2c: add missing of_node_put in i2c_mux_del_adapters
   06996254a605 dw2102: don't do DMA on stack
   56d91e106b13 efi/arm: Fix boot crash with CONFIG_CPUMASK_OFFSTACK=y
   ee6f7ee1e4cd ucount: Remove the atomicity from ucount->count
   8bb208d02acc tracing: Add #undef to fix compile error
   b72ae5ca7a8b cpmac: remove hopeless #warning
   04275d2a8af3 bcm63xx_enet: avoid uninitialized variable warning
   b7e968da04d7 MIPS: ralink: Remove unused rt*_wdt_reset functions
   dd2419e1cec0 MIPS: ralink: Remove unused timer functions
   f34064186f0e MIPS: ralink: Cosmetic change to prom_init().
   7b767f6b515d mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy
   976e40d7f6fe MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change
   dd2ef28eb76e MIPS: ip22: Fix ip28 build for modern gcc
   aff853abd298 MIPS: Update ip27_defconfig for SCSI_DH change
   23096c56787e MIPS: ip27: Disable qlge driver in defconfig
   ad8387a60228 MIPS: VDSO: avoid duplicate CAC_BASE definition
   5841e3d37db9 MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change
   2c1820ea8dcc crypto: improve gcc optimization flags for serpent and wp512
   ce4d67cb3e6e USB: serial: digi_acceleport: fix OOB-event processing
   e1533c46151c USB: serial: digi_acceleport: fix OOB data sanity check
   d962bf8dd954 Linux 4.9.15
   182ff0ebbdab drivers: hv: Turn off write permission on the hypercall page
   63e873679ba9 fat: fix using uninitialized fields of fat_inode/fsinfo_inode
   16ace91043bf mm: do not call mem_cgroup_free() from within mem_cgroup_alloc()
   1771fc58a35d thp: fix another corner case of munlock() vs. THPs
   2f18b39499b2 x86/tlb: Fix tlb flushing when lguest clears PGE
   91cdd9d79616 x86, mm: fix gup_pte_range() vs DAX mappings
   290215a2abfd libceph: use BUG() instead of BUG_ON(1)
   ff3bcdc9b5f0 drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT
   686ea5862eb6 drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code
   967e17bcc96d drm: Cancel drm_fb_helper_resume_work on unload
   9edc456fe621 drm: Cancel drm_fb_helper_dirty_work on unload
   868a747c77cb drm/i915/gvt: Disable access to stolen memory as a guest
   f72b751f4340 drm/atomic: fix an error code in mode_fixup()
   98620b564fad drm/imx: imx-tve: Do not set the regulator voltage
   3a654a85932f dmaengine: imx-sdma - correct the dma transfer residue calculation
   56a567de553e drm/vmwgfx: Work around drm removal of control nodes
   55f47122c2e8 drm/ttm: Make sure BOs being swapped out are cacheable
   ec8e40b117c3 drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058
   f96c10c2bd1b drm/ast: Fix AST2400 POST failure without BMC FW or VBIOS
   5da03582e212 drm/ast: Call open_key before enable_mmio in POST code
   54aa80e300d6 drm/ast: Fix test for VGA enabled
   0734a3213ca8 drm/amdgpu: add more cases to DCE11 possible crtc mask setup
   b507df2e236e mac80211: use driver-indicated transmitter STA only for data frames
   39813849996f mac80211: don't handle filtered frames within a BA session
   42e7f3771429 mac80211: don't reorder frames with SN smaller than SSN
   b116db0da1bd mac80211: flush delayed work when entering suspend
   9ad1571da2c0 nfit, libnvdimm: fix interleave set cookie calculation
   a7b9c9ddb6f4 xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD
   019c088dc403 pwm: pca9685: Fix period change with same duty cycle
   1f2f16c7b7e3 nlm: Ensure callback code also checks that the files match
   4f77c55c3ac2 drivers/pci/hotplug: Fix initial state for empty slot
   1afe7b4ac3df drivers/pci/hotplug: Handle presence detection change properly
   17ea11d55322 target: Fix NULL dereference during LUN lookup + active I/O shutdown
   54eff720c99f pci/hotplug/pnv-php: Disable surprise hotplug capability on conflicts
   4ee3508f7abe pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot()
   5da90d0018a7 ceph: remove req from unsafe list when unregistering it
   ff61e0123b7d ktest: Fix child exit code processing
   1f2ca141ec53 memory/atmel-ebi: Fix ns <-> cycles conversions
   b2b0f6ffd3f9 orangefs: Use RCU for destroy_inode
   d3381fab77cb fs: Better permission checking for submounts
   48e2181b0b8d IB/srp: Fix race conditions related to task management
   d5d1d2cc4be7 IB/srp: Avoid that duplicate responses trigger a kernel bug
   516a12ab11bd IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS
   04f16db056d0 IB/mlx5: Fix out-of-bound access
   2e539fa49efd IB/IPoIB: Add destination address when re-queue packet
   1626076b8e1c IB/ipoib: Fix deadlock between rmmod and set_mode
   808e83e5add1 mnt: Tuck mounts under others instead of creating shadow/side mounts.
   c9b3f3173fa5 brcmfmac: fix incorrect event channel deduction
   53d43706f2ba cxl: fix nested locking hang during EEH hotplug
   411d0b0ced69 cxl: Prevent read/write to AFU config space while AFU not configured
   60037aa689ba net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put()
   e067f68db256 s390: use correct input data address for setup_randomness
   321081d522d3 s390: make setup_randomness work
   9d38fd6a4f6c s390: TASK_SIZE for kernel threads
   dc31841fcdce s390/chsc: Add exception handler for CHSC instruction
   91cfcaa6ed46 s390/kdump: Use "LINUX" ELF note name instead of "CORE"
   b848102542f5 s390/dcssblk: fix device size calculation in dcssblk_direct_access()
   5cec5e32ba56 s390/qdio: clear DSCI prior to scanning multiple input queues
   519b6cead21e Bluetooth: Add another AR3012 04ca:3018 device
   7c3bab189c16 KVM: VMX: use correct vmcs_read/write for guest segment selector/base
   035dcc8e87f6 KVM: s390: Disable dirty log retrieval for UCONTROL guests
   c4c590be4944 serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards
   e5b977876155 tty: n_hdlc: get rid of racy n_hdlc.tbuf

(From OE-Core rev: 9b91f4ed409aeee3fa856c9ae1c5bdb3ad73f6cd)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Bruce Ashfield
962f419195 linux-yocto/4.4: update to v4.4.56
Integrating the korg release with the following shortlog:

   0136bca4e0f6 Linux 4.4.56
   99d403faba47 futex: Add missing error handling to FUTEX_REQUEUE_PI
   44854c191e2c futex: Fix potential use-after-free in FUTEX_REQUEUE_PI
   62f57041fbdf x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm
   8e0ec20539f8 x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y
   3a19419c50c6 fscrypto: lock inode while setting encryption policy
   fd74e8d258da fscrypt: fix renaming and linking special files
   c10ffe988f15 net sched actions: decrement module reference count after table flush.
   676fe978525d dccp: fix memory leak during tear-down of unsuccessful connection request
   4ab956b56133 dccp/tcp: fix routing redirect race
   56f9b9502f2d bridge: drop netfilter fake rtable unconditionally
   aed728c38c48 ipv6: avoid write to a possibly cloned skb
   5f8bc3856e28 ipv6: make ECMP route replacement less greedy
   b57955ea30e1 mpls: Send route delete notifications when router module is unloaded
   710fbeb3f5c5 act_connmark: avoid crashing on malformed nlattrs with null parms
   6c72458ab428 uapi: fix linux/packet_diag.h userspace compilation error
   e671f1cc588f vrf: Fix use-after-free in vrf_xmit
   d0ebde92fbeb dccp: fix use-after-free in dccp_feat_activate_values
   ec4d8692b76e net: fix socket refcounting in skb_complete_tx_timestamp()
   9e7683301bee net: fix socket refcounting in skb_complete_wifi_ack()
   2681a7853ad7 tcp: fix various issues for sockets morphing to listen state
   9216632bf4a0 dccp: Unlock sock before calling sk_free()
   a70c32859704 net: net_enable_timestamp() can be called from irq contexts
   f331d6445a3e net: don't call strlen() on the user buffer in packet_bind_spkt()
   2cd0afc64e33 l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv
   354f79125f12 ipv4: mask tos for input route
   f1b3aae1f1bf vti6: return GRE_KEY for vti6
   51a219a1371e vxlan: correctly validate VXLAN ID against VXLAN_N_VID
   0c0be310ba29 netlink: remove mmapped netlink support
   28ec98bc2e4a Linux 4.4.55
   1c5265be54d3 ext4: don't BUG when truncating encrypted inodes on the orphan list
   cd8ad4d9eb6d dm: flush queued bios when process blocks to avoid deadlock
   66dd58f56eab nfit, libnvdimm: fix interleave set cookie calculation
   a084aeef5633 s390/kdump: Use "LINUX" ELF note name instead of "CORE"
   b0e85701a776 KVM: s390: Fix guest migration for huge guests resulting in panic
   61fbad6a28fd mvsas: fix misleading indentation
   72ca0ab30680 serial: samsung: Continue to work if DMA request fails
   72bb2b96b856 USB: serial: io_ti: fix information leak in completion handler
   e71c7bad6844 USB: serial: io_ti: fix NULL-deref in interrupt callback
   6498086195b9 USB: iowarrior: fix NULL-deref in write
   179295c38d23 USB: iowarrior: fix NULL-deref at probe
   54f11a9662b6 USB: serial: omninet: fix reference leaks at open
   3cdc94638746 USB: serial: safe_serial: fix information leak in completion handler
   cf09c7d60ccc usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers
   40c5634ffe3d usb: host: xhci-dbg: HCIVERSION should be a binary number
   4a1a3bb70fb4 usb: gadget: function: f_fs: pass companion descriptor along
   10af24856503 usb: dwc3: gadget: make Set Endpoint Configuration macros safe
   f47b97f2cdaa usb: gadget: dummy_hcd: clear usb_gadget region before registration
   2ca39d130015 powerpc: Emulation support for load/store instructions on LE
   074893495b72 tracing: Add #undef to fix compile error
   127651058594 MIPS: Netlogic: Fix CP0_EBASE redefinition warnings
   2e4aff2405af MIPS: DEC: Avoid la pseudo-instruction in delay slots
   5fad17434465 mm: memcontrol: avoid unused function warning
   5e45d834f762 cpmac: remove hopeless #warning
   32883383f5e0 MIPS: ralink: Remove unused rt*_wdt_reset functions
   4b91e7a2a9a7 MIPS: ralink: Cosmetic change to prom_init().
   3dc8f1e3a8f2 mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy
   d2a8d746ae95 MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change
   c018595d83a3 MIPS: ip22: Fix ip28 build for modern gcc
   7a6a965f350e MIPS: Update ip27_defconfig for SCSI_DH change
   8ed0fdcc0c11 MIPS: ip27: Disable qlge driver in defconfig
   adc48c710b7e MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change
   e041ad066440 crypto: improve gcc optimization flags for serpent and wp512
   a8cb5c02a20f USB: serial: digi_acceleport: fix OOB-event processing
   4d95645f3dd5 USB: serial: digi_acceleport: fix OOB data sanity check

(From OE-Core rev: aac3bd4b9a3a2dca42eff68beec1b075ae8e532a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Bruce Ashfield
4d217d942a linux-yocto/4.10: update to v4.10.5
Integrating the korg -stable release with the following shortlog
summary:

   034612ee057c Linux 4.10.5
   7814c9bd217a crypto: s5p-sss - Fix spinlock recursion on LRW(AES)
   4310604e21dd crypto: powerpc - Fix initialisation of crc32c context
   de3c88fa6a29 locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y
   d80e46d90742 futex: Add missing error handling to FUTEX_REQUEUE_PI
   575caefc01f3 futex: Fix potential use-after-free in FUTEX_REQUEUE_PI
   57ad6c8ecb1f x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm
   343146100991 x86/intel_rdt: Put group node in rdtgroup_kn_unlock
   7621600b480e x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y
   bd5ee529d0be x86/tsc: Fix ART for TSC_KNOWN_FREQ
   a0256e0c0dc6 x86/unwind: Fix last frame check for aligned function stacks
   5b115b8b53d8 drm/i915/lspcon: Fix resume time initialization due to unasserted HPD
   ebd9dbabb5fc drm/i915/gen9+: Enable hotplug detection early
   b9208ab35001 drm/i915/lspcon: Enable AUX interrupts for resume time initialization
   1740a61cf09e irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065
   ef217ea7f1fb arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs
   f70ce6c63e02 dccp: fix memory leak during tear-down of unsuccessful connection request
   a79fa23c82a1 tun: fix premature POLLOUT notification on tun devices
   b34c9f7fe45e dccp/tcp: fix routing redirect race
   7ebf301d8476 net: use net->count to check whether a netns is alive or not
   47808872e25b bridge: drop netfilter fake rtable unconditionally
   fdb09132bdea ipv6: avoid write to a possibly cloned skb
   b74b74e2087e ipv6: make ECMP route replacement less greedy
   ed44bf89ab5f mpls: Do not decrement alive counter for unregister events
   61cc1778ad62 mpls: Send route delete notifications when router module is unloaded
   8e9bacd9add7 act_connmark: avoid crashing on malformed nlattrs with null parms
   cdb9caeb7177 amd-xgbe: Enable IRQs only if napi_complete_done() is true
   110e7778ea32 uapi: fix linux/packet_diag.h userspace compilation error
   5344ec08726a net/tunnel: set inner protocol in network gro hooks
   7360a1fda857 vrf: Fix use-after-free in vrf_xmit
   be18cce7e665 team: use ETH_MAX_MTU as max mtu
   92ab4dea27c1 dccp: fix use-after-free in dccp_feat_activate_values
   a6ff06211b84 net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump
   27d0c80f1089 net: fix socket refcounting in skb_complete_tx_timestamp()
   80691f3808fc net: fix socket refcounting in skb_complete_wifi_ack()
   81a43770b456 tcp: fix various issues for sockets morphing to listen state
   178e86ff331d strparser: destroy workqueue on module exit
   aa677aafef5c bonding: use ETH_MAX_MTU as max mtu
   0ee7666f639a amd-xgbe: Don't overwrite SFP PHY mod_absent settings
   9919f222968c amd-xgbe: Be sure to set MDIO modes on device (re)start
   4381ffdfb32b amd-xgbe: Stop the PHY before releasing interrupts
   7558c56cfe35 dccp: Unlock sock before calling sk_free()
   a8ee7ed1b03d ipv6: orphan skbs in reassembly unit
   eb39579a675a net: net_enable_timestamp() can be called from irq contexts
   fa8bc7b48168 net: don't call strlen() on the user buffer in packet_bind_spkt()
   e89adaa7d0cf net: bridge: allow IPv6 when multicast flood is disabled
   da2da823497c tcp/dccp: block BH for SYN processing
   8f05976cbfba mlxsw: spectrum_router: Avoid potential packets loss
   40f9f783920f geneve: lock RCU on TX path
   d6705c8c0cb0 vxlan: lock RCU on TX path
   4c94beba3aee l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv
   639fdd961af0 net sched actions: decrement module reference count after table flush.
   467bec3656bd sctp: set sin_port for addr param when checking duplicate address
   91f4f5bfaa29 ipv4: mask tos for input route
   0a33d62a6f9d ipv4: add missing initialization for flowi4_uid
   2b5a48d6c6eb vxlan: don't allow overwrite of config src addr
   fef3f97a58b2 vti6: return GRE_KEY for vti6
   36ec2150ae0a vxlan: correctly validate VXLAN ID against VXLAN_N_VID
   f44877534257 sctp: deny peeloff operation on asocs with threads sleeping on it
   55bb0dd0256c net/mlx5e: Fix wrong CQE decompression
   c0dc4855e92b net/mlx5e: Update MPWQE stride size when modifying CQE compress state
   c34c17861ab1 net/mlx5e: Fix broken CQE compression initialization
   850a1bfbf35d net/mlx5e: Do not reduce LRO WQE size when not using build_skb
   96b457b80526 net/mlx5e: Register/unregister vport representors on interface attach/detach
   8ea22fb3114d Linux 4.10.4
   42b16fffb79b IB/mlx5: Verify that Q counters are supported
   dc37bb8db47b ext4: don't BUG when truncating encrypted inodes on the orphan list
   1cda29082a30 rc: raw decoder for keymap protocol is not loaded on register
   22fc2f9efa27 dm: flush queued bios when process blocks to avoid deadlock
   2030aedc5404 serial_ir: ensure we're ready to receive interrupts
   81383a00ce83 drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var
   523379cd6b65 KVM: arm/arm64: Let vcpu thread modify its own active state
   1f9175b9ee7c KVM: s390: Fix guest migration for huge guests resulting in panic
   45dc259a4734 serial: samsung: Continue to work if DMA request fails
   7daf817d076d USB: serial: io_ti: fix information leak in completion handler
   9bb084c79f20 USB: serial: io_ti: fix NULL-deref in interrupt callback
   14bca59b1660 USB: iowarrior: fix NULL-deref in write
   5ec59765f503 USB: iowarrior: fix NULL-deref at probe
   cc6ba470ebf8 USB: serial: omninet: fix reference leaks at open
   dc944b117e6c USB: serial: safe_serial: fix information leak in completion handler
   a062cb395946 usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers
   7202353681d5 usb: host: xhci-dbg: HCIVERSION should be a binary number
   222095ea6487 Revert "usb: gadget: uvc: Add missing call for additional setup data"
   d60b1053a5bb usb: gadget: function: f_fs: pass companion descriptor along
   a0f69738c10e usb: ohci-at91: Do not drop unhandled USB suspend control requests
   25b1a4fdd8ae usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox()
   894a0dfaaef7 usb: dwc3: gadget: make Set Endpoint Configuration macros safe
   c73210fdd40d usb: gadget: dummy_hcd: clear usb_gadget region before registration
   b5ea65b25a33 PCI: Prevent VPD access for QLogic ISP2722
   27469baaef1a powerpc/xics: Work around limitations of OPAL XICS priority handling
   74e236a5bd99 powerpc/booke: Fix boot crash due to null hugepd
   1006828d1104 powerpc: Emulation support for load/store instructions on LE
   80eae855b694 i2c: add missing of_node_put in i2c_mux_del_adapters
   be20197df07d dw2102: don't do DMA on stack
   7399dec22e72 efi/arm: Fix boot crash with CONFIG_CPUMASK_OFFSTACK=y
   da603aadd53a ucount: Remove the atomicity from ucount->count
   b7e9ef5cf4d9 tracing: Add #undef to fix compile error
   3eded4f5bab1 i2c: bcm2835: Avoid possible NULL ptr dereference
   393be4bcb329 MIPS: ralink: Remove unused rt*_wdt_reset functions
   4ddb085a9b0a MIPS: ralink: Remove unused timer functions
   e1d9f7592b80 MIPS: ralink: Cosmetic change to prom_init().
   02b210c18667 mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy
   ee9cc4c573d5 MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change
   9ad686e6937a MIPS: ip22: Fix ip28 build for modern gcc
   715bb84b6ff6 MIPS: Update ip27_defconfig for SCSI_DH change
   b57e5d5daf99 MIPS: ip27: Disable qlge driver in defconfig
   2260890bb6c7 MIPS: VDSO: avoid duplicate CAC_BASE definition
   d2b0d01a11b3 MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change
   aab419fc3980 crypto: improve gcc optimization flags for serpent and wp512
   5af39bb8492f USB: serial: digi_acceleport: fix OOB-event processing
   2d32308355a8 USB: serial: digi_acceleport: fix OOB data sanity check
   a3137ad2e14f ARM: qcom_defconfig: Enable RPM/RPM-SMD clocks
   fa190b2a7f87 iio: 104-quad-8: Fix off-by-one error when addressing flag register
   adfb98cd3e93 Linux 4.10.3
   070dfed4d04e drivers: hv: Turn off write permission on the hypercall page
   9cafe6bb9aa2 fat: fix using uninitialized fields of fat_inode/fsinfo_inode
   0d9cc8aa34ad kasan: resched in quarantine_remove_cache()
   44c95966fb81 mm: do not call mem_cgroup_free() from within mem_cgroup_alloc()
   933f0f3ad49a thp: fix another corner case of munlock() vs. THPs
   459bc5065631 x86/tlb: Fix tlb flushing when lguest clears PGE
   ac312c7e0a90 x86, mm: fix gup_pte_range() vs DAX mappings
   0af36e434a3c libceph: use BUG() instead of BUG_ON(1)
   cde805106887 drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT
   5eeb3c0eb7ec drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence()
   d11d14c5fc0b drm/i915: Check for timeout completion when waiting for the rq to submitted
   e2a946bb97bb drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code
   c50f65f12705 drm/i915: Recreate internal objects with single page segments if dmar fails
   4a8a58eed276 drm: Cancel drm_fb_helper_resume_work on unload
   616c9bd8b288 drm: Cancel drm_fb_helper_dirty_work on unload
   cdb4f19aae0f drm/i915/gvt: Disable access to stolen memory as a guest
   f7189c6bb9f2 drm/atomic: fix an error code in mode_fixup()
   99eb5a10a7f7 drm/imx: imx-tve: Do not set the regulator voltage
   5e0b0839f3ce drm/vmwgfx: Work around drm removal of control nodes
   e6d03fc74541 drm/ttm: Make sure BOs being swapped out are cacheable
   0586602fc10f drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058
   68279b15119b drm/radeon: handle vfct with multiple vbios images
   e51353092182 drm/ast: Fix AST2400 POST failure without BMC FW or VBIOS
   cd8183923984 drm/ast: Call open_key before enable_mmio in POST code
   f38a3c87d6ee drm/ast: Fix test for VGA enabled
   af7fe73a14fc drm/ast: Handle configuration without P2A bridge
   0f9e6fc5b76d Revert "drm/amdgpu: update tile table for oland/hainan"
   2deaea3e0d07 drm/amdgpu/pm: check for headless before calling compute_clocks
   33d129a09aae drm/amdgpu: add more cases to DCE11 possible crtc mask setup
   fc758b77745e mac80211: use driver-indicated transmitter STA only for data frames
   4a6d105fb277 mac80211: don't handle filtered frames within a BA session
   df7db05561f6 mac80211: don't reorder frames with SN smaller than SSN
   f5bf0a15c63e mac80211: flush delayed work when entering suspend
   ea708e9581d8 nfit, libnvdimm: fix interleave set cookie calculation
   3f56c495a42e xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD
   5a4312c2a651 pwm: pca9685: Fix period change with same duty cycle
   c634f19b9501 nlm: Ensure callback code also checks that the files match
   1a02f33a6302 drivers/pci/hotplug: Fix initial state for empty slot
   487163f3f316 drivers/pci/hotplug: Handle presence detection change properly
   f9b90f204749 target: Fix NULL dereference during LUN lookup + active I/O shutdown
   81bd29553ee3 pci/hotplug/pnv-php: Disable surprise hotplug capability on conflicts
   7e8b77528445 pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot()
   ab3398e159fd ceph: remove req from unsafe list when unregistering it
   0569b5ed3e73 ktest: Fix child exit code processing
   9dbea7f7bcec tracing: Fix return value check in trace_benchmark_reg()
   8a915b3ccbb2 memory/atmel-ebi: Fix ns <-> cycles conversions
   a4755943204e orangefs: Use RCU for destroy_inode
   2708a2d33e04 Btrfs: fix data loss after truncate when using the no-holes feature
   ade784b0f3a7 fs: Better permission checking for submounts
   35065a1f6ec2 IB/srp: Fix race conditions related to task management
   a9397e4365d6 IB/srp: Avoid that duplicate responses trigger a kernel bug
   a51892e0c136 IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS
   e0d15d562ee7 IB/mlx5: Fix out-of-bound access
   b92c4a09f589 IB/IPoIB: Add destination address when re-queue packet
   91948b0944af IB/ipoib: Fix deadlock between rmmod and set_mode
   6de9d08a9718 mnt: Tuck mounts under others instead of creating shadow/side mounts.
   f03d5078063c brcmfmac: fix incorrect event channel deduction
   8cdfa0d8b0f5 cxl: fix nested locking hang during EEH hotplug
   e5603a5c6deb cxl: Prevent read/write to AFU config space while AFU not configured
   4144a307cb46 net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put()
   c9ac3e943deb s390: use correct input data address for setup_randomness
   0075504d83ce s390: make setup_randomness work
   ca54585dd5dd s390/topology: correct allocation of topology information
   c61a874ea0ec s390: TASK_SIZE for kernel threads
   162668c000ab s390/chsc: Add exception handler for CHSC instruction
   836f9814f092 s390/kdump: Use "LINUX" ELF note name instead of "CORE"
   1f2659aa7dfe s390/dcssblk: fix device size calculation in dcssblk_direct_access()
   3c3c4d25c589 s390/qdio: clear DSCI prior to scanning multiple input queues
   ac7c6461addb phy: qcom-ufs: Fix misplaced jump label
   04b5101049ac phy: qcom-ufs: Don't kfree devres resource
   a6ed492d6cca Bluetooth: Add another AR3012 04ca:3018 device
   3904b32cfe50 KVM: VMX: use correct vmcs_read/write for guest segment selector/base
   f89d6db0c50c KVM: s390: Disable dirty log retrieval for UCONTROL guests
   c9dc3873046e serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards
   72e544022383 tty: n_hdlc: get rid of racy n_hdlc.tbuf

(From OE-Core rev: 22dc7a724622c8670cbccca630902014ebc26eb0)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:37:27 +01:00
Paul Eggleton
8b1826e78a bitbake: lib/bb/codeparser: ensure BufferedLogger respects target logging level
BufferedLogger was sending log records to the target logger without
checking if the logger is enabled for the level of the record - and
handle() doesn't check this either (it's normally checked earlier when
the relevant log function is called e.g. logger.debug()), leading for
example to debug messages from codeparser getting printed when the log
level for the main BitBake logger was set to logging.WARNING.

(Bitbake rev: 968a77388dd1a24c1dadec6ce49bf53ebb5b643f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:36:43 +01:00
Richard Purdie
bb826208e5 bitbake: fetch2: Ensure we don't have file downloads overwriting each other
Imagine you have an sstate mirror accessed over http and an SSTATE_MIRRORS
which maps file:// urls to http:// urls.

File urls set donestampneeded = False, http urls don't. This can result in
races in the try_mirror_url() code since it will trigger new downloads after
aquiring the lockfile as verify_donestamp() doesn't look at origud and there
is no donestamp.

verify_donestamp() already has code to look at origud, we're just missing
some code at the start of the function to do this. Fix it to avoid
these races.

(Bitbake rev: b8b14d975a254444461ba857fc6fb8c725de8874)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-29 16:36:43 +01:00
Ross Burton
415b72ffcb dnf: remove systemd units in nativesdk builds
If the DISTRO_FEATURES contain systemd then the systemd class won't delete the
units for us. Until the class is fixed to do this automatically, delete them
explicitly.

(From OE-Core rev: d68a86d87aa017dd0fecb0f626d22711efefcd3f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 10:34:37 +01:00
Patrick Ohly
c76abc379e oeqa: allow persistent image writes in runqemu()
By default, QemuRunner avoids modifying the image files that it boots
into by enabling the qemu snapshot mode. However, some tests may want
to test changes that must persists across reboots, so this mode
should be optional.

This can be combined by copying the image file to a temporary location
first and then booting with that copy. It's also useful when testing
with additional drives attached to a virtual machine.

QemuTinyRunner doesn't use the snapshot parameter and therefore ignores
the new parameter.

Long term, a better way of passing these various configuration
parameters should be used, and perhaps QemuRunner and QemuTinyRunner
can be merged into one again to avoid code duplication. But for now
the patch follows the exiting style.

Also beware that QemuTarget.start() now acts in two different modes
(with or without explicit launch command), and depending on that mode
parameters like discard_writes must be ignored, i.e. not get passed to
launch().

(From OE-Core rev: 969d079a33a57f5a8f7af86d7bab04d35ab07584)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 10:34:37 +01:00
Patrick Ohly
9a94208600 oeqa: allow customizing image used by runqemu()
runqemu() takes all parameters for the virtual machine from the
variables of the given recipe. By allowing the caller to provide a
hash with variables that get applied locally, the caller gets more
control.

Here's the intended usage:

   <prepare internal-image in self.resultdir>
   overrides = {
        'DEPLOY_DIR_IMAGE': self.resultdir,
        'IMAGE_LINK_NAME': 'internal-image-%s' % self.image_arch,
   }
   with runqemu('refkit-installer-image', ssh=False,
                 overrides=overrides) as qemu:
       ....

This can be used to replace the image completely with something else
or to copy it before allowing runqemu() to write into it.

(From OE-Core rev: 4c6ba32abd6b9de33f4b8a0b87e8a56432ed7825)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 10:34:37 +01:00
Patrick Ohly
41b67f1176 oeqa: allow extending qemuparams="..."
Sometimes it is useful to reconfigure the qemu virtual machine
directly. runqemu has the "qemuparams" parameter for that, and the
underlying start() methods also supported modifying that via their
"params" parameter. Only the runqemu() wrapper function lacked
a way to specify additional parameters.

One potential usage is to attach additional disks.

(From OE-Core rev: b2a1cf09ea65ed6f561886b1b4241f9adf3e5709)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 10:34:36 +01:00
Andre McCurdy
9a3f10590b bitbake.conf: sort HOSTTOOLS and remove duplicates
Cleanup only, no functional changes.

(From OE-Core rev: 23dd96a3a175cecde258dc6d8263fbe7b308b58e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:54:49 +01:00
Leonardo Sandoval
e6adeac7aa recipes-kernel: Skip kernel version check on kernel templates
Currently, SRCREV is set to AUTOREV, causing mismatch between PV and the kernel
version shown in the makefile (see below to see the bitbake log). The solution
is to skip this check, suggesting to remove it once SRCREV is locked.

ERROR: linux-yocto-4.10+gitAUTOINC+01f18cba44_53be19cad6-r0.1 do_kernel_version_sanity_check: Package Version (4.10+gitAUTOINC+01f18cba44_53be19cad6) does not match of kernel being built (4.10.5). Please update the PV variable to match the kernel source or set KERNEL_VERSION_SANITY_SKIP="1" in your recipe.
ERROR: linux-yocto-4.10+gitAUTOINC+01f18cba44_53be19cad6-r0.1 do_kernel_version_sanity_check: Function failed: do_kernel_version_sanity_check (log file is located at /home/lsandov1/poky2/build/tmp/work/myqemu-poky-linux/linux-yocto/4.10+gitAUTOINC+01f18cba44_53be19cad6-r0.1/temp/log.do_kernel_version_sanity_check.26904)
ERROR: Logfile of failure stored in: /home/lsandov1/poky2/build/tmp/work/myqemu-poky-linux/linux-yocto/4.10+gitAUTOINC+01f18cba44_53be19cad6-r0.1/temp/log.do_kernel_version_sanity_check.26904
ERROR: Task (/home/lsandov1/poky2/meta/recipes-kernel/linux/linux-yocto_4.10.bb:do_kernel_version_sanity_check) failed with exit code '1

[YOCTO #11064]

(From meta-yocto rev: 79bfd911f826c6c7e26827bb200dd69e6f567b17)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:52:14 +01:00
Patrick Ohly
759fcd204f oeqa: QEMU_USE_KVM can list machines
Previously, QEMU_USE_KVM=True enabled the use of kvm only when "x86"
was in the MACHINE name. That is too limiting, because for example
intel-corei7-64 can also use kvm but it wasn't possible to enable that
without changing OE-core.

That traditional usage is still supported. In addition, QEMU_USE_KVM
can be set to a list of space-separated MACHINE names for which kvm is
to be enabled.

(From OE-Core rev: d5421dd00b9cf785fa77e77c6c739e8bd8822fa3)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:13 +01:00
Patrick Ohly
7f6b1cd2c1 oeqa: tolerate interrupted select() while waiting for qemu
Sometimes, the OEQA utility code aborts with:

   ...
   File ".../meta/lib/oeqa/utils/qemurunner.py", line 131, in start
     return self.launch(launch_cmd, qemuparams=qemuparams, get_ip=get_ip, extra_bootparams=extra_bootparams)
   File ".../meta/lib/oeqa/utils/qemurunner.py", line 259, in launch
     sread, swrite, serror = select.select(socklist, [], [], 5)
  InterruptedError: [Errno 4] Interrupted system call

strace shows that this is because of a SIGWINCH:

   Connection from 127.0.0.1:52668
   select(21, [20], [], [], {5, 0})        = ? ERESTARTNOHAND (To be restarted if no handler)
   --- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---

This is related to some special conditions:
 * whether qemu opens a graphical console window (enabled in Poky by default)
 * where that window gets opened
 * whether the window manager changes the size of the shell window (mine
   is a tiling window manager and reorders and resizes windows automatically)

Ignoring the interrupted system calls avoids the problem. Code elsewhere (for example,
run() in ssh.py) already does the same thing.

(From OE-Core rev: 44fe106baf5fd5aebe26c5f28004e2b18d839b7c)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:13 +01:00
Alexander Kanavin
8c1c392ca3 dnf: move the entire dnf/rpm4 stack to Python 3
[YOCTO #11180]

(From OE-Core rev: bedcdc4cf921b70a8cfb16c6684668d0ac9e1942)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:13 +01:00
Alexander Kanavin
3d29214b20 python3: do not hardcode "lib" into site-packages search path
This was not working in multilib or x32 setups and amazingly, was not
noticed until now.

The actual modification is in Lib/site.py, the rest is just devtool moving things around in the patch.

(From OE-Core rev: f60d261b682f1526fb7a754c425300954ef85042)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:13 +01:00
Stephano Cetola
b907e25fd9 insane.bbclass: error if file-rdeps not met
Missing runtime dependencies should result in an error rather than a
warning. Indeed, if RPM is listed in PACKAGE_CLASSES, it will throw
an error rather than install packages with missing dependencies. This
functionality should be consistent across package types. This patch
ensures that an error will be thrown.

[YOCTO #10949]

(From OE-Core rev: 90bc7bfa1b27cd5ea2480463f7631f179a296b10)

Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:13 +01:00
Stephano Cetola
243693be54 devtool: open kconfig fragment in binary mode
When devtool writes to the kconfig fragment, it writes the output of
the diff command returned from pipe.communicate(). This function
returns binary objects. We should open the kconfig fragment file in
binary mode if we expect to write binary objects to it.

[YOCTO #11171]

(From OE-Core rev: 72bec63ab0e78753fb6ed1794d11beef9485c014)

Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:12 +01:00
Lauren Post
020e35cfd9 eudev: restore userspace firmware loading support
This sycncs eudev with systemd. This is required for old kernels to
work and does same backport as did in:

,----
| commit 31163abc7bedd477c1aad10e6d1f47dbee194513
| Author: Jonathan Liu <net147@gmail.com>
| Date:   Thu Mar 19 15:38:32 2015 +1100
|
|     systemd: restore userspace firmware loading support
|
|     This changes the minimum required Linux version from 3.7 back to 3.0.
|
|     [YOCTO #7409]
|
|     Signed-off-by: Jonathan Liu <net147@gmail.com>
|     Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
`----

(From OE-Core rev: d6b139ef1b52ee4842f8706c1b8b950cc50a3d54)

Signed-off-by: Lauren Post <lauren.post@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:12 +01:00
Mariano Lopez
c711caae83 oeqa/core/loader.py: Do not import underscore modules by default
Underscore modules are meant to be run only when manually added to the test
suite, so far another mechanisms are in place to make this happen with
runtime, sdk, and esdk (mostly in test* bbclasses).

This will add such functionality in the core framework so other specific
frameworks can take use this without adding something else.

[YOCTO #10980]

(From OE-Core rev: 2c6eac774768aa610a8b3784483b9e90fb629c2d)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-28 08:43:12 +01:00
Diana Thayer
71e48a3617 bitbake: main: Improve -v and -D option documentation
Expanded and clarify documentation for the -v, --verbose and -D, --debug
options.

[YOCTO #9962]

(Bitbake rev: 921592026c69287cdb40ffd90944d5944f28e2c3)

Signed-off-by: Diana Thayer <garbados@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:23:19 +01:00
Paul Eggleton
542eb4731c bitbake: tinfoil: enable client-side logger handling by default
If you had a script that uses tinfoil and it failed to connect to the
BitBake server, you did't see any of the expected messages - this was
because client-side logging wasn't being handled at all. Since you'll
almost always want this when using tinfoil, have it use the new
bb.msg.logger_create() function to enable client-side logging by
default.

Relates to [YOCTO #11185].

(Bitbake rev: 824e73e0f3eaa96b4d84da7e31f9a17ce5c5d7ee)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:23:19 +01:00
Paul Eggleton
614cbeddc8 bitbake: lib/bb/msg: introduce logger_create() function
We use this code to set up a logger with colour in a number of different
places, so create one function that does this and make some of bitbake's
utility scripts use it.

(Bitbake rev: b1ba7d1cc8ec33e2d081230287abd07f52136097)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:23:19 +01:00
Paul Eggleton
f41740ee8e bitbake: fetch2/git: prevent recursion on getting latest revision
We call git ls-remote to get the latest revision from a git repository,
however by calling runfetchcmd() we can end up recursively running
git ls-remote a number of times with OE e.g. if ${SRCPV} is in PV, ${PV}
is in WORKDIR, and ${WORKDIR} is in PATH (as a result of recipe-specific
sysroots), our call to runfetchcmd() exports PATH so _lsremote() will
get called again - with the end result that we run git ls-remote 30
times in quick succession (!). Prevent that from happening by using a
guard variable and returning a dummy value if it's called recursively.

Fixes [YOCTO #11185].

(Bitbake rev: ff1ccd1db5d70b3fc9ad0d3e8f3d7b804c22bf36)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:23:19 +01:00
Joshua Lock
58a02e73d0 oeqa/selftest: don't use cleanall in selftests
* devtool: oeqa.selftest.devtool.DevtoolTests is taking 4 or more hours on the
  autobuilder because the cleanall call deletes the tarball of the kernel
  source, forcing a large clone which is especially long on an NFS mount.

  The cleanall invocation isn't really required here and switching to clean
  instead should avoid hours of re-cloning the same repository each time we
  run oe-selftest on the autobuilder.
* buildoptions: We only need to ensure the first image isn't an incremental
  image, clean will suffice here.
* runtime-test: no need to clean up the artefacts generated during the test,
  let's leave that to a higher level process rather than using the cleanall
  hammer.

(From OE-Core rev: 9c948d3de08f158387e08a17cdc0cedc7d26bb54)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:22:51 +01:00
David Vincent
8fdbf9fcf2 ifupdown: Fix initscript
ifupdown does not provide an initscript so this recipe should not
inherit update-rc.d class. Instead, we rely on init-ifupdown recipe to
startup networking.

(From OE-Core rev: 4e6bf6ea766a0d47f96b3c4682d4f7e81a5763e7)

Signed-off-by: David Vincent <freesilicon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:22:51 +01:00
Robert Yang
94ffc8e017 rpm: change PROVIDES rpm-build to RPROVIDES
The rpm 5 has a rpm-build package, so here should use RPROVIDES rather
than PROVIDES to keep compatibility.

(From OE-Core rev: de2ee88f9cc0fc8d6d92ac2a79364e79a99ae98e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:22:50 +01:00
Otavio Salvador
fd8d814027 mesa: Add Etnaviv and i.MX Gallium backend PACKAGECONFIG options
The MESA 17.0 has Etnaviv and i.MX support. Expose them in
PACKAGECONFIG for use.

(From OE-Core rev: b77c0355e272e9e7a7ab625eef27a8717225b132)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:22:50 +01:00
Otavio Salvador
633564b017 mesa: Update to 17.0.2
This is a bugfix only release.

,----
| Bug fixes
|
| Bug 68504 - 9.2-rc1 workaround for clover build failure on ppc/altivec: cannot convert 'bool' to '__vector(4) __bool int' in return
| Bug 97988 - [radeonsi] playing back videos with VDPAU exhibits deinterlacing/anti-aliasing issues not visible with VA-API
| Bug 99484 - Crusader Kings 2 - Loading bars, siege bars, morale bars, etc. do not render correctly
| Bug 99715 - Don't print: "Note: Buggy applications may crash, if they do please report to vendor"
| Bug 100049 - "ralloc: Make sure ralloc() allocations match malloc()'s alignment." causes seg fault in 32bit build
`----

(From OE-Core rev: 7559db30e161851ea944763ee4c1adb17ef6a797)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-27 20:22:50 +01:00
1087 changed files with 36242 additions and 13827 deletions

View File

@@ -255,21 +255,16 @@ Reset the board
and flash it to NOR flash as described above.
6. Set fdtaddr and loadaddr. This is not necessary if you set them before.
=> setenv fdtaddr a00000
=> setenv loadaddr 1000000
7. Load the kernel and dtb from first partition of the USB disk:
6. Load the kernel and dtb from the first partition of the USB disk:
=> usb start
=> ext2load usb 0:1 $loadaddr uImage
=> ext2load usb 0:1 $fdtaddr dtb
=> ext2load usb 0:1 1000000 uImage
=> ext2load usb 0:1 2000000 dtb
8. Set bootargs and boot up the device
7. Set bootargs and boot up the device
=> setenv bootargs root=/dev/sdb2 rw rootwait console=ttyS0,115200
=> bootm $loadaddr - $fdtaddr
=> bootm 1000000 - 2000000
--- Booting from NFS root ---

View File

@@ -15,3 +15,5 @@ Foundation and individual contributors.
* QUnit is redistributed under the MIT license.
* Font Awesome fonts redistributed under the SIL Open Font License 1.1
* simplediff is distributed under the zlib license.

View File

@@ -38,7 +38,7 @@ from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException
if sys.getfilesystemencoding() != "utf-8":
sys.exit("Please use a locale setting which supports utf-8.\nPython can't change the filesystem locale after loading so we need a utf-8 when python starts or things won't work.")
__version__ = "1.33.2"
__version__ = "1.34.0"
if __name__ == "__main__":
if __version__ != bb.__version__:

View File

@@ -3,7 +3,7 @@
# bitbake-diffsigs
# BitBake task signature data comparison utility
#
# Copyright (C) 2012-2013 Intel Corporation
# Copyright (C) 2012-2013, 2017 Intel Corporation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
@@ -22,7 +22,7 @@ import os
import sys
import warnings
import fnmatch
import optparse
import argparse
import logging
import pickle
@@ -30,29 +30,13 @@ sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), '
import bb.tinfoil
import bb.siggen
import bb.msg
def logger_create(name, output=sys.stderr):
logger = logging.getLogger(name)
console = logging.StreamHandler(output)
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
if output.isatty():
format.enable_color()
console.setFormatter(format)
logger.addHandler(console)
logger.setLevel(logging.INFO)
return logger
logger = bb.msg.logger_create('bitbake-diffsigs')
logger = logger_create('bitbake-diffsigs')
def find_compare_task(bbhandler, pn, taskname):
def find_compare_task(bbhandler, pn, taskname, sig1=None, sig2=None, color=False):
""" Find the most recent signature files for the specified PN/task and compare them """
def get_hashval(siginfo):
if siginfo.endswith('.siginfo'):
return siginfo.rpartition(':')[2].partition('_')[0]
else:
return siginfo.rpartition('.')[2]
if not hasattr(bb.siggen, 'find_siginfo'):
logger.error('Metadata does not support finding signature data files')
sys.exit(1)
@@ -60,88 +44,119 @@ def find_compare_task(bbhandler, pn, taskname):
if not taskname.startswith('do_'):
taskname = 'do_%s' % taskname
filedates = bb.siggen.find_siginfo(pn, taskname, None, bbhandler.config_data)
latestfiles = sorted(filedates.keys(), key=lambda f: filedates[f])[-3:]
if not latestfiles:
logger.error('No sigdata files found matching %s %s' % (pn, taskname))
sys.exit(1)
elif len(latestfiles) < 2:
logger.error('Only one matching sigdata file found for the specified task (%s %s)' % (pn, taskname))
sys.exit(1)
if sig1 and sig2:
sigfiles = bb.siggen.find_siginfo(pn, taskname, [sig1, sig2], bbhandler.config_data)
if len(sigfiles) == 0:
logger.error('No sigdata files found matching %s %s matching either %s or %s' % (pn, taskname, sig1, sig2))
sys.exit(1)
elif not sig1 in sigfiles:
logger.error('No sigdata files found matching %s %s with signature %s' % (pn, taskname, sig1))
sys.exit(1)
elif not sig2 in sigfiles:
logger.error('No sigdata files found matching %s %s with signature %s' % (pn, taskname, sig2))
sys.exit(1)
latestfiles = [sigfiles[sig1], sigfiles[sig2]]
else:
# It's possible that latestfiles contain 3 elements and the first two have the same hash value.
# In this case, we delete the second element.
# The above case is actually the most common one. Because we may have sigdata file and siginfo
# file having the same hash value. Comparing such two files makes no sense.
if len(latestfiles) == 3:
hash0 = get_hashval(latestfiles[0])
hash1 = get_hashval(latestfiles[1])
if hash0 == hash1:
latestfiles.pop(1)
filedates = bb.siggen.find_siginfo(pn, taskname, None, bbhandler.config_data)
latestfiles = sorted(filedates.keys(), key=lambda f: filedates[f])[-3:]
if not latestfiles:
logger.error('No sigdata files found matching %s %s' % (pn, taskname))
sys.exit(1)
elif len(latestfiles) < 2:
logger.error('Only one matching sigdata file found for the specified task (%s %s)' % (pn, taskname))
sys.exit(1)
# Define recursion callback
def recursecb(key, hash1, hash2):
hashes = [hash1, hash2]
hashfiles = bb.siggen.find_siginfo(key, None, hashes, bbhandler.config_data)
# Define recursion callback
def recursecb(key, hash1, hash2):
hashes = [hash1, hash2]
hashfiles = bb.siggen.find_siginfo(key, None, hashes, bbhandler.config_data)
recout = []
if len(hashfiles) == 2:
out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb)
recout.extend(list(' ' + l for l in out2))
else:
recout.append("Unable to find matching sigdata for %s with hashes %s or %s" % (key, hash1, hash2))
recout = []
if len(hashfiles) == 0:
recout.append("Unable to find matching sigdata for %s with hashes %s or %s" % (key, hash1, hash2))
elif not hash1 in hashfiles:
recout.append("Unable to find matching sigdata for %s with hash %s" % (key, hash1))
elif not hash2 in hashfiles:
recout.append("Unable to find matching sigdata for %s with hash %s" % (key, hash2))
else:
out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb, color=color)
for change in out2:
for line in change.splitlines():
recout.append(' ' + line)
return recout
return recout
# Recurse into signature comparison
logger.debug("Signature file (previous): %s" % latestfiles[0])
logger.debug("Signature file (latest): %s" % latestfiles[1])
output = bb.siggen.compare_sigfiles(latestfiles[0], latestfiles[1], recursecb)
if output:
print('\n'.join(output))
# Recurse into signature comparison
logger.debug("Signature file (previous): %s" % latestfiles[-2])
logger.debug("Signature file (latest): %s" % latestfiles[-1])
output = bb.siggen.compare_sigfiles(latestfiles[-2], latestfiles[-1], recursecb, color=color)
if output:
print('\n'.join(output))
sys.exit(0)
parser = optparse.OptionParser(
description = "Compares siginfo/sigdata files written out by BitBake",
usage = """
%prog -t recipename taskname
%prog sigdatafile1 sigdatafile2
%prog sigdatafile1""")
parser = argparse.ArgumentParser(
description="Compares siginfo/sigdata files written out by BitBake")
parser.add_option("-D", "--debug",
help = "enable debug",
action = "store_true", dest="debug", default = False)
parser.add_argument('-d', '--debug',
help='Enable debug output',
action='store_true')
parser.add_option("-t", "--task",
help = "find the signature data files for last two runs of the specified task and compare them",
action="store", dest="taskargs", nargs=2, metavar='recipename taskname')
parser.add_argument('--color',
help='Colorize output (where %(metavar)s is %(choices)s)',
choices=['auto', 'always', 'never'], default='auto', metavar='color')
options, args = parser.parse_args(sys.argv)
parser.add_argument("-t", "--task",
help="find the signature data files for last two runs of the specified task and compare them",
action="store", dest="taskargs", nargs=2, metavar=('recipename', 'taskname'))
parser.add_argument("-s", "--signature",
help="With -t/--task, specify the signatures to look for instead of taking the last two",
action="store", dest="sigargs", nargs=2, metavar=('fromsig', 'tosig'))
parser.add_argument("sigdatafile1",
help="First signature file to compare (or signature file to dump, if second not specified). Not used when using -t/--task.",
action="store", nargs='?')
parser.add_argument("sigdatafile2",
help="Second signature file to compare",
action="store", nargs='?')
options = parser.parse_args()
if options.debug:
logger.setLevel(logging.DEBUG)
color = (options.color == 'always' or (options.color == 'auto' and sys.stdout.isatty()))
if options.taskargs:
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=True)
find_compare_task(tinfoil, options.taskargs[0], options.taskargs[1])
if options.sigargs:
find_compare_task(tinfoil, options.taskargs[0], options.taskargs[1], options.sigargs[0], options.sigargs[1], color=color)
else:
find_compare_task(tinfoil, options.taskargs[0], options.taskargs[1], color=color)
else:
if len(args) == 1:
parser.print_help()
else:
try:
if len(args) == 2:
output = bb.siggen.dump_sigfile(sys.argv[1])
else:
output = bb.siggen.compare_sigfiles(sys.argv[1], sys.argv[2])
except IOError as e:
logger.error(str(e))
sys.exit(1)
except (pickle.UnpicklingError, EOFError):
logger.error('Invalid signature data - ensure you are specifying sigdata/siginfo files')
if options.sigargs:
logger.error('-s/--signature can only be used together with -t/--task')
sys.exit(1)
try:
if options.sigdatafile1 and options.sigdatafile2:
output = bb.siggen.compare_sigfiles(options.sigdatafile1, options.sigdatafile2, color=color)
elif options.sigdatafile1:
output = bb.siggen.dump_sigfile(options.sigdatafile1)
else:
logger.error('Must specify signature file(s) or -t/--task')
parser.print_help()
sys.exit(1)
except IOError as e:
logger.error(str(e))
sys.exit(1)
except (pickle.UnpicklingError, EOFError):
logger.error('Invalid signature data - ensure you are specifying sigdata/siginfo files')
sys.exit(1)
if output:
print('\n'.join(output))
if output:
print('\n'.join(output))

View File

@@ -29,19 +29,9 @@ sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), '
import bb.tinfoil
import bb.siggen
import bb.msg
def logger_create(name, output=sys.stderr):
logger = logging.getLogger(name)
console = logging.StreamHandler(output)
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
if output.isatty():
format.enable_color()
console.setFormatter(format)
logger.addHandler(console)
logger.setLevel(logging.INFO)
return logger
logger = logger_create('bitbake-dumpsig')
logger = bb.msg.logger_create('bitbake-dumpsig')
def find_siginfo_task(bbhandler, pn, taskname):
""" Find the most recent signature file for the specified PN/task """

View File

@@ -24,40 +24,26 @@ import logging
import os
import sys
import argparse
import signal
bindir = os.path.dirname(__file__)
topdir = os.path.dirname(bindir)
sys.path[0:0] = [os.path.join(topdir, 'lib')]
import bb.tinfoil
import bb.msg
def logger_create(name, output=sys.stderr):
logger = logging.getLogger(name)
loggerhandler = logging.StreamHandler(output)
loggerhandler.setFormatter(logging.Formatter("%(levelname)s: %(message)s"))
logger.addHandler(loggerhandler)
logger.setLevel(logging.INFO)
return logger
def logger_setup_color(logger, color='auto'):
from bb.msg import BBLogFormatter
console = logging.StreamHandler(sys.stdout)
formatter = BBLogFormatter("%(levelname)s: %(message)s")
console.setFormatter(formatter)
logger.handlers = [console]
if color == 'always' or (color == 'auto' and console.stream.isatty()):
formatter.enable_color()
logger = logger_create('bitbake-layers', sys.stdout)
logger = bb.msg.logger_create('bitbake-layers', sys.stdout)
def main():
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
parser = argparse.ArgumentParser(
description="BitBake layers utility",
epilog="Use %(prog)s <subcommand> --help to get help on a specific command",
add_help=False)
parser.add_argument('-d', '--debug', help='Enable debug output', action='store_true')
parser.add_argument('-q', '--quiet', help='Print only errors', action='store_true')
parser.add_argument('-F', '--force', help='Force add without recipe parse verification', action='store_true')
parser.add_argument('--color', choices=['auto', 'always', 'never'], default='auto', help='Colorize output (where %(metavar)s is %(choices)s)', metavar='COLOR')
global_args, unparsed_args = parser.parse_known_args()
@@ -74,7 +60,9 @@ def main():
elif global_args.quiet:
logger.setLevel(logging.ERROR)
logger_setup_color(logger, global_args.color)
# Need to re-run logger_create with color argument
# (will be the same logger since it has the same name)
bb.msg.logger_create('bitbake-layers', output=sys.stdout, color=global_args.color)
plugins = []
tinfoil = bb.tinfoil.Tinfoil(tracking=True)

165
bitbake/bin/git-make-shallow Executable file
View File

@@ -0,0 +1,165 @@
#!/usr/bin/env python3
"""git-make-shallow: make the current git repository shallow
Remove the history of the specified revisions, then optionally filter the
available refs to those specified.
"""
import argparse
import collections
import errno
import itertools
import os
import subprocess
import sys
version = 1.0
def main():
if sys.version_info < (3, 4, 0):
sys.exit('Python 3.4 or greater is required')
git_dir = check_output(['git', 'rev-parse', '--git-dir']).rstrip()
shallow_file = os.path.join(git_dir, 'shallow')
if os.path.exists(shallow_file):
try:
check_output(['git', 'fetch', '--unshallow'])
except subprocess.CalledProcessError:
try:
os.unlink(shallow_file)
except OSError as exc:
if exc.errno != errno.ENOENT:
raise
args = process_args()
revs = check_output(['git', 'rev-list'] + args.revisions).splitlines()
make_shallow(shallow_file, args.revisions, args.refs)
ref_revs = check_output(['git', 'rev-list'] + args.refs).splitlines()
remaining_history = set(revs) & set(ref_revs)
for rev in remaining_history:
if check_output(['git', 'rev-parse', '{}^@'.format(rev)]):
sys.exit('Error: %s was not made shallow' % rev)
filter_refs(args.refs)
if args.shrink:
shrink_repo(git_dir)
subprocess.check_call(['git', 'fsck', '--unreachable'])
def process_args():
# TODO: add argument to automatically keep local-only refs, since they
# can't be easily restored with a git fetch.
parser = argparse.ArgumentParser(description='Remove the history of the specified revisions, then optionally filter the available refs to those specified.')
parser.add_argument('--ref', '-r', metavar='REF', action='append', dest='refs', help='remove all but the specified refs (cumulative)')
parser.add_argument('--shrink', '-s', action='store_true', help='shrink the git repository by repacking and pruning')
parser.add_argument('revisions', metavar='REVISION', nargs='+', help='a git revision/commit')
if len(sys.argv) < 2:
parser.print_help()
sys.exit(2)
args = parser.parse_args()
if args.refs:
args.refs = check_output(['git', 'rev-parse', '--symbolic-full-name'] + args.refs).splitlines()
else:
args.refs = get_all_refs(lambda r, t, tt: t == 'commit' or tt == 'commit')
args.refs = list(filter(lambda r: not r.endswith('/HEAD'), args.refs))
args.revisions = check_output(['git', 'rev-parse'] + ['%s^{}' % i for i in args.revisions]).splitlines()
return args
def check_output(cmd, input=None):
return subprocess.check_output(cmd, universal_newlines=True, input=input)
def make_shallow(shallow_file, revisions, refs):
"""Remove the history of the specified revisions."""
for rev in follow_history_intersections(revisions, refs):
print("Processing %s" % rev)
with open(shallow_file, 'a') as f:
f.write(rev + '\n')
def get_all_refs(ref_filter=None):
"""Return all the existing refs in this repository, optionally filtering the refs."""
ref_output = check_output(['git', 'for-each-ref', '--format=%(refname)\t%(objecttype)\t%(*objecttype)'])
ref_split = [tuple(iter_extend(l.rsplit('\t'), 3)) for l in ref_output.splitlines()]
if ref_filter:
ref_split = (e for e in ref_split if ref_filter(*e))
refs = [r[0] for r in ref_split]
return refs
def iter_extend(iterable, length, obj=None):
"""Ensure that iterable is the specified length by extending with obj."""
return itertools.islice(itertools.chain(iterable, itertools.repeat(obj)), length)
def filter_refs(refs):
"""Remove all but the specified refs from the git repository."""
all_refs = get_all_refs()
to_remove = set(all_refs) - set(refs)
if to_remove:
check_output(['xargs', '-0', '-n', '1', 'git', 'update-ref', '-d', '--no-deref'],
input=''.join(l + '\0' for l in to_remove))
def follow_history_intersections(revisions, refs):
"""Determine all the points where the history of the specified revisions intersects the specified refs."""
queue = collections.deque(revisions)
seen = set()
for rev in iter_except(queue.popleft, IndexError):
if rev in seen:
continue
parents = check_output(['git', 'rev-parse', '%s^@' % rev]).splitlines()
yield rev
seen.add(rev)
if not parents:
continue
check_refs = check_output(['git', 'merge-base', '--independent'] + sorted(refs)).splitlines()
for parent in parents:
for ref in check_refs:
print("Checking %s vs %s" % (parent, ref))
try:
merge_base = check_output(['git', 'merge-base', parent, ref]).rstrip()
except subprocess.CalledProcessError:
continue
else:
queue.append(merge_base)
def iter_except(func, exception, start=None):
"""Yield a function repeatedly until it raises an exception."""
try:
if start is not None:
yield start()
while True:
yield func()
except exception:
pass
def shrink_repo(git_dir):
"""Shrink the newly shallow repository, removing the unreachable objects."""
subprocess.check_call(['git', 'reflog', 'expire', '--expire-unreachable=now', '--all'])
subprocess.check_call(['git', 'repack', '-ad'])
try:
os.unlink(os.path.join(git_dir, 'objects', 'info', 'alternates'))
except OSError as exc:
if exc.errno != errno.ENOENT:
raise
subprocess.check_call(['git', 'prune', '--expire', 'now'])
if __name__ == '__main__':
main()

View File

@@ -268,15 +268,6 @@
<link linkend='var-FILESPATH'><filename>FILESPATH</filename></link>
variable is used in the same way
<filename>PATH</filename> is used to find executables.
Failing that,
<link linkend='var-FILESDIR'><filename>FILESDIR</filename></link>
is used to find the appropriate relative file.
<note>
<filename>FILESDIR</filename> is deprecated and can
be replaced with <filename>FILESPATH</filename>.
Because <filename>FILESDIR</filename> is likely to be
removed, you should not use this variable in any new code.
</note>
If the file cannot be found, it is assumed that it is available in
<link linkend='var-DL_DIR'><filename>DL_DIR</filename></link>
by the time the <filename>download()</filename> method is called.

View File

@@ -504,9 +504,19 @@
Read the specified file before bitbake.conf.
-R POSTFILE, --postread=POSTFILE
Read the specified file after bitbake.conf.
-v, --verbose Output more log message data to the terminal.
-D, --debug Increase the debug level. You can specify this more
than once.
-v, --verbose Enable tracing of shell tasks (with 'set -x').
Also print bb.note(...) messages to stdout (in
addition to writing them to ${T}/log.do_&lt;task&gt;).
-D, --debug Increase the debug level. You can specify this
more than once. -D sets the debug level to 1,
where only bb.debug(1, ...) messages are printed
to stdout; -DD sets the debug level to 2, where
both bb.debug(1, ...) and bb.debug(2, ...)
messages are printed; etc. Without -D, no debug
messages are printed. Note that -D only affects
output to stdout. All debug messages are written
to ${T}/log.do_taskname, regardless of the debug
level.
-n, --dry-run Don't execute, just go through the motions.
-S SIGNATURE_HANDLER, --dump-signatures=SIGNATURE_HANDLER
Dump out the signature construction information, with

View File

@@ -1072,7 +1072,8 @@
<note>
Because <filename>.conf</filename> files are parsed
first during BitBake's execution, using
<filename>INHERIT</filename> to inherit a class effectively
<link linkend='var-INHERIT'><filename>INHERIT</filename></link>
to inherit a class effectively
inherits the class globally (i.e. for all recipes).
</note>
If you want to use the directive to inherit
@@ -2029,7 +2030,7 @@
before any tasks are executed so would be in the global
configuration datastore namespace.
No recipe-specific metadata exists in that namespace.
The "BuildStarted" and "buildCompleted" events also run in
The "BuildStarted" and "BuildCompleted" events also run in
the main cooker/server process rather than any worker context.
Thus, any changes made to the datastore would be seen by other
cooker/server events within the current build but not seen

View File

@@ -1539,24 +1539,6 @@
</glossdef>
</glossentry>
<glossentry id='var-FILESDIR'><glossterm>FILESDIR</glossterm>
<glossdef>
<para>
Specifies directories BitBake uses when searching for
patches and files.
The "local" fetcher module uses these directories when
handling <filename>file://</filename> URLs if the file
was not found using
<link linkend='var-FILESPATH'><filename>FILESPATH</filename></link>.
<note>
The <filename>FILESDIR</filename> variable is
deprecated and you should use
<filename>FILESPATH</filename> in all new code.
</note>
</para>
</glossdef>
</glossentry>
<glossentry id='var-FILESPATH'><glossterm>FILESPATH</glossterm>
<glossdef>
<para>
@@ -1614,9 +1596,19 @@
<glossentry id='var-INHERIT'><glossterm>INHERIT</glossterm>
<glossdef>
<para>
Causes the named class to be inherited at
this point during parsing.
The variable is only valid in configuration files.
Causes the named class or classes to be inherited globally.
Anonymous functions in the class or classes
are not executed for the
base configuration and in each individual recipe.
The OpenEmbedded build system ignores changes to
<filename>INHERIT</filename> in individual recipes.
</para>
<para>
For more information on <filename>INHERIT</filename>, see
the
"<link linkend="inherit-configuration-directive"><filename>INHERIT</filename> Configuration Directive</link>"
section.
</para>
</glossdef>
</glossentry>

View File

@@ -3,7 +3,7 @@
#
# This is a copy on write dictionary and set which abuses classes to try and be nice and fast.
#
# Copyright (C) 2006 Tim Amsell
# Copyright (C) 2006 Tim Ansell
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as

View File

@@ -21,7 +21,7 @@
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
__version__ = "1.33.2"
__version__ = "1.34.0"
import sys
if sys.version_info < (3, 4, 0):

View File

@@ -37,7 +37,7 @@ import bb.utils
logger = logging.getLogger("BitBake.Cache")
__cache_version__ = "150"
__cache_version__ = "151"
def getCacheFile(path, filename, data_hash):
return os.path.join(path, filename + "." + data_hash)
@@ -462,6 +462,10 @@ class Cache(NoCache):
self.depends_cache[key] = [value]
# only fire events on even percentage boundaries
current_progress = cachefile.tell() + previous_progress
if current_progress > cachesize:
# we might have calculated incorrect total size because a file
# might've been written out just after we checked its size
cachesize = current_progress
current_percent = 100 * current_progress / cachesize
if current_percent > previous_percent:
previous_percent = current_percent

View File

@@ -1,3 +1,22 @@
"""
BitBake code parser
Parses actual code (i.e. python and shell) for functions and in-line
expressions. Used mainly to determine dependencies on other functions
and variables within the BitBake metadata. Also provides a cache for
this information in order to speed up processing.
(Not to be confused with the code that parses the metadata itself,
see lib/bb/parse/ for that).
NOTE: if you change how the parsers gather information you will almost
certainly need to increment CodeParserCache.CACHE_VERSION below so that
any existing codeparser cache gets invalidated. Additionally you'll need
to increment __cache_version__ in cache.py in order to ensure that old
recipe caches don't trigger "Taskhash mismatch" errors.
"""
import ast
import sys
import codegen
@@ -117,7 +136,11 @@ class shellCacheLine(object):
class CodeParserCache(MultiProcessCache):
cache_file_name = "bb_codeparser.dat"
CACHE_VERSION = 8
# NOTE: you must increment this if you change how the parsers gather information,
# so that an existing cache gets invalidated. Additionally you'll need
# to increment __cache_version__ in cache.py in order to ensure that old
# recipe caches don't trigger "Taskhash mismatch" errors.
CACHE_VERSION = 9
def __init__(self):
MultiProcessCache.__init__(self)
@@ -186,13 +209,15 @@ class BufferedLogger(Logger):
def flush(self):
for record in self.buffer:
self.target.handle(record)
if self.target.isEnabledFor(record.levelno):
self.target.handle(record)
self.buffer = []
class PythonParser():
getvars = (".getVar", ".appendVar", ".prependVar")
getvarflags = (".getVarFlag", ".appendVarFlag", ".prependVarFlag")
containsfuncs = ("bb.utils.contains", "base_contains", "bb.utils.contains_any")
containsfuncs = ("bb.utils.contains", "base_contains")
containsanyfuncs = ("bb.utils.contains_any", "bb.utils.filter")
execfuncs = ("bb.build.exec_func", "bb.build.exec_task")
def warn(self, func, arg):
@@ -211,13 +236,17 @@ class PythonParser():
def visit_Call(self, node):
name = self.called_node_name(node.func)
if name and (name.endswith(self.getvars) or name.endswith(self.getvarflags) or name in self.containsfuncs):
if name and (name.endswith(self.getvars) or name.endswith(self.getvarflags) or name in self.containsfuncs or name in self.containsanyfuncs):
if isinstance(node.args[0], ast.Str):
varname = node.args[0].s
if name in self.containsfuncs and isinstance(node.args[1], ast.Str):
if varname not in self.contains:
self.contains[varname] = set()
self.contains[varname].add(node.args[1].s)
elif name in self.containsanyfuncs and isinstance(node.args[1], ast.Str):
if varname not in self.contains:
self.contains[varname] = set()
self.contains[varname].update(node.args[1].s.split())
elif name.endswith(self.getvarflags):
if isinstance(node.args[1], ast.Str):
self.references.add('%s[%s]' % (varname, node.args[1].s))

View File

@@ -141,6 +141,12 @@ class Command:
self.currentAsyncCommand = None
self.cooker.finishcommand()
def split_mc_pn(pn):
if pn.startswith("multiconfig:"):
_, mc, pn = pn.split(":", 2)
return (mc, pn)
return ('', pn)
class CommandsSync:
"""
A class of synchronous commands
@@ -227,60 +233,11 @@ class CommandsSync:
command.cooker.configuration.postfile = postfiles
setPrePostConfFiles.needconfig = False
def getCpuCount(self, command, params):
"""
Get the CPU count on the bitbake server
"""
return bb.utils.cpu_count()
getCpuCount.readonly = True
getCpuCount.needconfig = False
def matchFile(self, command, params):
fMatch = params[0]
return command.cooker.matchFile(fMatch)
matchFile.needconfig = False
def generateNewImage(self, command, params):
image = params[0]
base_image = params[1]
package_queue = params[2]
timestamp = params[3]
description = params[4]
return command.cooker.generateNewImage(image, base_image,
package_queue, timestamp, description)
def ensureDir(self, command, params):
directory = params[0]
bb.utils.mkdirhier(directory)
ensureDir.needconfig = False
def setVarFile(self, command, params):
"""
Save a variable in a file; used for saving in a configuration file
"""
var = params[0]
val = params[1]
default_file = params[2]
op = params[3]
command.cooker.modifyConfigurationVar(var, val, default_file, op)
setVarFile.needconfig = False
def removeVarFile(self, command, params):
"""
Remove a variable declaration from a file
"""
var = params[0]
command.cooker.removeConfigurationVar(var)
removeVarFile.needconfig = False
def createConfigFile(self, command, params):
"""
Create an extra configuration file
"""
name = params[0]
command.cooker.createConfigFile(name)
createConfigFile.needconfig = False
def setEventMask(self, command, params):
handlerNum = params[0]
llevel = params[1]
@@ -304,7 +261,8 @@ class CommandsSync:
def updateConfig(self, command, params):
options = params[0]
environment = params[1]
command.cooker.updateConfigOpts(options, environment)
cmdline = params[2]
command.cooker.updateConfigOpts(options, environment, cmdline)
updateConfig.needconfig = False
def parseConfiguration(self, command, params):
@@ -425,8 +383,8 @@ class CommandsSync:
findProviders.readonly = True
def findBestProvider(self, command, params):
pn = params[0]
return command.cooker.findBestProvider(pn)
(mc, pn) = split_mc_pn(params[0])
return command.cooker.findBestProvider(pn, mc)
findBestProvider.readonly = True
def allProviders(self, command, params):
@@ -473,6 +431,9 @@ class CommandsSync:
'_connector_overrides': overridedata}
else:
value['_connector_overrides'] = overridedata
else:
value = {}
value['_connector_overrides'] = overridedata
return value
dataStoreConnectorFindVar.readonly = True
@@ -636,17 +597,6 @@ class CommandsAsync:
command.finishAsyncCommand()
generateTargetsTree.needcache = True
def findCoreBaseFiles(self, command, params):
"""
Find certain files in COREBASE directory. i.e. Layers
"""
subdir = params[0]
filename = params[1]
command.cooker.findCoreBaseFiles(subdir, filename)
command.finishAsyncCommand()
findCoreBaseFiles.needcache = False
def findConfigFiles(self, command, params):
"""
Find config files which provide appropriate values

View File

@@ -192,6 +192,8 @@ class BBCooker:
bb.parse.__mtime_cache = {}
bb.parse.BBHandler.cached_statements = {}
self.ui_cmdline = None
self.initConfigurationData()
# we log all events to a file if so directed
@@ -213,9 +215,6 @@ class BBCooker:
self.configuration.server_register_idlecallback(_process_inotify_updates, [self.confignotifier, self.notifier])
self.baseconfig_valid = True
self.parsecache_valid = False
# Take a lock so only one copy of bitbake can run against a given build
# directory at a time
if not self.lockBitbake():
@@ -363,6 +362,8 @@ class BBCooker:
if consolelog:
self.data.setVar("BB_CONSOLELOG", consolelog)
self.data.setVar('BB_CMDLINE', self.ui_cmdline)
#
# Copy of the data store which has been expanded.
# Used for firing events and accessing variables where expansion needs to be accounted for
@@ -375,6 +376,8 @@ class BBCooker:
self.data.renameVar("__depends", "__base_depends")
self.add_filewatch(self.data.getVar("__base_depends", False), self.configwatcher)
self.baseconfig_valid = True
self.parsecache_valid = False
def enableDataTracking(self):
self.configuration.tracking = True
@@ -386,138 +389,6 @@ class BBCooker:
if hasattr(self, "data"):
self.data.disableTracking()
def modifyConfigurationVar(self, var, val, default_file, op):
if op == "append":
self.appendConfigurationVar(var, val, default_file)
elif op == "set":
self.saveConfigurationVar(var, val, default_file, "=")
elif op == "earlyAssign":
self.saveConfigurationVar(var, val, default_file, "?=")
def appendConfigurationVar(self, var, val, default_file):
#add append var operation to the end of default_file
default_file = bb.cookerdata.findConfigFile(default_file, self.data)
total = "#added by hob"
total += "\n%s += \"%s\"\n" % (var, val)
with open(default_file, 'a') as f:
f.write(total)
#add to history
loginfo = {"op":"append", "file":default_file, "line":total.count("\n")}
self.data.appendVar(var, val, **loginfo)
def saveConfigurationVar(self, var, val, default_file, op):
replaced = False
#do not save if nothing changed
if str(val) == self.data.getVar(var, False):
return
conf_files = self.data.varhistory.get_variable_files(var)
#format the value when it is a list
if isinstance(val, list):
listval = ""
for value in val:
listval += "%s " % value
val = listval
topdir = self.data.getVar("TOPDIR", False)
#comment or replace operations made on var
for conf_file in conf_files:
if topdir in conf_file:
with open(conf_file, 'r') as f:
contents = f.readlines()
lines = self.data.varhistory.get_variable_lines(var, conf_file)
for line in lines:
total = ""
i = 0
for c in contents:
total += c
i = i + 1
if i==int(line):
end_index = len(total)
index = total.rfind(var, 0, end_index)
begin_line = total.count("\n",0,index)
end_line = int(line)
#check if the variable was saved before in the same way
#if true it replace the place where the variable was declared
#else it comments it
if contents[begin_line-1]== "#added by hob\n":
contents[begin_line] = "%s %s \"%s\"\n" % (var, op, val)
replaced = True
else:
for ii in range(begin_line, end_line):
contents[ii] = "#" + contents[ii]
with open(conf_file, 'w') as f:
f.writelines(contents)
if replaced == False:
#remove var from history
self.data.varhistory.del_var_history(var)
#add var to the end of default_file
default_file = bb.cookerdata.findConfigFile(default_file, self.data)
#add the variable on a single line, to be easy to replace the second time
total = "\n#added by hob"
total += "\n%s %s \"%s\"\n" % (var, op, val)
with open(default_file, 'a') as f:
f.write(total)
#add to history
loginfo = {"op":"set", "file":default_file, "line":total.count("\n")}
self.data.setVar(var, val, **loginfo)
def removeConfigurationVar(self, var):
conf_files = self.data.varhistory.get_variable_files(var)
topdir = self.data.getVar("TOPDIR", False)
for conf_file in conf_files:
if topdir in conf_file:
with open(conf_file, 'r') as f:
contents = f.readlines()
lines = self.data.varhistory.get_variable_lines(var, conf_file)
for line in lines:
total = ""
i = 0
for c in contents:
total += c
i = i + 1
if i==int(line):
end_index = len(total)
index = total.rfind(var, 0, end_index)
begin_line = total.count("\n",0,index)
#check if the variable was saved before in the same way
if contents[begin_line-1]== "#added by hob\n":
contents[begin_line-1] = contents[begin_line] = "\n"
else:
contents[begin_line] = "\n"
#remove var from history
self.data.varhistory.del_var_history(var, conf_file, line)
#remove variable
self.data.delVar(var)
with open(conf_file, 'w') as f:
f.writelines(contents)
def createConfigFile(self, name):
path = os.getcwd()
confpath = os.path.join(path, "conf", name)
open(confpath, 'w').close()
def parseConfiguration(self):
# Set log file verbosity
verboselogs = bb.utils.to_boolean(self.data.getVar("BB_VERBOSE_LOGS", False))
@@ -540,20 +411,28 @@ class BBCooker:
self.handleCollections(self.data.getVar("BBFILE_COLLECTIONS"))
def updateConfigOpts(self, options, environment):
def updateConfigOpts(self, options, environment, cmdline):
self.ui_cmdline = cmdline
clean = True
for o in options:
if o in ['prefile', 'postfile']:
clean = False
server_val = getattr(self.configuration, "%s_server" % o)
if o in ['prefile', 'postfile', 'tracking']:
server_val = getattr(self.configuration, "%s_server" % o, None)
if not options[o] and server_val:
# restore value provided on server start
logger.debug(1, "Restoring server value for option '%s'" % o)
setattr(self.configuration, o, server_val)
clean = False
continue
if getattr(self.configuration, o) == options[o]:
# Value is the same, no need to mark dirty
continue
else:
logger.debug(1, "Marking as dirty due to '%s' option change to '%s'" % (o, options[o]))
clean = False
setattr(self.configuration, o, options[o])
for k in bb.utils.approved_variables():
if k in environment and k not in self.configuration.env:
logger.debug(1, "Updating environment variable %s to %s" % (k, environment[k]))
logger.debug(1, "Updating new environment variable %s to %s" % (k, environment[k]))
self.configuration.env[k] = environment[k]
clean = False
if k in self.configuration.env and k not in environment:
@@ -563,12 +442,11 @@ class BBCooker:
if k not in self.configuration.env and k not in environment:
continue
if environment[k] != self.configuration.env[k]:
logger.debug(1, "Updating environment variable %s to %s" % (k, environment[k]))
logger.debug(1, "Updating environment variable %s from %s to %s" % (k, self.configuration.env[k], environment[k]))
self.configuration.env[k] = environment[k]
clean = False
if not clean:
logger.debug(1, "Base environment change, triggering reparse")
self.baseconfig_valid = False
self.reset()
def runCommands(self, server, data, abort):
@@ -905,13 +783,13 @@ class BBCooker:
seen_fns.append(taskfn)
depend_tree["depends"][pn] = []
for item in taskdata[mc].depids[taskfn]:
for dep in taskdata[mc].depids[taskfn]:
pn_provider = ""
if dep in taskdata[mc].build_targets and taskdata[mc].build_targets[dep]:
fn_provider = taskdata[mc].build_targets[dep][0]
pn_provider = self.recipecaches[mc].pkg_fn[fn_provider]
else:
pn_provider = item
pn_provider = dep
pn_provider = self.add_mc_prefix(mc, pn_provider)
depend_tree["depends"][pn].append(pn_provider)
@@ -1038,18 +916,6 @@ class BBCooker:
providerlog.error("conflicting preferences for %s: both %s and %s specified", providee, provider, self.recipecaches[mc].preferred[providee])
self.recipecaches[mc].preferred[providee] = provider
def findCoreBaseFiles(self, subdir, configfile):
corebase = self.data.getVar('COREBASE') or ""
paths = []
for root, dirs, files in os.walk(corebase + '/' + subdir):
for d in dirs:
configfilepath = os.path.join(root, d, configfile)
if os.path.exists(configfilepath):
paths.append(os.path.join(root, d))
if paths:
bb.event.fire(bb.event.CoreBaseFilesFound(paths), self.data)
def findConfigFilePath(self, configfile):
"""
Find the location on disk of configfile and if it exists and was parsed by BitBake
@@ -1313,6 +1179,18 @@ class BBCooker:
self.data.setVar("DATE", time.strftime('%Y%m%d', t))
self.data.setVar("TIME", time.strftime('%H%M%S', t))
def reset_mtime_caches(self):
"""
Reset mtime caches - this is particularly important when memory resident as something
which is cached is not unlikely to have changed since the last invocation (e.g. a
file associated with a recipe might have been modified by the user).
"""
build.reset_cache()
bb.fetch._checksum_cache.mtime_cache.clear()
siggen_cache = getattr(bb.parse.siggen, 'checksum_cache', None)
if siggen_cache:
bb.parse.siggen.checksum_cache.mtime_cache.clear()
def matchFiles(self, bf):
"""
Find the .bb files which match the expression in 'buildfile'.
@@ -1483,14 +1361,16 @@ class BBCooker:
return False
if not retval:
bb.event.fire(bb.event.BuildCompleted(len(rq.rqdata.runtaskentries), buildname, targets, failures, interrupted), self.data)
self.command.finishAsyncCommand(msg)
try:
bb.event.fire(bb.event.BuildCompleted(len(rq.rqdata.runtaskentries), buildname, targets, failures, interrupted), self.data)
finally:
self.command.finishAsyncCommand(msg)
return False
if retval is True:
return True
return retval
build.reset_cache()
self.reset_mtime_caches()
self.buildSetVars()
# If we are told to do the None task then query the default task
@@ -1548,55 +1428,6 @@ class BBCooker:
return dump
def generateNewImage(self, image, base_image, package_queue, timestamp, description):
'''
Create a new image with a "require"/"inherit" base_image statement
'''
if timestamp:
image_name = os.path.splitext(image)[0]
timestr = time.strftime("-%Y%m%d-%H%M%S")
dest = image_name + str(timestr) + ".bb"
else:
if not image.endswith(".bb"):
dest = image + ".bb"
else:
dest = image
basename = False
if base_image:
with open(base_image, 'r') as f:
require_line = f.readline()
p = re.compile("IMAGE_BASENAME *=")
for line in f:
if p.search(line):
basename = True
with open(dest, "w") as imagefile:
if base_image is None:
imagefile.write("inherit core-image\n")
else:
topdir = self.data.getVar("TOPDIR", False)
if topdir in base_image:
base_image = require_line.split()[1]
imagefile.write("require " + base_image + "\n")
image_install = "IMAGE_INSTALL = \""
for package in package_queue:
image_install += str(package) + " "
image_install += "\"\n"
imagefile.write(image_install)
description_var = "DESCRIPTION = \"" + description + "\"\n"
imagefile.write(description_var)
if basename:
# If this is overwritten in a inherited image, reset it to default
image_basename = "IMAGE_BASENAME = \"${PN}\"\n"
imagefile.write(image_basename)
self.state = state.initial
if timestamp:
return timestr
def updateCacheSync(self):
if self.state == state.running:
return
@@ -1611,8 +1442,6 @@ class BBCooker:
if not self.baseconfig_valid:
logger.debug(1, "Reloading base configuration data")
self.initConfigurationData()
self.baseconfig_valid = True
self.parsecache_valid = False
# This is called for all async commands when self.state != running
def updateCache(self):

View File

@@ -76,10 +76,10 @@ class ConfigParameters(object):
for o in ["abort", "tryaltconfigs", "force", "invalidate_stamp",
"verbose", "debug", "dry_run", "dump_signatures",
"debug_domains", "extra_assume_provided", "profile",
"prefile", "postfile"]:
"prefile", "postfile", "tracking"]:
options[o] = getattr(self.options, o)
ret, error = server.runCommand(["updateConfig", options, environment])
ret, error = server.runCommand(["updateConfig", options, environment, sys.argv])
if error:
raise Exception("Unable to update the server configuration with local parameters: %s" % error)
@@ -346,6 +346,27 @@ class CookerDataBuilder(object):
data.delVar('LAYERDIR_RE')
data.delVar('LAYERDIR')
bbfiles_dynamic = (data.getVar('BBFILES_DYNAMIC') or "").split()
collections = (data.getVar('BBFILE_COLLECTIONS') or "").split()
invalid = []
for entry in bbfiles_dynamic:
parts = entry.split(":", 1)
if len(parts) != 2:
invalid.append(entry)
continue
l, f = parts
if l in collections:
data.appendVar("BBFILES", " " + f)
if invalid:
bb.fatal("BBFILES_DYNAMIC entries must be of the form <collection name>:<filename pattern>, not:\n %s" % "\n ".join(invalid))
layerseries = set((data.getVar("LAYERSERIES_CORENAMES") or "").split())
for c in collections:
compat = set((data.getVar("LAYERSERIES_COMPAT_%s" % c) or "").split())
if compat and not (compat & layerseries):
bb.fatal("Layer %s is not compatible with the core layer which only supports these series: %s (layer is compatible with %s)"
% (c, " ".join(layerseries), " ".join(compat)))
if not data.getVar("BBPATH"):
msg = "The BBPATH variable is not set"
if not layerconf:

View File

@@ -296,11 +296,13 @@ def build_dependencies(key, keys, shelldeps, varflagsexcl, d):
newvalue = ""
for k in sorted(contains):
l = (d.getVar(k) or "").split()
for word in sorted(contains[k]):
if word in l:
newvalue += "\n%s{%s} = Set" % (k, word)
for item in sorted(contains[k]):
for word in item.split():
if not word in l:
newvalue += "\n%s{%s} = Unset" % (k, item)
break
else:
newvalue += "\n%s{%s} = Unset" % (k, word)
newvalue += "\n%s{%s} = Set" % (k, item)
if not newvalue:
return value
if not value:
@@ -357,6 +359,8 @@ def build_dependencies(key, keys, shelldeps, varflagsexcl, d):
deps |= set((vardeps or "").split())
deps -= set(varflags.get("vardepsexclude", "").split())
except bb.parse.SkipRecipe:
raise
except Exception as e:
bb.warn("Exception during build_dependencies for %s" % key)
raise

View File

@@ -39,7 +39,7 @@ from bb.COW import COWDictBase
logger = logging.getLogger("BitBake.Data")
__setvar_keyword__ = ["_append", "_prepend", "_remove"]
__setvar_regexp__ = re.compile('(?P<base>.*?)(?P<keyword>_append|_prepend|_remove)(_(?P<add>.*))?$')
__setvar_regexp__ = re.compile('(?P<base>.*?)(?P<keyword>_append|_prepend|_remove)(_(?P<add>[^A-Z]*))?$')
__expand_var_regexp__ = re.compile(r"\${[^{}@\n\t :]+}")
__expand_python_regexp__ = re.compile(r"\${@.+?}")
@@ -546,6 +546,8 @@ class DataSmart(MutableMapping):
del self.dict[var]["_append"]
if "_prepend" in self.dict[var]:
del self.dict[var]["_prepend"]
if "_remove" in self.dict[var]:
del self.dict[var]["_remove"]
if var in self.overridedata:
active = []
self.need_overrides()

View File

@@ -425,7 +425,7 @@ def encodeurl(decoded):
return url
def uri_replace(ud, uri_find, uri_replace, replacements, d):
def uri_replace(ud, uri_find, uri_replace, replacements, d, mirrortarball=None):
if not ud.url or not uri_find or not uri_replace:
logger.error("uri_replace: passed an undefined value, not replacing")
return None
@@ -464,9 +464,9 @@ def uri_replace(ud, uri_find, uri_replace, replacements, d):
if loc == 2:
# Handle path manipulations
basename = None
if uri_decoded[0] != uri_replace_decoded[0] and ud.mirrortarball:
if uri_decoded[0] != uri_replace_decoded[0] and mirrortarball:
# If the source and destination url types differ, must be a mirrortarball mapping
basename = os.path.basename(ud.mirrortarball)
basename = os.path.basename(mirrortarball)
# Kill parameters, they make no sense for mirror tarballs
uri_decoded[5] = {}
elif ud.localpath and ud.method.supports_checksum(ud):
@@ -625,7 +625,7 @@ def verify_donestamp(ud, d, origud=None):
Returns True, if the donestamp exists and is valid, False otherwise. When
returning False, any existing done stamps are removed.
"""
if not ud.needdonestamp:
if not ud.needdonestamp or (origud and not origud.needdonestamp):
return True
if not os.path.exists(ud.donestamp):
@@ -892,45 +892,47 @@ def build_mirroruris(origud, mirrors, ld):
replacements["BASENAME"] = origud.path.split("/")[-1]
replacements["MIRRORNAME"] = origud.host.replace(':','.') + origud.path.replace('/', '.').replace('*', '.')
def adduri(ud, uris, uds, mirrors):
def adduri(ud, uris, uds, mirrors, tarballs):
for line in mirrors:
try:
(find, replace) = line
except ValueError:
continue
newuri = uri_replace(ud, find, replace, replacements, ld)
if not newuri or newuri in uris or newuri == origud.url:
continue
if not trusted_network(ld, newuri):
logger.debug(1, "Mirror %s not in the list of trusted networks, skipping" % (newuri))
continue
for tarball in tarballs:
newuri = uri_replace(ud, find, replace, replacements, ld, tarball)
if not newuri or newuri in uris or newuri == origud.url:
continue
# Create a local copy of the mirrors minus the current line
# this will prevent us from recursively processing the same line
# as well as indirect recursion A -> B -> C -> A
localmirrors = list(mirrors)
localmirrors.remove(line)
if not trusted_network(ld, newuri):
logger.debug(1, "Mirror %s not in the list of trusted networks, skipping" % (newuri))
continue
# Create a local copy of the mirrors minus the current line
# this will prevent us from recursively processing the same line
# as well as indirect recursion A -> B -> C -> A
localmirrors = list(mirrors)
localmirrors.remove(line)
try:
newud = FetchData(newuri, ld)
newud.setup_localpath(ld)
except bb.fetch2.BBFetchException as e:
logger.debug(1, "Mirror fetch failure for url %s (original url: %s)" % (newuri, origud.url))
logger.debug(1, str(e))
try:
# setup_localpath of file:// urls may fail, we should still see
# if mirrors of the url exist
adduri(newud, uris, uds, localmirrors)
except UnboundLocalError:
pass
continue
uris.append(newuri)
uds.append(newud)
newud = FetchData(newuri, ld)
newud.setup_localpath(ld)
except bb.fetch2.BBFetchException as e:
logger.debug(1, "Mirror fetch failure for url %s (original url: %s)" % (newuri, origud.url))
logger.debug(1, str(e))
try:
# setup_localpath of file:// urls may fail, we should still see
# if mirrors of the url exist
adduri(newud, uris, uds, localmirrors, tarballs)
except UnboundLocalError:
pass
continue
uris.append(newuri)
uds.append(newud)
adduri(newud, uris, uds, localmirrors)
adduri(newud, uris, uds, localmirrors, tarballs)
adduri(origud, uris, uds, mirrors)
adduri(origud, uris, uds, mirrors, origud.mirrortarballs or [None])
return uris, uds
@@ -975,18 +977,25 @@ def try_mirror_url(fetch, origud, ud, ld, check = False):
# We may be obtaining a mirror tarball which needs further processing by the real fetcher
# If that tarball is a local file:// we need to provide a symlink to it
dldir = ld.getVar("DL_DIR")
if origud.mirrortarball and os.path.basename(ud.localpath) == os.path.basename(origud.mirrortarball) \
and os.path.basename(ud.localpath) != os.path.basename(origud.localpath):
if origud.mirrortarballs and os.path.basename(ud.localpath) in origud.mirrortarballs and os.path.basename(ud.localpath) != os.path.basename(origud.localpath):
# Create donestamp in old format to avoid triggering a re-download
if ud.donestamp:
bb.utils.mkdirhier(os.path.dirname(ud.donestamp))
open(ud.donestamp, 'w').close()
dest = os.path.join(dldir, os.path.basename(ud.localpath))
if not os.path.exists(dest):
os.symlink(ud.localpath, dest)
# In case this is executing without any file locks held (as is
# the case for file:// URLs), two tasks may end up here at the
# same time, in which case we do not want the second task to
# fail when the link has already been created by the first task.
try:
os.symlink(ud.localpath, dest)
except FileExistsError:
pass
if not verify_donestamp(origud, ld) or origud.method.need_update(origud, ld):
origud.method.download(origud, ld)
if hasattr(origud.method,"build_mirror_data"):
if hasattr(origud.method, "build_mirror_data"):
origud.method.build_mirror_data(origud, ld)
return origud.localpath
# Otherwise the result is a local file:// and we symlink to it
@@ -995,7 +1004,11 @@ def try_mirror_url(fetch, origud, ud, ld, check = False):
# Broken symbolic link
os.unlink(origud.localpath)
os.symlink(ud.localpath, origud.localpath)
# As per above, in case two tasks end up here simultaneously.
try:
os.symlink(ud.localpath, origud.localpath)
except FileExistsError:
pass
update_stamp(origud, ld)
return ud.localpath
@@ -1119,7 +1132,7 @@ def srcrev_internal_helper(ud, d, name):
if srcrev == "INVALID" or not srcrev:
return parmrev
if srcrev != parmrev:
raise FetchError("Conflicting revisions (%s from SRCREV and %s from the url) found, please spcify one valid value" % (srcrev, parmrev))
raise FetchError("Conflicting revisions (%s from SRCREV and %s from the url) found, please specify one valid value" % (srcrev, parmrev))
return parmrev
if srcrev == "INVALID" or not srcrev:
@@ -1179,7 +1192,7 @@ class FetchData(object):
self.localfile = ""
self.localpath = None
self.lockfile = None
self.mirrortarball = None
self.mirrortarballs = []
self.basename = None
self.basepath = None
(self.type, self.host, self.path, self.user, self.pswd, self.parm) = decodeurl(d.expand(url))

View File

@@ -70,11 +70,14 @@ Supported SRC_URI options are:
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import collections
import errno
import fnmatch
import os
import re
import subprocess
import tempfile
import bb
import errno
import bb.progress
from bb.fetch2 import FetchMethod
from bb.fetch2 import runfetchcmd
@@ -172,18 +175,66 @@ class Git(FetchMethod):
branches = ud.parm.get("branch", "master").split(',')
if len(branches) != len(ud.names):
raise bb.fetch2.ParameterError("The number of name and branch parameters is not balanced", ud.url)
ud.cloneflags = "-s -n"
if ud.bareclone:
ud.cloneflags += " --mirror"
ud.shallow = d.getVar("BB_GIT_SHALLOW") == "1"
ud.shallow_extra_refs = (d.getVar("BB_GIT_SHALLOW_EXTRA_REFS") or "").split()
depth_default = d.getVar("BB_GIT_SHALLOW_DEPTH")
if depth_default is not None:
try:
depth_default = int(depth_default or 0)
except ValueError:
raise bb.fetch2.FetchError("Invalid depth for BB_GIT_SHALLOW_DEPTH: %s" % depth_default)
else:
if depth_default < 0:
raise bb.fetch2.FetchError("Invalid depth for BB_GIT_SHALLOW_DEPTH: %s" % depth_default)
else:
depth_default = 1
ud.shallow_depths = collections.defaultdict(lambda: depth_default)
revs_default = d.getVar("BB_GIT_SHALLOW_REVS", True)
ud.shallow_revs = []
ud.branches = {}
for pos, name in enumerate(ud.names):
branch = branches[pos]
ud.branches[name] = branch
ud.unresolvedrev[name] = branch
shallow_depth = d.getVar("BB_GIT_SHALLOW_DEPTH_%s" % name)
if shallow_depth is not None:
try:
shallow_depth = int(shallow_depth or 0)
except ValueError:
raise bb.fetch2.FetchError("Invalid depth for BB_GIT_SHALLOW_DEPTH_%s: %s" % (name, shallow_depth))
else:
if shallow_depth < 0:
raise bb.fetch2.FetchError("Invalid depth for BB_GIT_SHALLOW_DEPTH_%s: %s" % (name, shallow_depth))
ud.shallow_depths[name] = shallow_depth
revs = d.getVar("BB_GIT_SHALLOW_REVS_%s" % name)
if revs is not None:
ud.shallow_revs.extend(revs.split())
elif revs_default is not None:
ud.shallow_revs.extend(revs_default.split())
if (ud.shallow and
not ud.shallow_revs and
all(ud.shallow_depths[n] == 0 for n in ud.names)):
# Shallow disabled for this URL
ud.shallow = False
if ud.usehead:
ud.unresolvedrev['default'] = 'HEAD'
ud.basecmd = d.getVar("FETCHCMD_git") or "git -c core.fsyncobjectfiles=0"
ud.write_tarballs = ((d.getVar("BB_GENERATE_MIRROR_TARBALLS") or "0") != "0") or ud.rebaseable
write_tarballs = d.getVar("BB_GENERATE_MIRROR_TARBALLS") or "0"
ud.write_tarballs = write_tarballs != "0" or ud.rebaseable
ud.write_shallow_tarballs = (d.getVar("BB_GENERATE_SHALLOW_TARBALLS") or write_tarballs) != "0"
ud.setup_revisions(d)
@@ -205,13 +256,42 @@ class Git(FetchMethod):
if ud.rebaseable:
for name in ud.names:
gitsrcname = gitsrcname + '_' + ud.revisions[name]
ud.mirrortarball = 'git2_%s.tar.gz' % gitsrcname
ud.fullmirror = os.path.join(d.getVar("DL_DIR"), ud.mirrortarball)
gitdir = d.getVar("GITDIR") or (d.getVar("DL_DIR") + "/git2/")
ud.clonedir = os.path.join(gitdir, gitsrcname)
dl_dir = d.getVar("DL_DIR")
gitdir = d.getVar("GITDIR") or (dl_dir + "/git2/")
ud.clonedir = os.path.join(gitdir, gitsrcname)
ud.localfile = ud.clonedir
mirrortarball = 'git2_%s.tar.gz' % gitsrcname
ud.fullmirror = os.path.join(dl_dir, mirrortarball)
ud.mirrortarballs = [mirrortarball]
if ud.shallow:
tarballname = gitsrcname
if ud.bareclone:
tarballname = "%s_bare" % tarballname
if ud.shallow_revs:
tarballname = "%s_%s" % (tarballname, "_".join(sorted(ud.shallow_revs)))
for name, revision in sorted(ud.revisions.items()):
tarballname = "%s_%s" % (tarballname, ud.revisions[name][:7])
depth = ud.shallow_depths[name]
if depth:
tarballname = "%s-%s" % (tarballname, depth)
shallow_refs = []
if not ud.nobranch:
shallow_refs.extend(ud.branches.values())
if ud.shallow_extra_refs:
shallow_refs.extend(r.replace('refs/heads/', '').replace('*', 'ALL') for r in ud.shallow_extra_refs)
if shallow_refs:
tarballname = "%s_%s" % (tarballname, "_".join(sorted(shallow_refs)).replace('/', '.'))
fetcher = self.__class__.__name__.lower()
ud.shallowtarball = '%sshallow_%s.tar.gz' % (fetcher, tarballname)
ud.fullshallow = os.path.join(dl_dir, ud.shallowtarball)
ud.mirrortarballs.insert(0, ud.shallowtarball)
def localpath(self, ud, d):
return ud.clonedir
@@ -221,6 +301,8 @@ class Git(FetchMethod):
for name in ud.names:
if not self._contains_ref(ud, d, name, ud.clonedir):
return True
if ud.shallow and ud.write_shallow_tarballs and not os.path.exists(ud.fullshallow):
return True
if ud.write_tarballs and not os.path.exists(ud.fullmirror):
return True
return False
@@ -237,8 +319,16 @@ class Git(FetchMethod):
def download(self, ud, d):
"""Fetch url"""
# If the checkout doesn't exist and the mirror tarball does, extract it
if not os.path.exists(ud.clonedir) and os.path.exists(ud.fullmirror):
no_clone = not os.path.exists(ud.clonedir)
need_update = no_clone or self.need_update(ud, d)
# A current clone is preferred to either tarball, a shallow tarball is
# preferred to an out of date clone, and a missing clone will use
# either tarball.
if ud.shallow and os.path.exists(ud.fullshallow) and need_update:
ud.localpath = ud.fullshallow
return
elif os.path.exists(ud.fullmirror) and no_clone:
bb.utils.mkdirhier(ud.clonedir)
runfetchcmd("tar -xzf %s" % ud.fullmirror, d, workdir=ud.clonedir)
@@ -284,9 +374,21 @@ class Git(FetchMethod):
raise bb.fetch2.FetchError("Unable to find revision %s in branch %s even from upstream" % (ud.revisions[name], ud.branches[name]))
def build_mirror_data(self, ud, d):
# Generate a mirror tarball if needed
if ud.write_tarballs and not os.path.exists(ud.fullmirror):
# it's possible that this symlink points to read-only filesystem with PREMIRROR
if ud.shallow and ud.write_shallow_tarballs:
if not os.path.exists(ud.fullshallow):
if os.path.islink(ud.fullshallow):
os.unlink(ud.fullshallow)
tempdir = tempfile.mkdtemp(dir=d.getVar('DL_DIR'))
shallowclone = os.path.join(tempdir, 'git')
try:
self.clone_shallow_local(ud, shallowclone, d)
logger.info("Creating tarball of git repository")
runfetchcmd("tar -czf %s ." % ud.fullshallow, d, workdir=shallowclone)
runfetchcmd("touch %s.done" % ud.fullshallow, d)
finally:
bb.utils.remove(tempdir, recurse=True)
elif ud.write_tarballs and not os.path.exists(ud.fullmirror):
if os.path.islink(ud.fullmirror):
os.unlink(ud.fullmirror)
@@ -294,6 +396,62 @@ class Git(FetchMethod):
runfetchcmd("tar -czf %s ." % ud.fullmirror, d, workdir=ud.clonedir)
runfetchcmd("touch %s.done" % ud.fullmirror, d)
def clone_shallow_local(self, ud, dest, d):
"""Clone the repo and make it shallow.
The upstream url of the new clone isn't set at this time, as it'll be
set correctly when unpacked."""
runfetchcmd("%s clone %s %s %s" % (ud.basecmd, ud.cloneflags, ud.clonedir, dest), d)
to_parse, shallow_branches = [], []
for name in ud.names:
revision = ud.revisions[name]
depth = ud.shallow_depths[name]
if depth:
to_parse.append('%s~%d^{}' % (revision, depth - 1))
# For nobranch, we need a ref, otherwise the commits will be
# removed, and for non-nobranch, we truncate the branch to our
# srcrev, to avoid keeping unnecessary history beyond that.
branch = ud.branches[name]
if ud.nobranch:
ref = "refs/shallow/%s" % name
elif ud.bareclone:
ref = "refs/heads/%s" % branch
else:
ref = "refs/remotes/origin/%s" % branch
shallow_branches.append(ref)
runfetchcmd("%s update-ref %s %s" % (ud.basecmd, ref, revision), d, workdir=dest)
# Map srcrev+depths to revisions
parsed_depths = runfetchcmd("%s rev-parse %s" % (ud.basecmd, " ".join(to_parse)), d, workdir=dest)
# Resolve specified revisions
parsed_revs = runfetchcmd("%s rev-parse %s" % (ud.basecmd, " ".join('"%s^{}"' % r for r in ud.shallow_revs)), d, workdir=dest)
shallow_revisions = parsed_depths.splitlines() + parsed_revs.splitlines()
# Apply extra ref wildcards
all_refs = runfetchcmd('%s for-each-ref "--format=%%(refname)"' % ud.basecmd,
d, workdir=dest).splitlines()
for r in ud.shallow_extra_refs:
if not ud.bareclone:
r = r.replace('refs/heads/', 'refs/remotes/origin/')
if '*' in r:
matches = filter(lambda a: fnmatch.fnmatchcase(a, r), all_refs)
shallow_branches.extend(matches)
else:
shallow_branches.append(r)
# Make the repository shallow
shallow_cmd = ['git', 'make-shallow', '-s']
for b in shallow_branches:
shallow_cmd.append('-r')
shallow_cmd.append(b)
shallow_cmd.extend(shallow_revisions)
runfetchcmd(subprocess.list2cmdline(shallow_cmd), d, workdir=dest)
def unpack(self, ud, destdir, d):
""" unpack the downloaded src to destdir"""
@@ -310,11 +468,12 @@ class Git(FetchMethod):
if os.path.exists(destdir):
bb.utils.prunedir(destdir)
cloneflags = "-s -n"
if ud.bareclone:
cloneflags += " --mirror"
if ud.shallow and (not os.path.exists(ud.clonedir) or self.need_update(ud, d)):
bb.utils.mkdirhier(destdir)
runfetchcmd("tar -xzf %s" % ud.fullshallow, d, workdir=destdir)
else:
runfetchcmd("%s clone %s %s/ %s" % (ud.basecmd, ud.cloneflags, ud.clonedir, destdir), d)
runfetchcmd("%s clone %s %s/ %s" % (ud.basecmd, cloneflags, ud.clonedir, destdir), d)
repourl = self._get_repo_url(ud)
runfetchcmd("%s remote set-url origin %s" % (ud.basecmd, repourl), d, workdir=destdir)
if not ud.nocheckout:
@@ -379,14 +538,26 @@ class Git(FetchMethod):
"""
Run git ls-remote with the specified search string
"""
repourl = self._get_repo_url(ud)
cmd = "%s ls-remote %s %s" % \
(ud.basecmd, repourl, search)
if ud.proto.lower() != 'file':
bb.fetch2.check_network_access(d, cmd, repourl)
output = runfetchcmd(cmd, d, True)
if not output:
raise bb.fetch2.FetchError("The command %s gave empty output unexpectedly" % cmd, ud.url)
# Prevent recursion e.g. in OE if SRCPV is in PV, PV is in WORKDIR,
# and WORKDIR is in PATH (as a result of RSS), our call to
# runfetchcmd() exports PATH so this function will get called again (!)
# In this scenario the return call of the function isn't actually
# important - WORKDIR isn't needed in PATH to call git ls-remote
# anyway.
if d.getVar('_BB_GIT_IN_LSREMOTE', False):
return ''
d.setVar('_BB_GIT_IN_LSREMOTE', '1')
try:
repourl = self._get_repo_url(ud)
cmd = "%s ls-remote %s %s" % \
(ud.basecmd, repourl, search)
if ud.proto.lower() != 'file':
bb.fetch2.check_network_access(d, cmd, repourl)
output = runfetchcmd(cmd, d, True)
if not output:
raise bb.fetch2.FetchError("The command %s gave empty output unexpectedly" % cmd, ud.url)
finally:
d.delVar('_BB_GIT_IN_LSREMOTE')
return output
def _latest_revision(self, ud, d, name):

View File

@@ -33,6 +33,11 @@ class GitANNEX(Git):
"""
return ud.type in ['gitannex']
def urldata_init(self, ud, d):
super(GitANNEX, self).urldata_init(ud, d)
if ud.shallow:
ud.shallow_extra_refs += ['refs/heads/git-annex', 'refs/heads/synced/*']
def uses_annex(self, ud, d, wd):
for name in ud.names:
try:
@@ -55,9 +60,21 @@ class GitANNEX(Git):
def download(self, ud, d):
Git.download(self, ud, d)
annex = self.uses_annex(ud, d, ud.clonedir)
if annex:
self.update_annex(ud, d, ud.clonedir)
if not ud.shallow or ud.localpath != ud.fullshallow:
if self.uses_annex(ud, d, ud.clonedir):
self.update_annex(ud, d, ud.clonedir)
def clone_shallow_local(self, ud, dest, d):
super(GitANNEX, self).clone_shallow_local(ud, dest, d)
try:
runfetchcmd("%s annex init" % ud.basecmd, d, workdir=dest)
except bb.fetch.FetchError:
pass
if self.uses_annex(ud, d, dest):
runfetchcmd("%s annex get" % ud.basecmd, d, workdir=dest)
runfetchcmd("chmod u+w -R %s/.git/annex" % (dest), d, quiet=True, workdir=dest)
def unpack(self, ud, destdir, d):
Git.unpack(self, ud, destdir, d)

View File

@@ -117,14 +117,19 @@ class GitSM(Git):
def download(self, ud, d):
Git.download(self, ud, d)
submodules = self.uses_submodules(ud, d, ud.clonedir)
if submodules:
self.update_submodules(ud, d)
if not ud.shallow or ud.localpath != ud.fullshallow:
submodules = self.uses_submodules(ud, d, ud.clonedir)
if submodules:
self.update_submodules(ud, d)
def clone_shallow_local(self, ud, dest, d):
super(GitSM, self).clone_shallow_local(ud, dest, d)
runfetchcmd('cp -fpPRH "%s/modules" "%s/"' % (ud.clonedir, os.path.join(dest, '.git')), d)
def unpack(self, ud, destdir, d):
Git.unpack(self, ud, destdir, d)
submodules = self.uses_submodules(ud, d, ud.destdir)
if submodules:
if self.uses_submodules(ud, d, ud.destdir):
runfetchcmd(ud.basecmd + " checkout " + ud.revisions[ud.names[0]], d, workdir=ud.destdir)
runfetchcmd(ud.basecmd + " submodule update --init --recursive", d, workdir=ud.destdir)

View File

@@ -76,8 +76,9 @@ class Hg(FetchMethod):
# Create paths to mercurial checkouts
hgsrcname = '%s_%s_%s' % (ud.module.replace('/', '.'), \
ud.host, ud.path.replace('/', '.'))
ud.mirrortarball = 'hg_%s.tar.gz' % hgsrcname
ud.fullmirror = os.path.join(d.getVar("DL_DIR"), ud.mirrortarball)
mirrortarball = 'hg_%s.tar.gz' % hgsrcname
ud.fullmirror = os.path.join(d.getVar("DL_DIR"), mirrortarball)
ud.mirrortarballs = [mirrortarball]
hgdir = d.getVar("HGDIR") or (d.getVar("DL_DIR") + "/hg/")
ud.pkgdir = os.path.join(hgdir, hgsrcname)

View File

@@ -67,12 +67,6 @@ class Local(FetchMethod):
logger.debug(2, "Searching for %s in paths:\n %s" % (path, "\n ".join(filespath.split(":"))))
newpath, hist = bb.utils.which(filespath, path, history=True)
searched.extend(hist)
if not newpath:
filesdir = d.getVar('FILESDIR')
if filesdir:
logger.debug(2, "Searching for %s in path: %s" % (path, filesdir))
newpath = os.path.join(filesdir, path)
searched.append(newpath)
if (not newpath or not os.path.exists(newpath)) and path.find("*") != -1:
# For expressions using '*', best we can do is take the first directory in FILESPATH that exists
newpath, hist = bb.utils.which(filespath, ".", history=True)
@@ -102,9 +96,6 @@ class Local(FetchMethod):
filespath = d.getVar('FILESPATH')
if filespath:
locations = filespath.split(":")
filesdir = d.getVar('FILESDIR')
if filesdir:
locations.append(filesdir)
locations.append(d.getVar("DL_DIR"))
msg = "Unable to find file " + urldata.url + " anywhere. The paths that were searched were:\n " + "\n ".join(locations)

View File

@@ -91,9 +91,10 @@ class Npm(FetchMethod):
ud.prefixdir = prefixdir
ud.write_tarballs = ((d.getVar("BB_GENERATE_MIRROR_TARBALLS") or "0") != "0")
ud.mirrortarball = 'npm_%s-%s.tar.xz' % (ud.pkgname, ud.version)
ud.mirrortarball = ud.mirrortarball.replace('/', '-')
ud.fullmirror = os.path.join(d.getVar("DL_DIR"), ud.mirrortarball)
mirrortarball = 'npm_%s-%s.tar.xz' % (ud.pkgname, ud.version)
mirrortarball = ud.mirrortarball.replace('/', '-')
ud.fullmirror = os.path.join(d.getVar("DL_DIR"), mirrortarball)
ud.mirrortarballs = [mirrortarball]
def need_update(self, ud, d):
if os.path.exists(ud.localpath):

View File

@@ -55,13 +55,15 @@ class S3(FetchMethod):
ud.localfile = d.expand(urllib.parse.unquote(ud.basename))
ud.basecmd = d.getVar("FETCHCMD_s3") or "/usr/bin/env aws s3"
def download(self, ud, d):
"""
Fetch urls
Assumes localpath was called first
"""
cmd = 'aws s3 cp s3://%s%s %s' % (ud.host, ud.path, ud.localpath)
cmd = '%s cp s3://%s%s %s' % (ud.basecmd, ud.host, ud.path, ud.localpath)
bb.fetch2.check_network_access(d, cmd, ud.url)
runfetchcmd(cmd, d)
@@ -83,7 +85,7 @@ class S3(FetchMethod):
Check the status of a URL
"""
cmd = 'aws s3 ls s3://%s%s' % (ud.host, ud.path)
cmd = '%s ls s3://%s%s' % (ud.basecmd, ud.host, ud.path)
bb.fetch2.check_network_access(d, cmd, ud.url)
output = runfetchcmd(cmd, d)

View File

@@ -107,9 +107,8 @@ class Wget(FetchMethod):
bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile))
fetchcmd += " -O " + dldir + os.sep + ud.localfile
if ud.user:
up = ud.user.split(":")
fetchcmd += " --user=%s --password=%s --auth-no-challenge" % (up[0],up[1])
if ud.user and ud.pswd:
fetchcmd += " --user=%s --password=%s --auth-no-challenge" % (ud.user, ud.pswd)
uri = ud.url.split(";")[0]
if os.path.exists(ud.localpath):

View File

@@ -174,10 +174,21 @@ class BitBakeConfigParameters(cookerdata.ConfigParameters):
help="Read the specified file after bitbake.conf.")
parser.add_option("-v", "--verbose", action="store_true", dest="verbose", default=False,
help="Output more log message data to the terminal.")
help="Enable tracing of shell tasks (with 'set -x'). "
"Also print bb.note(...) messages to stdout (in "
"addition to writing them to ${T}/log.do_<task>).")
parser.add_option("-D", "--debug", action="count", dest="debug", default=0,
help="Increase the debug level. You can specify this more than once.")
help="Increase the debug level. You can specify this "
"more than once. -D sets the debug level to 1, "
"where only bb.debug(1, ...) messages are printed "
"to stdout; -DD sets the debug level to 2, where "
"both bb.debug(1, ...) and bb.debug(2, ...) "
"messages are printed; etc. Without -D, no debug "
"messages are printed. Note that -D only affects "
"output to stdout. All debug messages are written "
"to ${T}/log.do_taskname, regardless of the debug "
"level.")
parser.add_option("-q", "--quiet", action="count", dest="quiet", default=0,
help="Output less log message data to the terminal. You can specify this more than once.")
@@ -466,10 +477,10 @@ def bitbake_main(configParams, configuration):
return 1
def setup_bitbake(configParams, configuration, extrafeatures=None):
def setup_bitbake(configParams, configuration, extrafeatures=None, setup_logging=True):
# Ensure logging messages get sent to the UI as events
handler = bb.event.LogHandler()
if not configParams.status_only:
if setup_logging and not configParams.status_only:
# In status only mode there are no logs and no UI
logger.addHandler(handler)

View File

@@ -201,3 +201,25 @@ def fatal(msgdomain, msg):
logger = logging.getLogger("BitBake")
logger.critical(msg)
sys.exit(1)
def logger_create(name, output=sys.stderr, level=logging.INFO, preserve_handlers=False, color='auto'):
"""Standalone logger creation function"""
logger = logging.getLogger(name)
console = logging.StreamHandler(output)
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
if color == 'always' or (color == 'auto' and output.isatty()):
format.enable_color()
console.setFormatter(format)
if preserve_handlers:
logger.addHandler(console)
else:
logger.handlers = [console]
logger.setLevel(level)
return logger
def has_console_handler(logger):
for handler in logger.handlers:
if isinstance(handler, logging.StreamHandler):
if handler.stream in [sys.stderr, sys.stdout]:
return True
return False

View File

@@ -32,7 +32,7 @@ from bb.parse import ParseError, resolve_file, ast, logger, handle
__config_regexp__ = re.compile( r"""
^
(?P<exp>export\s*)?
(?P<exp>export\s+)?
(?P<var>[a-zA-Z0-9\-_+.${}/~]+?)
(\[(?P<flag>[a-zA-Z0-9\-_+.]+)\])?
@@ -69,18 +69,26 @@ def init(data):
def supports(fn, d):
return fn[-5:] == ".conf"
def include(parentfn, fn, lineno, data, error_out):
def include(parentfn, fns, lineno, data, error_out):
"""
error_out: A string indicating the verb (e.g. "include", "inherit") to be
used in a ParseError that will be raised if the file to be included could
not be included. Specify False to avoid raising an error in this case.
"""
fns = data.expand(fns)
parentfn = data.expand(parentfn)
# "include" or "require" accept zero to n space-separated file names to include.
for fn in fns.split():
include_single_file(parentfn, fn, lineno, data, error_out)
def include_single_file(parentfn, fn, lineno, data, error_out):
"""
Helper function for include() which does not expand or split its parameters.
"""
if parentfn == fn: # prevent infinite recursion
return None
fn = data.expand(fn)
parentfn = data.expand(parentfn)
if not os.path.isabs(fn):
dname = os.path.dirname(parentfn)
bbpath = "%s:%s" % (dname, data.getVar("BBPATH"))

View File

@@ -94,46 +94,53 @@ def _logged_communicate(pipe, log, input, extrafiles):
if data is not None:
func(data)
def read_all_pipes(log, rin, outdata, errdata):
rlist = rin
stdoutbuf = b""
stderrbuf = b""
try:
r,w,e = select.select (rlist, [], [], 1)
except OSError as e:
if e.errno != errno.EINTR:
raise
readextras(r)
if pipe.stdout in r:
data = stdoutbuf + pipe.stdout.read()
if data is not None and len(data) > 0:
try:
data = data.decode("utf-8")
outdata.append(data)
log.write(data)
log.flush()
stdoutbuf = b""
except UnicodeDecodeError:
stdoutbuf = data
if pipe.stderr in r:
data = stderrbuf + pipe.stderr.read()
if data is not None and len(data) > 0:
try:
data = data.decode("utf-8")
errdata.append(data)
log.write(data)
log.flush()
stderrbuf = b""
except UnicodeDecodeError:
stderrbuf = data
try:
# Read all pipes while the process is open
while pipe.poll() is None:
rlist = rin
stdoutbuf = b""
stderrbuf = b""
try:
r,w,e = select.select (rlist, [], [], 1)
except OSError as e:
if e.errno != errno.EINTR:
raise
read_all_pipes(log, rin, outdata, errdata)
if pipe.stdout in r:
data = stdoutbuf + pipe.stdout.read()
if data is not None and len(data) > 0:
try:
data = data.decode("utf-8")
outdata.append(data)
log.write(data)
stdoutbuf = b""
except UnicodeDecodeError:
stdoutbuf = data
if pipe.stderr in r:
data = stderrbuf + pipe.stderr.read()
if data is not None and len(data) > 0:
try:
data = data.decode("utf-8")
errdata.append(data)
log.write(data)
stderrbuf = b""
except UnicodeDecodeError:
stderrbuf = data
readextras(r)
finally:
# Pocess closed, drain all pipes...
read_all_pipes(log, rin, outdata, errdata)
finally:
log.flush()
readextras([fobj for fobj, _ in extrafiles])
if pipe.stdout is not None:
pipe.stdout.close()
if pipe.stderr is not None:

View File

@@ -697,6 +697,9 @@ class RunQueueData:
seendeps.add(t)
newdeps.add(t)
for i in newdeps:
if i not in self.runtaskentries:
# Not all recipes might have the recrdeptask task as a task
continue
task = self.runtaskentries[i].task
for n in self.runtaskentries[i].depends:
if n not in seendeps:
@@ -1929,7 +1932,7 @@ class RunQueueExecuteTasks(RunQueueExecute):
self.rq.state = runQueueFailed
self.stats.taskFailed()
return True
self.rq.fakeworker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, False, self.cooker.collection.get_file_appends(fn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>")
self.rq.fakeworker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, False, self.cooker.collection.get_file_appends(taskfn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>")
self.rq.fakeworker[mc].process.stdin.flush()
else:
self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, False, self.cooker.collection.get_file_appends(taskfn), taskdepdata, self.rqdata.setscene_enforce)) + b"</runtask>")

View File

@@ -5,6 +5,8 @@ import re
import tempfile
import pickle
import bb.data
import difflib
import simplediff
from bb.checksum import FileChecksumCache
logger = logging.getLogger('BitBake.SigGen')
@@ -155,6 +157,8 @@ class SignatureGeneratorBasic(SignatureGenerator):
try:
taskdeps = self._build_data(fn, d)
except bb.parse.SkipRecipe:
raise
except:
bb.warn("Error during finalise of %s" % fn)
raise
@@ -351,11 +355,62 @@ def dump_this_task(outfile, d):
referencestamp = bb.build.stamp_internal(task, d, None, True)
bb.parse.siggen.dump_sigtask(fn, task, outfile, "customfile:" + referencestamp)
def init_colors(enable_color):
"""Initialise colour dict for passing to compare_sigfiles()"""
# First set up the colours
colors = {'color_title': '\033[1;37;40m',
'color_default': '\033[0;37;40m',
'color_add': '\033[1;32;40m',
'color_remove': '\033[1;31;40m',
}
# Leave all keys present but clear the values
if not enable_color:
for k in colors.keys():
colors[k] = ''
return colors
def worddiff_str(oldstr, newstr, colors=None):
if not colors:
colors = init_colors(False)
diff = simplediff.diff(oldstr.split(' '), newstr.split(' '))
ret = []
for change, value in diff:
value = ' '.join(value)
if change == '=':
ret.append(value)
elif change == '+':
item = '{color_add}{{+{value}+}}{color_default}'.format(value=value, **colors)
ret.append(item)
elif change == '-':
item = '{color_remove}[-{value}-]{color_default}'.format(value=value, **colors)
ret.append(item)
whitespace_note = ''
if oldstr != newstr and ' '.join(oldstr.split()) == ' '.join(newstr.split()):
whitespace_note = ' (whitespace changed)'
return '"%s"%s' % (' '.join(ret), whitespace_note)
def list_inline_diff(oldlist, newlist, colors=None):
if not colors:
colors = init_colors(False)
diff = simplediff.diff(oldlist, newlist)
ret = []
for change, value in diff:
value = ' '.join(value)
if change == '=':
ret.append("'%s'" % value)
elif change == '+':
item = '{color_add}+{value}{color_default}'.format(value=value, **colors)
ret.append(item)
elif change == '-':
item = '{color_remove}-{value}{color_default}'.format(value=value, **colors)
ret.append(item)
return '[%s]' % (', '.join(ret))
def clean_basepath(a):
mc = None
if a.startswith("multiconfig:"):
_, mc, a = a.split(":", 2)
b = a.rsplit("/", 2)[1] + a.rsplit("/", 2)[2]
b = a.rsplit("/", 2)[1] + '/' + a.rsplit("/", 2)[2]
if a.startswith("virtual:"):
b = b + ":" + a.rsplit(":", 1)[0]
if mc:
@@ -374,9 +429,26 @@ def clean_basepaths_list(a):
b.append(clean_basepath(x))
return b
def compare_sigfiles(a, b, recursecb = None):
def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False):
output = []
colors = init_colors(color)
def color_format(formatstr, **values):
"""
Return colour formatted string.
NOTE: call with the format string, not an already formatted string
containing values (otherwise you could have trouble with { and }
characters)
"""
if not formatstr.endswith('{color_default}'):
formatstr += '{color_default}'
# In newer python 3 versions you can pass both of these directly,
# but we only require 3.4 at the moment
formatparams = {}
formatparams.update(colors)
formatparams.update(values)
return formatstr.format(**formatparams)
with open(a, 'rb') as f:
p1 = pickle.Unpickler(f)
a_data = p1.load()
@@ -430,39 +502,59 @@ def compare_sigfiles(a, b, recursecb = None):
return changed, added, removed
if 'basewhitelist' in a_data and a_data['basewhitelist'] != b_data['basewhitelist']:
output.append("basewhitelist changed from '%s' to '%s'" % (a_data['basewhitelist'], b_data['basewhitelist']))
output.append(color_format("{color_title}basewhitelist changed{color_default} from '%s' to '%s'") % (a_data['basewhitelist'], b_data['basewhitelist']))
if a_data['basewhitelist'] and b_data['basewhitelist']:
output.append("changed items: %s" % a_data['basewhitelist'].symmetric_difference(b_data['basewhitelist']))
if 'taskwhitelist' in a_data and a_data['taskwhitelist'] != b_data['taskwhitelist']:
output.append("taskwhitelist changed from '%s' to '%s'" % (a_data['taskwhitelist'], b_data['taskwhitelist']))
output.append(color_format("{color_title}taskwhitelist changed{color_default} from '%s' to '%s'") % (a_data['taskwhitelist'], b_data['taskwhitelist']))
if a_data['taskwhitelist'] and b_data['taskwhitelist']:
output.append("changed items: %s" % a_data['taskwhitelist'].symmetric_difference(b_data['taskwhitelist']))
if a_data['taskdeps'] != b_data['taskdeps']:
output.append("Task dependencies changed from:\n%s\nto:\n%s" % (sorted(a_data['taskdeps']), sorted(b_data['taskdeps'])))
output.append(color_format("{color_title}Task dependencies changed{color_default} from:\n%s\nto:\n%s") % (sorted(a_data['taskdeps']), sorted(b_data['taskdeps'])))
if a_data['basehash'] != b_data['basehash']:
output.append("basehash changed from %s to %s" % (a_data['basehash'], b_data['basehash']))
if a_data['basehash'] != b_data['basehash'] and not collapsed:
output.append(color_format("{color_title}basehash changed{color_default} from %s to %s") % (a_data['basehash'], b_data['basehash']))
changed, added, removed = dict_diff(a_data['gendeps'], b_data['gendeps'], a_data['basewhitelist'] & b_data['basewhitelist'])
if changed:
for dep in changed:
output.append("List of dependencies for variable %s changed from '%s' to '%s'" % (dep, a_data['gendeps'][dep], b_data['gendeps'][dep]))
output.append(color_format("{color_title}List of dependencies for variable %s changed from '{color_default}%s{color_title}' to '{color_default}%s{color_title}'") % (dep, a_data['gendeps'][dep], b_data['gendeps'][dep]))
if a_data['gendeps'][dep] and b_data['gendeps'][dep]:
output.append("changed items: %s" % a_data['gendeps'][dep].symmetric_difference(b_data['gendeps'][dep]))
if added:
for dep in added:
output.append("Dependency on variable %s was added" % (dep))
output.append(color_format("{color_title}Dependency on variable %s was added") % (dep))
if removed:
for dep in removed:
output.append("Dependency on Variable %s was removed" % (dep))
output.append(color_format("{color_title}Dependency on Variable %s was removed") % (dep))
changed, added, removed = dict_diff(a_data['varvals'], b_data['varvals'])
if changed:
for dep in changed:
output.append("Variable %s value changed from '%s' to '%s'" % (dep, a_data['varvals'][dep], b_data['varvals'][dep]))
oldval = a_data['varvals'][dep]
newval = b_data['varvals'][dep]
if newval and oldval and ('\n' in oldval or '\n' in newval):
diff = difflib.unified_diff(oldval.splitlines(), newval.splitlines(), lineterm='')
# Cut off the first two lines, since we aren't interested in
# the old/new filename (they are blank anyway in this case)
difflines = list(diff)[2:]
if color:
# Add colour to diff output
for i, line in enumerate(difflines):
if line.startswith('+'):
line = color_format('{color_add}{line}', line=line)
difflines[i] = line
elif line.startswith('-'):
line = color_format('{color_remove}{line}', line=line)
difflines[i] = line
output.append(color_format("{color_title}Variable {var} value changed:{color_default}\n{diff}", var=dep, diff='\n'.join(difflines)))
elif newval and oldval and (' ' in oldval or ' ' in newval):
output.append(color_format("{color_title}Variable {var} value changed:{color_default}\n{diff}", var=dep, diff=worddiff_str(oldval, newval, colors)))
else:
output.append(color_format("{color_title}Variable {var} value changed from '{color_default}{oldval}{color_title}' to '{color_default}{newval}{color_title}'{color_default}", var=dep, oldval=oldval, newval=newval))
if not 'file_checksum_values' in a_data:
a_data['file_checksum_values'] = {}
@@ -472,32 +564,38 @@ def compare_sigfiles(a, b, recursecb = None):
changed, added, removed = file_checksums_diff(a_data['file_checksum_values'], b_data['file_checksum_values'])
if changed:
for f, old, new in changed:
output.append("Checksum for file %s changed from %s to %s" % (f, old, new))
output.append(color_format("{color_title}Checksum for file %s changed{color_default} from %s to %s") % (f, old, new))
if added:
for f in added:
output.append("Dependency on checksum of file %s was added" % (f))
output.append(color_format("{color_title}Dependency on checksum of file %s was added") % (f))
if removed:
for f in removed:
output.append("Dependency on checksum of file %s was removed" % (f))
output.append(color_format("{color_title}Dependency on checksum of file %s was removed") % (f))
if not 'runtaskdeps' in a_data:
a_data['runtaskdeps'] = {}
if not 'runtaskdeps' in b_data:
b_data['runtaskdeps'] = {}
if len(a_data['runtaskdeps']) != len(b_data['runtaskdeps']):
changed = ["Number of task dependencies changed"]
else:
changed = []
for idx, task in enumerate(a_data['runtaskdeps']):
a = a_data['runtaskdeps'][idx]
b = b_data['runtaskdeps'][idx]
if a_data['runtaskhashes'][a] != b_data['runtaskhashes'][b]:
changed.append("%s with hash %s\n changed to\n%s with hash %s" % (a, a_data['runtaskhashes'][a], b, b_data['runtaskhashes'][b]))
if not collapsed:
if len(a_data['runtaskdeps']) != len(b_data['runtaskdeps']):
changed = ["Number of task dependencies changed"]
else:
changed = []
for idx, task in enumerate(a_data['runtaskdeps']):
a = a_data['runtaskdeps'][idx]
b = b_data['runtaskdeps'][idx]
if a_data['runtaskhashes'][a] != b_data['runtaskhashes'][b] and not collapsed:
changed.append("%s with hash %s\n changed to\n%s with hash %s" % (clean_basepath(a), a_data['runtaskhashes'][a], clean_basepath(b), b_data['runtaskhashes'][b]))
if changed:
output.append("runtaskdeps changed from %s to %s" % (clean_basepaths_list(a_data['runtaskdeps']), clean_basepaths_list(b_data['runtaskdeps'])))
output.append("\n".join(changed))
if changed:
clean_a = clean_basepaths_list(a_data['runtaskdeps'])
clean_b = clean_basepaths_list(b_data['runtaskdeps'])
if clean_a != clean_b:
output.append(color_format("{color_title}runtaskdeps changed:{color_default}\n%s") % list_inline_diff(clean_a, clean_b, colors))
else:
output.append(color_format("{color_title}runtaskdeps changed:"))
output.append("\n".join(changed))
if 'runtaskhashes' in a_data and 'runtaskhashes' in b_data:
@@ -513,7 +611,7 @@ def compare_sigfiles(a, b, recursecb = None):
#output.append("Dependency on task %s was replaced by %s with same hash" % (dep, bdep))
bdep_found = True
if not bdep_found:
output.append("Dependency on task %s was added with hash %s" % (clean_basepath(dep), b[dep]))
output.append(color_format("{color_title}Dependency on task %s was added{color_default} with hash %s") % (clean_basepath(dep), b[dep]))
if removed:
for dep in removed:
adep_found = False
@@ -523,21 +621,25 @@ def compare_sigfiles(a, b, recursecb = None):
#output.append("Dependency on task %s was replaced by %s with same hash" % (adep, dep))
adep_found = True
if not adep_found:
output.append("Dependency on task %s was removed with hash %s" % (clean_basepath(dep), a[dep]))
output.append(color_format("{color_title}Dependency on task %s was removed{color_default} with hash %s") % (clean_basepath(dep), a[dep]))
if changed:
for dep in changed:
output.append("Hash for dependent task %s changed from %s to %s" % (clean_basepath(dep), a[dep], b[dep]))
if not collapsed:
output.append(color_format("{color_title}Hash for dependent task %s changed{color_default} from %s to %s") % (clean_basepath(dep), a[dep], b[dep]))
if callable(recursecb):
# If a dependent hash changed, might as well print the line above and then defer to the changes in
# that hash since in all likelyhood, they're the same changes this task also saw.
recout = recursecb(dep, a[dep], b[dep])
if recout:
output = [output[-1]] + recout
if collapsed:
output.extend(recout)
else:
# If a dependent hash changed, might as well print the line above and then defer to the changes in
# that hash since in all likelyhood, they're the same changes this task also saw.
output = [output[-1]] + recout
a_taint = a_data.get('taint', None)
b_taint = b_data.get('taint', None)
if a_taint != b_taint:
output.append("Taint (by forced/invalidated task) changed from %s to %s" % (a_taint, b_taint))
output.append(color_format("{color_title}Taint (by forced/invalidated task) changed{color_default} from %s to %s") % (a_taint, b_taint))
return output
@@ -565,7 +667,8 @@ def calc_taskhash(sigdata):
data = data + sigdata['runtaskhashes'][dep]
for c in sigdata['file_checksum_values']:
data = data + c[1]
if c[1]:
data = data + c[1]
if 'taint' in sigdata:
if 'nostamp:' in sigdata['taint']:

View File

@@ -49,6 +49,9 @@ class ReferenceTest(unittest.TestCase):
def assertExecs(self, execs):
self.assertEqual(self.execs, execs)
def assertContains(self, contains):
self.assertEqual(self.contains, contains)
class VariableReferenceTest(ReferenceTest):
def parseExpression(self, exp):
@@ -201,6 +204,7 @@ class PythonReferenceTest(ReferenceTest):
self.references = parsedvar.references | parser.references
self.execs = parser.execs
self.contains = parser.contains
@staticmethod
def indent(value):
@@ -265,6 +269,26 @@ be. These unit tests are testing snippets."""
self.assertExecs(set(["testget"]))
del self.context["testget"]
def test_contains(self):
self.parseExpression('bb.utils.contains("TESTVAR", "one", "true", "false", d)')
self.assertContains({'TESTVAR': {'one'}})
def test_contains_multi(self):
self.parseExpression('bb.utils.contains("TESTVAR", "one two", "true", "false", d)')
self.assertContains({'TESTVAR': {'one two'}})
def test_contains_any(self):
self.parseExpression('bb.utils.contains_any("TESTVAR", "hello", "true", "false", d)')
self.assertContains({'TESTVAR': {'hello'}})
def test_contains_any_multi(self):
self.parseExpression('bb.utils.contains_any("TESTVAR", "one two three", "true", "false", d)')
self.assertContains({'TESTVAR': {'one', 'two', 'three'}})
def test_contains_filter(self):
self.parseExpression('bb.utils.filter("TESTVAR", "hello there world", d)')
self.assertContains({'TESTVAR': {'hello', 'there', 'world'}})
class DependencyReferenceTest(ReferenceTest):
@@ -370,6 +394,30 @@ esac
self.assertEqual(deps, set(["oe_libinstall"]))
def test_contains_vardeps(self):
expr = '${@bb.utils.filter("TESTVAR", "somevalue anothervalue", d)} \
${@bb.utils.contains("TESTVAR", "testval testval2", "yetanothervalue", "", d)} \
${@bb.utils.contains("TESTVAR", "testval2 testval3", "blah", "", d)} \
${@bb.utils.contains_any("TESTVAR", "testval2 testval3", "lastone", "", d)}'
parsedvar = self.d.expandWithRefs(expr, None)
# Check contains
self.assertEqual(parsedvar.contains, {'TESTVAR': {'testval2 testval3', 'anothervalue', 'somevalue', 'testval testval2', 'testval2', 'testval3'}})
# Check dependencies
self.d.setVar('ANOTHERVAR', expr)
self.d.setVar('TESTVAR', 'anothervalue testval testval2')
deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), self.d)
self.assertEqual(sorted(values.splitlines()),
sorted([expr,
'TESTVAR{anothervalue} = Set',
'TESTVAR{somevalue} = Unset',
'TESTVAR{testval testval2} = Set',
'TESTVAR{testval2 testval3} = Unset',
'TESTVAR{testval2} = Set',
'TESTVAR{testval3} = Unset'
]))
# Check final value
self.assertEqual(self.d.getVar('ANOTHERVAR').split(), ['anothervalue', 'yetanothervalue', 'lastone'])
#Currently no wildcard support
#def test_vardeps_wildcards(self):
# self.d.setVar("oe_libinstall", "echo test")

View File

@@ -283,6 +283,12 @@ class TestConcatOverride(unittest.TestCase):
self.d.setVar("TEST_remove", "val")
self.assertEqual(self.d.getVar("TEST"), "bar")
def test_remove_cleared(self):
self.d.setVar("TEST", "${VAL} ${BAR}")
self.d.setVar("TEST_remove", "val")
self.d.setVar("TEST", "${VAL} ${BAR}")
self.assertEqual(self.d.getVar("TEST"), "val bar")
# Ensure the value is unchanged if we have an inactive remove override
# (including that whitespace is preserved)
def test_remove_inactive_override(self):

View File

@@ -852,3 +852,606 @@ class FetchCheckStatusTest(FetcherTest):
self.assertTrue(ret, msg="URI %s, can't check status" % (u))
connection_cache.close_connections()
class GitMakeShallowTest(FetcherTest):
bitbake_dir = os.path.join(os.path.dirname(os.path.join(__file__)), '..', '..', '..')
make_shallow_path = os.path.join(bitbake_dir, 'bin', 'git-make-shallow')
def setUp(self):
FetcherTest.setUp(self)
self.gitdir = os.path.join(self.tempdir, 'gitshallow')
bb.utils.mkdirhier(self.gitdir)
bb.process.run('git init', cwd=self.gitdir)
def assertRefs(self, expected_refs):
actual_refs = self.git(['for-each-ref', '--format=%(refname)']).splitlines()
full_expected = self.git(['rev-parse', '--symbolic-full-name'] + expected_refs).splitlines()
self.assertEqual(sorted(full_expected), sorted(actual_refs))
def assertRevCount(self, expected_count, args=None):
if args is None:
args = ['HEAD']
revs = self.git(['rev-list'] + args)
actual_count = len(revs.splitlines())
self.assertEqual(expected_count, actual_count, msg='Object count `%d` is not the expected `%d`' % (actual_count, expected_count))
def git(self, cmd):
if isinstance(cmd, str):
cmd = 'git ' + cmd
else:
cmd = ['git'] + cmd
return bb.process.run(cmd, cwd=self.gitdir)[0]
def make_shallow(self, args=None):
if args is None:
args = ['HEAD']
return bb.process.run([self.make_shallow_path] + args, cwd=self.gitdir)
def add_empty_file(self, path, msg=None):
if msg is None:
msg = path
open(os.path.join(self.gitdir, path), 'w').close()
self.git(['add', path])
self.git(['commit', '-m', msg, path])
def test_make_shallow_single_branch_no_merge(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2)
self.make_shallow()
self.assertRevCount(1)
def test_make_shallow_single_branch_one_merge(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('checkout -b a_branch')
self.add_empty_file('c')
self.git('checkout master')
self.add_empty_file('d')
self.git('merge --no-ff --no-edit a_branch')
self.git('branch -d a_branch')
self.add_empty_file('e')
self.assertRevCount(6)
self.make_shallow(['HEAD~2'])
self.assertRevCount(5)
def test_make_shallow_at_merge(self):
self.add_empty_file('a')
self.git('checkout -b a_branch')
self.add_empty_file('b')
self.git('checkout master')
self.git('merge --no-ff --no-edit a_branch')
self.git('branch -d a_branch')
self.assertRevCount(3)
self.make_shallow()
self.assertRevCount(1)
def test_make_shallow_annotated_tag(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('tag -a -m a_tag a_tag')
self.assertRevCount(2)
self.make_shallow(['a_tag'])
self.assertRevCount(1)
def test_make_shallow_multi_ref(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('checkout -b a_branch')
self.add_empty_file('c')
self.git('checkout master')
self.add_empty_file('d')
self.git('checkout -b a_branch_2')
self.add_empty_file('a_tag')
self.git('tag a_tag')
self.git('checkout master')
self.git('branch -D a_branch_2')
self.add_empty_file('e')
self.assertRevCount(6, ['--all'])
self.make_shallow()
self.assertRevCount(5, ['--all'])
def test_make_shallow_multi_ref_trim(self):
self.add_empty_file('a')
self.git('checkout -b a_branch')
self.add_empty_file('c')
self.git('checkout master')
self.assertRevCount(1)
self.assertRevCount(2, ['--all'])
self.assertRefs(['master', 'a_branch'])
self.make_shallow(['-r', 'master', 'HEAD'])
self.assertRevCount(1, ['--all'])
self.assertRefs(['master'])
def test_make_shallow_noop(self):
self.add_empty_file('a')
self.assertRevCount(1)
self.make_shallow()
self.assertRevCount(1)
if os.environ.get("BB_SKIP_NETTESTS") == "yes":
print("Unset BB_SKIP_NETTESTS to run network tests")
else:
def test_make_shallow_bitbake(self):
self.git('remote add origin https://github.com/openembedded/bitbake')
self.git('fetch --tags origin')
orig_revs = len(self.git('rev-list --all').splitlines())
self.make_shallow(['refs/tags/1.10.0'])
self.assertRevCount(orig_revs - 1746, ['--all'])
class GitShallowTest(FetcherTest):
def setUp(self):
FetcherTest.setUp(self)
self.gitdir = os.path.join(self.tempdir, 'git')
self.srcdir = os.path.join(self.tempdir, 'gitsource')
bb.utils.mkdirhier(self.srcdir)
self.git('init', cwd=self.srcdir)
self.d.setVar('WORKDIR', self.tempdir)
self.d.setVar('S', self.gitdir)
self.d.delVar('PREMIRRORS')
self.d.delVar('MIRRORS')
uri = 'git://%s;protocol=file;subdir=${S}' % self.srcdir
self.d.setVar('SRC_URI', uri)
self.d.setVar('SRCREV', '${AUTOREV}')
self.d.setVar('AUTOREV', '${@bb.fetch2.get_autorev(d)}')
self.d.setVar('BB_GIT_SHALLOW', '1')
self.d.setVar('BB_GENERATE_MIRROR_TARBALLS', '0')
self.d.setVar('BB_GENERATE_SHALLOW_TARBALLS', '1')
def assertRefs(self, expected_refs, cwd=None):
if cwd is None:
cwd = self.gitdir
actual_refs = self.git(['for-each-ref', '--format=%(refname)'], cwd=cwd).splitlines()
full_expected = self.git(['rev-parse', '--symbolic-full-name'] + expected_refs, cwd=cwd).splitlines()
self.assertEqual(sorted(set(full_expected)), sorted(set(actual_refs)))
def assertRevCount(self, expected_count, args=None, cwd=None):
if args is None:
args = ['HEAD']
if cwd is None:
cwd = self.gitdir
revs = self.git(['rev-list'] + args, cwd=cwd)
actual_count = len(revs.splitlines())
self.assertEqual(expected_count, actual_count, msg='Object count `%d` is not the expected `%d`' % (actual_count, expected_count))
def git(self, cmd, cwd=None):
if isinstance(cmd, str):
cmd = 'git ' + cmd
else:
cmd = ['git'] + cmd
if cwd is None:
cwd = self.gitdir
return bb.process.run(cmd, cwd=cwd)[0]
def add_empty_file(self, path, cwd=None, msg=None):
if msg is None:
msg = path
if cwd is None:
cwd = self.srcdir
open(os.path.join(cwd, path), 'w').close()
self.git(['add', path], cwd)
self.git(['commit', '-m', msg, path], cwd)
def fetch(self, uri=None):
if uri is None:
uris = self.d.getVar('SRC_URI', True).split()
uri = uris[0]
d = self.d
else:
d = self.d.createCopy()
d.setVar('SRC_URI', uri)
uri = d.expand(uri)
uris = [uri]
fetcher = bb.fetch2.Fetch(uris, d)
fetcher.download()
ud = fetcher.ud[uri]
return fetcher, ud
def fetch_and_unpack(self, uri=None):
fetcher, ud = self.fetch(uri)
fetcher.unpack(self.d.getVar('WORKDIR'))
assert os.path.exists(self.d.getVar('S'))
return fetcher, ud
def fetch_shallow(self, uri=None, disabled=False, keepclone=False):
"""Fetch a uri, generating a shallow tarball, then unpack using it"""
fetcher, ud = self.fetch_and_unpack(uri)
assert os.path.exists(ud.clonedir), 'Git clone in DLDIR (%s) does not exist for uri %s' % (ud.clonedir, uri)
# Confirm that the unpacked repo is unshallow
if not disabled:
assert os.path.exists(os.path.join(self.dldir, ud.mirrortarballs[0]))
# fetch and unpack, from the shallow tarball
bb.utils.remove(self.gitdir, recurse=True)
bb.utils.remove(ud.clonedir, recurse=True)
# confirm that the unpacked repo is used when no git clone or git
# mirror tarball is available
fetcher, ud = self.fetch_and_unpack(uri)
if not disabled:
assert os.path.exists(os.path.join(self.gitdir, '.git', 'shallow')), 'Unpacked git repository at %s is not shallow' % self.gitdir
else:
assert not os.path.exists(os.path.join(self.gitdir, '.git', 'shallow')), 'Unpacked git repository at %s is shallow' % self.gitdir
return fetcher, ud
def test_shallow_disabled(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW', '0')
self.fetch_shallow(disabled=True)
self.assertRevCount(2)
def test_shallow_nobranch(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
srcrev = self.git('rev-parse HEAD', cwd=self.srcdir).strip()
self.d.setVar('SRCREV', srcrev)
uri = self.d.getVar('SRC_URI', True).split()[0]
uri = '%s;nobranch=1;bare=1' % uri
self.fetch_shallow(uri)
self.assertRevCount(1)
# shallow refs are used to ensure the srcrev sticks around when we
# have no other branches referencing it
self.assertRefs(['refs/shallow/default'])
def test_shallow_default_depth_1(self):
# Create initial git repo
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
self.fetch_shallow()
self.assertRevCount(1)
def test_shallow_depth_0_disables(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
self.fetch_shallow(disabled=True)
self.assertRevCount(2)
def test_shallow_depth_default_override(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '2')
self.d.setVar('BB_GIT_SHALLOW_DEPTH_default', '1')
self.fetch_shallow()
self.assertRevCount(1)
def test_shallow_depth_default_override_disable(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.add_empty_file('c')
self.assertRevCount(3, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
self.d.setVar('BB_GIT_SHALLOW_DEPTH_default', '2')
self.fetch_shallow()
self.assertRevCount(2)
def test_current_shallow_out_of_date_clone(self):
# Create initial git repo
self.add_empty_file('a')
self.add_empty_file('b')
self.add_empty_file('c')
self.assertRevCount(3, cwd=self.srcdir)
# Clone and generate mirror tarball
fetcher, ud = self.fetch()
# Ensure we have a current mirror tarball, but an out of date clone
self.git('update-ref refs/heads/master refs/heads/master~1', cwd=ud.clonedir)
self.assertRevCount(2, cwd=ud.clonedir)
# Fetch and unpack, from the current tarball, not the out of date clone
bb.utils.remove(self.gitdir, recurse=True)
fetcher, ud = self.fetch()
fetcher.unpack(self.d.getVar('WORKDIR'))
self.assertRevCount(1)
def test_shallow_single_branch_no_merge(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
self.fetch_shallow()
self.assertRevCount(1)
assert os.path.exists(os.path.join(self.gitdir, 'a'))
assert os.path.exists(os.path.join(self.gitdir, 'b'))
def test_shallow_no_dangling(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.assertRevCount(2, cwd=self.srcdir)
self.fetch_shallow()
self.assertRevCount(1)
assert not self.git('fsck --dangling')
def test_shallow_srcrev_branch_truncation(self):
self.add_empty_file('a')
self.add_empty_file('b')
b_commit = self.git('rev-parse HEAD', cwd=self.srcdir).rstrip()
self.add_empty_file('c')
self.assertRevCount(3, cwd=self.srcdir)
self.d.setVar('SRCREV', b_commit)
self.fetch_shallow()
# The 'c' commit was removed entirely, and 'a' was removed from history
self.assertRevCount(1, ['--all'])
self.assertEqual(self.git('rev-parse HEAD').strip(), b_commit)
assert os.path.exists(os.path.join(self.gitdir, 'a'))
assert os.path.exists(os.path.join(self.gitdir, 'b'))
assert not os.path.exists(os.path.join(self.gitdir, 'c'))
def test_shallow_ref_pruning(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('branch a_branch', cwd=self.srcdir)
self.assertRefs(['master', 'a_branch'], cwd=self.srcdir)
self.assertRevCount(2, cwd=self.srcdir)
self.fetch_shallow()
self.assertRefs(['master', 'origin/master'])
self.assertRevCount(1)
def test_shallow_submodules(self):
self.add_empty_file('a')
self.add_empty_file('b')
smdir = os.path.join(self.tempdir, 'gitsubmodule')
bb.utils.mkdirhier(smdir)
self.git('init', cwd=smdir)
self.add_empty_file('asub', cwd=smdir)
self.git('submodule init', cwd=self.srcdir)
self.git('submodule add file://%s' % smdir, cwd=self.srcdir)
self.git('submodule update', cwd=self.srcdir)
self.git('commit -m submodule -a', cwd=self.srcdir)
uri = 'gitsm://%s;protocol=file;subdir=${S}' % self.srcdir
fetcher, ud = self.fetch_shallow(uri)
self.assertRevCount(1)
assert './.git/modules/' in bb.process.run('tar -tzf %s' % os.path.join(self.dldir, ud.mirrortarballs[0]))[0]
assert os.listdir(os.path.join(self.gitdir, 'gitsubmodule'))
if any(os.path.exists(os.path.join(p, 'git-annex')) for p in os.environ.get('PATH').split(':')):
def test_shallow_annex(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('annex init', cwd=self.srcdir)
open(os.path.join(self.srcdir, 'c'), 'w').close()
self.git('annex add c', cwd=self.srcdir)
self.git('commit -m annex-c -a', cwd=self.srcdir)
bb.process.run('chmod u+w -R %s' % os.path.join(self.srcdir, '.git', 'annex'))
uri = 'gitannex://%s;protocol=file;subdir=${S}' % self.srcdir
fetcher, ud = self.fetch_shallow(uri)
self.assertRevCount(1)
assert './.git/annex/' in bb.process.run('tar -tzf %s' % os.path.join(self.dldir, ud.mirrortarballs[0]))[0]
assert os.path.exists(os.path.join(self.gitdir, 'c'))
def test_shallow_multi_one_uri(self):
# Create initial git repo
self.add_empty_file('a')
self.add_empty_file('b')
self.git('checkout -b a_branch', cwd=self.srcdir)
self.add_empty_file('c')
self.add_empty_file('d')
self.git('checkout master', cwd=self.srcdir)
self.git('tag v0.0 a_branch', cwd=self.srcdir)
self.add_empty_file('e')
self.git('merge --no-ff --no-edit a_branch', cwd=self.srcdir)
self.add_empty_file('f')
self.assertRevCount(7, cwd=self.srcdir)
uri = self.d.getVar('SRC_URI', True).split()[0]
uri = '%s;branch=master,a_branch;name=master,a_branch' % uri
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
self.d.setVar('BB_GIT_SHALLOW_REVS', 'v0.0')
self.d.setVar('SRCREV_master', '${AUTOREV}')
self.d.setVar('SRCREV_a_branch', '${AUTOREV}')
self.fetch_shallow(uri)
self.assertRevCount(5)
self.assertRefs(['master', 'origin/master', 'origin/a_branch'])
def test_shallow_multi_one_uri_depths(self):
# Create initial git repo
self.add_empty_file('a')
self.add_empty_file('b')
self.git('checkout -b a_branch', cwd=self.srcdir)
self.add_empty_file('c')
self.add_empty_file('d')
self.git('checkout master', cwd=self.srcdir)
self.add_empty_file('e')
self.git('merge --no-ff --no-edit a_branch', cwd=self.srcdir)
self.add_empty_file('f')
self.assertRevCount(7, cwd=self.srcdir)
uri = self.d.getVar('SRC_URI', True).split()[0]
uri = '%s;branch=master,a_branch;name=master,a_branch' % uri
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
self.d.setVar('BB_GIT_SHALLOW_DEPTH_master', '3')
self.d.setVar('BB_GIT_SHALLOW_DEPTH_a_branch', '1')
self.d.setVar('SRCREV_master', '${AUTOREV}')
self.d.setVar('SRCREV_a_branch', '${AUTOREV}')
self.fetch_shallow(uri)
self.assertRevCount(4, ['--all'])
self.assertRefs(['master', 'origin/master', 'origin/a_branch'])
def test_shallow_clone_preferred_over_shallow(self):
self.add_empty_file('a')
self.add_empty_file('b')
# Fetch once to generate the shallow tarball
fetcher, ud = self.fetch()
assert os.path.exists(os.path.join(self.dldir, ud.mirrortarballs[0]))
# Fetch and unpack with both the clonedir and shallow tarball available
bb.utils.remove(self.gitdir, recurse=True)
fetcher, ud = self.fetch_and_unpack()
# The unpacked tree should *not* be shallow
self.assertRevCount(2)
assert not os.path.exists(os.path.join(self.gitdir, '.git', 'shallow'))
def test_shallow_mirrors(self):
self.add_empty_file('a')
self.add_empty_file('b')
# Fetch once to generate the shallow tarball
fetcher, ud = self.fetch()
mirrortarball = ud.mirrortarballs[0]
assert os.path.exists(os.path.join(self.dldir, mirrortarball))
# Set up the mirror
mirrordir = os.path.join(self.tempdir, 'mirror')
bb.utils.mkdirhier(mirrordir)
self.d.setVar('PREMIRRORS', 'git://.*/.* file://%s/\n' % mirrordir)
os.rename(os.path.join(self.dldir, mirrortarball),
os.path.join(mirrordir, mirrortarball))
# Fetch from the mirror
bb.utils.remove(self.dldir, recurse=True)
bb.utils.remove(self.gitdir, recurse=True)
self.fetch_and_unpack()
self.assertRevCount(1)
def test_shallow_invalid_depth(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '-12')
with self.assertRaises(bb.fetch2.FetchError):
self.fetch()
def test_shallow_invalid_depth_default(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.d.setVar('BB_GIT_SHALLOW_DEPTH_default', '-12')
with self.assertRaises(bb.fetch2.FetchError):
self.fetch()
def test_shallow_extra_refs(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('branch a_branch', cwd=self.srcdir)
self.assertRefs(['master', 'a_branch'], cwd=self.srcdir)
self.assertRevCount(2, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_EXTRA_REFS', 'refs/heads/a_branch')
self.fetch_shallow()
self.assertRefs(['master', 'origin/master', 'origin/a_branch'])
self.assertRevCount(1)
def test_shallow_extra_refs_wildcard(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.git('branch a_branch', cwd=self.srcdir)
self.git('tag v1.0', cwd=self.srcdir)
self.assertRefs(['master', 'a_branch', 'v1.0'], cwd=self.srcdir)
self.assertRevCount(2, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_EXTRA_REFS', 'refs/tags/*')
self.fetch_shallow()
self.assertRefs(['master', 'origin/master', 'v1.0'])
self.assertRevCount(1)
def test_shallow_missing_extra_refs(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.d.setVar('BB_GIT_SHALLOW_EXTRA_REFS', 'refs/heads/foo')
with self.assertRaises(bb.fetch2.FetchError):
self.fetch()
def test_shallow_missing_extra_refs_wildcard(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.d.setVar('BB_GIT_SHALLOW_EXTRA_REFS', 'refs/tags/*')
self.fetch()
def test_shallow_remove_revs(self):
# Create initial git repo
self.add_empty_file('a')
self.add_empty_file('b')
self.git('checkout -b a_branch', cwd=self.srcdir)
self.add_empty_file('c')
self.add_empty_file('d')
self.git('checkout master', cwd=self.srcdir)
self.git('tag v0.0 a_branch', cwd=self.srcdir)
self.add_empty_file('e')
self.git('merge --no-ff --no-edit a_branch', cwd=self.srcdir)
self.git('branch -d a_branch', cwd=self.srcdir)
self.add_empty_file('f')
self.assertRevCount(7, cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
self.d.setVar('BB_GIT_SHALLOW_REVS', 'v0.0')
self.fetch_shallow()
self.assertRevCount(5)
def test_shallow_invalid_revs(self):
self.add_empty_file('a')
self.add_empty_file('b')
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
self.d.setVar('BB_GIT_SHALLOW_REVS', 'v0.0')
with self.assertRaises(bb.fetch2.FetchError):
self.fetch()
if os.environ.get("BB_SKIP_NETTESTS") == "yes":
print("Unset BB_SKIP_NETTESTS to run network tests")
else:
def test_bitbake(self):
self.git('remote add --mirror=fetch origin git://github.com/openembedded/bitbake', cwd=self.srcdir)
self.git('config core.bare true', cwd=self.srcdir)
self.git('fetch --tags', cwd=self.srcdir)
self.d.setVar('BB_GIT_SHALLOW_DEPTH', '0')
# Note that the 1.10.0 tag is annotated, so this also tests
# reference of an annotated vs unannotated tag
self.d.setVar('BB_GIT_SHALLOW_REVS', '1.10.0')
self.fetch_shallow()
# Confirm that the history of 1.10.0 was removed
orig_revs = len(self.git('rev-list master', cwd=self.srcdir).splitlines())
revs = len(self.git('rev-list master').splitlines())
self.assertNotEqual(orig_revs, revs)
self.assertRefs(['master', 'origin/master'])
self.assertRevCount(orig_revs - 1758)

View File

@@ -83,7 +83,28 @@ unset B[flag]
self.assertEqual(d.getVar("A"), None)
self.assertEqual(d.getVarFlag("A","flag"), None)
self.assertEqual(d.getVar("B"), "2")
exporttest = """
A = "a"
export B = "b"
export C
exportD = "d"
"""
def test_parse_exports(self):
f = self.parsehelper(self.exporttest)
d = bb.parse.handle(f.name, self.d)['']
self.assertEqual(d.getVar("A"), "a")
self.assertIsNone(d.getVarFlag("A", "export"))
self.assertEqual(d.getVar("B"), "b")
self.assertEqual(d.getVarFlag("B", "export"), 1)
self.assertIsNone(d.getVar("C"))
self.assertEqual(d.getVarFlag("C", "export"), 1)
self.assertIsNone(d.getVar("D"))
self.assertIsNone(d.getVarFlag("D", "export"))
self.assertEqual(d.getVar("exportD"), "d")
self.assertIsNone(d.getVarFlag("exportD", "export"))
overridetest = """
RRECOMMENDS_${PN} = "a"

View File

@@ -210,13 +210,17 @@ class TinfoilCookerAdapter:
class Tinfoil:
def __init__(self, output=sys.stdout, tracking=False):
def __init__(self, output=sys.stdout, tracking=False, setup_logging=True):
self.logger = logging.getLogger('BitBake')
self.config_data = None
self.cooker = None
self.tracking = tracking
self.ui_module = None
self.server_connection = None
if setup_logging:
# This is the *client-side* logger, nothing to do with
# logging messages from the server
bb.msg.logger_create('BitBake', output)
def __enter__(self):
return self
@@ -224,12 +228,15 @@ class Tinfoil:
def __exit__(self, type, value, traceback):
self.shutdown()
def prepare(self, config_only=False, config_params=None, quiet=0):
def prepare(self, config_only=False, config_params=None, quiet=0, extra_features=None):
if self.tracking:
extrafeatures = [bb.cooker.CookerFeatures.BASEDATASTORE_TRACKING]
else:
extrafeatures = []
if extra_features:
extrafeatures += extra_features
if not config_params:
config_params = TinfoilConfigParameters(config_only=config_only, quiet=quiet)
@@ -238,7 +245,8 @@ class Tinfoil:
server, self.server_connection, ui_module = setup_bitbake(config_params,
cookerconfig,
extrafeatures)
extrafeatures,
setup_logging=False)
self.ui_module = ui_module
@@ -359,14 +367,14 @@ class Tinfoil:
skipped.
"""
best = self.find_best_provider(pn)
if not best:
if not best or (len(best) > 3 and not best[3]):
skiplist = self.get_skipped_recipes()
taskdata = bb.taskdata.TaskData(None, skiplist=skiplist)
skipreasons = taskdata.get_reasons(pn)
if skipreasons:
raise bb.providers.NoProvider(skipreasons)
raise bb.providers.NoProvider('%s is unavailable:\n %s' % (pn, ' \n'.join(skipreasons)))
else:
raise bb.providers.NoProvider('Unable to find any recipe file matching %s' % pn)
raise bb.providers.NoProvider('Unable to find any recipe file matching "%s"' % pn)
return best[3]
def get_file_appends(self, fn):

View File

@@ -1663,6 +1663,36 @@ class BuildInfoHelper(object):
break
return endswith
def scan_task_artifacts(self, event):
"""
The 'TaskArtifacts' event passes the manifest file content for the
tasks 'do_deploy', 'do_image_complete', 'do_populate_sdk', and
'do_populate_sdk_ext'. The first two will be implemented later.
"""
task_vars = BuildInfoHelper._get_data_from_event(event)
task_name = task_vars['task'][task_vars['task'].find(':')+1:]
task_artifacts = task_vars['artifacts']
if task_name in ['do_populate_sdk', 'do_populate_sdk_ext']:
targets = [target for target in self.internal_state['targets'] \
if target.task == task_name[3:]]
if not targets:
logger.warning("scan_task_artifacts: SDK targets not found: %s\n", task_name)
return
for artifact_path in task_artifacts:
if not os.path.isfile(artifact_path):
logger.warning("scan_task_artifacts: artifact file not found: %s\n", artifact_path)
continue
for target in targets:
# don't record the file if it's already been added
# to this target
matching_files = TargetSDKFile.objects.filter(
target=target, file_name=artifact_path)
if matching_files.count() == 0:
artifact_size = os.stat(artifact_path).st_size
self.orm_wrapper.save_target_sdk_file(
target, artifact_path, artifact_size)
def _get_image_files(self, deploy_dir_image, image_name, image_file_extensions):
"""
Find files in deploy_dir_image whose basename starts with the

View File

@@ -365,8 +365,9 @@ def main(server, eventHandler, params, tf = TerminalFilter):
bb.msg.addDefaultlogFilter(errconsole, bb.msg.BBLogFilterStdErr)
console.setFormatter(format)
errconsole.setFormatter(format)
logger.addHandler(console)
logger.addHandler(errconsole)
if not bb.msg.has_console_handler(logger):
logger.addHandler(console)
logger.addHandler(errconsole)
bb.utils.set_process_name("KnottyUI")

View File

@@ -297,7 +297,7 @@ class NCursesUI:
# bb.error("log data follows (%s)" % logfile)
# number_of_lines = data.getVar("BBINCLUDELOGS_LINES", d)
# if number_of_lines:
# subprocess.call('tail -n%s %s' % (number_of_lines, logfile), shell=True)
# subprocess.check_call('tail -n%s %s' % (number_of_lines, logfile), shell=True)
# else:
# f = open(logfile, "r")
# while True:

View File

@@ -438,9 +438,7 @@ def main(server, eventHandler, params):
elif event.type == "SetBRBE":
buildinfohelper.brbe = buildinfohelper._get_data_from_event(event)
elif event.type == "TaskArtifacts":
# not implemented yet
# see https://bugzilla.yoctoproject.org/show_bug.cgi?id=10283 for details
pass
buildinfohelper.scan_task_artifacts(event)
elif event.type == "OSErrorException":
logger.error(event)
else:

View File

@@ -680,7 +680,7 @@ def remove(path, recurse=False):
if _check_unsafe_delete_path(path):
raise Exception('bb.utils.remove: called with dangerous path "%s" and recurse=True, refusing to delete!' % path)
# shutil.rmtree(name) would be ideal but its too slow
subprocess.call(['rm', '-rf'] + glob.glob(path))
subprocess.check_call(['rm', '-rf'] + glob.glob(path))
return
for name in glob.glob(path):
try:
@@ -899,11 +899,20 @@ def copyfile(src, dest, newmtime = None, sstat = None):
newmtime = sstat[stat.ST_MTIME]
return newmtime
def which(path, item, direction = 0, history = False):
def which(path, item, direction = 0, history = False, executable=False):
"""
Locate a file in a PATH
Locate `item` in the list of paths `path` (colon separated string like $PATH).
If `direction` is non-zero then the list is reversed.
If `history` is True then the list of candidates also returned as result,history.
If `executable` is True then the candidate has to be an executable file,
otherwise the candidate simply has to exist.
"""
if executable:
is_candidate = lambda p: os.path.isfile(p) and os.access(p, os.X_OK)
else:
is_candidate = lambda p: os.path.exists(p)
hist = []
paths = (path or "").split(':')
if direction != 0:
@@ -912,7 +921,7 @@ def which(path, item, direction = 0, history = False):
for p in paths:
next = os.path.join(p, item)
hist.append(next)
if os.path.exists(next):
if is_candidate(next):
if not os.path.isabs(next):
next = os.path.abspath(next)
if history:

View File

@@ -1,7 +1,9 @@
import fnmatch
import logging
import os
import shutil
import sys
import tempfile
import bb.utils
@@ -32,10 +34,26 @@ class ActionPlugin(LayerPlugin):
sys.stderr.write("Unable to find bblayers.conf\n")
return 1
notadded, _ = bb.utils.edit_bblayers_conf(bblayers_conf, layerdir, None)
if notadded:
for item in notadded:
sys.stderr.write("Specified layer %s is already in BBLAYERS\n" % item)
# Back up bblayers.conf to tempdir before we add layers
tempdir = tempfile.mkdtemp()
backup = tempdir + "/bblayers.conf.bak"
shutil.copy2(bblayers_conf, backup)
try:
notadded, _ = bb.utils.edit_bblayers_conf(bblayers_conf, layerdir, None)
if not (args.force or notadded):
try:
self.tinfoil.parseRecipes()
except bb.tinfoil.TinfoilUIException:
# Restore the back up copy of bblayers.conf
shutil.copy2(backup, bblayers_conf)
bb.fatal("Parse failure with the specified layer added")
else:
for item in notadded:
sys.stderr.write("Specified layer %s is already in BBLAYERS\n" % item)
finally:
# Remove the back up copy of bblayers.conf
shutil.rmtree(tempdir)
def do_remove_layer(self, args):
"""Remove a layer from bblayers.conf."""

View File

@@ -0,0 +1,22 @@
Copyright (c) 2008 - 2013 Paul Butler and contributors
This sofware may be used under a zlib/libpng-style license:
This software is provided 'as-is', without any express or implied warranty. In
no event will the authors be held liable for any damages arising from the use
of this software.
Permission is granted to anyone to use this software for any purpose, including
commercial applications, and to alter it and redistribute it freely, subject to
the following restrictions:
1. The origin of this software must not be misrepresented; you must not claim
that you wrote the original software. If you use this software in a product, an
acknowledgment in the product documentation would be appreciated but is not
required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.

View File

@@ -0,0 +1,198 @@
'''
Simple Diff for Python version 1.0
Annotate two versions of a list with the values that have been
changed between the versions, similar to unix's `diff` but with
a dead-simple Python interface.
(C) Paul Butler 2008-2012 <http://www.paulbutler.org/>
May be used and distributed under the zlib/libpng license
<http://www.opensource.org/licenses/zlib-license.php>
'''
__all__ = ['diff', 'string_diff', 'html_diff']
__version__ = '1.0'
def diff(old, new):
'''
Find the differences between two lists. Returns a list of pairs, where the
first value is in ['+','-','='] and represents an insertion, deletion, or
no change for that list. The second value of the pair is the list
of elements.
Params:
old the old list of immutable, comparable values (ie. a list
of strings)
new the new list of immutable, comparable values
Returns:
A list of pairs, with the first part of the pair being one of three
strings ('-', '+', '=') and the second part being a list of values from
the original old and/or new lists. The first part of the pair
corresponds to whether the list of values is a deletion, insertion, or
unchanged, respectively.
Examples:
>>> diff([1,2,3,4],[1,3,4])
[('=', [1]), ('-', [2]), ('=', [3, 4])]
>>> diff([1,2,3,4],[2,3,4,1])
[('-', [1]), ('=', [2, 3, 4]), ('+', [1])]
>>> diff('The quick brown fox jumps over the lazy dog'.split(),
... 'The slow blue cheese drips over the lazy carrot'.split())
... # doctest: +NORMALIZE_WHITESPACE
[('=', ['The']),
('-', ['quick', 'brown', 'fox', 'jumps']),
('+', ['slow', 'blue', 'cheese', 'drips']),
('=', ['over', 'the', 'lazy']),
('-', ['dog']),
('+', ['carrot'])]
'''
# Create a map from old values to their indices
old_index_map = dict()
for i, val in enumerate(old):
old_index_map.setdefault(val,list()).append(i)
# Find the largest substring common to old and new.
# We use a dynamic programming approach here.
#
# We iterate over each value in the `new` list, calling the
# index `inew`. At each iteration, `overlap[i]` is the
# length of the largest suffix of `old[:i]` equal to a suffix
# of `new[:inew]` (or unset when `old[i]` != `new[inew]`).
#
# At each stage of iteration, the new `overlap` (called
# `_overlap` until the original `overlap` is no longer needed)
# is built from the old one.
#
# If the length of overlap exceeds the largest substring
# seen so far (`sub_length`), we update the largest substring
# to the overlapping strings.
overlap = dict()
# `sub_start_old` is the index of the beginning of the largest overlapping
# substring in the old list. `sub_start_new` is the index of the beginning
# of the same substring in the new list. `sub_length` is the length that
# overlaps in both.
# These track the largest overlapping substring seen so far, so naturally
# we start with a 0-length substring.
sub_start_old = 0
sub_start_new = 0
sub_length = 0
for inew, val in enumerate(new):
_overlap = dict()
for iold in old_index_map.get(val,list()):
# now we are considering all values of iold such that
# `old[iold] == new[inew]`.
_overlap[iold] = (iold and overlap.get(iold - 1, 0)) + 1
if(_overlap[iold] > sub_length):
# this is the largest substring seen so far, so store its
# indices
sub_length = _overlap[iold]
sub_start_old = iold - sub_length + 1
sub_start_new = inew - sub_length + 1
overlap = _overlap
if sub_length == 0:
# If no common substring is found, we return an insert and delete...
return (old and [('-', old)] or []) + (new and [('+', new)] or [])
else:
# ...otherwise, the common substring is unchanged and we recursively
# diff the text before and after that substring
return diff(old[ : sub_start_old], new[ : sub_start_new]) + \
[('=', new[sub_start_new : sub_start_new + sub_length])] + \
diff(old[sub_start_old + sub_length : ],
new[sub_start_new + sub_length : ])
def string_diff(old, new):
'''
Returns the difference between the old and new strings when split on
whitespace. Considers punctuation a part of the word
This function is intended as an example; you'll probably want
a more sophisticated wrapper in practice.
Params:
old the old string
new the new string
Returns:
the output of `diff` on the two strings after splitting them
on whitespace (a list of change instructions; see the docstring
of `diff`)
Examples:
>>> string_diff('The quick brown fox', 'The fast blue fox')
... # doctest: +NORMALIZE_WHITESPACE
[('=', ['The']),
('-', ['quick', 'brown']),
('+', ['fast', 'blue']),
('=', ['fox'])]
'''
return diff(old.split(), new.split())
def html_diff(old, new):
'''
Returns the difference between two strings (as in stringDiff) in
HTML format. HTML code in the strings is NOT escaped, so you
will get weird results if the strings contain HTML.
This function is intended as an example; you'll probably want
a more sophisticated wrapper in practice.
Params:
old the old string
new the new string
Returns:
the output of the diff expressed with HTML <ins> and <del>
tags.
Examples:
>>> html_diff('The quick brown fox', 'The fast blue fox')
'The <del>quick brown</del> <ins>fast blue</ins> fox'
'''
con = {'=': (lambda x: x),
'+': (lambda x: "<ins>" + x + "</ins>"),
'-': (lambda x: "<del>" + x + "</del>")}
return " ".join([(con[a])(" ".join(b)) for a, b in string_diff(old, new)])
def check_diff(old, new):
'''
This tests that diffs returned by `diff` are valid. You probably won't
want to use this function, but it's provided for documentation and
testing.
A diff should satisfy the property that the old input is equal to the
elements of the result annotated with '-' or '=' concatenated together.
Likewise, the new input is equal to the elements of the result annotated
with '+' or '=' concatenated together. This function compares `old`,
`new`, and the results of `diff(old, new)` to ensure this is true.
Tests:
>>> check_diff('ABCBA', 'CBABA')
>>> check_diff('Foobarbaz', 'Foobarbaz')
>>> check_diff('Foobarbaz', 'Boobazbam')
>>> check_diff('The quick brown fox', 'Some quick brown car')
>>> check_diff('A thick red book', 'A quick blue book')
>>> check_diff('dafhjkdashfkhasfjsdafdasfsda', 'asdfaskjfhksahkfjsdha')
>>> check_diff('88288822828828288282828', '88288882882828282882828')
>>> check_diff('1234567890', '24689')
'''
old = list(old)
new = list(new)
result = diff(old, new)
_old = [val for (a, vals) in result if (a in '=-') for val in vals]
assert old == _old, 'Expected %s, got %s' % (old, _old)
_new = [val for (a, vals) in result if (a in '=+') for val in vals]
assert new == _new, 'Expected %s, got %s' % (new, _new)

View File

@@ -8,9 +8,9 @@
<!-- Bitbake versions which correspond to the metadata release -->
<object model="orm.bitbakeversion" pk="1">
<field type="CharField" name="name">morty</field>
<field type="CharField" name="name">pyro</field>
<field type="CharField" name="giturl">git://git.openembedded.org/bitbake</field>
<field type="CharField" name="branch">1.32</field>
<field type="CharField" name="branch">1.34</field>
</object>
<object model="orm.bitbakeversion" pk="2">
<field type="CharField" name="name">HEAD</field>
@@ -25,11 +25,11 @@
<!-- Releases available -->
<object model="orm.release" pk="1">
<field type="CharField" name="name">morty</field>
<field type="CharField" name="description">Openembedded Morty</field>
<field type="CharField" name="name">pyro</field>
<field type="CharField" name="description">Openembedded Pyro</field>
<field rel="ManyToOneRel" to="orm.bitbakeversion" name="bitbake_version">1</field>
<field type="CharField" name="branch_name">morty</field>
<field type="TextField" name="helptext">Toaster will run your builds using the tip of the &lt;a href=\"http://cgit.openembedded.org/openembedded-core/log/?h=morty\"&gt;OpenEmbedded Morty&lt;/a&gt; branch.</field>
<field type="CharField" name="branch_name">pyro</field>
<field type="TextField" name="helptext">Toaster will run your builds using the tip of the &lt;a href=\"http://cgit.openembedded.org/openembedded-core/log/?h=pyro\"&gt;OpenEmbedded Pyro&lt;/a&gt; branch.</field>
</object>
<object model="orm.release" pk="2">
<field type="CharField" name="name">local</field>

View File

@@ -8,9 +8,9 @@
<!-- Bitbake versions which correspond to the metadata release -->
<object model="orm.bitbakeversion" pk="1">
<field type="CharField" name="name">morty</field>
<field type="CharField" name="name">pyro</field>
<field type="CharField" name="giturl">git://git.yoctoproject.org/poky</field>
<field type="CharField" name="branch">morty</field>
<field type="CharField" name="branch">pyro</field>
<field type="CharField" name="dirpath">bitbake</field>
</object>
<object model="orm.bitbakeversion" pk="2">
@@ -29,11 +29,11 @@
<!-- Releases available -->
<object model="orm.release" pk="1">
<field type="CharField" name="name">morty</field>
<field type="CharField" name="description">Yocto Project 2.2 "Morty"</field>
<field type="CharField" name="name">pyro</field>
<field type="CharField" name="description">Yocto Project 2.3 "Pyro"</field>
<field rel="ManyToOneRel" to="orm.bitbakeversion" name="bitbake_version">1</field>
<field type="CharField" name="branch_name">morty</field>
<field type="TextField" name="helptext">Toaster will run your builds using the tip of the &lt;a href="http://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=morty"&gt;Yocto Project Morty branch&lt;/a&gt;.</field>
<field type="CharField" name="branch_name">pyro</field>
<field type="TextField" name="helptext">Toaster will run your builds using the tip of the &lt;a href="http://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=pyro"&gt;Yocto Project Pyro branch&lt;/a&gt;.</field>
</object>
<object model="orm.release" pk="2">
<field type="CharField" name="name">local</field>
@@ -102,7 +102,7 @@
<field rel="ManyToOneRel" to="orm.layer" name="layer">1</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">1</field>
<field type="CharField" name="branch">morty</field>
<field type="CharField" name="branch">pyro</field>
<field type="CharField" name="dirpath">meta</field>
</object>
<object model="orm.layer_version" pk="2">
@@ -130,7 +130,7 @@
<field rel="ManyToOneRel" to="orm.layer" name="layer">2</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">1</field>
<field type="CharField" name="branch">morty</field>
<field type="CharField" name="branch">pyro</field>
<field type="CharField" name="dirpath">meta-poky</field>
</object>
<object model="orm.layer_version" pk="5">
@@ -158,7 +158,7 @@
<field rel="ManyToOneRel" to="orm.layer" name="layer">3</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">1</field>
<field type="CharField" name="branch">morty</field>
<field type="CharField" name="branch">pyro</field>
<field type="CharField" name="dirpath">meta-yocto-bsp</field>
</object>
<object model="orm.layer_version" pk="8">

View File

@@ -41,6 +41,61 @@ logger = logging.getLogger("toaster")
# want to wrap everything in a database transaction as an external process
# (bitbake needs access to the database)
def load_build_environment():
call_command('loaddata', 'settings.xml', app_label="orm")
call_command('loaddata', 'poky.xml', app_label="orm")
current_builddir = os.environ.get("BUILDDIR")
if current_builddir:
BuildTest.BUILDDIR = current_builddir
else:
# Setup a builddir based on default layout
# bitbake inside openebedded-core
oe_init_build_env_path = os.path.join(
os.path.dirname(os.path.abspath(__file__)),
os.pardir,
os.pardir,
os.pardir,
os.pardir,
os.pardir,
'oe-init-build-env'
)
if not os.path.exists(oe_init_build_env_path):
raise Exception("We had no BUILDDIR set and couldn't "
"find oe-init-build-env to set this up "
"ourselves please run oe-init-build-env "
"before running these tests")
oe_init_build_env_path = os.path.realpath(oe_init_build_env_path)
cmd = "bash -c 'source oe-init-build-env %s'" % BuildTest.BUILDDIR
p = subprocess.Popen(
cmd,
cwd=os.path.dirname(oe_init_build_env_path),
shell=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
output, err = p.communicate()
p.wait()
logger.info("oe-init-build-env %s %s" % (output, err))
os.environ['BUILDDIR'] = BuildTest.BUILDDIR
# Setup the path to bitbake we know where to find this
bitbake_path = os.path.join(
os.path.dirname(os.path.abspath(__file__)),
os.pardir,
os.pardir,
os.pardir,
os.pardir,
'bin',
'bitbake')
if not os.path.exists(bitbake_path):
raise Exception("Could not find bitbake at the expected path %s"
% bitbake_path)
os.environ['BBBASEDIR'] = bitbake_path
class BuildTest(unittest.TestCase):
@@ -59,60 +114,7 @@ class BuildTest(unittest.TestCase):
if built:
return built
call_command('loaddata', 'settings.xml', app_label="orm")
call_command('loaddata', 'poky.xml', app_label="orm")
current_builddir = os.environ.get("BUILDDIR")
if current_builddir:
BuildTest.BUILDDIR = current_builddir
else:
# Setup a builddir based on default layout
# bitbake inside openebedded-core
oe_init_build_env_path = os.path.join(
os.path.dirname(os.path.abspath(__file__)),
os.pardir,
os.pardir,
os.pardir,
os.pardir,
os.pardir,
'oe-init-build-env'
)
if not os.path.exists(oe_init_build_env_path):
raise Exception("We had no BUILDDIR set and couldn't "
"find oe-init-build-env to set this up "
"ourselves please run oe-init-build-env "
"before running these tests")
oe_init_build_env_path = os.path.realpath(oe_init_build_env_path)
cmd = "bash -c 'source oe-init-build-env %s'" % BuildTest.BUILDDIR
p = subprocess.Popen(
cmd,
cwd=os.path.dirname(oe_init_build_env_path),
shell=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
output, err = p.communicate()
p.wait()
logger.info("oe-init-build-env %s %s" % (output, err))
os.environ['BUILDDIR'] = BuildTest.BUILDDIR
# Setup the path to bitbake we know where to find this
bitbake_path = os.path.join(
os.path.dirname(os.path.abspath(__file__)),
os.pardir,
os.pardir,
os.pardir,
os.pardir,
'bin',
'bitbake')
if not os.path.exists(bitbake_path):
raise Exception("Could not find bitbake at the expected path %s"
% bitbake_path)
os.environ['BBBASEDIR'] = bitbake_path
load_build_environment()
BuildEnvironment.objects.get_or_create(
betype=BuildEnvironment.TYPE_LOCAL,

View File

@@ -0,0 +1,122 @@
#! /usr/bin/env python
# ex:ts=4:sw=4:sts=4:et
# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster functional tests implementation
#
# Copyright (C) 2017 Intel Corporation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import logging
import subprocess
import signal
import time
import re
from tests.browser.selenium_helpers_base import SeleniumTestCaseBase
from tests.builds.buildtest import load_build_environment
logger = logging.getLogger("toaster")
class SeleniumFunctionalTestCase(SeleniumTestCaseBase):
wait_toaster_time = 5
@classmethod
def setUpClass(cls):
# So that the buildinfo helper uses the test database'
if os.environ.get('DJANGO_SETTINGS_MODULE', '') != \
'toastermain.settings_test':
raise RuntimeError("Please initialise django with the tests settings: " \
"DJANGO_SETTINGS_MODULE='toastermain.settings_test'")
load_build_environment()
# start toaster
cmd = "bash -c 'source toaster start'"
p = subprocess.Popen(
cmd,
cwd=os.environ.get("BUILDDIR"),
shell=True)
if p.wait() != 0:
raise RuntimeError("Can't initialize toaster")
super(SeleniumFunctionalTestCase, cls).setUpClass()
cls.live_server_url = 'http://localhost:8000/'
@classmethod
def tearDownClass(cls):
super(SeleniumFunctionalTestCase, cls).tearDownClass()
# XXX: source toaster stop gets blocked, to review why?
# from now send SIGTERM by hand
time.sleep(cls.wait_toaster_time)
builddir = os.environ.get("BUILDDIR")
with open(os.path.join(builddir, '.toastermain.pid'), 'r') as f:
toastermain_pid = int(f.read())
os.kill(toastermain_pid, signal.SIGTERM)
with open(os.path.join(builddir, '.runbuilds.pid'), 'r') as f:
runbuilds_pid = int(f.read())
os.kill(runbuilds_pid, signal.SIGTERM)
def get_URL(self):
rc=self.get_page_source()
project_url=re.search("(projectPageUrl\s:\s\")(.*)(\",)",rc)
return project_url.group(2)
def find_element_by_link_text_in_table(self, table_id, link_text):
"""
Assume there're multiple suitable "find_element_by_link_text".
In this circumstance we need to specify "table".
"""
try:
table_element = self.get_table_element(table_id)
element = table_element.find_element_by_link_text(link_text)
except NoSuchElementException as e:
print('no element found')
raise
return element
def get_table_element(self, table_id, *coordinate):
if len(coordinate) == 0:
#return whole-table element
element_xpath = "//*[@id='" + table_id + "']"
try:
element = self.driver.find_element_by_xpath(element_xpath)
except NoSuchElementException as e:
raise
return element
row = coordinate[0]
if len(coordinate) == 1:
#return whole-row element
element_xpath = "//*[@id='" + table_id + "']/tbody/tr[" + str(row) + "]"
try:
element = self.driver.find_element_by_xpath(element_xpath)
except NoSuchElementException as e:
return False
return element
#now we are looking for an element with specified X and Y
column = coordinate[1]
element_xpath = "//*[@id='" + table_id + "']/tbody/tr[" + str(row) + "]/td[" + str(column) + "]"
try:
element = self.driver.find_element_by_xpath(element_xpath)
except NoSuchElementException as e:
return False
return element

View File

@@ -0,0 +1,243 @@
#! /usr/bin/env python
# ex:ts=4:sw=4:sts=4:et
# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster functional tests implementation
#
# Copyright (C) 2017 Intel Corporation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import time
import re
from tests.functional.functional_helpers import SeleniumFunctionalTestCase
from orm.models import Project
class FuntionalTestBasic(SeleniumFunctionalTestCase):
# testcase (1514)
def test_create_slenium_project(self):
project_name = 'selenium-project'
self.get('')
self.driver.find_element_by_link_text("To start building, create your first Toaster project").click()
self.driver.find_element_by_id("new-project-name").send_keys(project_name)
self.driver.find_element_by_id('projectversion').click()
self.driver.find_element_by_id("create-project-button").click()
element = self.wait_until_visible('#project-created-notification')
self.assertTrue(self.element_exists('#project-created-notification'),'Project creation notification not shown')
self.assertTrue(project_name in element.text,
"New project name not in new project notification")
self.assertTrue(Project.objects.filter(name=project_name).count(),
"New project not found in database")
# testcase (1515)
def test_verify_left_bar_menu(self):
self.get('')
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
self.assertTrue(self.element_exists('#config-nav'),'Configuration Tab does not exist')
project_URL=self.get_URL()
self.driver.find_element_by_xpath('//a[@href="'+project_URL+'"]').click()
try:
self.driver.find_element_by_xpath("//*[@id='config-nav']/ul/li/a[@href="+'"'+project_URL+'customimages/"'+"]").click()
self.assertTrue(re.search("Custom images",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'Custom images information is not loading properly')
except:
self.fail(msg='No Custom images tab available')
try:
self.driver.find_element_by_xpath("//*[@id='config-nav']/ul/li/a[@href="+'"'+project_URL+'images/"'+"]").click()
self.assertTrue(re.search("Compatible image recipes",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'The Compatible image recipes information is not loading properly')
except:
self.fail(msg='No Compatible image tab available')
try:
self.driver.find_element_by_xpath("//*[@id='config-nav']/ul/li/a[@href="+'"'+project_URL+'softwarerecipes/"'+"]").click()
self.assertTrue(re.search("Compatible software recipes",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'The Compatible software recipe information is not loading properly')
except:
self.fail(msg='No Compatible software recipe tab available')
try:
self.driver.find_element_by_xpath("//*[@id='config-nav']/ul/li/a[@href="+'"'+project_URL+'machines/"'+"]").click()
self.assertTrue(re.search("Compatible machines",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'The Compatible machine information is not loading properly')
except:
self.fail(msg='No Compatible machines tab available')
try:
self.driver.find_element_by_xpath("//*[@id='config-nav']/ul/li/a[@href="+'"'+project_URL+'layers/"'+"]").click()
self.assertTrue(re.search("Compatible layers",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'The Compatible layer information is not loading properly')
except:
self.fail(msg='No Compatible layers tab available')
try:
self.driver.find_element_by_xpath("//*[@id='config-nav']/ul/li/a[@href="+'"'+project_URL+'configuration"'+"]").click()
self.assertTrue(re.search("Bitbake variables",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'The Bitbake variables information is not loading properly')
except:
self.fail(msg='No Bitbake variables tab available')
# testcase (1516)
def test_review_configuration_information(self):
self.get('')
self.driver.find_element_by_xpath("//div[@id='global-nav']/ul/li/a[@href="+'"'+'/toastergui/projects/'+'"'+"]").click()
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
project_URL=self.get_URL()
try:
self.assertTrue(self.element_exists('#machine-section'),'Machine section for the project configuration page does not exist')
self.assertTrue(re.search("qemux86",self.driver.find_element_by_xpath("//span[@id='project-machine-name']").text),'The machine type is not assigned')
self.driver.find_element_by_xpath("//span[@id='change-machine-toggle']").click()
self.wait_until_visible('#select-machine-form')
self.wait_until_visible('#cancel-machine-change')
self.driver.find_element_by_xpath("//form[@id='select-machine-form']/a[@id='cancel-machine-change']").click()
except:
self.fail(msg='The machine information is wrong in the configuration page')
try:
self.driver.find_element_by_id('no-most-built')
except:
self.fail(msg='No Most built information in project detail page')
try:
self.assertTrue(re.search("Yocto Project master",self.driver.find_element_by_xpath("//span[@id='project-release-title']").text),'The project release is not defined')
except:
self.fail(msg='No project release title information in project detail page')
try:
self.driver.find_element_by_xpath("//div[@id='layer-container']")
self.assertTrue(re.search("3",self.driver.find_element_by_id("project-layers-count").text),'There should be 3 layers listed in the layer count')
layer_list = self.driver.find_element_by_id("layers-in-project-list")
layers = layer_list.find_elements_by_tag_name("li")
for layer in layers:
if re.match ("openembedded-core",layer.text):
print ("openembedded-core layer is a default layer in the project configuration")
elif re.match ("meta-poky",layer.text):
print ("meta-poky layer is a default layer in the project configuration")
elif re.match ("meta-yocto-bsp",layer.text):
print ("meta-yocto-bsp is a default layer in the project configuratoin")
else:
self.fail(msg='default layers are missing from the project configuration')
except:
self.fail(msg='No Layer information in project detail page')
# testcase (1517)
def test_verify_machine_information(self):
self.get('')
self.driver.find_element_by_xpath("//div[@id='global-nav']/ul/li/a[@href="+'"'+'/toastergui/projects/'+'"'+"]").click()
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
try:
self.assertTrue(self.element_exists('#machine-section'),'Machine section for the project configuration page does not exist')
self.assertTrue(re.search("qemux86",self.driver.find_element_by_id("project-machine-name").text),'The machine type is not assigned')
self.driver.find_element_by_id("change-machine-toggle").click()
self.wait_until_visible('#select-machine-form')
self.wait_until_visible('#cancel-machine-change')
self.driver.find_element_by_id("cancel-machine-change").click()
except:
self.fail(msg='The machine information is wrong in the configuration page')
# testcase (1518)
def test_verify_most_built_recipes_information(self):
self.get('')
self.driver.find_element_by_xpath("//div[@id='global-nav']/ul/li/a[@href="+'"'+'/toastergui/projects/'+'"'+"]").click()
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
project_URL=self.get_URL()
try:
self.assertTrue(re.search("You haven't built any recipes yet",self.driver.find_element_by_id("no-most-built").text),'Default message of no builds is not present')
self.driver.find_element_by_xpath("//div[@id='no-most-built']/p/a[@href="+'"'+project_URL+'images/"'+"]").click()
self.assertTrue(re.search("Compatible image recipes",self.driver.find_element_by_xpath("//div[@class='col-md-10']").text),'The Choose a recipe to build link is not working properly')
except:
self.fail(msg='No Most built information in project detail page')
# testcase (1519)
def test_verify_project_release_information(self):
self.get('')
self.driver.find_element_by_xpath("//div[@id='global-nav']/ul/li/a[@href="+'"'+'/toastergui/projects/'+'"'+"]").click()
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
try:
self.assertTrue(re.search("Yocto Project master",self.driver.find_element_by_id("project-release-title").text),'The project release is not defined')
except:
self.fail(msg='No project release title information in project detail page')
# testcase (1520)
def test_verify_layer_information(self):
self.get('')
self.driver.find_element_by_xpath("//div[@id='global-nav']/ul/li/a[@href="+'"'+'/toastergui/projects/'+'"'+"]").click()
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
project_URL=self.get_URL()
try:
self.driver.find_element_by_xpath("//div[@id='layer-container']")
self.assertTrue(re.search("3",self.driver.find_element_by_id("project-layers-count").text),'There should be 3 layers listed in the layer count')
layer_list = self.driver.find_element_by_id("layers-in-project-list")
layers = layer_list.find_elements_by_tag_name("li")
for layer in layers:
if re.match ("openembedded-core",layer.text):
print ("openembedded-core layer is a default layer in the project configuration")
elif re.match ("meta-poky",layer.text):
print ("meta-poky layer is a default layer in the project configuration")
elif re.match ("meta-yocto-bsp",layer.text):
print ("meta-yocto-bsp is a default layer in the project configuratoin")
else:
self.fail(msg='default layers are missing from the project configuration')
self.driver.find_element_by_xpath("//input[@id='layer-add-input']")
self.driver.find_element_by_xpath("//button[@id='add-layer-btn']")
self.driver.find_element_by_xpath("//div[@id='layer-container']/form[@class='form-inline']/p/a[@id='view-compatible-layers']")
self.driver.find_element_by_xpath("//div[@id='layer-container']/form[@class='form-inline']/p/a[@href="+'"'+project_URL+'importlayer"'+"]")
except:
self.fail(msg='No Layer information in project detail page')
# testcase (1521)
def test_verify_project_detail_links(self):
self.get('')
self.driver.find_element_by_xpath("//div[@id='global-nav']/ul/li/a[@href="+'"'+'/toastergui/projects/'+'"'+"]").click()
self.wait_until_visible('#projectstable')
self.find_element_by_link_text_in_table('projectstable', 'selenium-project').click()
project_URL=self.get_URL()
self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li[@id='topbar-configuration-tab']/a[@href="+'"'+project_URL+'"'+"]").click()
self.assertTrue(re.search("Configuration",self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li[@id='topbar-configuration-tab']/a[@href="+'"'+project_URL+'"'+"]").text), 'Configuration tab in project topbar is misspelled')
try:
self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li/a[@href="+'"'+project_URL+'builds/"'+"]").click()
self.assertTrue(re.search("Builds",self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li/a[@href="+'"'+project_URL+'builds/"'+"]").text), 'Builds tab in project topbar is misspelled')
self.driver.find_element_by_xpath("//div[@id='empty-state-projectbuildstable']")
except:
self.fail(msg='Builds tab information is not present')
try:
self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li/a[@href="+'"'+project_URL+'importlayer"'+"]").click()
self.assertTrue(re.search("Import layer",self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li/a[@href="+'"'+project_URL+'importlayer"'+"]").text), 'Import layer tab in project topbar is misspelled')
self.driver.find_element_by_xpath("//fieldset[@id='repo-select']")
self.driver.find_element_by_xpath("//fieldset[@id='git-repo']")
except:
self.fail(msg='Import layer tab not loading properly')
try:
self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li/a[@href="+'"'+project_URL+'newcustomimage/"'+"]").click()
self.assertTrue(re.search("New custom image",self.driver.find_element_by_xpath("//div[@id='project-topbar']/ul[@class='nav nav-tabs']/li/a[@href="+'"'+project_URL+'newcustomimage/"'+"]").text), 'New custom image tab in project topbar is misspelled')
self.assertTrue(re.search("Select the image recipe you want to customise",self.driver.find_element_by_xpath("//div[@class='col-md-12']/h2").text),'The new custom image tab is not loading correctly')
except:
self.fail(msg='New custom image tab not loading properly')

View File

@@ -12,6 +12,8 @@ function projectPageInit(ctx) {
var machineChangeFormToggle = $("#change-machine-toggle");
var machineNameTitle = $("#project-machine-name");
var machineChangeCancel = $("#cancel-machine-change");
var machineInputForm = $("#machine-input-form");
var invalidMachineNameHelp = $("#invalid-machine-name-help");
var freqBuildBtn = $("#freq-build-btn");
var freqBuildList = $("#freq-build-list");
@@ -208,8 +210,23 @@ function projectPageInit(ctx) {
/* Change machine functionality */
machineChangeInput.keyup(function(){
if ($(this).val().indexOf(' ') >= 0) {
machineChangeBtn.attr("disabled", "disabled");
invalidMachineNameHelp.show();
machineInputForm.addClass('has-error');
} else {
machineChangeBtn.removeAttr("disabled");
invalidMachineNameHelp.hide();
machineInputForm.removeClass('has-error');
}
});
machineChangeFormToggle.click(function(){
machineChangeInput.val(machineNameTitle.text());
machineChangeBtn.removeAttr("disabled");
invalidMachineNameHelp.hide();
machineInputForm.removeClass('has-error');
machineForm.slideDown();
machineNameTitle.hide();
$(this).hide();

View File

@@ -708,7 +708,7 @@ function tableInit(ctx){
if (action) {
// Setup the current selected filter; default to 'all' if
// no current filter selected
var radioInput = action.find('input[name]="filter"]');
var radioInput = action.find('input[name="filter"]');
if ((tableParams.filter &&
tableParams.filter === radioInput.val()) ||
filterActionData.action_name == 'all') {

View File

@@ -7,8 +7,8 @@
<a class="btn btn-default btn-block layerbtn
layer-add-{{data.layer_version.id}}" data-layer='{ "id":
{{data.layer_version.id}}, "name": "{{data.layer_version.layer.name}}",
"layerdetailurl": "{%url 'layerdetails' extra.pid data.layer_version.id %},
"xhrLayerUrl": "{% url "xhr_layer" extra.pid data.pk %}",
"layerdetailurl": "{%url 'layerdetails' extra.pid data.layer_version.id %}",
"xhrLayerUrl": "{% url "xhr_layer" extra.pid data.layer_version.id %}"
}' data-directive="add"
{% if data.layer_version.pk in extra.current_layers %}
style="display:none;"

View File

@@ -67,11 +67,12 @@
<form id="select-machine-form" style="display:none;" class="form-inline">
<span class="help-block">Machine suggestions come from the list of layers added to your project. If you don't see the machine you are looking for, <a href="{% url 'projectmachines' project.id %}">check the full list of machines</a></span>
<div class="form-group">
<div class="form-group" id="machine-input-form">
<input class="form-control" id="machine-change-input" autocomplete="off" value="" data-provide="typeahead" data-minlength="1" data-autocomplete="off" type="text">
</div>
<button id="machine-change-btn" class="btn btn-default" type="button">Save</button>
<a href="#" id="cancel-machine-change" class="btn btn-link">Cancel</a>
<span class="help-block text-danger" id="invalid-machine-name-help" style="display:none">A valid machine name cannot include spaces.</span>
<p class="form-link"><a href="{% url 'projectmachines' project.id %}">View compatible machines</a></p>
</form>
</div>

View File

@@ -118,6 +118,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -352,135 +352,139 @@
</para>
<section id="bsp-filelayout-license">
<title>License Files</title>
<title>License Files</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/<replaceable>bsp_license_file</replaceable>
</literallayout>
</para>
</literallayout>
</para>
<para>
These optional files satisfy licensing requirements for the BSP.
The type or types of files here can vary depending on the licensing requirements.
For example, in the Raspberry Pi BSP all licensing requirements are handled with the
<filename>COPYING.MIT</filename> file.
</para>
<para>
These optional files satisfy licensing requirements for the BSP.
The type or types of files here can vary depending on the licensing requirements.
For example, in the Raspberry Pi BSP all licensing requirements are handled with the
<filename>COPYING.MIT</filename> file.
</para>
<para>
Licensing files can be MIT, BSD, GPLv*, and so forth.
These files are recommended for the BSP but are optional and totally up to the BSP developer.
</para>
<para>
Licensing files can be MIT, BSD, GPLv*, and so forth.
These files are recommended for the BSP but are optional and totally up to the BSP developer.
</para>
</section>
<section id="bsp-filelayout-readme">
<title>README File</title>
<para>
You can find this file in the BSP Layer at:
<literallayout class='monospaced'>
<title>README File</title>
<para>
You can find this file in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/README
</literallayout>
</para>
</literallayout>
</para>
<para>
This file provides information on how to boot the live images that are optionally
included in the <filename>binary/</filename> directory.
The <filename>README</filename> file also provides special information needed for
building the image.
</para>
<para>
This file provides information on how to boot the live images that are optionally
included in the <filename>binary/</filename> directory.
The <filename>README</filename> file also provides special information needed for
building the image.
</para>
<para>
At a minimum, the <filename>README</filename> file must
contain a list of dependencies, such as the names of
any other layers on which the BSP depends and the name of
the BSP maintainer with his or her contact information.
</para>
<para>
At a minimum, the <filename>README</filename> file must
contain a list of dependencies, such as the names of
any other layers on which the BSP depends and the name of
the BSP maintainer with his or her contact information.
</para>
</section>
<section id="bsp-filelayout-readme-sources">
<title>README.sources File</title>
<para>
You can find this file in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/README.sources
</literallayout>
</para>
<title>README.sources File</title>
<para>
This file provides information on where to locate the BSP
source files used to build the images (if any) that reside in
<filename>meta-<replaceable>bsp_name</replaceable>/binary</filename>.
Images in the <filename>binary</filename> would be images
released with the BSP.
The information in the <filename>README.sources</filename>
file also helps you find the
<ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink>
used to generate the images that ship with the BSP.
<note>
If the BSP's <filename>binary</filename> directory is
missing or the directory has no images, an existing
<filename>README.sources</filename> file is
meaningless.
</note>
</para>
<para>
You can find this file in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/README.sources
</literallayout>
</para>
<para>
This file provides information on where to locate the BSP
source files used to build the images (if any) that reside in
<filename>meta-<replaceable>bsp_name</replaceable>/binary</filename>.
Images in the <filename>binary</filename> would be images
released with the BSP.
The information in the <filename>README.sources</filename>
file also helps you find the
<ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink>
used to generate the images that ship with the BSP.
<note>
If the BSP's <filename>binary</filename> directory is
missing or the directory has no images, an existing
<filename>README.sources</filename> file is
meaningless.
</note>
</para>
</section>
<section id="bsp-filelayout-binary">
<title>Pre-built User Binaries</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
<title>Pre-built User Binaries</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/binary/<replaceable>bootable_images</replaceable>
</literallayout>
</para>
</literallayout>
</para>
<para>
This optional area contains useful pre-built kernels and
user-space filesystem images released with the BSP that are
appropriate to the target system.
This directory typically contains graphical (e.g. Sato) and
minimal live images when the BSP tarball has been created and
made available in the
<ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
You can use these kernels and images to get a system running
and quickly get started on development tasks.
</para>
<para>
This optional area contains useful pre-built kernels and
user-space filesystem images released with the BSP that are
appropriate to the target system.
This directory typically contains graphical (e.g. Sato) and
minimal live images when the BSP tarball has been created and
made available in the
<ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
You can use these kernels and images to get a system running
and quickly get started on development tasks.
</para>
<para>
The exact types of binaries present are highly
hardware-dependent.
The <filename>README</filename> file should be present in the
BSP Layer and it will explain how to use the images with the
target hardware.
Additionally, the <filename>README.sources</filename> file
should be present to locate the sources used to build the
images and provide information on the Metadata.
</para>
<para>
The exact types of binaries present are highly
hardware-dependent.
The <filename>README</filename> file should be present in the
BSP Layer and it will explain how to use the images with the
target hardware.
Additionally, the <filename>README.sources</filename> file
should be present to locate the sources used to build the
images and provide information on the Metadata.
</para>
</section>
<section id='bsp-filelayout-layer'>
<title>Layer Configuration File</title>
<para>
You can find this file in the BSP Layer at:
<literallayout class='monospaced'>
<title>Layer Configuration File</title>
<para>
You can find this file in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/conf/layer.conf
</literallayout>
</para>
</literallayout>
</para>
<para>
The <filename>conf/layer.conf</filename> file identifies the file structure as a
layer, identifies the
contents of the layer, and contains information about how the build
system should use it.
Generally, a standard boilerplate file such as the following works.
In the following example, you would replace "<replaceable>bsp</replaceable>" and
"<replaceable>_bsp</replaceable>" with the actual name
of the BSP (i.e. <replaceable>bsp_name</replaceable> from the example template).
</para>
<para>
The <filename>conf/layer.conf</filename> file identifies the file structure as a
layer, identifies the
contents of the layer, and contains information about how the build
system should use it.
Generally, a standard boilerplate file such as the following works.
In the following example, you would replace "<replaceable>bsp</replaceable>" and
"<replaceable>_bsp</replaceable>" with the actual name
of the BSP (i.e. <replaceable>bsp_name</replaceable> from the example template).
</para>
<para>
<literallayout class='monospaced'>
<para>
<literallayout class='monospaced'>
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
@@ -493,13 +497,13 @@
BBFILE_PRIORITY_<replaceable>bsp</replaceable> = "6"
LAYERDEPENDS_<replaceable>bsp</replaceable> = "intel"
</literallayout>
</para>
</literallayout>
</para>
<para>
To illustrate the string substitutions, here are the corresponding statements
from the Raspberry Pi <filename>conf/layer.conf</filename> file:
<literallayout class='monospaced'>
<para>
To illustrate the string substitutions, here are the corresponding statements
from the Raspberry Pi <filename>conf/layer.conf</filename> file:
<literallayout class='monospaced'>
# We have a conf and classes directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"
@@ -513,316 +517,196 @@
# Additional license directories.
LICENSE_PATH += "${LAYERDIR}/files/custom-licenses"
</literallayout>
</para>
</literallayout>
</para>
<para>
This file simply makes
<ulink url='&YOCTO_DOCS_DEV_URL;#bitbake-term'>BitBake</ulink>
aware of the recipes and configuration directories.
The file must exist so that the OpenEmbedded build system can recognize the BSP.
</para>
<para>
This file simply makes
<ulink url='&YOCTO_DOCS_DEV_URL;#bitbake-term'>BitBake</ulink>
aware of the recipes and configuration directories.
The file must exist so that the OpenEmbedded build system can recognize the BSP.
</para>
</section>
<section id="bsp-filelayout-machine">
<title>Hardware Configuration Options</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
<title>Hardware Configuration Options</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/conf/machine/*.conf
</literallayout>
</para>
</literallayout>
</para>
<para>
The machine files bind together all the information contained elsewhere
in the BSP into a format that the build system can understand.
If the BSP supports multiple machines, multiple machine configuration files
can be present.
These filenames correspond to the values to which users have set the
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink> variable.
</para>
<para>
The machine files bind together all the information contained elsewhere
in the BSP into a format that the build system can understand.
If the BSP supports multiple machines, multiple machine configuration files
can be present.
These filenames correspond to the values to which users have set the
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink> variable.
</para>
<para>
These files define things such as the kernel package to use
(<ulink url='&YOCTO_DOCS_REF_URL;#var-PREFERRED_PROVIDER'><filename>PREFERRED_PROVIDER</filename></ulink>
of virtual/kernel), the hardware drivers to
include in different types of images, any special software components
that are needed, any bootloader information, and also any special image
format requirements.
</para>
<para>
These files define things such as the kernel package to use
(<ulink url='&YOCTO_DOCS_REF_URL;#var-PREFERRED_PROVIDER'><filename>PREFERRED_PROVIDER</filename></ulink>
of virtual/kernel), the hardware drivers to
include in different types of images, any special software components
that are needed, any bootloader information, and also any special image
format requirements.
</para>
<para>
Each BSP Layer requires at least one machine file.
However, you can supply more than one file.
</para>
<para>
Each BSP Layer requires at least one machine file.
However, you can supply more than one file.
</para>
<para>
This configuration file could also include a hardware "tuning"
file that is commonly used to define the package architecture
and specify optimization flags, which are carefully chosen
to give best performance on a given processor.
</para>
<para>
This configuration file could also include a hardware "tuning"
file that is commonly used to define the package architecture
and specify optimization flags, which are carefully chosen
to give best performance on a given processor.
</para>
<para>
Tuning files are found in the <filename>meta/conf/machine/include</filename>
directory within the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
For example, the <filename>ia32-base.inc</filename> file resides in the
<filename>meta/conf/machine/include</filename> directory.
</para>
<para>
Tuning files are found in the <filename>meta/conf/machine/include</filename>
directory within the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
For example, the <filename>ia32-base.inc</filename> file resides in the
<filename>meta/conf/machine/include</filename> directory.
</para>
<para>
To use an include file, you simply include them in the
machine configuration file.
For example, the Raspberry Pi BSP
<filename>raspberrypi3.conf</filename> contains the
following statement:
<literallayout class='monospaced'>
<para>
To use an include file, you simply include them in the
machine configuration file.
For example, the Raspberry Pi BSP
<filename>raspberrypi3.conf</filename> contains the
following statement:
<literallayout class='monospaced'>
include conf/machine/raspberrypi2.conf
</literallayout>
</para>
</literallayout>
</para>
</section>
<section id='bsp-filelayout-misc-recipes'>
<title>Miscellaneous BSP-Specific Recipe Files</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/recipes-bsp/*
</literallayout>
</para>
<title>Miscellaneous BSP-Specific Recipe Files</title>
<para>
This optional directory contains miscellaneous recipe files for
the BSP.
Most notably would be the formfactor files.
For example, in the Raspberry Pi BSP there is the
<filename>formfactor_0.0.bbappend</filename> file, which is an
append file used to augment the recipe that starts the build.
Furthermore, there are machine-specific settings used during
the build that are defined by the
<filename>machconfig</filename> file further down in the
directory.
Here is the <filename>machconfig</filename>
file for the Raspberry Pi BSP:
<literallayout class='monospaced'>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/recipes-bsp/*
</literallayout>
</para>
<para>
This optional directory contains miscellaneous recipe files for
the BSP.
Most notably would be the formfactor files.
For example, in the Raspberry Pi BSP there is the
<filename>formfactor_0.0.bbappend</filename> file, which is an
append file used to augment the recipe that starts the build.
Furthermore, there are machine-specific settings used during
the build that are defined by the
<filename>machconfig</filename> file further down in the
directory.
Here is the <filename>machconfig</filename>
file for the Raspberry Pi BSP:
<literallayout class='monospaced'>
HAVE_TOUCHSCREEN=0
HAVE_KEYBOARD=1
DISPLAY_CAN_ROTATE=0
DISPLAY_ORIENTATION=0
DISPLAY_DPI=133
</literallayout>
</para>
</literallayout>
</para>
<note><para>
If a BSP does not have a formfactor entry, defaults are established according to
the formfactor configuration file that is installed by the main
formfactor recipe
<filename>meta/recipes-bsp/formfactor/formfactor_0.0.bb</filename>,
which is found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
</para></note>
<note><para>
If a BSP does not have a formfactor entry, defaults are established according to
the formfactor configuration file that is installed by the main
formfactor recipe
<filename>meta/recipes-bsp/formfactor/formfactor_0.0.bb</filename>,
which is found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
</para></note>
</section>
<section id='bsp-filelayout-recipes-graphics'>
<title>Display Support Files</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/recipes-graphics/*
</literallayout>
</para>
<title>Display Support Files</title>
<para>
This optional directory contains recipes for the BSP if it has
special requirements for graphics support.
All files that are needed for the BSP to support a display are
kept here.
</para>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/recipes-graphics/*
</literallayout>
</para>
<para>
This optional directory contains recipes for the BSP if it has
special requirements for graphics support.
All files that are needed for the BSP to support a display are
kept here.
</para>
</section>
<section id='bsp-filelayout-kernel'>
<title>Linux Kernel Configuration</title>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/recipes-kernel/linux/linux-yocto*.bbappend
</literallayout>
</para>
<title>Linux Kernel Configuration</title>
<para>
These files append your specific changes to the main kernel recipe you are using.
</para>
<para>
For your BSP, you typically want to use an existing Yocto Project kernel recipe found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
at <filename>meta/recipes-kernel/linux</filename>.
You can append your specific changes to the kernel recipe by using a
similarly named append file, which is located in the BSP Layer (e.g.
the <filename>meta-<replaceable>bsp_name</replaceable>/recipes-kernel/linux</filename> directory).
</para>
<para>
Suppose you are using the <filename>linux-yocto_4.4.bb</filename> recipe to build
the kernel.
In other words, you have selected the kernel in your
<replaceable>bsp_name</replaceable><filename>.conf</filename> file by adding these types
of statements:
<literallayout class='monospaced'>
<para>
You can find these files in the BSP Layer at:
<literallayout class='monospaced'>
meta-<replaceable>bsp_name</replaceable>/recipes-kernel/linux/linux-yocto*.bbappend
</literallayout>
</para>
<para>
These files append machine-specific changes to the main
kernel recipe you are using.
</para>
<para>
For your BSP, you typically want to use an existing Yocto
Project kernel recipe found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
at <filename>meta/recipes-kernel/linux</filename>.
You can append machine-specific changes to the kernel recipe
by using a similarly named append file, which is located in
the BSP Layer for your target device (e.g. the
<filename>meta-<replaceable>bsp_name</replaceable>/recipes-kernel/linux</filename> directory).
</para>
<para>
Suppose you are using the <filename>linux-yocto_4.4.bb</filename>
recipe to build the kernel.
In other words, you have selected the kernel in your
<replaceable>bsp_name</replaceable><filename>.conf</filename>
file by adding
<ulink url='&YOCTO_DOCS_REF_URL;#var-PREFERRED_PROVIDER'><filename>PREFERRED_PROVIDER</filename></ulink>
and
<ulink url='&YOCTO_DOCS_REF_URL;#var-PREFERRED_VERSION'><filename>PREFERRED_VERSION</filename></ulink>
statements as follows:
<literallayout class='monospaced'>
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "4.4%"
</literallayout>
<note>
When the preferred provider is assumed by default, the
<filename>PREFERRED_PROVIDER</filename> statement does not appear in the
<replaceable>bsp_name</replaceable><filename>.conf</filename> file.
</note>
You would use the <filename>linux-yocto_4.4.bbappend</filename>
file to append specific BSP settings to the kernel, thus
configuring the kernel for your particular BSP.
</para>
<para>
As an example, consider the following append file
used by the BSPs in <filename>meta-yocto-bsp</filename>:
<literallayout class='monospaced'>
meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.4.bbappend
</literallayout>
The following listing shows the file.
Be aware that the actual commit ID strings in this
example listing might be different than the actual strings
in the file from the <filename>meta-yocto-bsp</filename>
layer upstream.
<literallayout class='monospaced'>
KBRANCH_genericx86 = "standard/base"
KBRANCH_genericx86-64 = "standard/base"
KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
KBRANCH_edgerouter = "standard/edgerouter"
KBRANCH_beaglebone = "standard/beaglebone"
KBRANCH_mpc8315e-rdb = "standard/fsl-mpc8315e-rdb"
SRCREV_machine_genericx86 ?= "ff4c4ef15b51f45b9106d71bf1f62fe7c02e63c2"
SRCREV_machine_genericx86-64 ?= "ff4c4ef15b51f45b9106d71bf1f62fe7c02e63c2"
SRCREV_machine_edgerouter ?= "ff4c4ef15b51f45b9106d71bf1f62fe7c02e63c2"
SRCREV_machine_beaglebone ?= "ff4c4ef15b51f45b9106d71bf1f62fe7c02e63c2"
SRCREV_machine_mpc8315e-rdb ?= "df00877ef9387b38b9601c82db57de2a1b23ce53"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE_edgerouter = "edgerouter"
COMPATIBLE_MACHINE_beaglebone = "beaglebone"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
LINUX_VERSION_genericx86 = "4.4.3"
LINUX_VERSION_genericx86-64 = "4.4.3"
</literallayout>
This append file contains statements used to support
several BSPs that ship with the Yocto Project.
The file defines machines using the
<ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>
variable and uses the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KMACHINE'><filename>KMACHINE</filename></ulink>
variable to ensure the machine name used by the OpenEmbedded
build system maps to the machine name used by the Linux Yocto
kernel.
The file also uses the optional
<ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink>
variable to ensure the build process uses the
appropriate kernel branch.
</para>
<para>
Although this particular example does not use it, the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_FEATURES'><filename>KERNEL_FEATURES</filename></ulink>
variable could be used to enable features specific to
the kernel.
The append file points to specific commits in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
Git repository and the <filename>meta</filename> Git repository
branches to identify the exact kernel needed to build the
BSP.
</para>
<para>
One thing missing in this particular BSP, which you will
typically need when developing a BSP, is the kernel configuration
file (<filename>.config</filename>) for your BSP.
When developing a BSP, you probably have a kernel configuration
file or a set of kernel configuration files that, when taken
together, define the kernel configuration for your BSP.
You can accomplish this definition by putting the configurations
in a file or a set of files inside a directory located at the
same level as your kernel's append file and having the same
name as the kernel's main recipe file.
With all these conditions met, simply reference those files in the
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
statement in the append file.
</para>
<para>
For example, suppose you had some configuration options
in a file called <filename>network_configs.cfg</filename>.
You can place that file inside a directory named
<filename>linux-yocto</filename> and then add
a <filename>SRC_URI</filename> statement such as the
following to the append file.
When the OpenEmbedded build system builds the kernel, the
configuration options are picked up and applied.
<literallayout class='monospaced'>
SRC_URI += "file://network_configs.cfg"
</literallayout>
</para>
<para>
To group related configurations into multiple files, you
perform a similar procedure.
Here is an example that groups separate configurations
specifically for Ethernet and graphics into their own
files and adds the configurations by using a
<filename>SRC_URI</filename> statement like the following
in your append file:
<literallayout class='monospaced'>
SRC_URI += "file://myconfig.cfg \
file://eth.cfg \
file://gfx.cfg"
</literallayout>
</para>
<para>
Another variable you can use in your kernel recipe append
file is the
<ulink url='&YOCTO_DOCS_REF_URL;#var-FILESEXTRAPATHS'><filename>FILESEXTRAPATHS</filename></ulink>
variable.
When you use this statement, you are extending the locations
used by the OpenEmbedded system to look for files and
patches as the recipe is processed.
</para>
<note>
<para>
Other methods exist to accomplish grouping and defining configuration options.
For example, if you are working with a local clone of the kernel repository,
you could checkout the kernel's <filename>meta</filename> branch, make your changes,
and then push the changes to the local bare clone of the kernel.
The result is that you directly add configuration options to the
<filename>meta</filename> branch for your BSP.
The configuration options will likely end up in that location anyway if the BSP gets
added to the Yocto Project.
</literallayout>
<note>
When the preferred provider is assumed by default, the
<filename>PREFERRED_PROVIDER</filename>
statement does not appear in the
<replaceable>bsp_name</replaceable><filename>.conf</filename> file.
</note>
You would use the <filename>linux-yocto_4.4.bbappend</filename>
file to append specific BSP settings to the kernel, thus
configuring the kernel for your particular BSP.
</para>
<para>
In general, however, the Yocto Project maintainers take care of moving the
<filename>SRC_URI</filename>-specified
configuration options to the kernel's <filename>meta</filename> branch.
Not only is it easier for BSP developers to not have to worry about putting those
configurations in the branch, but having the maintainers do it allows them to apply
'global' knowledge about the kinds of common configuration options multiple BSPs in
the tree are typically using.
This allows for promotion of common configurations into common features.
You can find more information on what your append file
should contain in the
"<ulink url='&YOCTO_DOCS_KERNEL_URL;#creating-the-append-file'>Creating the Append File</ulink>"
section in the Yocto Project Linux Kernel Development
Manual.
</para>
</note>
</section>
</section>

File diff suppressed because it is too large Load Diff

View File

@@ -109,136 +109,13 @@
<title>Other Information</title>
<para>
Because this manual presents overview information for many different
Because this manual presents information for many different
topics, supplemental information is recommended for full
comprehension.
The following list presents other sources of information you might find helpful:
<itemizedlist>
<listitem><para><emphasis><ulink url='&YOCTO_HOME_URL;'>Yocto Project Website</ulink>:
</emphasis> The home page for the Yocto Project provides lots of information on the project
as well as links to software and documentation.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>:</emphasis>
This short document lets you get started
with the Yocto Project and quickly begin building an image.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>:</emphasis>
This manual is a reference
guide to the OpenEmbedded build system, which is based on BitBake.
The build system is sometimes referred to as "Poky".
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Software Development Kit (SDK) Developer's Guide</ulink>:</emphasis>
This guide provides information that lets you get going
with the standard or extensible SDK.
An SDK, with its cross-development toolchains, allows you
to develop projects inside or outside of the Yocto Project
environment.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink>:</emphasis>
This guide defines the structure for BSP components.
Having a commonly understood structure encourages standardization.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;'>Yocto Project Linux Kernel Development Manual</ulink>:</emphasis>
This manual describes how to work with Linux Yocto kernels as well as provides a bit
of conceptual information on the construction of the Yocto Linux kernel tree.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_PROF_URL;'>Yocto Project Profiling and Tracing Manual</ulink>:</emphasis>
This manual presents a set of common and generally useful tracing and
profiling schemes along with their applications (as appropriate) to each tool.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_TOAST_URL;'>Toaster User Manual</ulink>:</emphasis>
This manual introduces and describes how to set up and use
Toaster, which is a web interface to the Yocto Project's
<link linkend='build-system-term'>OpenEmbedded Build System</link>.
</para></listitem>
<listitem><para><emphasis>
<ulink url='http://www.youtube.com/watch?v=3ZlOu-gLsh0'>
Eclipse IDE Yocto Plug-in</ulink>:</emphasis>
A step-by-step instructional video that
demonstrates how an application developer uses Yocto Plug-in features within
the Eclipse IDE.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>FAQ</ulink>:</emphasis>
A list of commonly asked questions and their answers.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_RELEASE_NOTES;'>Release Notes</ulink>:</emphasis>
Features, updates and known issues for the current
release of the Yocto Project.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_HOME_URL;/tools-resources/projects/toaster'>Toaster</ulink>:</emphasis>
An Application Programming Interface (API) and web-based
interface to the OpenEmbedded build system, which uses
BitBake, that reports build information.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_HOME_URL;/tools-resources/projects/build-appliance'>Build Appliance</ulink>:</emphasis>
A virtual machine that
enables you to build and boot a custom embedded Linux image
with the Yocto Project using a non-Linux development system.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_BUGZILLA_URL;'>Bugzilla</ulink>:</emphasis>
The bug tracking application the Yocto Project uses.
If you find problems with the Yocto Project, you should report them using this
application.
</para></listitem>
<listitem><para><emphasis>Yocto Project Mailing Lists:</emphasis>
To subscribe to the Yocto Project mailing
lists, click on the following URLs and follow the instructions:
<itemizedlist>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto'></ulink>
for a Yocto Project Discussions mailing list.
</para></listitem>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/poky'></ulink>
for a Yocto Project Discussions mailing list about the
OpenEmbedded build system (Poky).
</para></listitem>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto-announce'></ulink>
for a mailing list to receive official Yocto Project announcements
as well as Yocto Project milestones.
</para></listitem>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo'></ulink>
for a listing of all public mailing lists on
<filename>lists.yoctoproject.org</filename>.
</para></listitem>
</itemizedlist></para></listitem>
<listitem><para><emphasis>Internet Relay Chat (IRC):</emphasis>
Two IRC channels on freenode are available
for Yocto Project and Poky discussions: <filename>#yocto</filename> and
<filename>#poky</filename>, respectively.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&OE_HOME_URL;'>OpenEmbedded</ulink>:</emphasis>
The build system used by the Yocto Project.
This project is the upstream, generic, embedded distribution
from which the Yocto Project derives its build system (Poky)
and to which it contributes.
</para></listitem>
<listitem><para><emphasis>
<ulink url='http://www.openembedded.org/wiki/BitBake'>BitBake</ulink>:</emphasis>
The tool used by the OpenEmbedded build system
to process project metadata.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_BB_URL;'>BitBake User Manual:</ulink></emphasis>
A comprehensive guide to the BitBake tool.
If you want information on BitBake, see this manual.
</para></listitem>
<listitem><para><emphasis>
<ulink url='http://wiki.qemu.org/Index.html'>Quick EMUlator (QEMU)</ulink>:</emphasis>
An open-source machine emulator and virtualizer.
</para></listitem>
</itemizedlist>
See the
"<ulink url='&YOCTO_DOCS_REF_URL;#resources-links-and-related-documentation'>Links and Related Documentation</ulink>"
section in the Yocto Project Reference Manual for helpful
sources.
</para>
</section>
</chapter>

View File

@@ -255,19 +255,6 @@
supported images.</para></listitem>
</orderedlist>
</para>
<para>
You can view a video presentation on "Building Custom Embedded Images with Yocto"
at <ulink url='http://free-electrons.com/blog/elc-2011-videos'>Free Electrons</ulink>.
After going to the page, just search for "Embedded".
You can also find supplemental information in the
<ulink url='&YOCTO_DOCS_BSP_URL;'>
Yocto Project Board Support Package (BSP) Developer's Guide</ulink>.
Finally, there is helpful material and links on this
<ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_creating_one_generic_Atom_BSP_from_another'>wiki page</ulink>.
Although a bit dated, you might find the information on the wiki
helpful.
</para>
</section>
<section id='modifying-the-kernel'>
@@ -532,8 +519,11 @@
<note><title>Warning</title>
Try to resist the temptation to directly edit an
existing <filename>.config</filename> file, which is
found in the Build Directory at
<filename>tmp/sysroots/<replaceable>machine-name</replaceable>/kernel</filename>.
found in the Build Directory among the source code
used for the build (e.g. see the bottom
illustration in the
"<link linkend='kernel-overview'>Kernel Overview</link>"
section).
Doing so, can produce unexpected results when the
OpenEmbedded build system regenerates the configuration
file.
@@ -978,7 +968,7 @@
extracts them.
Providing the <replaceable>srctree</replaceable>
argument instructs <filename>devtool</filename> where
place the extracted source.</para>
to place the extracted source.</para>
<para>Within workspace, <filename>devtool</filename>
creates an append file for the recipe.
@@ -1108,11 +1098,8 @@
</para>
<para>
Depending on your particular scenario, the arguments and options
you use with <filename>devtool upgrade</filename> form different
combinations.
The following diagram shows a common development flow
you would use with the <filename>devtool modify</filename>
The following diagram shows the common development flow
you would use with the <filename>devtool upgrade</filename>
command:
</para>
@@ -1272,7 +1259,7 @@
clean a recipe or have <filename>rm_work</filename> enabled,
the workflow described in the
"<link linkend='using-devtool-in-your-workflow'>Using <filename>devtool</filename> in Your Workflow</link>"
section is a safer development flow than than the flow that
section is a safer development flow than the flow that
uses Quilt.
</note>
</para>
@@ -1314,7 +1301,7 @@
</para></listitem>
<listitem><para><emphasis>Test Your Changes:</emphasis>
Once you have modified the source code, the easiest way to
your changes is by calling the
test your changes is by calling the
<filename>do_compile</filename> task as shown in the
following example:
<literallayout class='monospaced'>

View File

@@ -1323,63 +1323,88 @@
</para>
</section>
<section id='tracking-bugs'>
<title>Tracking Bugs</title>
<section id='submitting-a-defect-against-the-yocto-project'>
<title>Submitting a Defect Against the Yocto Project</title>
<para>
The Yocto Project uses its own implementation of
<ulink url='http://www.bugzilla.org/about/'>Bugzilla</ulink> to track bugs.
Implementations of Bugzilla work well for group development because they track bugs and code
changes, can be used to communicate changes and problems with developers, can be used to
submit and review patches, and can be used to manage quality assurance.
The home page for the Yocto Project implementation of Bugzilla is
<ulink url='&YOCTO_BUGZILLA_URL;'>&YOCTO_BUGZILLA_URL;</ulink>.
Use the Yocto Project implementation of
<ulink url='http://www.bugzilla.org/about/'>Bugzilla</ulink>
to submit a defect (bug) against the Yocto Project.
For additional information on this implementation of Bugzilla see the
"<ulink url='&YOCTO_DOCS_REF_URL;#resources-bugtracker'>Yocto Project Bugzilla</ulink>"
section in the Yocto Project Reference Manual.
For more detail on any of the following steps, see the Yocto Project
<ulink url='&YOCTO_WIKI_URL;/wiki/Bugzilla_Configuration_and_Bug_Tracking'>Bugzilla wiki page</ulink>.
</para>
<para>
Sometimes it is helpful to submit, investigate, or track a bug against the Yocto Project itself
such as when discovering an issue with some component of the build system that acts contrary
to the documentation or your expectations.
Following is the general procedure for submitting a new bug using the Yocto Project
Bugzilla.
You can find more information on defect management, bug tracking, and feature request
processes all accomplished through the Yocto Project Bugzilla on the
<ulink url='&YOCTO_WIKI_URL;/wiki/Bugzilla_Configuration_and_Bug_Tracking'>wiki page</ulink>.
Use the following general steps to submit a bug"
<orderedlist>
<listitem><para>Always use the Yocto Project implementation of Bugzilla to submit
a bug.</para></listitem>
<listitem><para>When submitting a new bug, be sure to choose the appropriate
Classification, Product, and Component for which the issue was found.
Defects for the Yocto Project fall into one of seven classifications:
Yocto Project Components, Infrastructure, Build System &amp; Metadata,
Documentation, QA/Testing, Runtime and Hardware.
Each of these Classifications break down into multiple Products and, in some
cases, multiple Components.</para></listitem>
<listitem><para>Use the bug form to choose the correct Hardware and Architecture
for which the bug applies.</para></listitem>
<listitem><para>Indicate the Yocto Project version you were using when the issue
occurred.</para></listitem>
<listitem><para>Be sure to indicate the Severity of the bug.
Severity communicates how the bug impacted your work.</para></listitem>
<listitem><para>Select the appropriate "Documentation change" item
for the bug.
Fixing a bug may or may not affect the Yocto Project
documentation.</para></listitem>
<listitem><para>Provide a brief summary of the issue.
Try to limit your summary to just a line or two and be sure to capture the
essence of the issue.</para></listitem>
<listitem><para>Provide a detailed description of the issue.
You should provide as much detail as you can about the context, behavior, output,
and so forth that surrounds the issue.
<listitem><para>
Open the Yocto Project implementation of
<ulink url='&YOCTO_BUGZILLA_URL;'>Bugzilla</ulink>.
</para></listitem>
<listitem><para>
Click "File a Bug" to enter a new bug.
</para></listitem>
<listitem><para>
Choose the appropriate "Classification", "Product", and
"Component" for which the bug was found.
Bugs for the Yocto Project fall into one of several
classifications, which in turn break down into several
products and components.
For example, for a bug against the
<filename>meta-intel</filename> layer, you would choose
"Build System, Metadata &amp; Runtime", "BSPs", and
"bsps-meta-intel", respectively.
</para></listitem>
<listitem><para>
Choose the "Version" of the Yocto Project for which you found
the bug (e.g. &DISTRO;).
</para></listitem>
<listitem><para>
Determine and select the "Severity" of the bug.
The severity indicates how the bug impacted your work.
</para></listitem>
<listitem><para>
Choose the "Hardware" that the bug impacts.
</para></listitem>
<listitem><para>
Choose the "Architecture" that the bug impacts.
</para></listitem>
<listitem><para>
Choose a "Documentation change" item for the bug.
Fixing a bug might or might not affect the Yocto Project
documentation.
If you are unsure of the impact to the documentation, select
"Don't Know".
</para></listitem>
<listitem><para>
Provide a brief "Summary" of the bug.
Try to limit your summary to just a line or two and be sure
to capture the essence of the bug.
</para></listitem>
<listitem><para>
Provide a detailed "Description" of the bug.
You should provide as much detail as you can about the context,
behavior, output, and so forth that surrounds the bug.
You can even attach supporting files for output from logs by
using the "Add an attachment" button.</para></listitem>
<listitem><para>Be sure to copy the appropriate people in the
"CC List" for the bug.
See the "<link linkend='how-to-submit-a-change'>How to Submit a Change</link>"
section for information about finding out who is responsible
for code.</para></listitem>
<listitem><para>Submit the bug by clicking the "Submit Bug" button.</para></listitem>
using the "Add an attachment" button.
</para></listitem>
<listitem><para>
Click the "Submit Bug" button submit the bug.
A new Bugzilla number is assigned to the bug and the defect
is logged in the bug tracking system.
</para></listitem>
</orderedlist>
Once you file a bug, the bug is processed by the Yocto Project Bug
Triage Team and further details concerning the bug are assigned
(e.g. priority and owner).
You are the "Submitter" of the bug and any further categorization,
progress, or comments on the bug result in Bugzilla sending you an
automated email concerning the particular change or progress to the
bug.
</para>
</section>
@@ -1551,7 +1576,8 @@
</literallayout>
Just provide the name of the file for which you are interested.
The information returned is not ordered by history but does
include a list of all committers grouped by name.
include a list of everyone who has committed grouped by
name.
From the list, you can see who is responsible for the bulk of
the changes against the file.
</para></listitem>
@@ -1722,8 +1748,8 @@
</para>
<para>
Depending on the components changed, you need to submit the email to a specific
mailing list.
Depending on the components changed, you need to submit the email
to a specific mailing list.
For some guidance on which mailing list to use, see the list in the
"<link linkend='how-to-submit-a-change'>How to Submit a Change</link>"
section.
@@ -1735,24 +1761,34 @@
<para>
Here is the general procedure on how to submit a patch through email without using the
scripts:
<itemizedlist>
<listitem><para>Make your changes in your local Git repository.</para></listitem>
<listitem><para>Stage your changes by using the <filename>git add</filename>
command on each file you changed.</para></listitem>
<listitem><para>Commit the change by using the
<orderedlist>
<listitem><para>
Make your changes in your local Git repository.
</para></listitem>
<listitem><para>
Stage your changes by using the
<filename>git add</filename> command on each file you
changed.
</para></listitem>
<listitem><para>
Commit the change by using the
<filename>git commit --signoff</filename> command.
Using the <filename>--signoff</filename> option identifies you as the person
making the change and also satisfies the Developer's Certificate of
Origin (DCO) shown earlier.</para>
<para>When you form a commit, you must follow certain standards established by the
Yocto Project development team.
Using the <filename>--signoff</filename> option identifies
you as the person making the change and also satisfies
the Developer's Certificate of Origin (DCO) shown earlier.
</para>
<para>When you form a commit, you must follow certain
standards established by the Yocto Project development
team.
See the earlier section
"<link linkend='how-to-submit-a-change'>How to Submit a Change</link>"
for Yocto Project commit message standards.</para></listitem>
for Yocto Project commit message standards.
</para></listitem>
<listitem><para>Format the commit into an email message.
To format commits, use the <filename>git format-patch</filename> command.
When you provide the command, you must include a revision list or a number of patches
as part of the command.
To format commits, use the
<filename>git format-patch</filename> command.
When you provide the command, you must include a revision
list or a number of patches as part of the command.
For example, either of these two commands takes your most
recent single commit and formats it as an email message in
the current directory:
@@ -1763,50 +1799,70 @@
<literallayout class='monospaced'>
$ git format-patch HEAD~
</literallayout></para>
<para>After the command is run, the current directory contains a
numbered <filename>.patch</filename> file for the commit.</para>
<para>If you provide several commits as part of the command,
the <filename>git format-patch</filename> command produces a
series of numbered files in the current directory one for each commit.
<para>After the command is run, the current directory
contains a numbered <filename>.patch</filename> file for
the commit.</para>
<para>If you provide several commits as part of the
command, the <filename>git format-patch</filename> command
produces a series of numbered files in the current
directory one for each commit.
If you have more than one patch, you should also use the
<filename>--cover</filename> option with the command, which generates a
cover letter as the first "patch" in the series.
You can then edit the cover letter to provide a description for
the series of patches.
For information on the <filename>git format-patch</filename> command,
see <filename>GIT_FORMAT_PATCH(1)</filename> displayed using the
<filename>man git-format-patch</filename> command.</para>
<note>If you are or will be a frequent contributor to the Yocto Project
or to OpenEmbedded, you might consider requesting a contrib area and the
necessary associated rights.</note></listitem>
<listitem><para>Import the files into your mail client by using the
<filename>--cover</filename> option with the command,
which generates a cover letter as the first "patch" in
the series.
You can then edit the cover letter to provide a
description for the series of patches.
For information on the
<filename>git format-patch</filename> command,
see <filename>GIT_FORMAT_PATCH(1)</filename> displayed
using the <filename>man git-format-patch</filename>
command.
<note>
If you are or will be a frequent contributor to the
Yocto Project or to OpenEmbedded, you might consider
requesting a contrib area and the necessary associated
rights.
</note>
</para></listitem>
<listitem><para>
Import the files into your mail client by using the
<filename>git send-email</filename> command.
<note>In order to use <filename>git send-email</filename>, you must have the
the proper Git packages installed.
For Ubuntu, Debian, and Fedora the package is <filename>git-email</filename>.</note></para>
<para>The <filename>git send-email</filename> command sends email by using a local
or remote Mail Transport Agent (MTA) such as
<filename>msmtp</filename>, <filename>sendmail</filename>, or through a direct
<filename>smtp</filename> configuration in your Git <filename>config</filename>
file.
If you are submitting patches through email only, it is very important
that you submit them without any whitespace or HTML formatting that
either you or your mailer introduces.
The maintainer that receives your patches needs to be able to save and
apply them directly from your emails.
A good way to verify that what you are sending will be applicable by the
maintainer is to do a dry run and send them to yourself and then
save and apply them as the maintainer would.</para>
<para>The <filename>git send-email</filename> command is the preferred method
for sending your patches since there is no risk of compromising whitespace
in the body of the message, which can occur when you use your own mail client.
<note>
In order to use <filename>git send-email</filename>,
you must have the proper Git packages installed on
your host.
For Ubuntu, Debian, and Fedora the package is
<filename>git-email</filename>.
</note></para>
<para>The <filename>git send-email</filename> command
sends email by using a local or remote Mail Transport Agent
(MTA) such as <filename>msmtp</filename>,
<filename>sendmail</filename>, or through a direct
<filename>smtp</filename> configuration in your Git
<filename>~/.gitconfig</filename> file.
If you are submitting patches through email only, it is
very important that you submit them without any whitespace
or HTML formatting that either you or your mailer
introduces.
The maintainer that receives your patches needs to be able
to save and apply them directly from your emails.
A good way to verify that what you are sending will be
applicable by the maintainer is to do a dry run and send
them to yourself and then save and apply them as the
maintainer would.</para>
<para>The <filename>git send-email</filename> command is
the preferred method for sending your patches since there
is no risk of compromising whitespace in the body of the
message, which can occur when you use your own mail client.
The command also has several options that let you
specify recipients and perform further editing of the email message.
For information on how to use the <filename>git send-email</filename> command,
specify recipients and perform further editing of the
email message.
For information on how to use the
<filename>git send-email</filename> command,
see <filename>GIT-SEND-EMAIL(1)</filename> displayed using
the <filename>man git-send-email</filename> command.
</para></listitem>
</itemizedlist>
</orderedlist>
</para>
</section>
</section>

View File

@@ -278,7 +278,7 @@
applications using the Eclipse Integrated Development Environment (IDE),
you will need this plug-in.
See the
"<ulink url='&YOCTO_DOCS_SDK_URL;#setting-up-the-eclipse-ide'>Setting up the Eclipse IDE</ulink>"
"<ulink url='&YOCTO_DOCS_SDK_URL;#sdk-appendix-latest-yp-eclipse-plug-in'>Using Eclipse</ulink>"
section in the Yocto Project Software Development Kit (SDK)
Developer's Guide for more information.</para></listitem>
</itemizedlist>

View File

@@ -96,6 +96,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

@@ -524,170 +524,219 @@
<title>BSP Descriptions</title>
<para>
BSP descriptions combine kernel types with hardware-specific
features.
The hardware-specific portion is typically defined
independently, and then aggregated with each supported kernel
type.
Consider this simple BSP description that supports the
<replaceable>mybsp</replaceable> machine:
<literallayout class='monospaced'>
<replaceable>mybsp</replaceable>.scc:
define KMACHINE <replaceable>mybsp</replaceable>
define KTYPE standard
define KARCH i386
kconf <replaceable>mybsp</replaceable>.cfg
</literallayout>
Every BSP description should define the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KMACHINE'><filename>KMACHINE</filename></ulink>,
<ulink url='&YOCTO_DOCS_REF_URL;#var-KTYPE'><filename>KTYPE</filename></ulink>,
and <ulink url='&YOCTO_DOCS_REF_URL;#var-KARCH'><filename>KARCH</filename></ulink>
variables.
These variables allow the OpenEmbedded build system to identify
the description as meeting the criteria set by the recipe being
built.
This simple example supports the "mybsp" machine for the "standard"
kernel and the "i386" architecture.
</para>
<para>
Be aware that a hard link between the
<filename>KTYPE</filename> variable and a kernel type
description file does not exist.
Thus, if you do not have kernel types defined in your kernel
Metadata, you only need to ensure that the kernel recipe's
<ulink url='&YOCTO_DOCS_REF_URL;#var-LINUX_KERNEL_TYPE'><filename>LINUX_KERNEL_TYPE</filename></ulink>
variable and the <filename>KTYPE</filename> variable in the
BSP description file match.
BSP descriptions (i.e. <filename>*.scc</filename> files)
combine kernel types with hardware-specific features.
The hardware-specific Metadata is typically defined
independently in the BSP layer, and then aggregated with each
supported kernel type.
<note>
Future versions of the tooling make the specification of
<filename>KTYPE</filename> in the BSP optional.
For BSPs supported by the Yocto Project, the BSP description
files are located in the <filename>bsp</filename> directory
of the <filename>yocto-kernel-cache</filename> repository
organized under the "Yocto Linux Kernel" heading in the
<ulink url='http://git.yoctoproject.org/cgit/cgit.cgi'>Yocto Project Source Repositories</ulink>.
</note>
</para>
<para>
If you did want to separate your kernel policy from your
hardware configuration, you could do so by specifying a kernel
type, such as "standard" and including that description file
in the BSP description file.
See the "<link linkend='kernel-types'>Kernel Types</link>" section
for more information.
This section provides a BSP description structural overview along
with aggregation concepts as well as a detailed example using
a BSP supported by the Yocto Project (i.e. Minnow Board).
</para>
<para>
You might also have multiple hardware configurations that you
aggregate into a single hardware description file that you
could include in the BSP description file, rather than referencing
a single <filename>.cfg</filename> file.
Consider the following:
<literallayout class='monospaced'>
<replaceable>mybsp</replaceable>.scc:
define KMACHINE mybsp
define KTYPE standard
define KARCH i386
<section id='bsp-description-file-overview'>
<title>Overview</title>
include standard.scc
include <replaceable>mybsp</replaceable>-hw.scc
</literallayout>
</para>
<para>
For simplicity, consider the following top-level BSP
description file.
Top-level BSP descriptions files employ both a structure
and naming convention for consistency.
The naming convention for the file is as follows:
<literallayout class='monospaced'>
<replaceable>bsp_name</replaceable>-<replaceable>kernel_type</replaceable>.scc
</literallayout>
Here are some example top-level BSP filenames for the
Minnow Board BSP, which is supported by the Yocto Project:
<literallayout class='monospaced'>
minnow-standard.scc
minnow-preempt-rt.scc
minnow-tiny.scc
</literallayout>
Each file uses the BSP name followed by the kernel type.
</para>
<para>
In the above example, <filename>standard.scc</filename>
aggregates all the configuration fragments, patches, and
features that make up your standard kernel policy whereas
<replaceable>mybsp</replaceable><filename>-hw.scc</filename>
aggregates all those necessary
to support the hardware available on the
<replaceable>mybsp</replaceable> machine.
For information on how to break a complete
<filename>.config</filename> file into the various
configuration fragments, see the
"<link linkend='generating-configuration-files'>Generating Configuration Files</link>"
section.
</para>
<para>
is simple BSP description file whose name has the
form
<replaceable>mybsp</replaceable><filename>-standard</filename>
and supports the <replaceable>mybsp</replaceable> machine using
a standard kernel:
<literallayout class='monospaced'>
define KMACHINE <replaceable>mybsp</replaceable>
define KTYPE standard
define KARCH i386
<para>
Many real-world examples are more complex.
Like any other <filename>.scc</filename> file, BSP
descriptions can aggregate features.
Consider the Minnow BSP definition from the
<filename>linux-yocto-3.19</filename>
Git repository:
<literallayout class='monospaced'>
include ktypes/standard
include <replaceable>mybsp</replaceable>.scc
kconf hardware <replaceable>mybsp</replaceable>-<replaceable>extra</replaceable>.cfg
</literallayout>
Every top-level BSP description file should define the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KMACHINE'><filename>KMACHINE</filename></ulink>,
<ulink url='&YOCTO_DOCS_REF_URL;#var-KTYPE'><filename>KTYPE</filename></ulink>,
and <ulink url='&YOCTO_DOCS_REF_URL;#var-KARCH'><filename>KARCH</filename></ulink>
variables.
These variables allow the OpenEmbedded build system to identify
the description as meeting the criteria set by the recipe being
built.
This simple example supports the "mybsp" machine for the "standard"
kernel and the "i386" architecture.
</para>
<para>
Be aware that a hard link between the
<filename>KTYPE</filename> variable and a kernel type description
file does not exist.
Thus, if you do not have kernel types defined in your kernel
Metadata, you only need to ensure that the kernel recipe's
<ulink url='&YOCTO_DOCS_REF_URL;#var-LINUX_KERNEL_TYPE'><filename>LINUX_KERNEL_TYPE</filename></ulink>
variable and the <filename>KTYPE</filename> variable in the
BSP description file match.
<note>
Future versions of the tooling make the specification of
<filename>KTYPE</filename> in the BSP optional.
</note>
</para>
<para>
To separate your kernel policy from your hardware configuration,
you include a kernel type (<filename>ktype</filename>), such as
"standard".
In the previous example, this is done using the following:
<literallayout class='monospaced'>
include ktypes/standard
</literallayout>
In the previous example, <filename>ktypes/standard.scc</filename>
aggregates all the configuration fragments, patches, and
features that make up your standard kernel policy.
See the "<link linkend='kernel-types'>Kernel Types</link>" section
for more information.
</para>
<para>
To aggregate common configurations and features specific to the
kernel for <replaceable>mybsp</replaceable>, use the following:
<literallayout class='monospaced'>
include <replaceable>mybsp</replaceable>.scc
</literallayout>
For information on how to break a complete
<filename>.config</filename> file into the various
configuration fragments, see the
"<link linkend='generating-configuration-files'>Generating Configuration Files</link>"
section.
</para>
<para>
Finally, if you have any configurations specific to the
hardware that are not in a <filename>*.scc</filename> file,
you can include them as follows:
<literallayout class='monospaced'>
kconf hardware <replaceable>mybsp</replaceable>-<replaceable>extra</replaceable>.cfg
</literallayout>
</para>
</section>
<section id='bsp-description-file-example-minnow'>
<title>Example</title>
<para>
Many real-world examples are more complex.
Like any other <filename>.scc</filename> file, BSP
descriptions can aggregate features.
Consider the Minnow BSP definition from the
<filename>linux-yocto-4.4</filename> in the
Yocto Project
<ulink url='&YOCTO_DOCS_DEV_URL;#source-repositories'>Source Repositories</ulink>
(i.e.
<filename>yocto-kernel-cache/bsp/minnow</filename>):
<literallayout class='monospaced'>
minnow.scc:
include cfg/x86.scc
include features/eg20t/eg20t.scc
include cfg/dmaengine.scc
include features/power/intel.scc
include cfg/efi.scc
include features/usb/ehci-hcd.scc
include features/usb/ohci-hcd.scc
include features/usb/usb-gadgets.scc
include features/usb/touchscreen-composite.scc
include cfg/timer/hpet.scc
include cfg/timer/rtc.scc
include features/leds/leds.scc
include features/spi/spidev.scc
include features/i2c/i2cdev.scc
include cfg/x86.scc
include features/eg20t/eg20t.scc
include cfg/dmaengine.scc
include features/power/intel.scc
include cfg/efi.scc
include features/usb/ehci-hcd.scc
include features/usb/ohci-hcd.scc
include features/usb/usb-gadgets.scc
include features/usb/touchscreen-composite.scc
include cfg/timer/hpet.scc
include features/leds/leds.scc
include features/spi/spidev.scc
include features/i2c/i2cdev.scc
include features/mei/mei-txe.scc
# Earlyprintk and port debug requires 8250
kconf hardware cfg/8250.cfg
# Earlyprintk and port debug requires 8250
kconf hardware cfg/8250.cfg
kconf hardware minnow.cfg
kconf hardware minnow-dev.cfg
</literallayout>
</para>
kconf hardware minnow.cfg
kconf hardware minnow-dev.cfg
</literallayout>
</para>
<para>
The <filename>minnow.scc</filename> description file includes
a hardware configuration fragment
(<filename>minnow.cfg</filename>) specific to the Minnow
BSP as well as several more general configuration
fragments and features enabling hardware found on the
machine.
This description file is then included in each of the three
"minnow" description files for the supported kernel types
(i.e. "standard", "preempt-rt", and "tiny").
Consider the "minnow" description for the "standard" kernel
type:
<literallayout class='monospaced'>
<para>
The <filename>minnow.scc</filename> description file includes
a hardware configuration fragment
(<filename>minnow.cfg</filename>) specific to the Minnow
BSP as well as several more general configuration
fragments and features enabling hardware found on the
machine.
This <filename>minnow.scc</filename> description file is then
included in each of the three
"minnow" description files for the supported kernel types
(i.e. "standard", "preempt-rt", and "tiny").
Consider the "minnow" description for the "standard" kernel
type:
<literallayout class='monospaced'>
minnow-standard.scc:
define KMACHINE minnow
define KTYPE standard
define KARCH i386
define KMACHINE minnow
define KTYPE standard
define KARCH i386
include ktypes/standard
include ktypes/standard
include minnow.scc
include minnow.scc
# Extra minnow configs above the minimal defined in minnow.scc
include cfg/efi-ext.scc
include features/media/media-all.scc
include features/sound/snd_hda_intel.scc
# Extra minnow configs above the minimal defined in minnow.scc
include cfg/efi-ext.scc
include features/media/media-all.scc
include features/sound/snd_hda_intel.scc
# The following should really be in standard.scc
# USB live-image support
include cfg/usb-mass-storage.scc
include cfg/boot-live.scc
# The following should really be in standard.scc
# USB live-image support
include cfg/usb-mass-storage.scc
include cfg/boot-live.scc
# Basic profiling
include features/latencytop/latencytop.scc
include features/profiling/profiling.scc
# Basic profiling
include features/latencytop/latencytop.scc
include features/profiling/profiling.scc
# Requested drivers that don't have an existing scc
kconf hardware minnow-drivers-extra.cfg
</literallayout>
The <filename>include</filename> command midway through the file
includes the <filename>minnow.scc</filename> description that
defines all hardware enablements for the BSP that is common to all
kernel types.
Using this command significantly reduces duplication.
</para>
# Requested drivers that don't have an existing scc
kconf hardware minnow-drivers-extra.cfg
</literallayout>
The <filename>include</filename> command midway through the file
includes the <filename>minnow.scc</filename> description that
defines all enabled hardware for the BSP that is common to
all kernel types.
Using this command significantly reduces duplication.
</para>
<para>
Now consider the "minnow" description for the "tiny" kernel type:
<literallayout class='monospaced'>
<para>
Now consider the "minnow" description for the "tiny" kernel
type:
<literallayout class='monospaced'>
minnow-tiny.scc:
define KMACHINE minnow
define KTYPE tiny
@@ -696,22 +745,24 @@
include ktypes/tiny
include minnow.scc
</literallayout>
As you might expect, the "tiny" description includes quite a
bit less.
In fact, it includes only the minimal policy defined by the
"tiny" kernel type and the hardware-specific configuration required
for booting the machine along with the most basic functionality of
the system as defined in the base "minnow" description file.
</para>
</literallayout>
As you might expect, the "tiny" description includes quite a
bit less.
In fact, it includes only the minimal policy defined by the
"tiny" kernel type and the hardware-specific configuration
required for booting the machine along with the most basic
functionality of the system as defined in the base "minnow"
description file.
</para>
<para>
Notice again the three critical variables:
<filename>KMACHINE</filename>, <filename>KTYPE</filename>,
and <filename>KARCH</filename>.
Of these variables, only the <filename>KTYPE</filename> has changed.
It is now set to "tiny".
</para>
<para>
Notice again the three critical variables:
<filename>KMACHINE</filename>, <filename>KTYPE</filename>,
and <filename>KARCH</filename>.
Of these variables, only the <filename>KTYPE</filename> has changed.
It is now set to "tiny".
</para>
</section>
</section>
</section>
@@ -795,6 +846,18 @@
value when changing the content of files not explicitly listed
in the <filename>SRC_URI</filename>.
</para>
<para>
If the BSP description is in recipe space, you cannot simply list
the <filename>*.scc</filename> in the <filename>SRC_URI</filename>
statement.
You need to use the following form from your kernel append file:
<literallayout class='monospaced'>
SRC_URI_append_<replaceable>myplatform</replaceable> = " \
file://<replaceable>myplatform</replaceable>;type=kmeta;destsuffix=<replaceable>myplatform</replaceable> \
"
</literallayout>
</para>
</section>
<section id='metadata-outside-the-recipe-space'>
@@ -817,7 +880,8 @@
<filename>${KMETA}</filename>, in this context, is simply used to
name the directory into which the Git fetcher places the Metadata.
This behavior is no different than any multi-repository
<filename>SRC_URI</filename> statement used in a recipe.
<filename>SRC_URI</filename> statement used in a recipe (e.g.
see the previous section).
</para>
<para>

View File

@@ -84,11 +84,11 @@
You also name it accordingly based on the linux-yocto recipe
you are using.
For example, if you are modifying the
<filename>meta/recipes-kernel/linux/linux-yocto_3.19.bb</filename>
<filename>meta/recipes-kernel/linux/linux-yocto_4.4.bb</filename>
recipe, the append file will typically be located as follows
within your custom layer:
<literallayout class='monospaced'>
<replaceable>your-layer</replaceable>/recipes-kernel/linux/linux-yocto_3.19.bbappend
<replaceable>your-layer</replaceable>/recipes-kernel/linux/linux-yocto_4.4.bbappend
</literallayout>
The append file should initially extend the
<ulink url='&YOCTO_DOCS_REF_URL;#var-FILESPATH'><filename>FILESPATH</filename></ulink>
@@ -114,6 +114,151 @@
<ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink>.
</note>
</para>
<para>
As an example, consider the following append file
used by the BSPs in <filename>meta-yocto-bsp</filename>:
<literallayout class='monospaced'>
meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.4.bbappend
</literallayout>
The following listing shows the file.
Be aware that the actual commit ID strings in this
example listing might be different than the actual strings
in the file from the <filename>meta-yocto-bsp</filename>
layer upstream.
<literallayout class='monospaced'>
KBRANCH_genericx86 = "standard/base"
KBRANCH_genericx86-64 = "standard/base"
KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
KBRANCH_edgerouter = "standard/edgerouter"
KBRANCH_beaglebone = "standard/beaglebone"
KBRANCH_mpc8315e-rdb = "standard/fsl-mpc8315e-rdb"
SRCREV_machine_genericx86 ?= "ad8b1d659ddd2699ebf7d50ef9de8940b157bfc2"
SRCREV_machine_genericx86-64 ?= "ad8b1d659ddd2699ebf7d50ef9de8940b157bfc2"
SRCREV_machine_edgerouter ?= "cebe1ad56aebd89e0de29412e19433fb441bf13c"
SRCREV_machine_beaglebone ?= "cebe1ad56aebd89e0de29412e19433fb441bf13c"
SRCREV_machine_mpc8315e-rdb ?= "06c0dbdcba374ca7f92a53d69292d6bb7bc9b0f3"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE_edgerouter = "edgerouter"
COMPATIBLE_MACHINE_beaglebone = "beaglebone"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
LINUX_VERSION_genericx86 = "4.4.41"
LINUX_VERSION_genericx86-64 = "4.4.41"
LINUX_VERSION_edgerouter = "4.4.53"
LINUX_VERSION_beaglebone = "4.4.53"
LINUX_VERSION_mpc8315e-rdb = "4.4.53"
</literallayout>
This append file contains statements used to support
several BSPs that ship with the Yocto Project.
The file defines machines using the
<ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>
variable and uses the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KMACHINE'><filename>KMACHINE</filename></ulink>
variable to ensure the machine name used by the OpenEmbedded
build system maps to the machine name used by the Linux Yocto
kernel.
The file also uses the optional
<ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink>
variable to ensure the build process uses the
appropriate kernel branch.
</para>
<para>
Although this particular example does not use it, the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_FEATURES'><filename>KERNEL_FEATURES</filename></ulink>
variable could be used to enable features specific to
the kernel.
The append file points to specific commits in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
Git repository and the <filename>meta</filename> Git repository
branches to identify the exact kernel needed to build the
BSP.
</para>
<para>
One thing missing in this particular BSP, which you will
typically need when developing a BSP, is the kernel configuration
file (<filename>.config</filename>) for your BSP.
When developing a BSP, you probably have a kernel configuration
file or a set of kernel configuration files that, when taken
together, define the kernel configuration for your BSP.
You can accomplish this definition by putting the configurations
in a file or a set of files inside a directory located at the
same level as your kernel's append file and having the same
name as the kernel's main recipe file.
With all these conditions met, simply reference those files in the
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
statement in the append file.
</para>
<para>
For example, suppose you had some configuration options
in a file called <filename>network_configs.cfg</filename>.
You can place that file inside a directory named
<filename>linux-yocto</filename> and then add
a <filename>SRC_URI</filename> statement such as the
following to the append file.
When the OpenEmbedded build system builds the kernel, the
configuration options are picked up and applied.
<literallayout class='monospaced'>
SRC_URI += "file://network_configs.cfg"
</literallayout>
</para>
<para>
To group related configurations into multiple files, you
perform a similar procedure.
Here is an example that groups separate configurations
specifically for Ethernet and graphics into their own
files and adds the configurations by using a
<filename>SRC_URI</filename> statement like the following
in your append file:
<literallayout class='monospaced'>
SRC_URI += "file://myconfig.cfg \
file://eth.cfg \
file://gfx.cfg"
</literallayout>
</para>
<para>
Another variable you can use in your kernel recipe append
file is the
<ulink url='&YOCTO_DOCS_REF_URL;#var-FILESEXTRAPATHS'><filename>FILESEXTRAPATHS</filename></ulink>
variable.
When you use this statement, you are extending the locations
used by the OpenEmbedded system to look for files and
patches as the recipe is processed.
</para>
<note>
<para>
Other methods exist to accomplish grouping and defining configuration options.
For example, if you are working with a local clone of the kernel repository,
you could checkout the kernel's <filename>meta</filename> branch, make your changes,
and then push the changes to the local bare clone of the kernel.
The result is that you directly add configuration options to the
<filename>meta</filename> branch for your BSP.
The configuration options will likely end up in that location anyway if the BSP gets
added to the Yocto Project.
</para>
<para>
In general, however, the Yocto Project maintainers take care of moving the
<filename>SRC_URI</filename>-specified
configuration options to the kernel's <filename>meta</filename> branch.
Not only is it easier for BSP developers to not have to worry about putting those
configurations in the branch, but having the maintainers do it allows them to apply
'global' knowledge about the kinds of common configuration options multiple BSPs in
the tree are typically using.
This allows for promotion of common configurations into common features.
</para>
</note>
</section>
<section id='applying-patches'>

View File

@@ -81,6 +81,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 181 KiB

View File

@@ -65,6 +65,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -1,10 +1,10 @@
<!ENTITY DISTRO "2.3">
<!ENTITY DISTRO_COMPRESSED "23">
<!ENTITY DISTRO_NAME_NO_CAP "pyro">
<!ENTITY DISTRO_NAME "Pyro">
<!ENTITY YOCTO_DOC_VERSION "2.3">
<!ENTITY POKYVERSION "18.0.0">
<!ENTITY POKYVERSION_COMPRESSED "1800">
<!ENTITY DISTRO "2.4">
<!ENTITY DISTRO_COMPRESSED "24">
<!ENTITY DISTRO_NAME_NO_CAP "tbd">
<!ENTITY DISTRO_NAME "Tbd">
<!ENTITY YOCTO_DOC_VERSION "2.4">
<!ENTITY POKYVERSION "19.0.0">
<!ENTITY POKYVERSION_COMPRESSED "1900">
<!ENTITY YOCTO_POKY "poky-&DISTRO_NAME_NO_CAP;-&POKYVERSION;">
<!ENTITY COPYRIGHT_YEAR "2010-2017">
<!ENTITY YOCTO_DL_URL "http://downloads.yoctoproject.org">
@@ -61,16 +61,18 @@
<!ENTITY OE_INIT_PATH "&YOCTO_POKY;/oe-init-build-env">
<!ENTITY OE_INIT_FILE "oe-init-build-env">
<!ENTITY UBUNTU_HOST_PACKAGES_ESSENTIAL "gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat cpio python python3 python3-pip python3-expect \
xz which">
build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping">
<!ENTITY FEDORA_HOST_PACKAGES_ESSENTIAL "gawk make wget tar bzip2 gzip python3 unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \
ccache perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue perl-bignum socat \
findutils which file cpio python python3-pip python3-expect xz which">
python3-pexpect findutils which file cpio python python3-pip xz which">
<!ENTITY OPENSUSE_HOST_PACKAGES_ESSENTIAL "python gcc gcc-c++ git chrpath make wget python-xml \
diffstat makeinfo python-curses patch socat python3 python3-curses tar python3-pip \
python3-expect xz which">
<!ENTITY CENTOS_HOST_PACKAGES_ESSENTIAL "gawk make wget tar bzip2 gzip python unzip perl patch \
python3-pexpect xz which">
<!ENTITY CENTOS_HOST_PACKAGES_ESSENTIAL "-y epel-release
$ sudo yum makecache
$ sudo yum install gawk make wget tar bzip2 gzip python unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath socat \
perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3-pip python3-expect xz \
perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python34-pip xz \
which">

View File

@@ -81,6 +81,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -867,6 +867,19 @@
<para>
This step in the build process consists of three tasks:
<itemizedlist>
<listitem><para>
<emphasis><link linkend='ref-tasks-prepare_recipe_sysroot'><filename>do_prepare_recipe_sysroot</filename></link>:</emphasis>
This task sets up the two sysroots in
<filename>${</filename><link linkend='var-WORKDIR'><filename>WORKDIR</filename></link><filename>}</filename>
(i.e. <filename>recipe-sysroot</filename> and
<filename>recipe-sysroot-native</filename>) so that
the sysroots contain the contents of the
<link linkend='ref-tasks-populate_sysroot'><filename>do_populate_sysroot</filename></link>
tasks of the recipes on which the recipe
containing the tasks depends.
A sysroot exists for both the target and for the native
binaries, which run on the host system.
</para></listitem>
<listitem><para><emphasis><filename>do_configure</filename>:</emphasis>
This task configures the source by enabling and
disabling any build-time and configuration options for
@@ -1054,7 +1067,7 @@
<para>
Package installation is under control of the package manager
(e.g. smart/rpm, opkg, or apt/dpkg) regardless of whether or
(e.g. dnf/rpm, opkg, or apt/dpkg) regardless of whether or
not package management is enabled for the target.
At the end of the process, if package management is not
enabled for the target, the package manager's data files
@@ -1392,17 +1405,6 @@
relationship the function needs to be passed.
The function returns a True or False value.
</para>
<para>
Once the setscene process completes, the OpenEmbedded build
system has a list of tasks that it believes it can "accelerate"
and therefore does not need to run.
There is a final function call to the function specified by the
<ulink url='&YOCTO_DOCS_BB_URL;#var-BB_SETSCENE_VERIFY_FUNCTION2'><filename>BB_SETSCENE_VERIFY_FUNCTION2</filename></ulink>
variable that is able to require the tasks to be run that
that the OpenEmbedded build system initially was going to
skip.
</para>
</section>
</section>

View File

@@ -44,75 +44,114 @@
<para>
This reference manual consists of the following:
<itemizedlist>
<listitem><para><emphasis>
<link linkend='usingpoky'>Using the Yocto Project</link>:</emphasis>
Provides an overview of the components that make up the Yocto Project
followed by information about debugging images created in the Yocto Project.
<listitem><para>
<emphasis>
<link linkend='usingpoky'>Using the Yocto Project</link>:
</emphasis>
Provides an overview of the components that make up the Yocto
Project followed by information about debugging images created
in the Yocto Project.
</para></listitem>
<listitem><para><emphasis>
<link linkend='closer-look'>A Closer Look at the Yocto Project Development Environment</link>:</emphasis>
<listitem><para>
<emphasis>
<link linkend='closer-look'>A Closer Look at the Yocto Project Development Environment</link>:
</emphasis>
Provides a more detailed look at the Yocto Project development
environment within the context of development.
</para></listitem>
<listitem><para><emphasis>
<link linkend='technical-details'>Technical Details</link>:</emphasis>
Describes fundamental Yocto Project components as well as an explanation
behind how the Yocto Project uses shared state (sstate) cache to speed build time.
<listitem><para>
<emphasis>
<link linkend='technical-details'>Technical Details</link>:
</emphasis>
Describes fundamental Yocto Project components as well as an
explanation behind how the Yocto Project uses shared state
(sstate) cache to speed build time.
</para></listitem>
<listitem><para><emphasis>
<link linkend='migration'>Migrating to a Newer Yocto Project Release</link>:</emphasis>
<listitem><para>
<emphasis>
<link linkend='migration'>Migrating to a Newer Yocto Project Release</link>:
</emphasis>
Describes release-specific information that helps you move from
one Yocto Project Release to another.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-structure'>Directory Structure</link>:</emphasis>
Describes the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> created
either by unpacking a released Yocto Project tarball on your host development system,
or by cloning the upstream
<ulink url='&YOCTO_DOCS_DEV_URL;#poky'>Poky</ulink> Git repository.
<listitem><para>
<emphasis>
<link linkend='ref-structure'>Directory Structure</link>:
</emphasis> Describes the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
created either by unpacking a released Yocto Project tarball on
your host development system, or by cloning the upstream
<ulink url='&YOCTO_DOCS_DEV_URL;#poky'>Poky</ulink>
Git repository.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-classes'>Classes</link>:</emphasis>
Describes the classes used in the Yocto Project.</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-tasks'>Tasks</link>:</emphasis>
<listitem><para>
<emphasis>
<link linkend='ref-classes'>Classes</link>:
</emphasis>
Describes the classes used in the Yocto Project.
</para></listitem>
<listitem><para>
<emphasis>
<link linkend='ref-tasks'>Tasks</link>:
</emphasis>
Describes the tasks defined by the OpenEmbedded build system.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-devtool-reference'><filename>devtool</filename> Quick Reference</link>:</emphasis>
<listitem><para>
<emphasis>
<link linkend='ref-devtool-reference'><filename>devtool</filename> Quick Reference</link>:
</emphasis>
Provides a quick reference for the <filename>devtool</filename>
command.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-qa-checks'>QA Error and Warning Messages</link>:</emphasis>
<listitem><para>
<emphasis>
<link linkend='ref-qa-checks'>QA Error and Warning Messages</link>:
</emphasis>
Lists and describes QA warning and error messages.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-images'>Images</link>:</emphasis>
<listitem><para>
<emphasis>
<link linkend='ref-images'>Images</link>:
</emphasis>
Describes the standard images that the Yocto Project supports.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-features'>Features</link>:</emphasis>
Describes mechanisms for creating distribution, machine, and image
features during the build process using the OpenEmbedded build system.</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-variables-glos'>Variables Glossary</link>:</emphasis>
Presents most variables used by the OpenEmbedded build system, which
uses BitBake.
Entries describe the function of the variable and how to apply them.
<listitem><para>
<emphasis>
<link linkend='ref-features'>Features</link>:
</emphasis>
Describes mechanisms for creating distribution, machine, and
image features during the build process using the OpenEmbedded
build system.
</para></listitem>
<listitem><para>
<emphasis>
<link linkend='ref-variables-glos'>Variables Glossary</link>:
</emphasis>
Presents most variables used by the OpenEmbedded build system,
which uses BitBake.
Entries describe the function of the variable and how to
apply them.
</para></listitem>
<listitem><para>
<emphasis>
<link linkend='ref-varlocality'>Variable Context</link>:
</emphasis>
Provides variable locality or context.
</para></listitem>
<listitem><para>
<emphasis>
<link linkend='faq'>FAQ</link>:
</emphasis>
Provides answers for commonly asked questions in the Yocto
Project development environment.
</para></listitem>
<listitem><para>
<emphasis>
<link linkend='resources'>Contributions and Additional Information</link>:
</emphasis>
Provides an overview of methods by which you can
contribute to and participate in the Yocto Project.
</para></listitem>
<listitem><para><emphasis>
<link linkend='ref-varlocality'>Variable Context</link>:</emphasis>
Provides variable locality or context.</para></listitem>
<listitem><para><emphasis>
<link linkend='faq'>FAQ</link>:</emphasis>
Provides answers for commonly asked questions in the Yocto Project
development environment.</para></listitem>
<listitem><para><emphasis>
<link linkend='resources'>Contributing to the Yocto Project</link>:</emphasis>
Provides guidance on how you can contribute back to the Yocto
Project.</para></listitem>
</itemizedlist>
</para>
</section>
@@ -368,8 +407,28 @@
Packages needed to build an image for a headless
system:
<literallayout class='monospaced'>
$ sudo yum install &CENTOS_HOST_PACKAGES_ESSENTIAL;
</literallayout></para></listitem>
$ sudo yum install &CENTOS_HOST_PACKAGES_ESSENTIAL; SDL-devel xterm
</literallayout>
<note><title>Notes</title>
<itemizedlist>
<listitem><para>
Extra Packages for Enterprise Linux
(i.e. <filename>epel-release</filename>)
is a collection of packages from Fedora
built on RHEL/CentOS for easy installation
of packages not included in enterprise
Linux by default.
You need to install these packages
separately.
</para></listitem>
<listitem><para>
The <filename>makecache</filename> command
consumes additional Metadata from
<filename>epel-release</filename>.
</para></listitem>
</itemizedlist>
</note>
</para></listitem>
<listitem><para><emphasis>Graphical and Eclipse Plug-In Extras:</emphasis>
Packages recommended if the host system has graphics
support or if you are going to use the Eclipse

View File

@@ -3689,7 +3689,7 @@ $ runqemu qemux86-64 tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64.
by <filename>BB_SETSCENE_VERIFY_FUNCTION</filename>
needed to change signature.
Consequently, a new variable named
<ulink url='&YOCTO_DOCS_BB_URL;#var-BB_SETSCENE_VERIFY_FUNCTION2'><filename>BB_SETSCENE_VERIFY_FUNCTION2</filename></ulink>
<filename>BB_SETSCENE_VERIFY_FUNCTION2</filename>
has been added allowing multiple versions of BitBake
to work with suitably written metadata, which includes
OpenEmbedded-Core and Poky.
@@ -3955,6 +3955,768 @@ $ runqemu qemux86-64 tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64.
</section>
</section>
<section id='moving-to-the-yocto-project-2.3-release'>
<title>Moving to the Yocto Project 2.3 Release</title>
<para>
This section provides migration information for moving to the
Yocto Project 2.3 Release from the prior release.
</para>
<section id='migration-2.3-recipe-specific-sysroots'>
<title>Recipe-specific Sysroots</title>
<para>
The Open-Embedded build system now uses one sysroot per
recipe to resolve long-standing issues with configuration
script auto-detection of undeclared dependencies.
Consequently, you might find that some of your previously
written custom recipes are missing declared dependencies,
particularly those dependencies that are incidentally built
earlier in a typical build process and thus are already likely
to be present in the shared sysroot in previous releases.
</para>
<para>
Consider the following:
<itemizedlist>
<listitem><para>
<emphasis>Declare Build-Time Dependencies:</emphasis>
Because of this new feature, you must explicitly
declare all build-time dependencies for your recipe.
If you do not declare these dependencies, they are not
populated into the sysroot for the recipe.
</para></listitem>
<listitem><para>
<emphasis>Specify Pre-Installation and Post-Installation
Native Tool Dependencies:</emphasis>
You must specifically specify any special native tool
dependencies of <filename>pkg_preinst</filename> and
<filename>pkg_postinst</filename> scripts by using the
<link linkend='var-PACKAGE_WRITE_DEPS'><filename>PACKAGE_WRITE_DEPS</filename></link>
variable.
Specifying these dependencies ensures that these tools
are available if these scripts need to be run on the
build host during the
<link linkend='ref-tasks-rootfs'><filename>do_rootfs</filename></link>
task.</para>
<para>As an example, see the <filename>dbus</filename>
recipe.
You will see that this recipe has a
<filename>pkg_postinst</filename> that calls
<filename>systemctl</filename> if "systemd" is in
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>.
In the example,
<filename>systemd-systemctl-native</filename> is added to
<filename>PACKAGE_WRITE_DEPS</filename>, which is also
conditional on "systemd" being in
<filename>DISTRO_FEATURES</filename>.
</para></listitem>
<listitem><para>
<emphasis>Examine Recipes that Use
<filename>SSTATEPOSTINSTFUNCS</filename>:</emphasis>
You need to examine any recipe that uses
<filename>SSTATEPOSTINSTFUNCS</filename> and determine
steps to take.</para>
<para>Functions added to
<filename>SSTATEPOSTINSTFUNCS</filename> are still
called as they were in previous Yocto Project releases.
However, since a separate sysroot is now being populated
for every recipe and if existing functions being called
through <filename>SSTATEPOSTINSTFUNCS</filename> are
doing relocation, then you will need to change these
to use a post-installation script that is installed by a
function added to
<link linkend='var-SYSROOT_PREPROCESS_FUNCS'><filename>SYSROOT_PREPROCESS_FUNCS</filename></link>.
</para>
<para>For an example, see the
<filename>pixbufcache</filename> class in
<filename>meta/classes/</filename> in the Yocto Project
<ulink url='&YOCTO_DOCS_DEV_URL;#source-repositories'>Source Repositories</ulink>.
<note>
The <filename>SSTATEPOSTINSTFUNCS</filename> variable
itself is now deprecated in favor of the
<filename>do_populate_sysroot[postfuncs]</filename>
task.
Consequently, if you do still have any function or
functions that need to be called after the sysroot
component is created for a recipe, then you would be
well advised to take steps to use a post installation
script as described previously.
Taking these steps prepares your code for when
<filename>SSTATEPOSTINSTFUNCS</filename> is
removed in a future Yocto Project release.
</note>
</para></listitem>
<listitem><para>
<emphasis>Specify Which
<filename>STAGING_DIR_NATIVE</filename> is Used:</emphasis>
Because the shared sysroot is now gone, the scripts
<filename>oe-find-native-sysroot</filename> and
<filename>oe-run-native</filename> have been changed such
that you need to specify which recipe's
<link linkend='var-STAGING_DIR_NATIVE'><filename>STAGING_DIR_NATIVE</filename></link>
is used.
</para></listitem>
</itemizedlist>
<note>
You can find more information on how recipe-specific sysroots
work in the
"<link linkend='ref-classes-staging'><filename>staging.bbclass</filename></link>"
section.
</note>
</para>
</section>
<section id='migration-2.3-path-variable'>
<title><filename>PATH</filename> Variable</title>
<para>
Within the environment used to run build tasks, the environment
variable <filename>PATH</filename> is now sanitized such that
the normal native binary paths
(<filename>/bin</filename>, <filename>/sbin</filename>,
<filename>/usr/bin</filename> and so forth) are
removed and a directory containing symbolic links linking only
to the binaries from the host mentioned in the
<link linkend='var-HOSTTOOLS'><filename>HOSTTOOLS</filename></link>
and
<link linkend='var-HOSTTOOLS_NONFATAL'><filename>HOSTTOOLS_NONFATAL</filename></link>
variables is added to <filename>PATH</filename>.
</para>
<para>
Consequently, any native binaries provided by the host that you
need to call needs to be in one of these two variables at
the configuration level.
</para>
<para>
Alternatively, you can add a native recipe (i.e.
<filename>-native</filename>) that provides the
binary to the recipe's
<link linkend='var-DEPENDS'><filename>DEPENDS</filename></link>
value.
<note>
<filename>PATH</filename> is not sanitized in the same way
within <filename>devshell</filename>.
If it were, you would have difficulty running host tools for
development and debugging within the shell.
</note>
</para>
</section>
<section id='migration-2.3-scripts'>
<title>Changes to Scripts</title>
<para>
The following changes to scripts took place:
<itemizedlist>
<listitem><para>
<emphasis><filename>oe-find-native-sysroot</filename>:</emphasis>
The usage for the
<filename>oe-find-native-sysroot</filename> script has
changed to the following:
<literallayout class='monospaced'>
$ . oe-find-native-sysroot <replaceable>recipe</replaceable>
</literallayout>
You must now supply a recipe for
<replaceable>recipe</replaceable> as part of the command.
Prior to the Yocto Project &DISTRO; release, it was not
necessary to provide the script with the command.
</para></listitem>
<listitem><para>
<emphasis><filename>oe-run-native</filename>:</emphasis>
The usage for the
<filename>oe-run-native</filename> script has changed
to the following:
<literallayout class='monospaced'>
$ oe-run-native <replaceable>native_recipe</replaceable> <replaceable>tool</replaceable>
</literallayout>
You must supply the name of the native recipe and the tool
you want to run as part of the command.
Prior to the Yocto Project &DISTRO; release, it was not
necessary to provide the native recipe with the command.
</para></listitem>
<listitem><para>
<emphasis><filename>cleanup-workdir</filename>:</emphasis>
The <filename>cleanup-workdir</filename> script has been
removed because the script was found to be deleting
files it should not have, which lead to broken build
trees.
Rather than trying to delete portions of
<link linkend='var-TMPDIR'><filename>TMPDIR</filename></link>
and getting it wrong, it is recommended that you
delete <filename>TMPDIR</filename> and have it restored
from shared state (sstate) on subsequent builds.
</para></listitem>
<listitem><para>
<emphasis><filename>wipe-sysroot</filename>:</emphasis>
The <filename>wipe-sysroot</filename> script has been
removed as it is no longer needed with recipe-specific
sysroots.
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='migration-2.3-functions'>
<title>Changes to Functions</title>
<para>
The previously deprecated
<filename>bb.data.getVar()</filename>,
<filename>bb.data.setVar()</filename>, and
related functions have been removed in favor of
<filename>d.getVar()</filename>,
<filename>d.setVar()</filename>, and so forth.
</para>
<para>
You need to fix any references to these old functions.
</para>
</section>
<section id='migration-2.3-bitbake-changes'>
<title>BitBake Changes</title>
<para>
The following changes took place for BitBake:
<itemizedlist>
<listitem><para>
<emphasis>BitBake's Graphical Dependency Explorer UI Replaced:</emphasis>
BitBake's graphical dependency explorer UI
<filename>depexp</filename> was replaced by
<filename>taskexp</filename> ("Task Explorer"), which
provides a graphical way of exploring the
<filename>task-depends.dot</filename> file.
The data presented by Task Explorer is much more
accurate than the data that was presented by
<filename>depexp</filename>.
Being able to visualize the data is an often requested
feature as standard <filename>*.dot</filename> file
viewers cannot usual cope with the size of
the <filename>task-depends.dot</filename> file.
</para></listitem>
<listitem><para>
<emphasis>BitBake "-g" Output Changes:</emphasis>
The <filename>package-depends.dot</filename> and
<filename>pn-depends.dot</filename> files as previously
generated using the <filename>bitbake -g</filename> command
have been removed.
A <filename>recipe-depends.dot</filename> file
is now generated as a collapsed version of
<filename>task-depends.dot</filename> instead.
</para>
<para>The reason for this change is because
<filename>package-depends.dot</filename> and
<filename>pn-depends.dot</filename> largely date back
to a time before task-based execution and do not take
into account task-level dependencies between recipes,
which could be misleading.
</para></listitem>
<listitem><para>
<emphasis>Mirror Variable Splitting Changes:</emphasis>
Mirror variables including
<link linkend='var-MIRRORS'><filename>MIRRORS</filename></link>,
<link linkend='var-PREMIRRORS'><filename>PREMIRRORS</filename></link>,
and
<link linkend='var-SSTATE_MIRRORS'><filename>SSTATE_MIRRORS</filename></link>
can now separate values entirely with spaces.
Consequently, you no longer need "\\n".
BitBake looks for pairs of values, which simplifies usage.
There should be no change required to existing mirror
variable values themselves.
</para></listitem>
<listitem><para>
<emphasis>The Subversion (SVN) Fetcher Uses an "ssh" Parameter and Not an "rsh" Parameter:</emphasis>
The SVN fetcher now takes an "ssh" parameter instead of an
"rsh" parameter.
This new optional parameter is used when the "protocol"
parameter is set to "svn+ssh".
You can only use the new parameter to specify the
<filename>ssh</filename> program used by SVN.
The SVN fetcher passes the new parameter through the
<filename>SVN_SSH</filename> environment variable during
the
<link linkend='ref-tasks-fetch'><filename>do_fetch</filename></link>
task.</para>
<para>See the
"<ulink url='&YOCTO_DOCS_BB_URL;#svn-fetcher'>Subversion (SVN) Fetcher (svn://)</ulink>"
section in the Yocto Project BitBake User Manual for
additional information.
</para></listitem>
<listitem><para>
<emphasis><filename>BB_SETSCENE_VERIFY_FUNCTION</filename>
and <filename>BB_SETSCENE_VERIFY_FUNCTION2</filename>
Removed:</emphasis>
Because the mechanism they were part of is no longer
necessary with recipe-specific sysroots, the
<filename>BB_SETSCENE_VERIFY_FUNCTION</filename> and
<filename>BB_SETSCENE_VERIFY_FUNCTION2</filename>
variables have been removed.
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='migration-2.3-absolute-symlinks'>
<title>Absolute Symbolic Links</title>
<para>
Absolute symbolic links (symlinks) within staged files are no
longer permitted and now trigger an error.
Any explicit creation of symlinks can use the
<filename>lnr</filename> script, which is a replacement for
<filename>ln -r</filename>.
</para>
<para>
If the build scripts in the software that the recipe is building
are creating a number of absolute symlinks that need to be
corrected, you can inherit
<filename>relative_symlinks</filename> within the recipe to turn
those absolute symlinks into relative symlinks.
</para>
</section>
<section id='migration-2.3-gplv2-and-gplv3-moves'>
<title>GPLv2 Versions of GPLv3 Recipes Moved</title>
<para>
Older GPLv2 versions of GPLv3 recipes have moved to a
separate <filename>meta-gplv2</filename> layer.
</para>
<para>
If you use
<link linkend='var-INCOMPATIBLE_LICENSE'><filename>INCOMPATIBLE_LICENSE</filename></link>
to exclude GPLv3 or set
<link linkend='var-PREFERRED_VERSION'><filename>PREFERRED_VERSION</filename></link>
to substitute a GPLv2 version of a GPLv3 recipe, then you must add
the <filename>meta-gplv2</filename> layer to your configuration.
<note>
You can find <filename>meta-gplv2</filename> layer in the
OpenEmbedded layer index at
<ulink url='https://layers.openembedded.org/layerindex/branch/master/layer/meta-gplv2/'></ulink>.
</note>
</para>
<para>
These relocated GPLv2 recipes do not receive the same level of
maintenance as other core recipes.
The recipes do not get security fixes and upstream no longer
maintains them.
In fact, the upstream community is actively hostile towards people
that use the old versions of the recipes.
Moving these recipes into a separate layer both makes the different
needs of the recipes clearer and clearly identifies the number of
these recipes.
<note>
The long-term solution might be to move to BSD-licensed
replacements of the GPLv3 components for those that need to
exclude GPLv3-licensed components from the target system.
This solution will be investigated for future Yocto
Project releases.
</note>
</para>
</section>
<section id='migration-2.3-package-management-changes'>
<title>Package Management Changes</title>
<para>
The following package management changes took place:
<itemizedlist>
<listitem><para>
Smart package manager is replaced by DNF package manager.
Smart has become unmaintained upstream, is not ported
to Python 3.x.
Consequently, Smart needed to be replaced.
DNF is the only feasible candidate.</para>
<para>The change in functionality is that the on-target
runtime package management from remote package feeds is
now done with a different tool that has a
different set of command-line options.
If you have scripts that call the
tool directly, or use its API, they need to be fixed.</para>
<para>For more information, see the
<ulink url='http://dnf.readthedocs.io/en/latest/'>DNF Documentation</ulink>.
</para></listitem>
<listitem><para>
Rpm 5.x is replaced with Rpm 4.x.
This is done for two major reasons:
<itemizedlist>
<listitem><para>
DNF is API-incompatible with Rpm 5.x and porting
it and maintaining the port is non-trivial.
</para></listitem>
<listitem><para>
Rpm 5.x itself has limited maintenance upstream,
and the Yocto Project is one of the very few
remaining users.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
Berkeley DB 6.x is removed and Berkeley DB 5.x becomes
the default:
<itemizedlist>
<listitem><para>
Version 6.x of Berkeley DB has largely been
rejected by the open source community due to its
AGPLv3 license.
As a result, most mainstream open source projects
that require DB are still developed and tested with
DB 5.x.
</para></listitem>
<listitem><para>
In OE-core, the only thing that was requiring
DB 6.x was Rpm 5.x.
Thus, no reason exists to continue carrying DB 6.x
in OE-core.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
<filename>createrepo</filename> is replaced with
<filename>createrepo_c</filename>.</para>
<para><filename>createrepo_c</filename> is the current
incarnation of the tool that generates remote repository
metadata.
It is written in C as compared to
<filename>createrepo</filename>, which is written in
Python.
<filename>createrepo_c</filename> is faster and is
maintained.
</para></listitem>
<listitem><para>
Architecture-independent RPM packages are "noarch"
instead of "all".</para>
<para>This change was made because too many places in
DNF/RPM4 stack already make that assumption.
Only the filenames and the architecture tag has changed.
Nothing else has changed in OE-core system, particularly
in the
<link linkend='ref-classes-allarch'><filename>allarch.bbclass</filename></link>
class.
</para></listitem>
<listitem><para>
Signing of remote package feeds using
<filename>PACKAGE_FEED_SIGN</filename>
is not currently supported.
This issue will be fully addressed in a future
Yocto Project release.
See <ulink url='https://bugzilla.yoctoproject.org/show_bug.cgi?id=11209'>defect 11209</ulink>
for more information on a solution to package feed
signing with RPM in the Yocto Project 2.3 release.
</para></listitem>
<listitem><para>
OPKG now uses the libsolv backend for resolving package
dependencies by default.
This is vastly superior to OPKG's internal ad-hoc solver
that was previously used.
This change does have a small impact on disk (around
500 KB) and memory footprint.
<note>
For further details on this change, see the
<ulink url='http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?
id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message</ulink>.
</note>
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='migration-2.3-removed-recipes'>
<title>Removed Recipes</title>
<para>
The following recipes have been removed:
<itemizedlist>
<listitem><para>
<emphasis><filename>linux-yocto 4.8:</filename></emphasis>
Version 4.8 has been removed.
Versions 4.1 (LTSI), 4.4 (LTS), 4.9 (LTS/LTSI) and 4.10
are now present.
</para></listitem>
<listitem><para>
<emphasis><filename>python-smartpm:</filename></emphasis>
Functionally replaced by <filename>dnf</filename>.
</para></listitem>
<listitem><para>
<emphasis><filename>createrepo:</filename></emphasis>
Replaced by the <filename>createrepo-c</filename> recipe.
</para></listitem>
<listitem><para>
<emphasis><filename>rpmresolve:</filename></emphasis>
No longer needed with the move to RPM 4 as RPM itself is
used instead.
</para></listitem>
<listitem><para>
<emphasis><filename>gstreamer:</filename></emphasis>
Removed the GStreamer Git version recipes as they have
been stale.
<filename>1.10.</filename><replaceable>x</replaceable>
recipes are still present.
</para></listitem>
<listitem><para>
<emphasis><filename>alsa-conf-base:</filename></emphasis>
Merged into <filename>alsa-conf</filename> since
<filename>libasound</filename> depended on both.
Essentially, no way existed to install only one of these.
</para></listitem>
<listitem><para>
<emphasis><filename>tremor:</filename></emphasis>
Moved to <filename>meta-multimedia</filename>.
Fixed-integer Vorbis decoding is not
needed by current hardware.
Thus, GStreamer's ivorbis plugin has been disabled
by default eliminating the need for the
<filename>tremor</filename> recipe in OE-Core.
</para></listitem>
<listitem><para>
<emphasis><filename>gummiboot:</filename></emphasis>
Replaced by <filename>systemd-boot</filename>.
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='migration-2.3-wic-changes'>
<title>Wic Changes</title>
<para>
The following changes have been made to Wic:
<note>
For more information on Wic, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#creating-partitioned-images'>Creating Partitioned Images</ulink>"
section in the Yocto Project Development Manual.
</note>
<itemizedlist>
<listitem><para>
<emphasis>Default Output Directory Changed:</emphasis>
Wic's default output directory is now the current directory
by default instead of the unusual
<filename>/var/tmp/wic</filename>.</para>
<para>The "-o" and "--outdir" options remain unchanged
and are used to specify your preferred output directory
if you do not want to use the default directory.
</para></listitem>
<listitem><para>
<emphasis>fsimage Plug-in Removed:</emphasis>
The Wic fsimage plug-in has been removed as it duplicates
functionality of the rawcopy plug-in.
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='migration-2.3-qa-changes'>
<title>QA Changes</title>
<para>
The following QA checks have changed:
<itemizedlist>
<listitem><para>
<emphasis><filename>unsafe-references-in-binaries</filename>:</emphasis>
The <filename>unsafe-references-in-binaries</filename>
QA check, which was disabled by default, has now been
removed.
This check was intended to detect binaries in
<filename>/bin</filename> that link to libraries in
<filename>/usr/lib</filename> and have the case where
the user has <filename>/usr</filename> on a separate
filesystem to <filename>/</filename>.</para>
<para>The removed QA check was buggy.
Additionally, <filename>/usr</filename> residing on a
separate partition from <filename>/</filename> is now
a rare configuration.
Consequently,
<filename>unsafe-references-in-binaries</filename> was
removed.
</para></listitem>
<listitem><para>
<emphasis><filename>file-rdeps</filename>:</emphasis>
The <filename>file-rdeps</filename> QA check is now an
error by default instead of a warning.
Because it is an error instead of a warning, you need to
address missing runtime dependencies.</para>
<para>For additional information, see the
<link linkend='ref-classes-insane'><filename>insane</filename></link>
class and the
"<link linkend='qa-errors-and-warnings'>Errors and Warnings</link>"
section.
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='migration-2.3-miscellaneous-changes'>
<title>Miscellaneous Changes</title>
<para>
The following miscellaneous changes have occurred:
<itemizedlist>
<listitem><para>
In this release, a number of recipes have been changed to
ignore the <filename>largefile</filename>
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
item, enabling large file support unconditionally.
This feature has always been enabled by default.
Disabling the feature has not been widely tested.
<note>
Future releases of the Yocto Project will remove
entirely the ability to disable the
<filename>largefile</filename> feature,
which would make it unconditionally enabled everywhere.
</note>
</para></listitem>
<listitem><para>
If the
<link linkend='var-DISTRO_VERSION'><filename>DISTRO_VERSION</filename></link>
value contains the value of the
<link linkend='var-DATE'><filename>DATE</filename></link>
variable, which is the default between Poky releases,
the <filename>DATE</filename> value is explicitly excluded
from <filename>/etc/issue</filename> and
<filename>/etc/issue.net</filename>, which is displayed at
the login prompt, in order to avoid conflicts with
Multilib enabled.
Regardless, the <filename>DATE</filename> value is
inaccurate if the <filename>base-files</filename>
recipe is restored from shared state (sstate) rather
than rebuilt.</para>
<para>If you need the build date recorded in
<filename>/etc/issue*</filename> or anywhere else in your
image, a better method is to define a post-processing
function to do it and have the function called from
<link linkend='var-ROOTFS_POSTPROCESS_COMMAND'><filename>ROOTFS_POSTPROCESS_COMMAND</filename></link>.
Doing so ensures the value is always up-to-date with the
created image.
</para></listitem>
<listitem><para>
Dropbear's <filename>init</filename> script now disables
DSA host keys by default.
This change is in line with the systemd service
file, which supports RSA keys only, and with recent
versions of OpenSSH, which deprecates DSA host keys.
</para></listitem>
<listitem><para>
The
<link linkend='ref-classes-buildhistory'><filename>buildhistory</filename></link>
class now correctly uses tabs as separators between all
columns in <filename>installed-package-sizes.txt</filename>
in order to aid import into other tools.
</para></listitem>
<listitem><para>
The <filename>USE_LDCONFIG</filename> variable has been
replaced with the "ldconfig"
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
feature.
Distributions that previously set:
<literallayout class='monospaced'>
USE_LDCONFIG = "0"
</literallayout>
should now instead use the following:
<literallayout class='monospaced'>
DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " ldconfig"
</literallayout>
</para></listitem>
<listitem><para>
The default value of
<link linkend='var-COPYLEFT_LICENSE_INCLUDE'><filename>COPYLEFT_LICENSE_INCLUDE</filename></link>
now includes all versions of AGPL licenses in addition
to GPL and LGPL.
<note>
The default list is not intended to be guaranteed
as a complete safe list.
You should seek legal advice based on what you are
distributing if you are unsure.
</note>
</para></listitem>
<listitem><para>
Kernel module packages are now suffixed with the kernel
version in order to allow module packages from multiple
kernel versions to co-exist on a target system.
If you wish to return to the previous naming scheme
that does not include the version suffix, use the
following:
<literallayout class='monospaced'>
KERNEL_MODULE_PACKAGE_SUFFIX to ""
</literallayout>
</para></listitem>
<listitem><para>
Removal of <filename>libtool</filename>
<filename>*.la</filename> files is now enabled by default.
The <filename>*.la</filename> files are not actually
needed on Linux and relocating them is an unnecessary
burden.</para>
<para>If you need to preserve these
<filename>.la</filename> files (e.g. in a custom
distribution), you must change
<link linkend='var-INHERIT_DISTRO'><filename>INHERIT_DISTRO</filename></link>
such that "remove-libtool" is not included in the value.
</para></listitem>
<listitem><para>
Extensible SDKs built for GCC 5+ now refuse to install on a
distribution where the host GCC version is 4.8 or 4.9.
This change resulted from the fact that the installation
is known to fail due to the way the
<filename>uninative</filename> shared state (sstate)
package is built.
See the
<link linkend='ref-classes-uninative'><filename>uninative</filename></link>
class for additional information.
</para></listitem>
<listitem><para>
All native and nativesdk recipes now use a separate
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
value instead of sharing the value used by recipes for the
target, in order to avoid unnecessary rebuilds.</para>
<para>The <filename>DISTRO_FEATURES</filename> for
<filename>native</filename> recipes is
<link linkend='var-DISTRO_FEATURES_NATIVE'><filename>DISTRO_FEATURES_NATIVE</filename></link>
added to an intersection of
<filename>DISTRO_FEATURES</filename> and
<link linkend='var-DISTRO_FEATURES_FILTER_NATIVE'><filename>DISTRO_FEATURES_FILTER_NATIVE</filename></link>.
</para>
<para>For nativesdk recipes, the
corresponding variables are
<link linkend='var-DISTRO_FEATURES_NATIVESDK'><filename>DISTRO_FEATURES_NATIVESDK</filename></link>
and
<link linkend='var-DISTRO_FEATURES_FILTER_NATIVESDK'><filename>DISTRO_FEATURES_FILTER_NATIVESDK</filename></link>.
</para></listitem>
<listitem><para>
The <filename>FILESDIR</filename>
variable, which was previously deprecated and rarely used,
has now been removed.
You should change any recipes that set
<filename>FILESDIR</filename> to set
<link linkend='var-FILESPATH'><filename>FILESPATH</filename></link>
instead.
</para></listitem>
<listitem><para>
The <filename>MULTIMACH_HOST_SYS</filename>
variable has been removed as it is no longer needed
with recipe-specific sysroots.
</para></listitem>
</itemizedlist>
</para>
</section>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4

View File

@@ -414,7 +414,7 @@ Options:
-l DEBUG_DOMAINS, --log-domains=DEBUG_DOMAINS
Show debug logging for the specified logging domains
-P, --profile Profile the command and save reports.
-u UI, --ui=UI The user interface to use (e.g. knotty and depexp).
-u UI, --ui=UI The user interface to use (e.g. knotty and taskexp).
-t SERVERTYPE, --servertype=SERVERTYPE
Choose which server to use, process or xmlrpc.
--revisions-changed Set the exit code depending on whether upstream

View File

@@ -1301,19 +1301,27 @@
<title><filename>image-live.bbclass</filename></title>
<para>
The <filename>image-live</filename> class supports building "live"
images.
This class controls building "live" (i.e. HDDIMG and ISO) images.
Live images contain syslinux for legacy booting, as well as the
bootloader specified by
<link linkend='var-EFI_PROVIDER'><filename>EFI_PROVIDER</filename></link>
if
<link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link>
contains "efi".
</para>
<para>
Normally, you do not use this class directly.
Instead, you add "live" to
<link linkend='var-IMAGE_FSTYPES'><filename>IMAGE_FSTYPES</filename></link>.
You can selectively build just one of these types through the
<link linkend='var-NOISO'><filename>NOISO</filename></link>
and
<link linkend='var-NOHDD'><filename>NOHDD</filename></link> variables.
For example, if you were building an ISO image, you would add "live"
to <filename>IMAGE_FSTYPES</filename>, set the
<link linkend='var-NOISO'><filename>NOISO</filename></link> variable to
"0" and the build system would use the <filename>image-live</filename>
class to build the ISO image.
<filename>NOISO</filename> variable to "0" and the build system would
use the <filename>image-live</filename> class to build the ISO image.
</para>
</section>
@@ -1755,6 +1763,9 @@
<link linkend='qa-issue-textrel'><filename>ELF binary</filename></link>
message for more information regarding runtime performance issues.
</para></listitem>
<!--
This check was removed for YP 2.3 release
<listitem><para><emphasis><filename>unsafe-references-in-binaries:</filename></emphasis>
Reports when a binary installed in
<filename>${base_libdir}</filename>,
@@ -1776,6 +1787,7 @@
<filename>/usr</filename>.
</note>
</para></listitem>
-->
<listitem><para><emphasis><filename>unsafe-references-in-scripts:</filename></emphasis>
Reports when a script file installed in
<filename>${base_libdir}</filename>,
@@ -2216,6 +2228,14 @@
functionality specific to the respective native or target
case.</para></listitem>
</itemizedlist>
<note><title>Warning</title>
When creating a recipe, you must follow this naming convention:
<literallayout class='monospaced'>
native-<replaceable>myrecipe</replaceable>.bb
</literallayout>
Not doing so can lead to subtle problems because code exists
that depends on the naming convention.
</note>
</para>
<para>
@@ -2258,6 +2278,14 @@
functionality specific to the respective SDK machine or target
case.</para></listitem>
</itemizedlist>
<note><title>Warning</title>
When creating a recipe, you must follow this naming convention:
<literallayout class='monospaced'>
nativesdk-<replaceable>myrecipe</replaceable>.bb
</literallayout>
Not doing so can lead to subtle problems because code exists
that depends on the naming convention.
</note>
</para>
<para>
@@ -2374,7 +2402,7 @@
<para>
If you take the optional step to set up a repository (package feed)
on the development host that can be used by Smart, you can
on the development host that can be used by DNF, you can
install packages from the feed while you are running the image
on the target (i.e. runtime installation of packages).
For more information, see the
@@ -3190,13 +3218,144 @@
<title><filename>staging.bbclass</filename></title>
<para>
The <filename>staging</filename> class provides the
<link linkend='ref-tasks-populate_sysroot'><filename>do_populate_sysroot</filename></link>
task, which stages files into the sysroot to make them available to
other recipes at build time.
The class is enabled by default because it is inherited by the
<link linkend='ref-classes-base'><filename>base</filename></link>
class.
The <filename>staging</filename> class installs files into individual
recipe work directories for sysroots.
The class contains the following key tasks:
<itemizedlist>
<listitem><para>
The
<link linkend='ref-tasks-populate_sysroot'><filename>do_populate_sysroot</filename></link>
task, which is responsible for handing the files that end up
in the recipe sysroots.
</para></listitem>
<listitem><para>
The
<link linkend='ref-tasks-prepare_recipe_sysroot'><filename>do_prepare_recipe_sysroot</filename></link>
task (a "partner" task to the
<filename>populate_sysroot</filename> task), which installs
the files into the individual recipe work directories (i.e.
<link linkend='var-WORKDIR'><filename>WORKDIR</filename></link>).
</para></listitem>
</itemizedlist>
</para>
<para>
The code in the <filename>staging</filename> class is complex and
basically works in two stages:
<itemizedlist>
<listitem><para>
<emphasis>Stage One:</emphasis>
The first stage addresses recipes that have files they want
to share with other recipes that have dependencies on the
originating recipe.
Normally these dependencies are installed through the
<link linkend='ref-tasks-install'><filename>do_install</filename></link>
task into
<filename>${</filename><link linkend='var-D'><filename>D</filename></link><filename>}</filename>.
The <filename>do_populate_sysroot</filename> task copies
a subset of these files into
<filename>${SYSROOT_DESTDIR}</filename>.
This subset of files is controlled by the
<link linkend='var-SYSROOT_DIRS'><filename>SYSROOT_DIRS</filename></link>,
<link linkend='var-SYSROOT_DIRS_NATIVE'><filename>SYSROOT_DIRS_NATIVE</filename></link>,
and
<link linkend='var-SYSROOT_DIRS_BLACKLIST'><filename>SYSROOT_DIRS_BLACKLIST</filename></link>
variables.
<note>
Additionally, a recipe can customize the files further by
declaring a processing function in the
<link linkend='var-SYSROOT_PREPROCESS_FUNCS'><filename>SYSROOT_PREPROCESS_FUNCS</filename></link>
variable.
</note>
</para>
<para>
A shared state (sstate) object is built from these files
and the files are placed into a subdirectory of
<filename>tmp/sysroot-components/</filename>.
The files are scanned for hardcoded paths to the original
installation location.
If the location is found in text files, the hardcoded
locations are replaced by tokens and a list of the files
needing such replacements is created.
These adjustments are referred to as "FIXMEs".
The list of files that are scanned for paths is controlled by
the
<link linkend='var-SSTATE_SCAN_FILES'><filename>SSTATE_SCAN_FILES</filename></link>
variable.
</para></listitem>
<listitem><para>
<emphasis>Stage Two:</emphasis>
The second stage addresses recipes that want to use something
from another recipe and declare a dependency on that recipe
through the
<link linkend='var-DEPENDS'><filename>DEPENDS</filename></link>
variable.
The recipe will have a
<link linkend='ref-tasks-prepare_recipe_sysroot'><filename>do_prepare_recipe_sysroot</filename></link>
task and when
this task executes, it creates the
<filename>recipe-sysroot</filename> and
<filename>recipe-sysroot-native</filename> in the recipe
work directory (i.e.
<link linkend='var-WORKDIR'><filename>WORKDIR</filename></link>.
The OpenEmbedded build system creates hard links to copies of the
relevant files from <filename>sysroot-components</filename>
into the recipe work directory.
<note>
If hard links are not possible, the build system uses
actual copies.
</note>
The build system then addresses any "FIXMEs" to paths as
defined from the list created in the first stage.
</para>
<para>
Finally, any files in <filename>${bindir}</filename>
within the sysroot that have the prefix
"<filename>postinst-</filename>" are executed.
<note>
Although these files are not recommended for general use,
the files do allow some issues such as user creation
and module indexes to be addressed.
</note>
</para>
<para>
Because recipes can have other dependencies outside of
<filename>DEPENDS</filename> (e.g.
<filename>do_unpack[depends] += "tar-native:do_populate_sysroot"</filename>),
the sysroot creation function
<filename>extend_recipe_sysroot</filename> is also added as
a pre-function for those tasks whose dependencies are not
through <filename>DEPENDS</filename> but operate similarly.
</para>
<para>
When installing dependencies into the sysroot, the code
traverses the dependency graph and processes dependencies
in exactly the same way as the dependencies would or would not
be when installed from sstate.
This processing means, for example, a native tool would have
its native dependencies added but a target library would not
have its dependencies traversed or installed.
The same sstate dependency code is used so that
builds should be identical regardless of whether sstate
was used or not.
For a closer look, see the
<filename>setscene_depvalid()</filename> function in the
<link linkend='ref-classes-sstate'><filename>sstate</filename></link>
class.
</para>
<para>
The build system is careful to maintain manifests of the files
it installs so that any given dependency can be installed as
needed.
The sstate hash of the installed item is also stored so that
if it changes, the build system can reinstall it.
</para></listitem>
</itemizedlist>
</para>
</section>
@@ -3532,6 +3691,14 @@
For an example, see the
<filename>meta/conf/distro/include/yocto-uninative.inc</filename>.
</para>
<para>
The <filename>uninative</filename> class is also used unconditionally
by the extensible SDK.
When building the extensible SDK,
<filename>uninative-tarball</filename> is built and the resulting
tarball is included within the SDK.
</para>
</section>
<section id='ref-classes-update-alternatives'>

View File

@@ -520,9 +520,9 @@
the potential to not behave correctly when run on the target:
<itemizedlist>
<listitem><para>
You are deploying a new application to the target that
has correctly defined runtime dependencies defined in
recipe you used to build the application.
You are deploying a new application to the target and
the recipe you used to build the application had
correctly defined runtime dependencies.
</para></listitem>
<listitem><para>
The target does not physically have the packages on which

View File

@@ -195,6 +195,10 @@
<listitem><para><emphasis>keyboard:</emphasis> Include keyboard
support (e.g. keymaps will be loaded during boot).
</para></listitem>
<listitem><para><emphasis>ldconfig:</emphasis>
Include support for ldconfig and
<filename>ld.so.conf</filename> on the target.
</para></listitem>
<listitem><para><emphasis>nfs:</emphasis> Include NFS client
support (for mounting NFS exports on device).
</para></listitem>

View File

@@ -112,6 +112,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -1170,45 +1170,6 @@ can be found then it should be implemented. I can't find one at the moment.
</listitem>
</itemizedlist>
</para>
<!--
Here are some messages that might be documented in the future.
Right now we are not documenting them because the QA checks are not
enabled by default:
<para>
<itemizedlist>
<listitem><para>
<literallayout class='monospaced'>
Desktop file issue: &lt;error&gt; [desktop]
</literallayout>
NEED A DESCRIPTION AND SOLUTION
</para></listitem>
</itemizedlist>
</para>
<para>
<itemizedlist>
<listitem><para>
<literallayout class='monospaced'>
&lt;packagename&gt;: &lt;file&gt;, installed in the base_prefix, requires a shared library under exec_prefix (&lt;exec_prefix&t;g) [unsafe-references-in-binaries]
</literallayout>
NEED A DESCRIPTION AND SOLUTION
</para></listitem>
</itemizedlist>
</para>
<para>
<itemizedlist>
<listitem><para>
<literallayout class='monospaced'>
&lt;packagename&gt;: Found a reference to &lt;exec_prefix&gt;/ in &lt;path&gt; - Shell scripts in base_bindir and base_sbindir should not reference anything in exec_prefix [unsafe-references-in-scripts]
</literallayout>
NEED A DESCRIPTION AND SOLUTION
</para></listitem>
</itemizedlist>
</para>
-->
</section>
<section id='configuring-and-disabling-qa-checks'>

View File

@@ -117,6 +117,137 @@
</para>
</section>
<section id='testing-and-quality-assurance'>
<title>Testing and Quality Assurance</title>
<para>
Part of the Yocto Project development and release process is quality
assurance through the execution of test strategies.
Test strategies provide the Yocto Project team a way to ensure a
release is validated.
Additionally, because the test strategies are visible to you as a
developer, you can validate your projects.
This section overviews the available test infrastructure used in the
Yocto Project.
For information on how to run available tests on your projects, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
section in the Yocto Project Development Manual.
</para>
<para>
The QA/testing infrastructure is woven into the project to the point
where core developers take some of it for granted.
The infrastructure consists of the following pieces:
<itemizedlist>
<listitem><para>
<filename>bitbake-selftest</filename>:
A standalone command that runs unit tests on key pieces of
BitBake and its fetchers.
</para></listitem>
<listitem><para>
<link linkend='ref-classes-sanity'><filename>sanity.bbclass</filename></link>:
This automatically included class checks the build environment
for missing tools (e.g. <filename>gcc</filename>) or common
misconfigurations such as
<link linkend='var-MACHINE'><filename>MACHINE</filename></link>
set incorrectly.
</para></listitem>
<listitem><para>
<link linkend='ref-classes-insane'><filename>insane.bbclass</filename></link>:
This class checks the generated output from builds for sanity.
For example, if building for an ARM target, did the build
produce ARM binaries.
If, for example, the build produced PPC binaries then there
is a problem.
</para></listitem>
<listitem><para>
<link linkend='ref-classes-testimage*'><filename>testimage.bbclass</filename></link>:
This class performs runtime testing of images after they are
built.
The tests are usually used with
<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-qemu'>QEMU</ulink>
to boot the images and check the combined runtime result
boot operation and functions.
However, the test can also use the IP address of a machine to
test.
</para></listitem>
<listitem><para>
<ulink url='&YOCTO_DOCS_DEV_URL;#testing-packages-with-ptest'><filename>ptest</filename></ulink>:
Runs tests against packages produced during the build for a
given piece of software.
The test allows the packages to be be run within a target
image.
</para></listitem>
<listitem><para>
<filename>oe-selftest</filename>:
Tests combination BitBake invocations.
These tests operate outside the OpenEmbedded build system
itself.
The <filename>oe-selftest</filename> can run all tests by
default or can run selected tests or test suites.
<note>
Running <filename>oe-selftest</filename> requires
host packages beyond the "Essential" grouping.
See the
"<link linkend='required-packages-for-the-host-development-system'>Required Packages for the Host Development System</link>"
section for more information.
</note>
</para></listitem>
</itemizedlist>
</para>
<para>
Originally, much of this testing was done manually.
However, significant effort has been made to automate the tests so
that more people can use them and the Yocto Project development team
can run them faster and more efficiently.
</para>
<para>
The Yocto Project's main Autobuilder
(<filename>autobuilder.yoctoproject.org</filename>) publicly tests
each Yocto Project release's code in the OE-Core, Poky, and BitBake
repositories.
The testing occurs for both the current state of the
"master" branch and also for submitted patches.
Testing for submitted patches usually occurs in the
"ross/mut" branch in the <filename>poky-contrib</filename> repository
(i.e. the master-under-test branch) or in the "master-next" branch
in the <filename>poky</filename> repository.
<note>
You can find all these branches in the Yocto Project
<ulink url='&YOCTO_DOCS_DEV_URL;#source-repositories'>Source Repositories</ulink>.
</note>
Testing within these public branches ensures in a publicly visible way
that all of the main supposed architectures and recipes in OE-Core
successfully build and behave properly.
</para>
<para>
Various features such as <filename>multilib</filename>, sub
architectures (e.g. <filename>x32</filename>,
<filename>poky-tiny</filename>, <filename>musl</filename>,
<filename>no-x11</filename> and and so forth),
<filename>bitbake-selftest</filename>, and
<filename>oe-selftest</filename> are tested as part of
the QA process of a release.
Complete testing and validation for a release takes the Autobuilder
workers several hours.
<note>
The Autobuilder workers are non-homogeneous, which means regular
testing across a variety of Linux distributions occurs.
The Autobuilder is limited to only testing QEMU-based setups and
not real hardware.
</note>
</para>
<para>
Finally, in addition to the Autobuilder's tests, the Yocto Project
QA team also performs testing on a variety of platforms, which includes
actual hardware, to ensure expected results.
</para>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4

View File

@@ -801,11 +801,24 @@
<title><filename>build/tmp/sysroots/</filename></title>
<para>
This directory contains shared header files and libraries as well as other shared
data.
Packages that need to share output with other packages do so within this directory.
The directory is subdivided by architecture so multiple builds can run within
the one Build Directory.
Previous versions of the OpenEmbedded build system used to
create a global shared sysroot per machine along with a native
sysroot.
Beginning with the &DISTRO; version of the Yocto Project,
sysroots exist in recipe-specific
<link linkend='var-WORKDIR'><filename>WORKDIR</filename></link>
directories.
Thus, the <filename>build/tmp/sysroots/</filename> directory
is unused.
<note>
The <filename>build/tmp/sysroots/</filename> directory
can still be populated using the
<filename>bitbake build-sysroots</filename> command and can
be used for compatibility in some cases.
However, in general it is not recommended to populate
this directory.
Individual recipe-specific sysroots should be used.
</note>
</para>
</section>
@@ -894,6 +907,101 @@
</para>
</section>
<section id='structure-build-tmp-work-tunearch-recipename-version'>
<title><filename>build/tmp/work/<replaceable>tunearch</replaceable>/<replaceable>recipename</replaceable>/<replaceable>version</replaceable>/</filename></title>
<para>
The recipe work directory (<replaceable>recipe_work_directory</replaceable>).
</para>
<para>
As described earlier in the
"<link linkend='structure-build-tmp-sysroots'><filename>build/tmp/sysroots/</filename></link>"
section, beginning with the &DISTRO; release of the Yocto
Project, the OpenEmbedded build system builds each recipe in its
own work directory (i.e.
<link linkend='var-WORKDIR'><filename>WORKDIR</filename></link>).
The path to the work directory is constructed using the
architecture of the given build (e.g.
<link linkend='var-TUNE_PKGARCH'><filename>TUNE_PKGARCH</filename></link>,
<link linkend='var-MACHINE_ARCH'><filename>MACHINE_ARCH</filename></link>,
or "allarch"), the recipe name, and the version of the recipe (i.e.
<link linkend='var-PE'><filename>PE</filename></link><filename>:</filename><link linkend='var-PV'><filename>PV</filename></link><filename>-</filename><link linkend='var-PR'><filename>PR</filename></link>).
</para>
<para>
A number of key subdirectories exist within each recipe
work directory:
<itemizedlist>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/temp</filename>:
Contains the log files of each task executed for this
recipe, the "run" files for each executed task, which
contain the code run, and a
<filename>log.task_order</filename> file, which lists the
order in which tasks were executed.
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/image</filename>:
Contains the output of the
<link linkend='ref-tasks-install'><filename>do_install</filename></link>
task, which corresponds to the
<filename>${</filename><link linkend='var-D'><filename>D</filename></link><filename>}</filename>
variable in that task.
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/pseudo</filename>:
Contains the pseudo database and log for any tasks executed
under pseudo for the recipe.
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/sysroot-destdir</filename>:
Contains the output of the
<link linkend='ref-tasks-populate_sysroot'><filename>do_populate_sysroot</filename></link>
task.
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/package</filename>:
Contains the output of the
<link linkend='ref-tasks-package'><filename>do_package</filename></link>
task before the output is split into individual packages.
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/packages-split</filename>:
Contains the output of the <filename>do_package</filename>
task after the output has been split into individual
packages.
Subdirectories exist for each individual package created
by the recipe.
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/recipe-sysroot</filename>:
A directory populated with the target dependencies of the
recipe.
This directory looks like the target filesystem and
contains libraries that the recipe might need to link
against (e.g. the C library).
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/recipe-sysroot-native</filename>:
A directory populated with the native dependencies of the
recipe.
This directory contains the tools the recipe needs to build
(e.g. the compiler, Autoconf, libtool, and so forth).
</para></listitem>
<listitem><para>
<filename><replaceable>recipe_work_directory</replaceable>/build</filename>:
This subdirectory applies only to recipes that support
builds where the source is separate from the
build artifacts.
The OpenEmbedded build system uses this directory as a
separate build directory (i.e.
<filename>${</filename><link linkend='var-B'><filename>B</filename></link><filename>}</filename>).
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='structure-build-work-shared'>
<title><filename>build/tmp/work-shared/</filename></title>

View File

@@ -490,6 +490,18 @@
</para>
</section>
<section id='ref-tasks-prepare_recipe_sysroot'>
<title><filename>do_prepare_recipe_sysroot</filename></title>
<para>
Installs the files into the individual recipe work directories
(i.e. WORKDIR).
See the
"<link linkend='ref-classes-staging'><filename>staging</filename></link>"
class for more information.
</para>
</section>
<section id='ref-tasks-rm_work'>
<title><filename>do_rm_work</filename></title>

View File

@@ -484,6 +484,12 @@
in your recipe so that it does contain
<filename>${SRCPV}</filename>.
</para>
<para>
For more information see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#automatically-incrementing-a-binary-package-revision-number'>Automatically Incrementing a Binary Package Revision Number</ulink>"
section in the Yocto Project Development Manual.
</para>
</glossdef>
</glossentry>
@@ -2415,12 +2421,11 @@
</para>
<para>
The default value, which is "GPL* LGPL*", for
<filename>COPYLEFT_LICENSE_INCLUDE</filename> is set
by the
The default value is set by the
<link linkend='ref-classes-copyleft_filter'><filename>copyleft_filter</filename></link>
class, which is inherited by the
<filename>archiver</filename> class.
The default value includes "GPL*", "LGPL*", and "AGPL*".
</para>
</glossdef>
</glossentry>
@@ -3618,6 +3623,47 @@
</glossdef>
</glossentry>
<glossentry id='var-DISTRO_FEATURES_FILTER_NATIVE'><glossterm>DISTRO_FEATURES_FILTER_NATIVE</glossterm>
<info>
DISTRO_FEATURES_FILTER_NATIVE[doc] = "Specifies a list of features that if present in the target DISTRO_FEATURES value should be included in DISTRO_FEATURES when building native recipes."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Specifies a list of features that if present in
the target
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
value should be included in
<filename>DISTRO_FEATURES</filename> when building native
recipes.
This variable is used in addition to the features
filtered using the
<link linkend='var-DISTRO_FEATURES_NATIVE'><filename>DISTRO_FEATURES_NATIVE</filename></link>
variable.
</para>
</glossdef>
</glossentry>
<glossentry id='var-DISTRO_FEATURES_FILTER_NATIVESDK'><glossterm>DISTRO_FEATURES_FILTER_NATIVESDK</glossterm>
<info>
DISTRO_FEATURES_FILTER_NATIVESDK[doc] = "Specifies a list of features that if present in the target DISTRO_FEATURES value should be included in DISTRO_FEATURES when building nativesdk recipes."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Specifies a list of features that if present in the target
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
value should be included in
<filename>DISTRO_FEATURES</filename> when building
nativesdk recipes.
This variable is used in addition to the features
filtered using the
<link linkend='var-DISTRO_FEATURES_NATIVESDK'><filename>DISTRO_FEATURES_NATIVESDK</filename></link>
variable.
</para>
</glossdef>
</glossentry>
<glossentry id='var-DISTRO_FEATURES_LIBC'><glossterm>DISTRO_FEATURES_LIBC</glossterm>
<info>
DISTRO_FEATURES_LIBC[doc] = "Specifies the list of distro features that are specific to the C library (libc)."
@@ -3635,6 +3681,42 @@
</glossdef>
</glossentry>
<glossentry id='var-DISTRO_FEATURES_NATIVE'><glossterm>DISTRO_FEATURES_NATIVE</glossterm>
<info>
DISTRO_FEATURES_NATIVE[doc] = "Specifies a list of features that should be included in DISTRO_FEATURES when building native recipes."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Specifies a list of features that should be included in
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
when building native recipes.
This variable is used in addition to the features
filtered using the
<link linkend='var-DISTRO_FEATURES_FILTER_NATIVE'><filename>DISTRO_FEATURES_FILTER_NATIVE</filename></link>
variable.
</para>
</glossdef>
</glossentry>
<glossentry id='var-DISTRO_FEATURES_NATIVESDK'><glossterm>DISTRO_FEATURES_NATIVESDK</glossterm>
<info>
DISTRO_FEATURES_NATIVESDK[doc] = "Specifies a list of features that should be included in DISTRO_FEATURES when building nativesdk recipes."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Specifies a list of features that should be included in
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
when building nativesdk recipes.
This variable is used in addition to the features
filtered using the
<link linkend='var-DISTRO_FEATURES_FILTER_NATIVESDK'><filename>DISTRO_FEATURES_FILTER_NATIVESDK</filename></link>
variable.
</para>
</glossdef>
</glossentry>
<glossentry id='var-DISTRO_NAME'><glossterm>DISTRO_NAME</glossterm>
<info>
DISTRO_NAME[doc] = "The long name of the distribution."
@@ -3798,7 +3880,9 @@
<para>
See the
<link linkend='ref-classes-systemd-boot'><filename>systemd-boot</filename></link>
class for more information.
and
<link linkend='ref-classes-image-live'><filename>image-live</filename></link>
classes for more information.
</para>
</glossdef>
</glossentry>
@@ -5109,6 +5193,53 @@
</glossdef>
</glossentry>
<glossentry id='var-HOSTTOOLS'><glossterm>HOSTTOOLS</glossterm>
<info>
HOSTTOOLS[doc] = "A space-separated list (filter) of tools on the build host that should be allowed to be called from within build tasks."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
A space-separated list (filter) of tools on the build host
that should be allowed to be called from within build tasks.
Using this filter helps reduce the possibility of host
contamination.
If a tool specified in the value of
<filename>HOSTTOOLS</filename> is not found on the
build host, the OpenEmbedded build system produces
an error and the build is not started.
</para>
<para>
For additional information, see
<link linkend='var-HOSTTOOLS_NONFATAL'><filename>HOSTTOOLS_NONFATAL</filename></link>.
</para>
</glossdef>
</glossentry>
<glossentry id='var-HOSTTOOLS_NONFATAL'><glossterm>HOSTTOOLS_NONFATAL</glossterm>
<info>
HOSTTOOLS_NONFATAL[doc] = "A space-separated list (filter) of tools on the build host that should be allowed to be called from within build tasks."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
A space-separated list (filter) of tools on the build host
that should be allowed to be called from within build tasks.
Using this filter helps reduce the possibility of host
contamination.
Unlike
<link linkend='var-HOSTTOOLS'><filename>HOSTTOOLS</filename></link>,
the OpenEmbedded build system does not produce and error
if a tool specified in the value of
<filename>HOSTTOOLS_NONFATAL</filename> is not found on the
build host.
Thus, you can use <filename>HOSTTOOLS_NONFATAL</filename>
to filter optional host tools.
</para>
</glossdef>
</glossentry>
<glossentry id='var-HOST_VENDOR'><glossterm>HOST_VENDOR</glossterm>
<info>
HOST_VENDOR[doc] = "The name of the vendor. Normally same as the TARGET_VENDOR."
@@ -6185,14 +6316,24 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
<glossentry id='var-INHERIT'><glossterm>INHERIT</glossterm>
<info>
INHERIT[doc] = "Causes the named class to be inherited at this point during parsing. The variable is only valid in configuration files."
INHERIT[doc] = "Causes the named class or classes to be inherited globally."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Causes the named class to be inherited at
this point during parsing.
The variable is only valid in configuration files.
Causes the named class or classes to be inherited globally.
Anonymous functions in the class or classes
are not executed for the
base configuration and in each individual recipe.
The OpenEmbedded build system ignores changes to
<filename>INHERIT</filename> in individual recipes.
</para>
<para>
For more information on <filename>INHERIT</filename>, see
the
"<ulink url="&YOCTO_DOCS_BB_URL;#inherit-configuration-directive"><filename>INHERIT</filename> Configuration Directive</ulink>"
section in the Yocto Project Bitbake User Manual.
</para>
</glossdef>
</glossentry>
@@ -7300,21 +7441,30 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
<glossentry id='var-LAYERDEPENDS'><glossterm>LAYERDEPENDS</glossterm>
<info>
LAYERDEPENDS[doc] = "Lists the layers, separated by spaces, upon which this recipe depends. This variable is used in the conf/layer.conf file and must be suffixed with the name of the specific layer."
LAYERDEPENDS[doc] = "Lists the layers, separated by spaces, on which this recipe depends. This variable is used in the conf/layer.conf file and must be suffixed with the name of the specific layer."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Lists the layers that this recipe depends upon, separated by spaces.
Optionally, you can specify a specific layer version for a dependency
by adding it to the end of the layer name with a colon, (e.g. "anotherlayer:3"
to be compared against
<link linkend='var-LAYERVERSION'><filename>LAYERVERSION</filename></link><filename>_anotherlayer</filename>
in this case).
An error will be produced if any dependency is missing or
the version numbers do not match exactly (if specified).
This variable is used in the <filename>conf/layer.conf</filename> file
and must be suffixed with the name of the specific layer (e.g.
Lists the layers, separated by spaces, on which this
recipe depends.
Optionally, you can specify a specific layer version for a
dependency by adding it to the end of the layer name.
Here is an example:
<literallayout class='monospaced'>
LAYERDEPENDS_mylayer = "anotherlayer (=3)"
</literallayout>
In this previous example, version 3 of "anotherlayer"
is compared against
<link linkend='var-LAYERVERSION'><filename>LAYERVERSION</filename></link><filename>_anotherlayer</filename>.
</para>
<para>
An error is produced if any dependency is missing or
the version numbers (if specified) do not match exactly.
This variable is used in the
<filename>conf/layer.conf</filename> file and must be
suffixed with the name of the specific layer (e.g.
<filename>LAYERDEPENDS_mylayer</filename>).
</para>
</glossdef>
@@ -7335,6 +7485,38 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</glossdef>
</glossentry>
<glossentry id='var-LAYERRECOMMENDS'><glossterm>LAYERRECOMMENDS</glossterm>
<info>
LAYERRECOMMENDS[doc] = "Lists the layers, separated by spaces, recommended for use with this layer."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Lists the layers, separated by spaces, recommended for
use with this layer.
Optionally, you can specify a specific layer version for a
recommendation by adding the version to the end of the
layer name.
Here is an example:
<literallayout class='monospaced'>
LAYERRECOMMENDS_mylayer = "anotherlayer (=3)"
</literallayout>
In this previous example, version 3 of "anotherlayer" is
compared against
<filename>LAYERVERSION_anotherlayer</filename>.
</para>
<para>
An error is produced if any dependency is missing or the
version numbers (if specified) do not match exactly.
This variable is used in the
<filename>conf/layer.conf</filename> file and must be
suffixed with the name of the specific layer (e.g.
<filename>LAYERRECOMMENDS_mylayer</filename>).
</para>
</glossdef>
</glossentry>
<glossentry id='var-LAYERVERSION'><glossterm>LAYERVERSION</glossterm>
<info>
LAYERVERSION[doc] = "Optionally specifies the version of a layer as a single number. This variable is used in the conf/layer.conf file and must be suffixed with the name of the specific layer."
@@ -8353,13 +8535,16 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</glossdef>
</glossentry>
<!--
<glossentry id='var-MULTIMACH_HOST_SYS'><glossterm>MULTIMACH_HOST_SYS</glossterm>
<info>
MULTIMACH_HOST_SYS[doc] = "Separates files for different machines such that you can build for multiple host machines using the same output directories."
</info>
<glossdef>
<para role="glossdeffirst">
-->
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
<!--
Serves the same purpose as
<link linkend='var-MULTIMACH_TARGET_SYS'><filename>MULTIMACH_TARGET_SYS</filename></link>,
but for the "HOST" system, in situations that involve a
@@ -8377,6 +8562,7 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</para>
</glossdef>
</glossentry>
-->
<glossentry id='var-MULTIMACH_TARGET_SYS'><glossterm>MULTIMACH_TARGET_SYS</glossterm>
<info>
@@ -8406,9 +8592,6 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
See the
<link linkend='var-STAMP'><filename>STAMP</filename></link>
variable for an example.
<link linkend='var-MULTIMACH_HOST_SYS'><filename>MULTIMACH_HOST_SYS</filename></link>
is the corresponding variable for the host system in
situations that involve a "HOST" and a "TARGET" system.
See the
<link linkend='var-STAGING_DIR_TARGET'><filename>STAGING_DIR_TARGET</filename></link>
variable for more information.
@@ -9318,6 +9501,31 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</glossdef>
</glossentry>
<glossentry id='var-PACKAGE_WRITE_DEPS'><glossterm>PACKAGE_WRITE_DEPS</glossterm>
<info>
PACKAGE_WRITE_DEPS[doc] = "Specifies post-installation and pre-installation script dependencies on native/cross tools."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Specifies a list of dependencies for post-installation and
pre-installation scripts on native/cross tools.
If your post-installation or pre-installation script can
execute at rootfs creation time rather than on the
target but depends on a native tool in order to execute,
you need to list the tools in
<filename>PACKAGE_WRITE_DEPENDS</filename>.
</para>
<para>
For information on running post-installation scripts, see
the
"<ulink url='&YOCTO_DOCS_DEV_URL;#new-recipe-post-installation-scripts'>Post-Installation Scripts</ulink>"
section in the Yocto Project Development Manual.
</para>
</glossdef>
</glossentry>
<glossentry id='var-PACKAGECONFIG'><glossterm>PACKAGECONFIG</glossterm>
<info>
PACKAGECONFIG[doc] = "This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis."
@@ -9445,7 +9653,7 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
<glossentry id='var-PACKAGECONFIG_CONFARGS'><glossterm>PACKAGECONFIG_CONFARGS</glossterm>
<info>
PACKAGECONFIG_CONFARGS[doc] = "A space-separated list of configuration options generated from PACKAGECONFIG."
PACKAGECONFIG_CONFARGS[doc] = "A space-separated list of configuration options generated from the PACKAGECONFIG setting."
</info>
<glossdef>
<para role="glossdeffirst">
@@ -9454,29 +9662,22 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
from the
<link linkend='var-PACKAGECONFIG'><filename>PACKAGECONFIG</filename></link>
setting.
This list of options helps other classes and
recipes take advantage of the
<filename>PACKAGECONFIG</filename> mechanism without
having to include options from
<link linkend='var-EXTRA_OECONF'><filename>EXTRA_OECONF</filename></link>.
</para>
<para>
To illustrate how to use
<filename>PACKAGECONFIG_CONFARGS</filename>, consider the
following example:
<literallayout class='monospaced'>
PACKAGECONFIG_CONFARGS = " \
-prefix ${prefix} \
-sysroot ${STAGING_DIR_NATIVE} \
-no-gcc-sysroot
"
</literallayout>
In the previous example,
<filename>PACKAGECONFIG_CONFARGS</filename> is set with
three configuration options that can be passed using the
<filename>PACKAGECONFIG</filename> mechanism, thus
avoiding having to use <filename>EXTRA_OECONF</filename>.
Classes such as
<link linkend='ref-classes-autotools'><filename>autotools</filename></link>
and
<link linkend='ref-classes-cmake'><filename>cmake</filename></link>
use <filename>PACKAGECONFIG_CONFARGS</filename> to pass
<link linkend='var-PACKAGECONFIG'><filename>PACKAGECONFIG</filename></link>
options to <filename>configure</filename> and
<filename>cmake</filename>, respectively.
If you are using
<filename>PACKAGECONFIG</filename> but not a class that
handles the <filename>do_configure</filename> task, then
you need to use
<filename>PACKAGECONFIG_CONFARGS</filename> appropriately.
</para>
<para>
@@ -12654,15 +12855,17 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
every time BitBake parses your recipe, you should specify
a <filename>SRCREV</filename> that is a
full revision identifier and not just a tag.
<note>
For information on limitations when inheriting the
latest revision of software using
<filename>SRCREV</filename>, see the
<link linkend='var-AUTOREV'><filename>AUTOREV</filename></link>
variable description and the
"<ulink url='&YOCTO_DOCS_DEV_URL;#automatically-incrementing-a-binary-package-revision-number'>Automatically Incrementing a Binary Package Revision Number</ulink>"
section, which is in the Yocto Project Development Manual.
</note>
</para>
<note>
For information on limitations when inheriting the latest
revision of software using <filename>SRCREV</filename>,
see the
<link linkend='var-AUTOREV'><filename>AUTOREV</filename></link>
variable description.
</note>
</glossdef>
</glossentry>
@@ -12743,6 +12946,35 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</glossdef>
</glossentry>
<glossentry id='var-SSTATE_SCAN_FILES'><glossterm>SSTATE_SCAN_FILES</glossterm>
<info>
SSTATE_SCAN_FILES[doc] = "Controls the list of files the OpenEmbedded build system scans for hardcoded installation paths."
</info>
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
Controls the list of files the OpenEmbedded build system
scans for hardcoded installation paths.
</para>
<para>
During a build, the OpenEmbedded build system creates a
shared state (sstate) object during the first stage of
preparing the sysroots.
During the build, the object is scanned for hardcoded paths
for original installation locations.
The list of files that are scanned for paths is controlled
by the <filename>SSTATE_SCAN_FILES</filename> variable.
</para>
<para>
For details on the process, see the
<link linkend='ref-classes-staging'><filename>staging</filename></link>
class.
</para>
</glossdef>
</glossentry>
<glossentry id='var-STAGING_BASE_LIBDIR_NATIVE'><glossterm>STAGING_BASE_LIBDIR_NATIVE</glossterm>
<info>
STAGING_BASE_LIBDIR_NATIVE[doc] = "Specifies the path to the /lib subdirectory of the sysroot directory for the build host."
@@ -12956,12 +13188,7 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
they make use of host headers and libraries.
</para>
</note>
</para></listitem>
<listitem><para>For native SDK
recipes that build for the SDK
(<filename>nativesdk</filename>), the value is
"${STAGING_DIR}/${<link linkend='var-MULTIMACH_HOST_SYS'>MULTIMACH_HOST_SYS</link>}".
</para></listitem>
</para></listitem>
</itemizedlist>
</para>
</glossdef>
@@ -14352,8 +14579,9 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
<note>
The <filename>TEST_SERVER_IP</filename> variable
is only used for a small number of tests such as
the "smart" test suite, which needs to download
packages from <filename>DEPLOY_DIR/rpm</filename>.
the "dnf" test suite, which needs to download
packages from
<filename>WORKDIR/oe-rootfs-repo</filename>.
</note>
</para>
</glossdef>

View File

@@ -3,25 +3,71 @@
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<chapter id='resources'>
<title>Contributing to the Yocto Project</title>
<title>Contributions and Additional Information</title>
<section id='resources-intro'>
<title>Introduction</title>
<para>
The Yocto Project team is happy for people to experiment with the Yocto Project.
A number of places exist to find help if you run into difficulties or find bugs.
To find out how to download source code,
see the "<ulink url='&YOCTO_DOCS_DEV_URL;#local-yp-release'>Yocto Project Release</ulink>"
The Yocto Project team is happy for people to experiment with the
Yocto Project.
A number of places exist to find help if you run into difficulties
or find bugs.
This presents information about contributing and participating in
the Yocto Project.
</para>
</section>
<section id='resources-contributions'>
<title>Contributions</title>
<para>
The Yocto Project gladly accepts contributions.
You can submit changes to the project either by creating and sending
pull requests,
or by submitting patches through email.
For information on how to do both as well as information on how
to identify the maintainer for each area of code, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#how-to-submit-a-change'>How to Submit a Change</ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
<section id='resources-bugtracker'>
<title>Tracking Bugs</title>
<title>Yocto Project Bugzilla</title>
<para>
If you find problems with the Yocto Project, you should report them using the
Bugzilla application at <ulink url='&YOCTO_BUGZILLA_URL;'></ulink>.
The Yocto Project uses its own implementation of
<ulink url='http://www.bugzilla.org/about/'>Bugzilla</ulink> to track
defects (bugs).
Implementations of Bugzilla work well for group development because
they track bugs and code changes, can be used to communicate changes
and problems with developers, can be used to submit and review patches,
and can be used to manage quality assurance.
</para>
<para>
Sometimes it is helpful to submit, investigate, or track a bug against
the Yocto Project itself (e.g. when discovering an issue with some
component of the build system that acts contrary to the documentation
or your expectations).
</para>
<para>
A general procedure and guidelines exist for when you use Bugzilla to
submit a bug.
For information on how to use Bugzilla to submit a bug against the
Yocto Project, see the following:
<itemizedlist>
<listitem><para>
The
"<ulink url='&YOCTO_DOCS_DEV_URL;#submitting-a-defect-against-the-yocto-project'>Submitting a Defect Against the Yocto Project</ulink>"
section in the Yocto Project Development Manual.
</para></listitem>
<listitem><para>
The Yocto Project
<ulink url='&YOCTO_WIKI_URL;/wiki/Bugzilla_Configuration_and_Bug_Tracking'>Bugzilla wiki page</ulink>
</para></listitem>
</itemizedlist>
</para>
</section>
@@ -70,53 +116,173 @@
</para>
</section>
<section id='resources-links'>
<title>Links</title>
<section id='resources-links-and-related-documentation'>
<title>Links and Related Documentation</title>
<para>
Here is a list of resources you will find helpful:
Here is a list of resources you might find helpful:
<itemizedlist>
<listitem><para><emphasis>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_HOME_URL;'>The Yocto Project website</ulink>:
</emphasis> The home site for the Yocto
Project.</para></listitem>
<!--
<listitem><para><emphasis>
<ulink url='http://www.intel.com/'>Intel Corporation</ulink>:</emphasis>
The company that acquired OpenedHand in 2008 and began
development on the Yocto Project.</para></listitem>
-->
<listitem><para><emphasis>
<ulink url='&OE_HOME_URL;'>OpenEmbedded</ulink>:</emphasis>
The upstream, generic, embedded distribution used as the basis
for the build system in the Yocto Project.
Poky derives from and contributes back to the OpenEmbedded
project.</para></listitem>
<listitem><para><emphasis>
</emphasis> The home site for the Yocto Project.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_WIKI_URL;/wiki/Main_Page'>The Yocto Project Main Wiki Page</ulink>:
</emphasis>
The main wiki page for the Yocto Project.
This page contains information about project planning,
release engineering, QA &amp; automation, a reference
site map, and other resources related to the Yocto Project.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&OE_HOME_URL;'>OpenEmbedded</ulink>:
</emphasis>
The build system used by the Yocto Project.
This project is the upstream, generic, embedded distribution
from which the Yocto Project derives its build system (Poky)
and to which it contributes.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='http://www.openembedded.org/wiki/BitBake'>
BitBake</ulink>:</emphasis> The tool used to process metadata.</para></listitem>
BitBake</ulink>:
</emphasis> The tool used to process metadata.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_BB_URL;'>BitBake User Manual:</ulink>
</emphasis>
A comprehensive guide to the BitBake tool.
If you want information on BitBake, see this manual.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>:
</emphasis>
This short document lets you get started
with the Yocto Project and quickly begin building an image.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_DEV_URL;'>Yocto Project Development Manual</ulink>:
</emphasis>
This manual is a "how-to" guide that presents procedures
useful to both application and system developers who use the
Yocto Project.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Software Development Kit (SDK) Developer's Guide</ulink>:
</emphasis>
This guide provides information that lets you get going
with the standard or extensible SDK.
An SDK, with its cross-development toolchains, allows you
to develop projects inside or outside of the Yocto Project
environment.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink>:
</emphasis>
This guide defines the structure for BSP components.
Having a commonly understood structure encourages
standardization.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;'>Yocto Project Linux Kernel Development Manual</ulink>:
</emphasis>
This manual describes how to work with Linux Yocto kernels as
well as provides a bit of conceptual information on the
construction of the Yocto Linux kernel tree.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_PROF_URL;'>Yocto Project Profiling and Tracing Manual</ulink>:
</emphasis>
This manual presents a set of common and generally useful
tracing and profiling schemes along with their applications
(as appropriate) to each tool.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_SDK_URL;#sdk-appendix-latest-yp-eclipse-plug-in'>Eclipse IDE Yocto Plug-in</ulink>:
</emphasis>
Instructions that demonstrate how an application developer
uses the Eclipse Yocto Project Plug-in feature within
the Eclipse IDE.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>FAQ</ulink>:
</emphasis>
A list of commonly asked questions and their answers.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_RELEASE_NOTES;'>Release Notes</ulink>:
</emphasis>
Features, updates and known issues for the current
release of the Yocto Project.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_HOME_URL;/tools-resources/projects/toaster'>Toaster</ulink>:
</emphasis>
An Application Programming Interface (API) and web-based
interface to the OpenEmbedded build system, which uses
BitBake, that reports build information.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_DOCS_TOAST_URL;'>Toaster User Manual</ulink>:
</emphasis>
This manual introduces and describes how to set up and use
Toaster, which is a web interface to the Yocto Project's
<ulink url='&YOCTO_DOCS_DEV_URL;#build-system-term'>OpenEmbedded Build System</ulink>.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_HOME_URL;/tools-resources/projects/build-appliance'>Build Appliance</ulink>:
</emphasis>
A virtual machine that
enables you to build and boot a custom embedded Linux image
with the Yocto Project using a non-Linux development system.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_BUGZILLA_URL;'>Bugzilla</ulink>:
</emphasis>
The bug tracking application the Yocto Project uses.
If you find problems with the Yocto Project, you should report
them using this application.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='&YOCTO_WIKI_URL;/wiki/Bugzilla_Configuration_and_Bug_Tracking'>Bugzilla Configuration and Bug Tracking Wiki Page</ulink>:
</emphasis>
Information on how to get set up and use the Yocto Project
implementation of Bugzilla for logging and tracking Yocto
Project defects.
</para></listitem>
<listitem><para>
<emphasis>Internet Relay Chat (IRC):</emphasis>
Two IRC channels on freenode are available
for Yocto Project and Poky discussions: <filename>#yocto</filename> and
<filename>#poky</filename>, respectively.
</para></listitem>
<listitem><para>
<emphasis>
<ulink url='http://wiki.qemu.org/Index.html'>Quick EMUlator (QEMU)</ulink>:
</emphasis>
An open-source machine emulator and virtualizer.
</para></listitem>
</itemizedlist>
For more links, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#other-information'>Other Information</ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
<section id='resources-contributions'>
<title>Contributions</title>
<para>
The Yocto Project gladly accepts contributions.
You can submit changes to the project either by creating and sending
pull requests,
or by submitting patches through email.
For information on how to do both as well as information on how
to identify the maintainer for each area of code, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#how-to-submit-a-change'>How to Submit a Change</ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4

View File

@@ -432,7 +432,7 @@
For information on how the OpenEmbedded build system
works with packages and can
track incrementing <filename>PR</filename> information, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#incrementing-a-package-revision-number'>Incrementing a Package Revision Number</ulink>"
"<ulink url='&YOCTO_DOCS_DEV_URL;#automatically-incrementing-a-binary-package-revision-number'>Automatically Incrementing a Binary Package Revision Number</ulink>"
section.
</note>
@@ -1460,9 +1460,9 @@
<listitem><para>
When using "beginline" and "endline", realize that
line numbering begins with one and not zero.
Also, the lines included are inclusive (e.g. lines
five through 29 in the previous example for
<filename>licfile1.txt</filename>.
Also, the included lines are inclusive (i.e. lines
five through and including 29 in the previous
example for <filename>licfile1.txt</filename>).
</para></listitem>
<listitem><para>
When a license check fails, the selected license

View File

@@ -480,7 +480,7 @@
You can use a different method to view dependency information
by using the following command:
<literallayout class='monospaced'>
$ bitbake -g -u depexp <replaceable>recipename</replaceable>
$ bitbake -g -u taskexp <replaceable>recipename</replaceable>
</literallayout>
This command displays a GUI window from which you can view
build-time and runtime dependencies for the recipes involved in
@@ -736,79 +736,6 @@
</para>
</section>
<section id='checking-for-missing-build-time-dependencies'>
<title>Checking for Missing Build-Time Dependencies</title>
<para>
A recipe might build successfully even though some of its
build-time dependencies are missing from
<link linkend='var-DEPENDS'><filename>DEPENDS</filename></link>.
Following are the two most common ways in which that can happen:
<itemizedlist>
<listitem><para>
The build-time dependency just happens to already exist in
the staging sysroot
(<link linkend='var-STAGING_DIR_HOST'><filename>STAGING_DIR_HOST</filename></link>)
by the time the recipe is built.
This situation occurs when the build-time dependency is
built earlier during recipe processing.
</para></listitem>
<listitem><para>
The component built by the recipe conditionally enables
functionality depending on whether it can find the
build-time dependency in the staging sysroot.
If the build-time dependency is missing, the corresponding
functionality is disabled.
This condition is known as a "floating dependency".
</para></listitem>
</itemizedlist>
</para>
<para>
Because dealing with the second case is more complex, focus will
be on the first case.
The
<link linkend='ref-classes-insane'><filename>build-deps</filename></link>
QA check checks that every library the component linked against is
declared as a build-time dependency.
If that is not the case, then the first situation described in the
previous list exists, and <filename>build-deps</filename> reports
a missing build-time dependency.
</para>
<para>
Another, more manual, way to check a recipe for missing build-time
dependencies of the first type is to build with an empty staging
sysroot.
This method can also find missing build-time dependencies
that are not in the form of libraries, which the
<filename>build-deps</filename> QA check is unable to find.
</para>
<para>
An easy way to empty the staging sysroots is to simply remove
<link linkend='var-TMPDIR'><filename>TMPDIR</filename></link>,
which is usually
<filename>${</filename><link linkend='var-BUILDDIR'><filename>BUILDDIR</filename></link><filename>}/tmp</filename>,
as it includes the staging sysroots.
Another, faster method to empty the staging sysroots is to use the
<filename>scripts/wipe-sysroot</filename> script,
which removes just the staging sysroots and keeps everything else
in <filename>TMPDIR</filename>.
<note>
The <filename>scripts/</filename> directory appears in
<filename>PATH</filename> after running the build environment
initialization script (i.e.
<link linkend='structure-core-script'><filename>oe-init-build-env</filename></link>
or
<link linkend='structure-memres-core-script'><filename>oe-init-build-env-memres</filename></link>),
which results in the ability to to run
<filename>wipe-sysroot</filename> immediately.
</note>
</para>
</section>
<section id='usingpoky-debugging-bitbake'>
<title>General BitBake Problems</title>
@@ -1104,9 +1031,11 @@
the Yocto Project implementation of
<ulink url='https://bugzilla.yoctoproject.org/'>Bugzilla</ulink>.
For general information on how to submit a bug against
the Yocto Project, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#tracking-bugs'>Tracking Bugs</ulink>"
section in the Yocto Project Development Manual.
the Yocto Project, see the Yocto Project Bugzilla
<ulink url='&YOCTO_WIKI_URL;/wiki/Bugzilla_Configuration_and_Bug_Tracking'>wiki page</ulink>"
or the
<ulink url='&YOCTO_DOCS_DEV_URL;#submitting-a-defect-against-the-yocto-project'>Submitting a Defect Against the Yocto Project</ulink>"
section, which is in the Yocto Project Development Manual.
<note>
The manuals might not be the right place to document
variables that are purely internal and have a limited

View File

@@ -2,7 +2,7 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<appendix id='sdk-appendix-mars'>
<appendix id='sdk-appendix-latest-yp-eclipse-plug-in'>
<title>Using Eclipse Mars</title>
<para>

View File

@@ -612,7 +612,7 @@
extracts them.
Providing the <replaceable>srctree</replaceable>
argument instructs <filename>devtool</filename> where
place the extracted source.</para>
to place the extracted source.</para>
<para>Within workspace, <filename>devtool</filename>
creates an append file for the recipe.

View File

@@ -46,6 +46,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -459,7 +459,7 @@
release with the Yocto Project.
For information on how to use the Mars version of Eclipse
with the Yocto Project, see
"<link linkend='sdk-appendix-mars'>Appendix C</link>.
"<link linkend='sdk-appendix-latest-yp-eclipse-plug-in'>Appendix C</link>.
</note>
</para>
@@ -501,7 +501,7 @@
<listitem><para>
<emphasis>Locate the Neon Download:</emphasis>
Open a browser and go to
<ulink url='http://www.eclipse.org/mars/'>http://www.eclipse.org/neon/</ulink>.
<ulink url='http://www.eclipse.org/neon/'>http://www.eclipse.org/neon/</ulink>.
</para></listitem>
<listitem><para>
<emphasis>Download the Tarball:</emphasis>

View File

@@ -56,6 +56,11 @@
<date>May 2017</date>
<revremark>Released with the Yocto Project 2.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>Usually October</date>
<revremark>Released with the Yocto Project 2.4 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -2,32 +2,32 @@
# This style is for manual folders like "yocto-project-qs" and "poky-ref-manual".
# This is the old way that did it. Can't do that now that we have "bitbake-user-manual" strings
# in the mega-manual.
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/[a-z]*-[a-z]*-[a-z]*\/[a-z]*-[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/poky-ref-manual\/poky-ref-manual.html#/\"link\" href=\"#/g
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/[a-z]*-[a-z]*-[a-z]*\/[a-z]*-[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/poky-ref-manual\/poky-ref-manual.html#/\"link\" href=\"#/g
# Processes all other manuals (<word>-<word> style) except for the BitBake User Manual because
# it is not included in the mega-manual.
# This style is for manual folders that use two word, which is the standard now (e.g. "ref-manual").
# This was the one-liner that worked before we introduced the BitBake User Manual, which is
# not in the mega-manual.
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/[a-z]*-[a-z]*\/[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/[a-z]*-[a-z]*\/[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/sdk-manual\/sdk-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/bsp-guide\/bsp-guide.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/dev-manual\/dev-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/kernel-dev\/kernel-dev.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/profile-manual\/profile-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/ref-manual\/ref-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/toaster-manual\/toaster-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/sdk-manual\/sdk-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/bsp-guide\/bsp-guide.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/dev-manual\/dev-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/kernel-dev\/kernel-dev.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/profile-manual\/profile-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/ref-manual\/ref-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/toaster-manual\/toaster-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
# Process cases where just an external manual is referenced without an id anchor
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/yocto-project-qs\/yocto-project-qs.html\" target=\"_top\">Yocto Project Quick Start<\/a>/Yocto Project Quick Start/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/dev-manual\/dev-manual.html\" target=\"_top\">Yocto Project Development Manual<\/a>/Yocto Project Development Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/sdk-manual\/sdk-manual.html\" target=\"_top\">Yocto Project Software Development Kit (SDK) Developer's Guide<\/a>/Yocto Project Software Development Kit (SDK) Developer's Guide/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/bsp-guide\/bsp-guide.html\" target=\"_top\">Yocto Project Board Support Package (BSP) Developer's Guide<\/a>/Yocto Project Board Support Package (BSP) Developer's Guide/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/profile-manual\/profile-manual.html\" target=\"_top\">Yocto Project Profiling and Tracing Manual<\/a>/Yocto Project Profiling and Tracing Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/kernel-dev\/kernel-dev.html\" target=\"_top\">Yocto Project Linux Kernel Development Manual<\/a>/Yocto Project Linux Kernel Development Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/ref-manual\/ref-manual.html\" target=\"_top\">Yocto Project Reference Manual<\/a>/Yocto Project Reference Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.3\/toaster-manual\/toaster-manual.html\" target=\"_top\">Toaster User Manual<\/a>/Toaster User Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/yocto-project-qs\/yocto-project-qs.html\" target=\"_top\">Yocto Project Quick Start<\/a>/Yocto Project Quick Start/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/dev-manual\/dev-manual.html\" target=\"_top\">Yocto Project Development Manual<\/a>/Yocto Project Development Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/sdk-manual\/sdk-manual.html\" target=\"_top\">Yocto Project Software Development Kit (SDK) Developer's Guide<\/a>/Yocto Project Software Development Kit (SDK) Developer's Guide/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/bsp-guide\/bsp-guide.html\" target=\"_top\">Yocto Project Board Support Package (BSP) Developer's Guide<\/a>/Yocto Project Board Support Package (BSP) Developer's Guide/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/profile-manual\/profile-manual.html\" target=\"_top\">Yocto Project Profiling and Tracing Manual<\/a>/Yocto Project Profiling and Tracing Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/kernel-dev\/kernel-dev.html\" target=\"_top\">Yocto Project Linux Kernel Development Manual<\/a>/Yocto Project Linux Kernel Development Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/ref-manual\/ref-manual.html\" target=\"_top\">Yocto Project Reference Manual<\/a>/Yocto Project Reference Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4\/toaster-manual\/toaster-manual.html\" target=\"_top\">Toaster User Manual<\/a>/Toaster User Manual/g

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 181 KiB

View File

@@ -64,7 +64,8 @@
tool, to construct complete Linux images.
The BitBake and OE components are combined together to form
a reference build host, historically known as
<ulink url='&YOCTO_DOCS_DEV_URL;#poky'>Poky</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#poky'>Poky</ulink>
(<emphasis>Pah</emphasis>-key).
</para>
<para>
@@ -145,11 +146,8 @@
<mediaobject>
<imageobject>
<imagedata fileref="figures/yocto-environment.png"
format="PNG" align='center' scalefit='1' width="100%"/>
format="PNG" align='center' width="8in"/>
</imageobject>
<caption>
<para>The Yocto Project Development Environment</para>
</caption>
</mediaobject>
<para>
@@ -339,13 +337,33 @@
<literallayout class='monospaced'>
$ sudo yum install &CENTOS_HOST_PACKAGES_ESSENTIAL; SDL-devel xterm
</literallayout>
<note>
CentOS 6.x users need to ensure that the required
versions of Git, tar and Python are available.
For details, See the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-git-tar-and-python-versions'>Required Git, tar, and Python Versions</ulink>"
section in the Yocto Project Reference Manual for
information.
<note><title>Notes</title>
<itemizedlist>
<listitem><para>
CentOS 6.x users need to ensure that the
required versions of Git, tar and Python
are available.
For details, See the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-git-tar-and-python-versions'>Required Git, tar, and Python Versions</ulink>"
section in the Yocto Project Reference
Manual for information.
</para></listitem>
<listitem><para>
Extra Packages for Enterprise Linux
(i.e. <filename>epel-release</filename>)
is a collection of packages from Fedora
built on RHEL/CentOS for easy installation
of packages not included in enterprise
Linux by default.
You need to install these packages
separately.
</para></listitem>
<listitem><para>
The <filename>makecache</filename> command
consumes additional Metadata from
<filename>epel-release</filename>.
</para></listitem>
</itemizedlist>
</note>
</para></listitem>
</itemizedlist>
@@ -374,11 +392,12 @@
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/poky
Cloning into 'poky'...
remote: Counting objects: 226790, done.
remote: Compressing objects: 100% (57465/57465), done.
remote: Total 226790 (delta 165212), reused 225887 (delta 164327)
Receiving objects: 100% (226790/226790), 100.98 MiB | 263 KiB/s, done.
Resolving deltas: 100% (165212/165212), done.
remote: Counting objects: 361782, done.
remote: Compressing objects: 100% (87100/87100), done.
remote: Total 361782 (delta 268619), reused 361439 (delta 268277)
Receiving objects: 100% (361782/361782), 131.94 MiB | 6.88 MiB/s, done.
Resolving deltas: 100% (268619/268619), done.
Checking connectivity... done.
$ git checkout &DISTRO_NAME_NO_CAP;
</literallayout>
You can also get the Yocto Project Files by downloading
@@ -689,11 +708,11 @@
$ cd $HOME/poky
$ git clone git://git.yoctoproject.org/meta-intel
Cloning into 'meta-intel'...
remote: Counting objects: 11988, done.
remote: Compressing objects: 100% (3884/3884), done.
Receiving objects: 100% (11988/11988), 2.93 MiB | 2.51 MiB/s, done.
remote: Total 11988 (delta 6881), reused 11752 (delta 6645)
Resolving deltas: 100% (6881/6881), done.
remote: Counting objects: 14039, done.
remote: Compressing objects: 100% (4471/4471), done.
remote: Total 14039 (delta 8130), reused 13837 (delta 7947)
Receiving objects: 100% (14039/14039), 4.27 MiB | 3.98 MiB/s, done.
Resolving deltas: 100% (8130/8130), done.
Checking connectivity... done.
</literallayout>
By default when you clone a Git repository, the

View File

@@ -61,9 +61,9 @@ RECIPE_MAINTAINER_pn-bash = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-bash-completion = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-bc = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-bdwgc = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-beecrypt = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-beecrypt = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-bigreqsproto = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-bind = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-bind = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-binutils = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-binutils-cross = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-binutils-cross-canadian = "Khem Raj <raj.khem@gmail.com>"
@@ -82,9 +82,9 @@ RECIPE_MAINTAINER_pn-build-appliance-image = "Cristian Iorga <cristian.iorga@int
RECIPE_MAINTAINER_pn-build-compare = "Randy Witt <randy.e.witt@linux.intel.com>"
RECIPE_MAINTAINER_pn-builder = "Cristian Iorga <cristian.iorga@intel.com>"
RECIPE_MAINTAINER_pn-buildtools-tarball = "Cristian Iorga <cristian.iorga@intel.com>"
RECIPE_MAINTAINER_pn-busybox = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-busybox = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-byacc = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-bzip2 = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-bzip2 = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-ca-certificates = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-cairo = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-calibrateproto = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
@@ -97,8 +97,8 @@ RECIPE_MAINTAINER_pn-chrpath = "Dengke Du <dengke.du@windriver.com>"
RECIPE_MAINTAINER_pn-clutter-1.0 = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-clutter-gst-3.0 = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-clutter-gtk-1.0 = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-cmake = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-cmake-native = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-cmake = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-cmake-native = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-cogl-1.0 = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-compositeproto = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-connman = "Maxin B. John <maxin.john@intel.com>"
@@ -128,17 +128,17 @@ RECIPE_MAINTAINER_pn-core-image-testmaster-initramfs = "Ross Burton <ross.burton
RECIPE_MAINTAINER_pn-core-image-weston = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-core-image-x11 = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-coreutils = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-cpio = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-cracklib = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-cpio = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-cracklib = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-createrepo = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-cronie = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-cronie = "Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>"
RECIPE_MAINTAINER_pn-cross-localedef-native = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-cryptodev-linux = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-cryptodev-module = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-cryptodev-tests = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-cups = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-curl = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-cve-check-tool = "Mariano Lopez <mariano.lopez@linux.intel.com>"
RECIPE_MAINTAINER_pn-curl = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-cve-check-tool = "Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>"
RECIPE_MAINTAINER_pn-cwautomacros = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-damageproto = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-db = "Mark Hatle <mark.hatle@windriver.com>"
@@ -236,12 +236,13 @@ RECIPE_MAINTAINER_pn-gnome-themes-standard = "Jussi Kukkonen <jussi.kukkonen@int
RECIPE_MAINTAINER_pn-gnu-config = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-gnu-efi = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-gnupg = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-gnutls = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-gnutls = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-gobject-introspection = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-go-native = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-gperf = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-gpgme = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-gptfdisk = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-grep = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-grep = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-groff = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-grub = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-grub-efi = "Alexander Kanavin <alexander.kanavin@intel.com>"
@@ -265,9 +266,9 @@ RECIPE_MAINTAINER_pn-gtk-sato-engine = "Jussi Kukkonen <jussi.kukkonen@intel.com
RECIPE_MAINTAINER_pn-guile = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-guilt-native = "Bruce Ashfield <bruce.ashfield@windriver.com>"
RECIPE_MAINTAINER_pn-gummiboot = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-gzip = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-gzip = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-harfbuzz = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-hdparm = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-hdparm = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-help2man-native = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-hicolor-icon-theme = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-hostap-conf = "Maxin B. John <maxin.john@intel.com>"
@@ -279,8 +280,8 @@ RECIPE_MAINTAINER_pn-icon-naming-utils = "Alexander Kanavin <alexander.kanavin@i
RECIPE_MAINTAINER_pn-icu = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-ifupdown = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-init-ifupdown = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-initramfs-boot = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-initramfs-framework = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-initramfs-boot = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-initramfs-framework = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-initramfs-live-boot = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-initramfs-live-install = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-initramfs-live-install-efi = "Ross Burton <ross.burton@intel.com>"
@@ -289,8 +290,8 @@ RECIPE_MAINTAINER_pn-initramfs-live-install-testfs = "Ross Burton <ross.burton@i
RECIPE_MAINTAINER_pn-initscripts = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-inputproto = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-intltool = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-iproute2 = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-iptables = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-iproute2 = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-iptables = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-iputils = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-irda-utils = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-iso-codes = "Alexander Kanavin <alexander.kanavin@intel.com>"
@@ -304,7 +305,7 @@ RECIPE_MAINTAINER_pn-kconfig-frontends = "Alexander Kanavin <alexander.kanavin@i
RECIPE_MAINTAINER_pn-kern-tools-native = "Bruce Ashfield <bruce.ashfield@windriver.com>"
RECIPE_MAINTAINER_pn-kernelshark = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-kernel-devsrc = "Bruce Ashfield <bruce.ashfield@windriver.com>"
RECIPE_MAINTAINER_pn-kexec-tools = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-kexec-tools = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-keymaps = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-kmod = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-kmod-native = "Chen Qi <Qi.Chen@windriver.com>"
@@ -316,9 +317,9 @@ RECIPE_MAINTAINER_pn-less = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-liba52 = "Tanu Kaskinen <tanuk@iki.fi>"
RECIPE_MAINTAINER_pn-libacpi = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-libaio = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-libarchive = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-libarchive = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-libart-lgpl = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-libassuan = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-libassuan = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-libatomic-ops = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-libav = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-libbsd = "Robert Yang <liezhi.yang@windriver.com>"
@@ -331,7 +332,7 @@ RECIPE_MAINTAINER_pn-libconvert-asn1-perl = "Aníbal Limón <anibal.limon@linux.
RECIPE_MAINTAINER_pn-libcroco = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-libdaemon = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-libdmx = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-libdrm = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-libdrm = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-libdumpvalue-perl = "Aníbal Limón <anibal.limon@linux.intel.com>"
RECIPE_MAINTAINER_pn-libenv-perl = "Aníbal Limón <anibal.limon@linux.intel.com>"
RECIPE_MAINTAINER_pn-libepoxy = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
@@ -378,7 +379,7 @@ RECIPE_MAINTAINER_pn-libpam = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-libpcap = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-libpciaccess = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-libpcre = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-libpcre2 = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-libpcre2 = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-libpfm4 = "Matthew McClintock <msm@freescale.com>"
RECIPE_MAINTAINER_pn-libpng = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-libpng12 = "Maxin B. John <maxin.john@intel.com>"
@@ -453,7 +454,7 @@ RECIPE_MAINTAINER_pn-libxxf86vm = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-libyaml = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-lighttpd = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-linux-dummy = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-linux-firmware = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-linux-firmware = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-linux-libc-headers = "Bruce Ashfield <bruce.ashfield@windriver.com>"
RECIPE_MAINTAINER_pn-linux-yocto = "Bruce Ashfield <bruce.ashfield@windriver.com>"
RECIPE_MAINTAINER_pn-linux-yocto-dev = "Bruce Ashfield <bruce.ashfield@windriver.com>"
@@ -470,8 +471,8 @@ RECIPE_MAINTAINER_pn-lttng-modules = "Richard Purdie <richard.purdie@linuxfounda
RECIPE_MAINTAINER_pn-lttng-tools = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-lttng-ust = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-lz4 = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-lzo = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-lzop = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-lzo = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-lzop = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-m4 = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-m4-native = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-mailx = "Robert Yang <liezhi.yang@windriver.com>"
@@ -493,9 +494,9 @@ RECIPE_MAINTAINER_pn-matchbox-wm = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-mc = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-mdadm = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-menu-cache = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-mesa = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-mesa-demos = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-mesa-gl = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-mesa = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-mesa-demos = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-mesa-gl = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
RECIPE_MAINTAINER_pn-meta-environment = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-meta-environment-extsdk = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-meta-extsdk-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
@@ -517,7 +518,7 @@ RECIPE_MAINTAINER_pn-mpeg2dec = "Alexander Kanavin <alexander.kanavin@intel.com>
RECIPE_MAINTAINER_pn-mpfr = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-mpg123 = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-msmtp = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-mtd-utils = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-mtd-utils = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-mtdev = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-mtools = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-musl = "Khem Raj <raj.khem@gmail.com>"
@@ -531,18 +532,18 @@ RECIPE_MAINTAINER_pn-nativesdk-postinst-intercept = "Aníbal Limón <anibal.limo
RECIPE_MAINTAINER_pn-ncurses = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-neard = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-neon = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-net-tools = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-netbase = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-net-tools = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-netbase = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-nettle = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-nfs-export-root = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-nfs-utils = "Mariano Lopez <mariano.lopez@linux.intel.com>"
RECIPE_MAINTAINER_pn-nfs-utils = "Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>"
RECIPE_MAINTAINER_pn-npth = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-nspr = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-nss = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-nspr = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-nss = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-nss-myhostname = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-ofono = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-oh-puzzles = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-openssh = "Dengke Du <dengke.du@windriver.com>"
RECIPE_MAINTAINER_pn-openssh = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-openssl = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-opkg = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
RECIPE_MAINTAINER_pn-opkg-arch-config = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
@@ -583,7 +584,7 @@ RECIPE_MAINTAINER_pn-patch = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-patchelf = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-pax = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-pax-utils = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-pbzip2 = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-pbzip2 = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-pciutils = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-pcmanfm = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-pcmciautils = "Robert Yang <liezhi.yang@windriver.com>"
@@ -594,7 +595,7 @@ RECIPE_MAINTAINER_pn-piglit = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-pigz = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-pinentry = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-pixman = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-pixz = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-pixz = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-pkgconfig = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-pm-utils = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-pointercal = "Alexander Kanavin <alexander.kanavin@intel.com>"
@@ -625,7 +626,7 @@ RECIPE_MAINTAINER_pn-python-imaging = "Jose Lamego <jose.a.lamego@linux.intel.co
RECIPE_MAINTAINER_pn-python-mako = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-native = "Alejandro Hernandez <alejandro.hernandez@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-nose = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-numpy = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-numpy = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-pexpect = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-ptyprocess = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-pycairo = "Jose Lamego <jose.a.lamego@linux.intel.com>"
@@ -634,26 +635,26 @@ RECIPE_MAINTAINER_pn-python-pygtk = "Jose Lamego <jose.a.lamego@linux.intel.com>
RECIPE_MAINTAINER_pn-python-pyrex = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-scons = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-scons-native = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-setuptools = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-setuptools = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-six = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-smartpm = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python-smmap = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3 = "Alejandro Hernandez <alejandro.hernandez@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-async = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-dbus = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-distribute = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-docutils = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-async = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-dbus = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-distribute = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-docutils = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-git = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-gitdb = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-gitdb = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-mako = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-native = "Alejandro Hernandez <alejandro.hernandez@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-nose = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-numpy = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-pip = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-pygobject = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-setuptools = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-six = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-smmap = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-nose = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-numpy = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-pip = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-pygobject = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-setuptools = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-six = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-python3-smmap = "Jose Lamego <jose.a.lamego@linux.intel.com>"
RECIPE_MAINTAINER_pn-qemu = "Aníbal Limón <anibal.limon@linux.intel.com>"
RECIPE_MAINTAINER_pn-qemu-helper-native = "Aníbal Limón <anibal.limon@linux.intel.com>"
RECIPE_MAINTAINER_pn-qemuwrapper-cross = "Aníbal Limón <anibal.limon@linux.intel.com>"
@@ -706,7 +707,7 @@ RECIPE_MAINTAINER_pn-stress = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-subversion = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-sudo = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-swabber-native = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-swig = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-swig = "Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>"
RECIPE_MAINTAINER_pn-sysfsutils = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-sysklogd = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-syslinux = "Alexander Kanavin <alexander.kanavin@intel.com>"
@@ -737,18 +738,18 @@ RECIPE_MAINTAINER_pn-tiny-init = "Alexander Kanavin <alexander.kanavin@intel.com
RECIPE_MAINTAINER_pn-trace-cmd = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-tremor = "Tanu Kaskinen <tanuk@iki.fi>"
RECIPE_MAINTAINER_pn-tslib = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-ttf-bitstream-vera = "Mariano Lopez <mariano.lopez@linux.intel.com>"
RECIPE_MAINTAINER_pn-tzcode-native = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-tzdata = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-u-boot = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-u-boot-fw-utils = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-u-boot-mkimage = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-ttf-bitstream-vera = "Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>"
RECIPE_MAINTAINER_pn-tzcode-native = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-tzdata = "Armin Kuster <akuster@mvista.com>"
RECIPE_MAINTAINER_pn-u-boot = "Marek Vasut <marek.vasut@gmail.com>"
RECIPE_MAINTAINER_pn-u-boot-fw-utils = "Marek Vasut <marek.vasut@gmail.com>"
RECIPE_MAINTAINER_pn-u-boot-mkimage = "Marek Vasut <marek.vasut@gmail.com>"
RECIPE_MAINTAINER_pn-ubootchart = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-udev-extraconf = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-unfs3 = "Randy Witt <randy.e.witt@linux.intel.com>"
RECIPE_MAINTAINER_pn-unifdef = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-uninative-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-unzip = "Edwin Plauchu <edwin.plauchu.camacho@linux.intel.com>"
RECIPE_MAINTAINER_pn-unzip = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-update-rc.d = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-usbinit = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-usbutils = "Alexander Kanavin <alexander.kanavin@intel.com>"
@@ -760,16 +761,17 @@ RECIPE_MAINTAINER_pn-valgrind = "Alexander Kanavin <alexander.kanavin@intel.com>
RECIPE_MAINTAINER_pn-videoproto = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-volatile-binds = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-vte = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-vulkan = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-waffle = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-watchdog = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-watchdog-config = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-wayland = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-wayland-protocols = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-wayland = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-wayland-protocols = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-webkitgtk = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-weston = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-weston-init = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-weston = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-weston-init = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-wget = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER_pn-which = "Mariano Lopez <mariano.lopez@linux.intel.com>"
RECIPE_MAINTAINER_pn-which = "Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>"
RECIPE_MAINTAINER_pn-wireless-tools = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-wpa-supplicant = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-x11-common = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
@@ -831,8 +833,8 @@ RECIPE_MAINTAINER_pn-xuser-account = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-xvideo-tests = "Maxin B. John <maxin.john@intel.com>"
RECIPE_MAINTAINER_pn-xvinfo = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-xwininfo = "Jussi Kukkonen <jussi.kukkonen@intel.com>"
RECIPE_MAINTAINER_pn-xz = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-xz = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-yasm = "Dengke Du <dengke.du@windriver.com>"
RECIPE_MAINTAINER_pn-zip = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-zip = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-zisofs-tools-native = "Alexander Kanavin <alexander.kanavin@intel.com>"
RECIPE_MAINTAINER_pn-zlib = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-zlib = "Armin Kuster <akuster808@gmail.com>"

Some files were not shown because too many files have changed in this diff Show More