Martin Jansa [Fri, 25 Jul 2014 13:15:38 +0000 (15:15 +0200)]
buildhistory: rename build-id to build-id.txt and add more info
* use .txt extension like other reports (e.g. image-info.txt) it's
also useful when looking at the file from web server which doesn't
have text/plain as default content-type
* include whole BUILDCFG_HEADER/BUILDCFG_FUNCS instead of just layer
info
* this makes it easier for distro to include more fields without the
need to modify buildhistory.bbclass
* currently it adds following fields:
Build Configuration:
BB_VERSION = "1.23.1"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "Gentoo-2.2"
TARGET_SYS = "x86_64-oe-linux"
MACHINE = "qemux86-64"
DISTRO = "shr"
DISTRO_VERSION = "2013.07-next-20140725"
TUNE_FEATURES = "m64 core2"
TARGET_FPU = ""
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chong Lu [Mon, 18 Aug 2014 09:49:18 +0000 (17:49 +0800)]
librsvg: disable Bsymbolic if it is not supported on some hosts
When trying to build on my Centos 5.5 machine, got below error:
| checking for gdk-pixbuf-query-loaders... /home/build/clu1/build/qemux86_standard_glibc-std/bitbake_build/tmp/sysroots/x86_64-linux/usr/bin/gdk-pixbuf-query-loaders
| checking if gcc supports "-Wl,-Bsymbolic-functions" flag...
| configure: error: -Bsymbolic requested but not supported by ld. Use --disable-Bsymbolic to disable
| Configure failed. The contents of all config.log files follows to aid debugging
| ERROR: oe_runconf failed
Set --enable-Bsymbolic=auto to disable it when it is not suppported.
Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
oeqa/utils/targetbuild.py: add support for sdk tests
- Create new abstract class BuildProject that provides basic functionality for a project/package building class
* contains abstract method _run() that needs to be implemented by all extending classes.
- The old TargetBuildProject class now extends the abstract BuildProjct class
- Introducing new SDKBuildProject that extends the abstract BuildProjct class
NOTE: Original patch made by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Corneliu Stoicescu <corneliux.stoicescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/testimage.bbclass: add testsdk task and enable functionality for it.
- add new testsdk task for meta-toolchain testing.
- enable the get_tests_list method to work with sdk tests.
- add default TEST_SUITES value for meta-toolchain package
NOTE: Original patch made by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Corneliu Stoicescu <corneliux.stoicescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sat, 16 Aug 2014 07:20:57 +0000 (08:20 +0100)]
crosssdk: Clear MACHINEOVERRIDES
Without this, things like arm* can make it into OVERRIDES when we're
building a compiler to build binaries for another architecture like
x86. This can can lead to build failures dependning on the
exact configuration and overrides.
Robert Yang [Sat, 16 Aug 2014 02:08:09 +0000 (19:08 -0700)]
avahi-ui: drop rmdir localstatedir in bb recipe
There is a "rmdir --ignore-fail-on-non-empty ${D}${localstatedir}" in
avahi.inc, so drop the one in avahi-ui_0.6.31.bb, otherwise do_install
error:
rmdir: failed to remove `/path/to/image/var': No such file or directory
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 15 Aug 2014 16:55:22 +0000 (17:55 +0100)]
avahi: unset FILES_avahi to avoid packaging files there
The main avahi recipe doesn't package anything into ${PN}. If a library is
enabled but not put into a separate package it ends up in ${PN} and all the
packages are renamed using it's soname - ie libdns-sd-daemon.
Avoid this by clearing FILES_avahi so extra files are unpackaged instead of
creating a new package. Also actually remove /var as the comments claim so the
avahi package is truly empty.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 15 Aug 2014 12:11:47 +0000 (13:11 +0100)]
lttng-tools: update to version 2.5.0
Update to latest stable-2.5 revision.
* Drop Fix-alignment-problems-on-targets-not-supporting-una.patch, merged
upstream.
* New build-dependency on libxml2, so inherit pkgconfig so the test works and
delete the copy of libxml.m4 that overrides our sysroot.
Based on a patch from Yasir-Khan <yasir_khan@mentor.com>.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
musl e.g. is configured to not use fixed-include
which is an improvement btw. but libgcc-initial configure
has tests which probe for limits.h and since we put
it in include-fixed/ dir and that dir does not appear
in gcc's internal default search path the configure tests
for CPP detection fail and libgcc-initial can not be compiled.
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 14 Aug 2014 22:08:05 +0000 (23:08 +0100)]
lttng-ust/lttng-modules: Update LICENSE to reflect MIT
The code in question clearly states MIT is a third license. Update
LICENSE to reflect this (in one case, we did list BSD which is effectively
the same thing but this removes confusion).
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Gary Thomas [Mon, 11 Aug 2014 20:50:35 +0000 (14:50 -0600)]
toolchain-shar-template.sh: Limit xargs command line
It's possible to generate a command line in the relocate_sdk.sh script
which is too long (long paths, many files). This change limits the
xargs command line by breaking it up into smaller pieces.
One necessary side effect is that the -0 option is no longer used as it
doesn't seem to work properly with -n, so the file name arguments are
now quoted explicitly rather than \0 terminated.
Signed-off-by: Gary Thomas <gary@mlbassoc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Mon, 11 Aug 2014 20:21:44 +0000 (17:21 -0300)]
libpam: Allow use during build and in SDK
The recipe had libpam hardcoded in some places which were causing
failures as the metadata renaming hooks does not change those,
generating a broken dependencies list.
This patch fixes those and add the native and nativesdk support.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The imagetypes_getdepends() is defined in image_types.bbclass. Use "+="
to replace "?=" since it is a must, so that the user can use
"IMAGE_CLASSES = foo.bbclass" in local.conf to add their own image
class.
NOTE: the IMAGE_CLASSES_append = " foo" doesn't work since we use this
in image.bbclass:
IMAGE_CLASSES += "image_types"
inherit ${IMAGE_CLASSES}
I think that it is because inherit takes effect before append?
Another way to fix the problem is:
IMAGE_CLASSES ?= ""
inherit image_types ${IMAGE_CLASSES}
But it seems that we need another name for IMAGE_CLASSES, for example
IMAGE_CLASSES_EXTRA, and also need update the doc, which would make it
complicated.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mike Looijmans [Tue, 12 Aug 2014 07:54:58 +0000 (09:54 +0200)]
squashfs-tools: Add support for LZO and LZ4 compression
For systems that want to optimize for speed rather than size, LZO is
usually a better choice than gzip or XZ. Kernel support for LZO has
been available since 2.6.29.
LZ4 support isn't in the mainline kernel yet, but we might as well add
it now for those who want to experiment with it.
Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Yasir-Khan [Thu, 14 Aug 2014 14:56:37 +0000 (19:56 +0500)]
udev-extraconf: Unmount SD card after ejection
Adds udev rule to unmount SD card partitions in case of improper
ejection from card reader.
When SD card is ejected from card reader without being unmounted
first, kernel does not generate a REMOVE event, instead it
generates a CHANGE event(only if polling is enabled
/sys/module/block/parameters/events_dfl_poll_msecs) and we don't
have any udev rule in automount.rules to handle this event,so
partitions never get unmounted. Unmounting of partitions can be
done if udev rules handle this CHANGE event.
Signed-off-by: Abbas Raza <Abbas_Raza@mentor.com> Signed-off-by: Yasir-Khan <yasir_khan@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Barker [Thu, 14 Aug 2014 16:46:51 +0000 (16:46 +0000)]
opkg: Protect add-exclude.patch from malloc failure
In the code added by add-exclude.patch, the return values of malloc and realloc
were not checked before being dereferenced.
In opkg we can use xmalloc and xrealloc instead of malloc and realloc. These
functions terminate the program instead of returning NULL if memory allocation
fails.
Signed-off-by: Paul Barker <paul@paulbarker.me.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter Seebach [Thu, 14 Aug 2014 18:03:36 +0000 (13:03 -0500)]
multilib_global.bbclass: PREFERRED_PROVIDERS for multilibs
The code in base.bbclass to spread PREFERRED_PROVIDERS values
to multilibs doesn't work for things which rely on TARGET_PREFIX,
such as virtual/${TARGET_PREFIX}gcc. This is because the expansion
of TARGET_PREFIX produces the wrong value if executed prior to
the assignment of TARGET_VENDOR_virtclass-multilib-libxx, which
will always happen since that assignment doesn't happen until recipe
parsing, but the PREFERRED_PROVIDERS expansion is happening
around ConfigParsed.
To solve this, we make a couple of changes. First, the creation
of the TARGET_VENDOR override values is moved into a new ConfigParsed
event handler in multilib_global. Second, the preferred_ml_updates()
function's code is moved into that function too. It seems safe to
assume that PREFERRED_PROVIDER values only need to be spread to
other multilibs when multilibs are in use.
I don't think this directly affects any use cases that don't involve
third-party or alternative toolchains.
Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter A. Bigot [Thu, 14 Aug 2014 19:05:59 +0000 (14:05 -0500)]
gcc: update compiler architecture to match gcc-runtime (armv6, armv7a)
The gcc-runtime recipe builds the gcc libraries including libstdc++ with
$TARGET_CC_ARCH flags, which include -march=FOO flags that affect
whether atomic instructions are available. This causes an ABI
incompatibility when the compiler by default generates code for less
capable architectures. For example, gcc-runtime libraries on a
Cortex-A8 are built with a different C++11/C++14 mutex implementation
than is used code compiled outside OE and without architecture-specific
flags.
This commit fixes the problem specifically for ABI issues related to
atomic instructions available in ARMV6 and subsequent architectures.
Other ABI incompatibilities may remain in other architectures.
Peter A. Bigot [Thu, 14 Aug 2014 19:05:58 +0000 (14:05 -0500)]
gcc: backport patch affecting Linux kernel builds
A long-standing bug in gcc turns out to cause problems with unpatched
Linux versions due to improved optimization enabled by gcc 4.9. The
upstream fix missed the gcc-4.9.1 cut-off. It's also been applied
upstream to the 4.8 branch so is being added for OE's 4.8 as well.
Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Thu, 14 Aug 2014 19:05:57 +0000 (14:05 -0500)]
gcc: Abstract long double configuration into python function
musl does not support IBM 128 long double for ppc, instead of
doing complex overrides move it into a pythong snippet which
is easier to read and more compact.
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter A. Bigot [Thu, 14 Aug 2014 19:05:56 +0000 (14:05 -0500)]
sdk: change EXTRA_OECONF_FPU to EXTRA_OECONF_GCC_FLOAT
This variable is used to ensure the proper version of --with-float=FOO
is passed to gcc's configure script. gcc also has a --with-fpu=FOO
option that means something different. To avoid confusion, change the
names to be consistent.
Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter A. Bigot [Thu, 14 Aug 2014 19:05:52 +0000 (14:05 -0500)]
gcc: remove inappropriate patch
0037-gcc-4.8-PR56797.patch was originally added as an OE backport during
4.8.0. Upstream merged it in 4.8.1, and it was present in 4.9.0.
The original patch still applies to 4.9.1 (and presumably 4.8.2), but
now is modifying store_multiple_sequence instead of
load_multiple_sequence (the two functions are nearly identical). It may
or may not be necessary in store_multiple_sequence, but absent a bug
report upstream supporting its application in this case, or a least an
updated comment and upstream status in the patch, I think this patch
should be dropped.
Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter A. Bigot [Thu, 14 Aug 2014 19:05:51 +0000 (14:05 -0500)]
gcc: recipe whitespace changes
Consistent use of whitespace in multi-line assignment, with special
focus on OECONF modifications. Quotes on separate lines, four-space
indentation, one value per line.
Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Thu, 14 Aug 2014 05:05:15 +0000 (22:05 -0700)]
gcc-cross-initial: Use good old bfd linker by default
We already indicate our intentions to use ld.bfd by
specifying it in configure using --with-ld which works
ok unless here where we manually create symlinks to
binutils-cross components, when we use ld-is-gold feature
default ld points to gold and this symlinking has to be
aware of the fact that we configured binutils and gcc-cross to use
gold as default ld but gcc-cross-initial uses BFD ld
This would be visible when using gold and rebuilding
eglibc
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Wed, 13 Aug 2014 22:36:42 +0000 (00:36 +0200)]
cmake: drop -fpermissive
* it was dropped from default CXXFLAGS in:
commit 24dd8e129447013ee98609f3892ec414b1b21340
Author: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Sun Mar 2 17:38:33 2014 +0000
bitbake.conf: Drop -fpermissive
Drop the -fpermissive C++ compiler flag. We've had this around for years, most
code should have been fixed long ago. Its possible some recipes may fail
however we can (and should) just use the flag where needed.
* I haven't build world with this yet, but maybe it's time to
drop it here as well at least for consistency
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
python-scons-native: Make it useable if old host install exists
This was recently fixed to work on Fedora 17 if no scons is installed
on the host by setting the PYTHONPATH to where BitBake has installed
scons. However, if an older version of scons than 2.3.0 is installed,
then it still breaks. This is due to how scons tries to determine its
installation by searching through standard paths. If it finds an old
installation it prepends that path to sys.path thereby causing it to
ignore the PYTHONPATH. The solution is to instead set SCONS_LIB_PATH
which works both if scons is not installed and if an older version is
installed.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gstreamer1.0-plugins-good: Add a PACKAGECONFIG for udev
This solves these floating dependencies:
WARNING: QA Issue: gstreamer1.0-plugins-good-video4linux2 rdepends on
libudev, but it isn't a build dependency? [build-deps]
WARNING: QA Issue: gstreamer1.0-plugins-good-video4linux2 rdepends on
libgudev-1.0, but it isn't a build dependency? [build-deps]
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Maciej Borzecki [Thu, 14 Aug 2014 11:34:24 +0000 (13:34 +0200)]
cml1.bbclass: fix diffconfig diff command
Commit 6a7b98993350d0d24eae0058ae26ae19cfdf7c4c introduced a typo in
command, a whitespace was missing between --new-line-format and path to
original file. As a result, diffconfig task did not work, diff failed
with exit status 2, resulting in empty fragment.cfg.
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>
Richard Purdie [Thu, 14 Aug 2014 14:26:53 +0000 (15:26 +0100)]
qemu: Add PACKAGECONFIG for glx
With the configuration for sdl and glx, the virtual/libx11 in DEPENDS
no longer makes any sense at all, the dependency comes through the
various graphics backends. Therefore drop it. The glx PACKAGECONFIG
is added for completeness. We avoid a floating dependency on mesa.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 14 Aug 2014 14:25:52 +0000 (15:25 +0100)]
qemu: Add alsa PACKAGECONFIG and cleanup native/nativesdk DEPENDS
Converting this dependency to become a PACKAGECONFIG makes sense. Since
there is a "," in the configuration option, its not quite as straightforward
as normal.
Also clean up the native and nativesdk DEPENDS and set the PACKAGECONFIG
entries to match the old behaviour by default.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 14 Aug 2014 13:38:26 +0000 (14:38 +0100)]
site: Add common-darwin
We need this to ensure there are some correct values when building with
meta-darwin. This matches the addition of a common-mingw site file in
the core.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 14 Aug 2014 13:34:42 +0000 (14:34 +0100)]
glib-2.0: Allow correct printf configuration on darwin/mingw
mingw and darwin builds need to change the value of printf from no
to yes. Whilst you can do this from a bbappend, its currently a bit ugly
and assumes knowledge of the other conf arguments. Fixing this in the glib
recipe directly is cleaner in this case.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 14 Aug 2014 13:33:33 +0000 (14:33 +0100)]
populate_sdk_base: Move toolchain installation script to a separate file
It makes sense to move the script to a separate file, making the bbclass
clearer and allowing the end user to more easily customise or replace
it. There are no functionality changes, just the addition of some
substitution variables.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 14 Aug 2014 13:31:40 +0000 (14:31 +0100)]
classes: Combine rootfs_<pkgtype> and populate_sdk_<pkgtype>
There is no real reason to have these separate files any longer. It does
mean in meta-toolchain type recipes some extra variables are defined but
it also means the common code can be grouped and maintained together
which I believe is more beneficial. We therefore merge the classes.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Mon, 11 Aug 2014 14:09:13 +0000 (16:09 +0200)]
SIGGEN_EXCLUDERECIPES_ABISAFE: add initscripts
* update-rc.d now adds initscripts dependency even to allarch recipes
making them effectively TUNE_PKGARCH, "fix" it by excluding
initscripts from all signatures
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Adds 'docs' (for html doc generation) and 'api-docs' (for API doc generation)
configurations and leaves them both disabled by default. This avoids
autodetected dependency upon docutils.
Fixes [YOCTO #6530]
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Sun, 10 Aug 2014 18:41:53 +0000 (20:41 +0200)]
sstate-sysroot-cruft.sh: Improve to use it from CI
* strip tmpdir prefix, so that we have shorter paths which aren't
builder specific
* use '#' for regexp delimiter so that we don't need to prefix
forward slashes in paths
* extend default whitelist to cover typical cases
* add parameter for external whitelist file
* use number of found paths as return code, so that CI can easily
report error when new untracked files are found
* use .txt suffix for all output files, so that they can be easily
viewed in browser
* add populate_sysroot task, because somewhere between dora and daisy
the populate-sysroot files in sstate-control were renamed to have
underscore instead of dash
* only few entries not covered by this default whitelist were found
in world build (but I'll leave these for people to whitelist, because
they are not generated in most builds)
* [^/]*/home/builder
home directory from meta/recipes-graphics/builder/builder_0.1.bb
* [^/]*/usr/src/kernel/patches
* [^/]*/usr/lib/gdk-pixbuf-2.0/.*/loaders.cache
3 places are using this, not sure which one creates it
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb:
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache
meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb:
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
scripts/postinst-intercepts/update_pixbuf_cache:
>$GDK_PIXBUF_MODULEDIR/../loaders.cache && \
sed -i -e "s:$D::g" $GDK_PIXBUF_MODULEDIR/../loaders.cache
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>