]> code.ossystems Code Review - openembedded-core.git/log
openembedded-core.git
10 years agomake: upgrade to 4.1
Robert Yang [Mon, 22 Dec 2014 05:28:29 +0000 (21:28 -0800)]
make: upgrade to 4.1

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agogit: upgrade to 2.2.0
Robert Yang [Mon, 22 Dec 2014 05:28:28 +0000 (21:28 -0800)]
git: upgrade to 2.2.0

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agorsync: upgrade to 3.1.1
Robert Yang [Mon, 22 Dec 2014 05:28:26 +0000 (21:28 -0800)]
rsync: upgrade to 3.1.1

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agowget: add PACKAGECONFIG for util-linux
Robert Yang [Mon, 22 Dec 2014 05:28:25 +0000 (21:28 -0800)]
wget: add PACKAGECONFIG for util-linux

Fixed:
WARNING: QA Issue: wget rdepends on util-linux-libuuid, but it isn't a build dependency? [build-deps]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agowget: upgrade to 1.16.1
Robert Yang [Mon, 22 Dec 2014 05:28:24 +0000 (21:28 -0800)]
wget: upgrade to 1.16.1

* upgrade to 1.16.1
* inherit pkgconfig to fix the error like:a
  | configure.ac:41: error: possibly undefined macro: AC_MSG_NOTICE
  | configure.ac:89: error: possibly undefined macro: AS_IF

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agofile: upgrade to 5.21
Robert Yang [Mon, 22 Dec 2014 05:28:23 +0000 (21:28 -0800)]
file: upgrade to 5.21

* Upgrade to 5.21.
* The debian-742262.patch is still needed.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agorunqemu-internal: Fix qemu networking for qemuarm64
Richard Purdie [Mon, 22 Dec 2014 10:13:26 +0000 (10:13 +0000)]
runqemu-internal: Fix qemu networking for qemuarm64

This brings qemuarm64 into feature parity with the other qemu machines
and enables the automated testing on the autobuilder.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolinux-yocto: Fixup linux-yocto for aarch64
Mark Hatle [Thu, 18 Dec 2014 08:51:15 +0000 (16:51 +0800)]
linux-yocto: Fixup linux-yocto for aarch64

linux-yocto is updated to pass the sysroot path to the compiler when necessary.

linux-yocto_ver.bb are updated to reference the correct linux-yocto branchs and
SRCREVs.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoaarch-arm64: Update tune files
Mark Hatle [Thu, 18 Dec 2014 08:51:14 +0000 (16:51 +0800)]
aarch-arm64: Update tune files

arch-arm64 is the base tune file for aarch64.  Update this to allow the
system to work with both aarch32 and aarch64 (multilib).

arch-armv8 is for compatibility, it simply uses the base config for now.

feature-arm-thumb was updated, since aarch64 mode does NOT have thumb support.
We should only be processing warnings and additional arguments if thumb
support is enabled on the processor core.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoglibc-package: aarch64 enable symlink for ABI compliance
Mark Hatle [Thu, 18 Dec 2014 08:51:13 +0000 (16:51 +0800)]
glibc-package: aarch64 enable symlink for ABI compliance

aarch64 requires the ld.so to be present in /lib, even if the rest
of the libraries are installed into an alternative directory.

See: https://sourceware.org/glibc/wiki/ABIList

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agogcc: Disable aarch64 multilib options
Mark Hatle [Thu, 18 Dec 2014 08:51:12 +0000 (16:51 +0800)]
gcc: Disable aarch64 multilib options

We want to revert to default gcc behavior to support oe-core's ability
to change the libdir.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agopackagegroup-core-tools-profile: remove sysprof for aarch64
Kai Kang [Thu, 18 Dec 2014 08:51:11 +0000 (16:51 +0800)]
packagegroup-core-tools-profile: remove sysprof for aarch64

Remove sysprof from packagegroup-core-tools-profile that sysprof doesn't
support arch aarch64.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokexec-tools: add aarch64 support
Kai Kang [Thu, 18 Dec 2014 08:51:10 +0000 (16:51 +0800)]
kexec-tools: add aarch64 support

Add patch from
https://fedorapeople.org/~hrw/aarch64/for-fedora/kexec-aarch64.patch

to add aarch64 support for kexec-tools.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agorunqemu: add qemuarm64 support.
Kai Kang [Thu, 18 Dec 2014 08:51:09 +0000 (16:51 +0800)]
runqemu: add qemuarm64 support.

Update scripts runqemu and runqemu-internal to support to boot
qemuarm64.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolibunwind: add aarch64 support
Fathi Boudra [Thu, 18 Dec 2014 08:51:08 +0000 (16:51 +0800)]
libunwind: add aarch64 support

* pass --enable-debug-frame on aarch64 architecture
* include patches:
  - aarch64 port (backported from upstream)
  - Support-building-with-older-compilers (fix undefined reference to
    `unreachable' on older compilers)

Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoguile: allow compilation for aarch64
Joe Slater [Thu, 18 Dec 2014 08:51:07 +0000 (16:51 +0800)]
guile: allow compilation for aarch64

Add aarch64 endianness specification to scm file.

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolttng: recognize aarch64
Joe Slater [Thu, 18 Dec 2014 08:51:06 +0000 (16:51 +0800)]
lttng: recognize aarch64

Add aarch64 architecture to liburcu and lttng-ust.
Internally it is treated the same as "arm".

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agosysprof: disable build for aarch64
Joe Slater [Thu, 18 Dec 2014 08:51:05 +0000 (16:51 +0800)]
sysprof: disable build for aarch64

Add COMPATIBLE_HOST to the recipe and prohibit
building for aarch64 and aarch64_be.

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoqt4: add aarch64 support
Kai Kang [Fri, 12 Sep 2014 11:03:38 +0000 (19:03 +0800)]
qt4: add aarch64 support

Add aarch64 support for qt4 packages.

Most of the patches are derived from debian:
http://anonscm.debian.org/cgit/pkg-kde/qt/qt4-x11.git/tree/debian/patches

Add arch check to set right QT_ARCH.

Disable webkit temporarily for qt4 and qt4-embedded that they fail to build:

| runtime/JSValueInlineMethods.h: In constructor
'JSC::JSValue::JSValue(const JSC::JSCell*)':
| runtime/JSValueInlineMethods.h:242:78: error: cast from 'JSC::JSCell*'
to 'int32_t {aka int}' loses precision [-fpermissive]

It has been fix by Qt5, but didn't backport to Qt4. There is an still open
defect for it:
https://bugreports.qt-project.org/browse/QTBUG-35442

Signed-off-by: Kai Kang <kai.kang@windriver.com>
10 years agolibatomics-ops: add aarch64 target iniitial support
Kai Kang [Thu, 18 Dec 2014 08:51:02 +0000 (16:51 +0800)]
libatomics-ops: add aarch64 target iniitial support

Add patch for libatomics-ops to add aarch64 target iniitial
support. It is from linaro repo.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoglibc-locale.inc: add aarch64 to BINARY_LOCALE_ARCHES
Kai Kang [Thu, 18 Dec 2014 08:51:01 +0000 (16:51 +0800)]
glibc-locale.inc: add aarch64 to BINARY_LOCALE_ARCHES

Add aarch64 to var BINARY_LOCALE_ARCHES. In libc-packages.class, it is
used to work with other vars to check and add cross-localedef-native as
a dependecy correctly.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolibc-package.bbclass: add aarch64 target to locale_arch_options
Kai Kang [Thu, 18 Dec 2014 08:51:00 +0000 (16:51 +0800)]
libc-package.bbclass: add aarch64 target to locale_arch_options

Add aarch64 target to locale_arch_options in libc-package.bbclass to
support Arm V8.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agositeinfo: account for 32 and 64 bit arm
Joe Slater [Thu, 18 Dec 2014 08:50:59 +0000 (16:50 +0800)]
siteinfo: account for 32 and 64 bit arm

Pull wordsize related items from arm-common and put in
arm-32.  Leave them as they were.  Copy arm-32 to arm-64
and comment out all variables.  Re-define to correct
values leaving items which do not appear to be used
undefined.

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoAdd machine qemuarm64
Kai Kang [Thu, 18 Dec 2014 08:50:58 +0000 (16:50 +0800)]
Add machine qemuarm64

Add machine qemuarm64. The configure files are derived from linaro.

Update:
* rename genericarmv8 to qemuarm64 for coordination in oe-core
* include qemu.inc then remove common part of config
* disable using autoserial
* move arch-armv8.inc from machine/include/arm64 to machine/include/arm

[YOCTO #6487]

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolinux-yocto: depend on libgcc for aarch64
Kai Kang [Thu, 18 Dec 2014 08:50:57 +0000 (16:50 +0800)]
linux-yocto: depend on libgcc for aarch64

Make aarch aarch64 kernel depend on libgcc.

In arch/arm64/Makefile, it adds LIBGCC to libs-y:

LIBGCC          := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
libs-y          += $(LIBGCC)

In file Makefile in top directory, libs-y is assigned to to var
KBUILD_VMLINUX_MAIN. It uses script link-vmlinux.sh to link vmlinux.o,
and when execute function vmlinux_link() in link-vmlinux.sh,
KBUILD_VMLINUX_MAIN is passed to ${LD}.

If build without libgcc, the value of LIBGCC is just libgcc.a without
parent directory. linux-yocto fails to build:

|   LD      vmlinux.o
| aarch64-poky-linux-ld.bfd: cannot find libgcc.a: No such file or directory

Add libgcc to aarch64 kernel dependency.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agopython-2.7-manifest.inc: add stdlib argparse module
Maciej Borzecki [Thu, 18 Dec 2014 14:51:22 +0000 (15:51 +0100)]
python-2.7-manifest.inc: add stdlib argparse module

Adding argparse module from Python's standard library. The module has replaced
previous python-argparse package that was build using source that are not part
of Python 2.7 release.

Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl>
Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agopython-argparse: remove external argparse module
Maciej Borzecki [Thu, 18 Dec 2014 14:51:21 +0000 (15:51 +0100)]
python-argparse: remove external argparse module

Python argparse module is a part of a standard library since Python 2.7
release. Remove externally built module in favor of the stdlib one.

Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl>
Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoopkg-utils: Update SRCREV
Paul Barker [Thu, 18 Dec 2014 21:03:30 +0000 (21:03 +0000)]
opkg-utils: Update SRCREV

The new upstream commit incorporates the following fix to update-alternatives
from Chen Qi <Qi.Chen@windriver.com>:

    update-alternatives: avoid double slash problem

    The link path stored by update-alternatives should always be absolute and so we
    do not need to add an additional slash when joining to $OPKG_OFFLINE_ROOT.

Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agobyacc: Upgrade to 20141128
Chong Lu [Fri, 19 Dec 2014 05:42:01 +0000 (13:42 +0800)]
byacc: Upgrade to 20141128

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agocups: Upgrade to 2.0.1
Chong Lu [Fri, 19 Dec 2014 05:42:00 +0000 (13:42 +0800)]
cups: Upgrade to 2.0.1

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoless: Upgrade to 471
Chong Lu [Fri, 19 Dec 2014 05:41:59 +0000 (13:41 +0800)]
less: Upgrade to 471

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agodevtool: add QA tests
Paul Eggleton [Fri, 19 Dec 2014 11:41:57 +0000 (11:41 +0000)]
devtool: add QA tests

Add some QA tests for devtool (and recipetool). These aren't
comprehensive but at least they are a start, and have already helped me
catch and fix a number of regressions.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoscripts/devtool: Support deploy/undeploy function
Junchun Guan [Fri, 19 Dec 2014 11:41:56 +0000 (11:41 +0000)]
scripts/devtool: Support deploy/undeploy function

Deploy recipe output files to live target machine using scp
Store the files list and target machine info in localhost if deployment
is done
Undeploy recipe output files in target machine using the previous
deployment info

[YOCTO #6654]

Signed-off-by: Junchun Guan <junchunx.guan@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoscripts/devtool: add development helper tool
Paul Eggleton [Fri, 19 Dec 2014 11:41:55 +0000 (11:41 +0000)]
scripts/devtool: add development helper tool

Provides an easy means to work on developing applications and system
components with the build system.

For example to "modify" the source for an existing recipe:

  $ devtool modify -x pango /home/projects/pango
  Parsing recipes..done.
  NOTE: Fetching pango...
  NOTE: Unpacking...
  NOTE: Patching...
  NOTE: Source tree extracted to /home/projects/pango
  NOTE: Recipe pango now set up to build from /home/paul/projects/pango

The pango source is now extracted to /home/paul/projects/pango, managed
in git, with each patch as a commit, and a bbappend is created in the
workspace layer to use the source in /home/paul/projects/pango when
building.

Additionally, you can add a new piece of software:

  $ devtool add pv /home/projects/pv
  NOTE: Recipe /path/to/workspace/recipes/pv/pv.bb has been
  automatically created; further editing may be required to make it
  fully functional

The latter uses recipetool to create a skeleton recipe and again sets up
a bbappend to use the source in /home/projects/pv when building.

Having done a "devtool modify", can also write any changes to the
external git repository back as patches next to the recipe:

  $ devtool update-recipe mdadm
  Parsing recipes..done.
  NOTE: Removing patch mdadm-3.2.2_fix_for_x32.patch
  NOTE: Removing patch gcc-4.9.patch
  NOTE: Updating recipe mdadm_3.3.1.bb

[YOCTO #6561]
[YOCTO #6653]
[YOCTO #6656]

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoscripts: add scriptutils module
Paul Eggleton [Fri, 19 Dec 2014 11:41:54 +0000 (11:41 +0000)]
scripts: add scriptutils module

Add a utility module for scripts. This is intended to provide functions
only really useful before bitbake has been found (or only of particular
interest to scripts). At the moment this includes functions for setting
up a logger and for loading plugins.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoscripts/recipetool: Add a recipe auto-creation script
Paul Eggleton [Fri, 19 Dec 2014 11:41:53 +0000 (11:41 +0000)]
scripts/recipetool: Add a recipe auto-creation script

Add a more maintainable and flexible script for creating at least the
skeleton of a recipe based on an examination of the source tree.
Commands can be added and the creation process can be extended through
plugins.

[YOCTO #6406]

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoclasses/externalsrc: set do_compile as nostamp
Paul Eggleton [Fri, 19 Dec 2014 11:41:52 +0000 (11:41 +0000)]
classes/externalsrc: set do_compile as nostamp

Most of the time what you want when using this class is for do_compile
to execute more than just once - every time the source changes would be
ideal, but that's a little tricky to accomplish. Thus, set do_compile as
nostamp to get something close.  Note that in order to be effective this
also requires the change to bitbake that causes nostamp task signatures
to change on each execution.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agooeqa/utils: make get_bb_var() more reliable
Paul Eggleton [Fri, 19 Dec 2014 11:41:51 +0000 (11:41 +0000)]
oeqa/utils: make get_bb_var() more reliable

* Enable querying exported variables
* Use strip() to remove quotes so any internal quotes are not disturbed

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel-devsrc: Ensure we have a dependency on the actual source
Richard Purdie [Sun, 21 Dec 2014 13:50:35 +0000 (13:50 +0000)]
kernel-devsrc: Ensure we have a dependency on the actual source

Tthe kernel populate_sysroot can come from sstate, we need the full
source here. We therefore depend on the configure task which isn't
covered by sstate to ensure we get the right set of files.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolib/oe: add recipeutils module
Paul Eggleton [Fri, 19 Dec 2014 11:41:50 +0000 (11:41 +0000)]
lib/oe: add recipeutils module

Add a module to help provide utility functions for dealing with recipes.
This would typically be used by external tools.

Substantial portions of this module were borrowed from the OE Layer
index code; other functions originally contributed by
Markus Lehtonen <markus.lehtonen@intel.com>.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolib/oe/patch: add support for extracting patches from git tree
Paul Eggleton [Fri, 19 Dec 2014 11:41:49 +0000 (11:41 +0000)]
lib/oe/patch: add support for extracting patches from git tree

When patches from a recipe have been written out to a git tree, we also
want to be able to do the reverse so we can update the patches next to
the recipe. This is implemented by adding a comment to each commit
message (using git hooks) which we can extract later on.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolib/oe/patch.py: abort "git am" if it fails
Paul Eggleton [Fri, 19 Dec 2014 11:41:48 +0000 (11:41 +0000)]
lib/oe/patch.py: abort "git am" if it fails

If we don't do this, you may still be in the git am resolution mode at
the end of applying patches, which is not desirable.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolib/oe/patch: use --keep-cr with git am
Paul Eggleton [Fri, 19 Dec 2014 11:41:47 +0000 (11:41 +0000)]
lib/oe/patch: use --keep-cr with git am

Preserving carriage returns is important where the patch contains them.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolib/oe/patch: auto-commit when falling back from git am
Paul Eggleton [Fri, 19 Dec 2014 11:41:46 +0000 (11:41 +0000)]
lib/oe/patch: auto-commit when falling back from git am

When PATCHTOOL = "git", if we're not able to use "git am" to apply a
patch and fall back to "git apply" or "patch", it is desirable to
actually commit the changes, attempting to preserve (and interpret) the
patch header as part of the commit message if present. As a bonus, the
code for extracting the commit message is callable externally in case it
is useful elsewhere.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolib/oe/patch: fall back to patch if git apply fails
Paul Eggleton [Fri, 19 Dec 2014 11:41:45 +0000 (11:41 +0000)]
lib/oe/patch: fall back to patch if git apply fails

When PATCHTOOL = "git", git apply doesn't support fuzzy application, so
if a patch requires that it's better to be able to apply it rather than
just failing.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoclasses/package: move read_shlib_providers() to a common unit
Paul Eggleton [Fri, 19 Dec 2014 11:41:44 +0000 (11:41 +0000)]
classes/package: move read_shlib_providers() to a common unit

This allows us to use this function elsewhere in the code.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agometa-environment: don't mark tasks as nostamp
Paul Eggleton [Fri, 19 Dec 2014 11:41:43 +0000 (11:41 +0000)]
meta-environment: don't mark tasks as nostamp

With siggen being changed to alter the signature of nostamp tasks on the
fly, having these tasks as nostamp results in the SDK being rebuilt
every time, which is not desirable. In any case this is just legacy from
the days before we used signatures to take care of ensuring these tasks
get re-run when they need to be.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agocore-image-sato-sdk: Use kernel-devsrc to ensure kernel module builds work
Richard Purdie [Sat, 20 Dec 2014 11:16:40 +0000 (11:16 +0000)]
core-image-sato-sdk: Use kernel-devsrc to ensure kernel module builds work

With the move of the kernel source to the kernel-devsrc, we need this package
to ensure the kernel module sanity tests made on core-image-sato-sdk continue
to pass. Therefore update the name of the package included in the image.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoboot-directdisk: Use kernel from DEPLOY_DIR_IMAGE, not sysroot
Richard Purdie [Sat, 20 Dec 2014 11:19:51 +0000 (11:19 +0000)]
boot-directdisk: Use kernel from DEPLOY_DIR_IMAGE, not sysroot

After the recent kernel changes, this avoids failures like:

DEBUG: Executing shell function build_boot_dd
install: cannot stat '/home/pokybuild/yocto-autobuilder/yocto-worker/build-appliance/build/build/tmp/sysroots/qemux86-64/usr/src/kernel/bzImage': No such file or directory
WARNING: exit code 1 from a shell command.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agobootimg: Use deploy artefacts, not STAGING_KERNEL_DIR
Richard Purdie [Fri, 19 Dec 2014 17:46:59 +0000 (17:46 +0000)]
bootimg: Use deploy artefacts, not STAGING_KERNEL_DIR

bzImage is no longer in STAGING_KERNEL_DIR. Rather than add it back,
depend on the kernel deploy task and find it in DEPLOY_DIR_IMAGE.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel: Fix non linux-yocto builds
Richard Purdie [Fri, 19 Dec 2014 17:46:27 +0000 (17:46 +0000)]
kernel: Fix non linux-yocto builds

After the recent kernel changes, non linux-yocto builds stopped working
properly for two reasons:

a) ${S} was being reset to ${WORKDIR}/git for example and STAGING_KERNEL_DIR
   did not contain the source

b) Most builds were using ${B} == ${S}

This patch adds a fixup to the unpack function to handle the case where
${S} != ${STAGING_KERNEL_DIR} and also set up the infrastrcture so that
B != S for kernel builds from now on. The kernel build system is one of the
best for supporting this and there is no good reason not to take advantage
of it.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel-devsrc: Ensure we don't race against do_make_scripts from module-base.bbclass
Richard Purdie [Sun, 21 Dec 2014 12:30:53 +0000 (12:30 +0000)]
kernel-devsrc: Ensure we don't race against do_make_scripts from module-base.bbclass

do_install for kernel-devsrc can race against do_make_scripts from
module-base.bbclass. Since there is a lock there to guard against concurrency
already, we can just use it here to avoid a race.

Ultimately, this can all likely be much more streamlined but this resolves
the immediate build failures.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel-devsrc: Handle ppc crtsaves.o explictly for now
Richard Purdie [Sun, 21 Dec 2014 12:29:03 +0000 (12:29 +0000)]
kernel-devsrc: Handle ppc crtsaves.o explictly for now

Resolve kernel module build failures for qemuppc by including crtsaves.o.

I'm not particularly happy to be doing this, it should perhaps be contained
in the kernel-dev package. Until the overlap between kernel-devsrc and
kernel-dev is resolved, this at least removed the regressions.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel-devsrc: Inherit module-base
Richard Purdie [Fri, 19 Dec 2014 14:12:43 +0000 (14:12 +0000)]
kernel-devsrc: Inherit module-base

As a "normal" recipe, mulitlib would try and extend it for multilibs.
By inheriting module-base, we can avoid this since we now look more
'kernel' like.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernelsrc.bbclass: Ensure fetch/unpack/patch tasks don't run
Richard Purdie [Fri, 19 Dec 2014 13:18:51 +0000 (13:18 +0000)]
kernelsrc.bbclass: Ensure fetch/unpack/patch tasks don't run

In particular this removes a race condition where a ${S}/patches
directory could be created by do_unpack. This confuses kern-tools.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolinux-libc-headers: Upgrade 3.17 -> 3.17.7
Richard Purdie [Sat, 20 Dec 2014 13:55:13 +0000 (13:55 +0000)]
linux-libc-headers: Upgrade 3.17 -> 3.17.7

Whilst we don't usually take linux-libc-headers point release, 3.17.3
fixes a userspace header issue which caused gdb to fail to build on
mips. We therefore may as well upgrade to the latest point release.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolinux-libc-headers: update to 3.17
Bruce Ashfield [Wed, 10 Dec 2014 14:16:09 +0000 (09:16 -0500)]
linux-libc-headers: update to 3.17

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agosocat: fix compile erorr against 3.17+ kernel headers
Bruce Ashfield [Thu, 18 Dec 2014 19:02:15 +0000 (14:02 -0500)]
socat: fix compile erorr against 3.17+ kernel headers

With the linux 3.17 kernel socat's configure detects the wrong include
for errqueue.h which results in a compilation error.

By backporting the gentoo patch from:

  http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-misc/socat/files/socat-1.7.2.4-linux-3.17.patch

Fixes the build issue

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agolinux-yocto/3.14: update to 3.14.26, integrate ltsi and -rt updates
Bruce Ashfield [Wed, 10 Dec 2014 09:22:10 +0000 (04:22 -0500)]
linux-yocto/3.14: update to 3.14.26, integrate ltsi and -rt updates

Updating the 3.14 tree to the latest korg 3.14.26, as well as
integrating 3.14 LTSI content, and refreshing preempt-rt. Minor
conflict resolutions were performed between ltsi, stable and -rt

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolinux-yocto/3.10: update to v3.10.62
Bruce Ashfield [Wed, 10 Dec 2014 09:20:19 +0000 (04:20 -0500)]
linux-yocto/3.10: update to v3.10.62

Updating to the latest korg -stable update for the 3.10 series. Minor
merge conflict resolution was done with the standard/ltsi and
standard/preempt-rt branches.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolinux-yocto/3.17: update to v3.17.6
Bruce Ashfield [Wed, 10 Dec 2014 09:18:51 +0000 (04:18 -0500)]
linux-yocto/3.17: update to v3.17.6

Integrating the latest korg -stable update for v3.17

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolttng-modules: fix mm_compaction_isolate_template build
Bruce Ashfield [Wed, 10 Dec 2014 08:22:59 +0000 (03:22 -0500)]
lttng-modules: fix mm_compaction_isolate_template build

linux-stable integrated the 3.16 commit f8c9301fa5a2a [mm/compaction: do
not count migratepages when unnecessary] with the 3.14.25 update.

So we have to update the lttng-module linux version codes to use the
new definition in builds greater than 3.14.24 or 3.16.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolinux-yocto/3.14: update to v3.14.24
Bruce Ashfield [Mon, 17 Nov 2014 05:56:59 +0000 (00:56 -0500)]
linux-yocto/3.14: update to v3.14.24

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolinux-yocto/3.10: update to v3.10.59
Bruce Ashfield [Mon, 17 Nov 2014 04:29:33 +0000 (23:29 -0500)]
linux-yocto/3.10: update to v3.10.59

Updating to the latest 3.10 -korg stable update. We also bring in a meta
change for the valley island IO configuration.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolinux-yocto/3.17: update to v3.17.2
Bruce Ashfield [Mon, 17 Nov 2014 04:25:04 +0000 (23:25 -0500)]
linux-yocto/3.17: update to v3.17.2

Updating to the korg 3.17.2 -stable release.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolinux-yocto/3.17: update to v3.17.1
Bruce Ashfield [Wed, 15 Oct 2014 14:11:49 +0000 (10:11 -0400)]
linux-yocto/3.17: update to v3.17.1

Updating to the kver to the latest korg stable update. This fixes some
important bugs (as well as the usual mix of more minor ones), in particular
libata bugs and SSD corruption issues are fixed.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agokernel: Clean ${S} before unpack
Richard Purdie [Thu, 18 Dec 2014 11:41:58 +0000 (11:41 +0000)]
kernel: Clean ${S} before unpack

Currently unpack just forces sources over the current files. This change
ensures ${S} is cleaned out before sources are unpacked. This resolves
issues seen when upgrading to the new kernel class changes.

Ultimately, this should probably move to base.bbclass but one step at a
time, this solves an immediate problem blocking the other patches from
merging.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agosanity: TMPDIR ABI change for kernel process
Richard Purdie [Thu, 11 Dec 2014 14:36:05 +0000 (14:36 +0000)]
sanity: TMPDIR ABI change for kernel process

The kernel source is being moved into the sysroot, to do this and
preserve previous builds, we need to change the TMPDIR ABI and
provide a function to uninstall all kernels from the sysroot.

This change adds code to do that and increases the ABI number.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel-yocto: make sure git tags get dereferenced properly in do_patch()
Jeff Wang [Fri, 7 Nov 2014 14:45:32 +0000 (09:45 -0500)]
kernel-yocto: make sure git tags get dereferenced properly in do_patch()

Commit 92c1ece6c347030d48995a36f4c67861356e59d3 causes the test in do_patch()
in kernel-yocto.bbclass to fail if ${machine_srcrev} is an annotated tag. The
check is meant to ensure that ${machine_srcrev} is an ancestor of HEAD, but
if ${machine_srcrev} is a tag, then "$(git rev-parse --verify
${machine_srcrev})" evaluates to the SHA of the tag instead of what it's
pointing to.

Replacing "$(git rev-parse --verify ${machine_srcrev})" with "$(git rev-parse
--verify ${machine_srcrev}~0)" fixed the problem by finding the object pointed
to by the tag, and not the tag itself. This also works for commit IDs that
are not tags, hence is safe in a scenarios.

Jeff Wang <jeffrey.wang@ll.mit.edu>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agokernel-yocto: fix non-git builds
Bruce Ashfield [Sat, 22 Nov 2014 04:51:58 +0000 (23:51 -0500)]
kernel-yocto: fix non-git builds

The ability to build non-git repositories was broken by two changes:

 - The existence of an empty 'patches' directory created during the
   unpack phase. This dir was incorrectly identified as a valid meta
   directory and broke the build. By ensuring that it is removed before
   creating the empty repository, it will no longer be found instead of
   the real meta directory.

 - The attempt to reset the git repository to a specific SRCREV when
   no SRCREV was provided. By checking for a SRCREV of 'INVALID', we
   avoid any processing and failed git operations.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agolttng/perf: depend on virtual/kernel:do_install
Bruce Ashfield [Thu, 4 Dec 2014 04:14:08 +0000 (23:14 -0500)]
lttng/perf: depend on virtual/kernel:do_install

To ensure that the minimal environment has been created for out of
tree module builds, perf and lttng should depend on the do_install
task of the kernel.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agoimages: introduce core-image-kernel-dev
Bruce Ashfield [Mon, 25 Aug 2014 17:22:53 +0000 (13:22 -0400)]
images: introduce core-image-kernel-dev

When building a new kernel, or testing and update to the kernel there
are a set of packages that are sensitive to APIs, build system and
other changes associated with the kernel.

After building this recipe, we can be reasonably sure that a new kernel
package and coupled userspace have been built, installed and tested
via a single image.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agokerneldev: create kernel-devsrc packaging
Bruce Ashfield [Fri, 5 Dec 2014 19:48:11 +0000 (14:48 -0500)]
kerneldev: create kernel-devsrc packaging

kernel-devsrc is responsible for creating and a packaging an environment
appropriate for kernel development (on or off target).

To create this support, we only need to copy/install the results of the
virtual/kernel providers build in the staging dir ... with some minor
manipulations to the source tree (.git removal and a clean up). This
produces a source tree that is capable of rebuilding the kernel on the
target.

Installing the kernel-devsrc package on a target (along with a
toolchain) is all that remains to be done.

 $ cd /usr/src/kernel
 $ make oldconfig
 $ make -j2 bzImage

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
10 years agokernel: fix out of tree module builds
Bruce Ashfield [Fri, 14 Nov 2014 19:51:27 +0000 (14:51 -0500)]
kernel: fix out of tree module builds

With the kernel build optimizations, we no longer copy the source from
the built kernel into the staging dir, since the kernel is unpacked and built
directly from the staging dir.

This means that a few build artifacts need to be restored to allow out of
tree modules to once again build.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agokernel: Rearrange for 1.8
Richard Purdie [Tue, 21 Oct 2014 21:05:30 +0000 (21:05 +0000)]
kernel: Rearrange for 1.8

In 1.8 we want to streamline the kernel build process. Basically we
currently have multiple copies of the kernel source floating around
and the copying/compression/decompression is painful.

Lets assume we have a kernel source per machine since in most cases
this is true (and we have a sysroot per machine anyway). Basically,
instead of extracting a source into WORKDIR, then copying to a sysroot,
we now set S to point straight at STAGING_DIR_KERNEL.

Anything using kernel source can then just point at it and use:

do_configure[depends] += "virtual/kernel:do_patch"

to depend on the kernel source being present. Note this is different
behaviour to DEPENDS += "virtual/kernel" which equates to
do_configure[depends] += "virtual/kernel:do_populate_sysroot".

Once we do this, we no longer need the copy operation in
do_populate_sysroot, in fact there is nothing to do there (yay).

The remaining part of the challenge is to kill off the horrible
do_install. This patch splits it off to a different class, the idea here
is to have a separate recipe which depends on the virtual/kernel:do_patch
and just installs and packages the source needed to build modules on
target into a specific package.

Right now this code is proof of concept. It builds kernels and kernel
modules. perf blows up in do_package with issues on finding the kernel
version which can probably be fixed by adding back the right bit of do_install,
and adding a dependency of do_package[depends] += "virtual/kernel:do_install"
to perf. The whole thing needs a good write up, the corner cases testing
and probably a good dose of cleanup to the remaining code.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoimage: Avoid race over directory creation
Richard Purdie [Sat, 20 Dec 2014 11:16:06 +0000 (11:16 +0000)]
image: Avoid race over directory creation

There is a race over the do_package_qa task and the do_rootfs task
since rootfs recreates a directory. This patch disables the task
(which isn't used for images) to avoid the race:

NOTE: recipe core-image-minimal-1.0-r0: task do_package_qa: Started
NOTE: recipe core-image-minimal-1.0-r0: task do_rootfs: Started
ERROR: Build of do_package_qa failed
ERROR: Traceback (most recent call last):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/bitbake/lib/bb/build.py", line 497, in exec_task
    return _exec_task(fn, task, d, quieterr)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/bitbake/lib/bb/build.py", line 440, in _exec_task
    exec_func(func, localdata)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/bitbake/lib/bb/build.py", line 212, in exec_func
    exec_func_python(func, d, runfile, cwd=adir)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/bitbake/lib/bb/build.py", line 237, in exec_func_python
    os.chdir(cwd)
OSError: [Errno 2] No such file or directory: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/build/tmp/work/qemumips-poky-linux/core-image-minimal/1.0-r0/core-image-minimal-1.0'

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agodbus-test: Fix SRC_URI checksum to match dbus
Richard Purdie [Sat, 20 Dec 2014 11:22:11 +0000 (11:22 +0000)]
dbus-test: Fix SRC_URI checksum to match dbus

If the system fetches dbus first, everything works and the checksum is
correct there. If dbus-test fetches first, the checksum is incorrect
and wasn't changed with the version upgrade.

Fix the checksum.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agoreport-error: Handle the case no logfile exists
Richard Purdie [Sat, 20 Dec 2014 11:20:33 +0000 (11:20 +0000)]
report-error: Handle the case no logfile exists

If the task fails early, no error log may exist. Currently we crash in
that case, this handles the situation more gracefully.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agosecurity_flags: Fix typo for cups
Richard Purdie [Fri, 19 Dec 2014 09:03:17 +0000 (09:03 +0000)]
security_flags: Fix typo for cups

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 years agobusybox-mdev: Support automatic mounting of block devices
mike.looijmans@topic.nl [Thu, 18 Dec 2014 14:17:31 +0000 (15:17 +0100)]
busybox-mdev: Support automatic mounting of block devices

Upon inserting a USB stick or similar device, mdev will run
an automounter script that mounts valid partitions on
/media/<device>. The script first checks /etc/fstab entries
so that mounting on UUID or LABEL or using custom mount options
is still possible. If /etc/fstab does not contain particular
mount options, the script will create (and remove) the mountpoint
automatically.
The script also supports full disk partitions (devices without
partition table).

The following environments can be set in /etc/default/mdev:
MDEV_AUTOMOUNT=n (Disables automounting completely)
MDEV_AUTOMOUNT_ROOT=/media (Change the mount root location)

Automatic mounting for a particular device can be disabled by
creating a file "/dev/<device>.nomount". This is helpful in
scripts that create partitions for example, and want to perform
specific actions which require the device to remain unmounted.

A more complex variation (using LABEL based mounts) on this script
has been in use in OpenPLi for many years now, and I've used this
one on many projects already, so it's about time to push this to
mainline.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agobusybox-mdev: Add hotplug kernel module support to mdev.conf
mike.looijmans@topic.nl [Thu, 18 Dec 2014 14:19:24 +0000 (15:19 +0100)]
busybox-mdev: Add hotplug kernel module support to mdev.conf

Add a line to mdev.conf that tells mdev to load kernel modules when
required.

For example, if you built wifi support as an external module, inserting
a wifi stick into a USB port will now automatically load that module
into the kernel and the wlan device will be ready for configuration.
Without this patch, you have to load required modules manually or force
them to load at system startup.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agobusybox/find-touchscreen.sh: Simplify script and recognize USB devices
mike.looijmans@topic.nl [Thu, 18 Dec 2014 14:17:29 +0000 (15:17 +0100)]
busybox/find-touchscreen.sh: Simplify script and recognize USB devices

Simplify the grep expression, use the more common "grep" command instead
of "egrep", avoid forking extra processes, join multiple invokations into
a single combined expression.

Change the touchscreen regex so that it also recognizes various USB
touchscreen controllers and the ad7879 i2c device.

Based on code used in OpenPLi and meta-topic.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agobusybox-mdev: Install missing find-touchscreen.sh
mike.looijmans@topic.nl [Thu, 18 Dec 2014 14:17:28 +0000 (15:17 +0100)]
busybox-mdev: Install missing find-touchscreen.sh

mdev.conf references the find-touchscreen.sh script, but this file
was not being installed. Add the script to the busybox-mdev package.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agopowertop: Fix build for !uclibc
Martin Jansa [Thu, 18 Dec 2014 14:54:14 +0000 (15:54 +0100)]
powertop: Fix build for !uclibc

* EXTRA_LDFLAGS isn't defined for !uclibc and configure fails
  when it reads it unexpanded, see config.log snippet:

  configure:4177: checking whether the C compiler works
  configure:4199: i586-oe-linux-gcc  -m32 -march=i586 --sysroot=/OE/sysroots/qemux86  -O2 -pipe -g -feliminate-unused-debug-types  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed ${EXTRA_LDFLAGS} conftest.c  >&5
  i586-oe-linux-gcc: error: ${EXTRA_LDFLAGS}: No such file or directory
  configure:4203: $? = 1
  configure:4241: result: no

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agocommon-licenses: add SMAIL_GPL
Ross Burton [Thu, 18 Dec 2014 20:56:12 +0000 (20:56 +0000)]
common-licenses: add SMAIL_GPL

This is used by debianutils.

Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agowic: add globbing support in IMAGE_BOOT_FILES entries
Maciej Borzecki [Wed, 10 Dec 2014 11:45:57 +0000 (12:45 +0100)]
wic: add globbing support in IMAGE_BOOT_FILES entries

Adding glob support for entries in IMAGE_BOOT_FILES. Files picked up by
glob are by default installed under their basename, as this is likely
most common use case. Target name for globbed entries specifies the
name of directory in which files will be installed withing the partition.

Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl>
Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agowic: IMAGE_BOOT_FILES format checks in bootimg-partition source
Maciej Borzecki [Wed, 10 Dec 2014 11:45:56 +0000 (12:45 +0100)]
wic: IMAGE_BOOT_FILES format checks in bootimg-partition source

Check for malformed entries in IMAGE_BOOT_FILES, fail early if such
entries were found.

Signed-off-by: Maciej Borzecki <maciej.borzecki@open-rnd.pl>
Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agomesa: add PACKAGECONFIG support for gallium XA state tracker
Nicolas Dechesne [Tue, 2 Dec 2014 21:06:33 +0000 (22:06 +0100)]
mesa: add PACKAGECONFIG support for gallium XA state tracker

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agovala: Add Upstream-Status to patch
Saul Wold [Wed, 17 Dec 2014 16:27:04 +0000 (08:27 -0800)]
vala: Add Upstream-Status to patch

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agooprofile: add missing Upstream-Status
Ross Burton [Wed, 17 Dec 2014 16:24:12 +0000 (16:24 +0000)]
oprofile: add missing Upstream-Status

Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agowhich: add missing Upstream-Status
Ross Burton [Wed, 17 Dec 2014 16:23:57 +0000 (16:23 +0000)]
which: add missing Upstream-Status

Signed-off-by: Ross Burton <ross.burton@intel.com>
10 years agoudev-cache: refactor conditionals and error handling
Richard Tollerton [Tue, 21 Jan 2014 19:46:46 +0000 (13:46 -0600)]
udev-cache: refactor conditionals and error handling

Most of /etc/init.d/udev-cache is in a conditional block which can be
replaced by a `[ ... ] || exit 0` to reduce nesting.

This also provides an opportunity to add some additional messages
when VERBOSE is set.

Capture and report errors encountered in the cache generation process,
using set -e and trap EXIT. These errors were previously being ignored.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: Update cache asynchronously
Richard Tollerton [Mon, 13 Jan 2014 21:51:33 +0000 (15:51 -0600)]
udev-cache: Update cache asynchronously

Don't hold up the boot while the cache is being updated.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
Signed-off-by: Ben Shelton <ben.shelton@ni.com>
Acked-by: Gratian Crisan <gratian.crisan@ni.com>
10 years agoudev-cache: invalidate on rules.d changes
Richard Tollerton [Fri, 24 Jan 2014 06:44:01 +0000 (00:44 -0600)]
udev-cache: invalidate on rules.d changes

Presently, the cache is not regenerated if udev rules are modified,
which may cause the cache to preserve an old configuration. To fix,
include the size, mtime, and filename of all udev rules in the system
configuration.

This change requires `stat`. If busybox supplies stat,
CONFIG_FEATURE_STAT_FORMAT must be enabled.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: always warn on console if invalidated
Richard Tollerton [Tue, 9 Dec 2014 00:02:10 +0000 (18:02 -0600)]
udev-cache: always warn on console if invalidated

Failure to use the udev cache is a significant enough impact to
the boot time (possibly seconds) that it should always be
reported on the console, regardless of the VERBOSE setting.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: Clean up message when cache is invalidated
Richard Tollerton [Thu, 11 Dec 2014 04:59:06 +0000 (22:59 -0600)]
udev-cache: Clean up message when cache is invalidated

Replace a bunch of echo's with a single cat<<EOF. Take this opportunity
to more clearly communicate what is going on with the cache and what
files are being looked at.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: refactor sysconf generation
Richard Tollerton [Mon, 8 Dec 2014 23:37:29 +0000 (17:37 -0600)]
udev-cache: refactor sysconf generation

The current system configuration needs to be generated both inside
udev (to compare against the cached system configuration) and
udev-cache (to regenerate the cached system configuration). Use a single
function definition for this task, duplicated across both initscripts.
This also allows administrators to modify it for machine-specific
requirements.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: don't generate sysconf twice
Richard Tollerton [Mon, 8 Dec 2014 23:25:10 +0000 (17:25 -0600)]
udev-cache: don't generate sysconf twice

The udev initscript signals udev-cache to run by generating a new
sysconf; but udev-cache now overwrites that with its own copy. To
eliminate the needless sysconf generating in udev, we instead trigger
udev-cache to run by touching a new file $DEVCACHE_REGEN.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: replace readfiles() with cmp
Richard Tollerton [Mon, 8 Dec 2014 23:13:35 +0000 (17:13 -0600)]
udev-cache: replace readfiles() with cmp

Currently, udev-cache system configurations are compared as shell string
variables, read into memory with the readfiles() function. This is more
complex, and significantly (27-41%) slower, than comparing them using
`cmp`. (Performance was verified on both Cortex-A9 and Intel Nehalem
systems.)

So just use cmp. This requires a few other small changes:

exclude /proc/atags from CMP_FILE_LIST if it doesn't exist to avoid
errors in `cat` and `cmp`.

`cmp -q` doesn't exist in busybox, so instead, redirect output to
/dev/null.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
10 years agoudev-cache: stop race between sysconf and cache generation
Richard Tollerton [Mon, 8 Dec 2014 22:44:33 +0000 (16:44 -0600)]
udev-cache: stop race between sysconf and cache generation

The validity of the udev cache is determined by the sysconf
file (/etc/udev/cache.data). Currently, there is a substantial delay
between sysconf generation in /etc/init.d/udev and cache generation in
/etc/init.d/udev-cache. If a hotplug event arrives in the middle of
this, then the sysconf will be out of date with respect to the cache.

The solution is two-pronged. First, we minimize the race window by
regenerating the sysconf immediately before the cache, in
/etc/init.d/udev-cache. This allows us to kill the race entirely by
stopping the udev event queue while the sysconf and cache are being
generated.

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>