In non-multilib packages, configured in a multilib configuration we
need to adjust the system provides and rprovides to include the
virtual multilib variant.
This resolves a problem introduced in the 329d864f9bbf94ad3aae8df43d63fe10e4237e4f commit. Where "allarch"
packages were suddenly providing all variants of an object.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Mark Hatle [Mon, 19 Sep 2011 19:53:02 +0000 (14:53 -0500)]
busybox: Enhance to add dynamic per-file provides
When using the RPM package backend, we need a full list of per-file
provides (and requires). The busybox package provides a number of
command line utilities, such as /usr/bin/env. However, because
the utilities are created at post install time via scripting the
provide of each of the links was never made. So any programs,
such as python, that require /usr/bin/env were unable to resolve
the dependency and failed.
This change only affects packaging backends that use per-file
dependency data. Currently RPM is the only packaging backend
with this ability.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Mark Hatle [Mon, 19 Sep 2011 14:38:44 +0000 (09:38 -0500)]
Add a run-time dependency that eglibc support GNU_HASH
RPM checks to see if binaries require GNU_HASH, if they do it adds
an automatic dependency of "rtld(GNU_HASH)". We need to satisfy
this dependency, and we do it by providing rtld(GNU_HASH) in the
package(s) that provide a runtime-linker.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
If user set MULTILIB_IMAGE_INSTALL, we need to install those multitlib
packages into the final image.
Also fix the logic in handling multilib prefix. For certain case like a
normal image contains several multilib libraries, the image recipe isn't
extended with MLPREFIX, therefore we need to enumerate the possible
multilib prefixes and compare them with package prefixes.
rpm: add multilib prefix for archs under deploy/rpm
Currently MACHINE_ARCH deploy folder is unique in multilib system, thus
a lib32 version of rpm package will override a normal rpm package if
its PACKAGE_ARCH is ${MACHINE_ARCH}.
Define different deploy folder for multilib architectures to avoid the
confliction.
This patch refactors avahi into a core non ui and avahi-ui, OE-Classic
has a similar factoring, and it was used as a refernce to make this
occur correctly here.
This allows the package to be built without gtk and GPLv3 issues.
Paul Eggleton [Mon, 19 Sep 2011 14:07:30 +0000 (15:07 +0100)]
scripts/combo-layer: fix still overzealous regex in default hook script
In the previous fix to this hook script (OE core revision e7aae45414e4597e9244f86a81fbc940f73785c8) a start-of-line (^) marker was
missed, so if a commit had no Signed-off-by line but it contained an
inner patch that did, the inner patch was modified causing a "corrupt
patch" error.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Paul Eggleton [Mon, 19 Sep 2011 10:58:36 +0000 (11:58 +0100)]
freetype: disable bzip2 compressed font support
If we do not disable this then it is enabled sometimes and disabled at
others depending on whether bzip2 has been built at the time, and worst
case it will cause a race condition if bzip2 is building at the same
time.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 19 Sep 2011 10:58:35 +0000 (11:58 +0100)]
libgnome-keyring: add libgcrypt to DEPENDS
libgcrypt is a required dependency according to the configure script, so
add it to DEPENDS. (This fixes a race condition when libgcrypt happens
to be building at the same time as libgnome-keyring.)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 19 Sep 2011 10:58:34 +0000 (11:58 +0100)]
libgcrypt: add libcap to DEPENDS
We explicitly enable capabilities, so libcap is required. (This fixes a
race condition when libcap happens to be building at the same time as
libgcrypt.)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Fri, 16 Sep 2011 16:44:45 +0000 (17:44 +0100)]
sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD
If the user has specified konsole in TERMCMD and it is version 2.x from
KDE 4.x, raise an error as this version will not work for patch
resolution purposes (it forks into the background and returns
immediately).
Addresses [YOCTO #1294]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Paul Eggleton [Fri, 16 Sep 2011 16:36:12 +0000 (17:36 +0100)]
lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported
Konsole 2.x (from KDE 4.x) does not work as devshell - it does not pass
the environment or current working directory through among other issues,
so do a version check and disable it if it is found (skipping to the
next available terminal application.)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
texinfo: several changes to build without zlib and ncurses headers on host
Texinfo very cleverly detects cross-compilation and builds host versions
of the texinfo binaries it requires to bootstrap the build, however this
was causing the host to require ncurses and zlib libraries and headers.
Instead, since we require texinfo to be installed on the host, remove this
feature from the texinfo configure.ac (disable-native-tools.patch).
Further, fix texinfo to link with newer binutils (link-zip.patch) and to
generate translations with newer gettext (gettext-macros.patch).
With this patch I am able to build texinfo on Fedora without ncurses-devel
and zlib-devel installed.
It's difficult to test a range of fetchers when using mirrors, therefore create a throwaway
copy of the datastore and delete the MIRROR and PREMIRROR variables to ensure they aren't
used in the connectivity check.
Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bugzilla.bbclass: add a class to report build problems to bugzilla
Add a class to report build errors to bugzilla. Idea largely based on
sepukku.bbclass, however it's rewritten nearly fully to use XML-RPC
interface of bugzilla. Tested with bugzilla 4.0, other version might
require some sort of adaptation.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replace a non-working icecc class with a rewritten one. It's cleaned up,
most things are handled now in shell scripts, as it's possible that
toolchains won't exist at the time of parsing/python substitution.
Packages which empty PARALLEL_MAKE are ignored now, as not to break
them.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
icecc-create-env: a tool to create icecc toolchain tarballs
IceCC needs tarballs with toolchains to work correctly. This is a
version largely based on one from org.openembedded.dev, plus a patch to
support recent compilers, LTO, etc.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tom Zanussi [Fri, 16 Sep 2011 15:28:27 +0000 (10:28 -0500)]
package.bbclass: fix spurious 'installed but not shipped' warning
For packages that have files installed that aren't in a subdirectory,
the following build WARNING is emitted (this for initramfs-live-boot
as an example):
WARNING: For recipe initramfs-live-boot, the following files were
installed but not shipped in any package:
WARNING: init
The problem is that the filenames added to the 'seen' array are always
added with a path separator at the beginning of the filename, but when
the package dir is walked for comparison, any files at the top-level
will be missing the beginning path separator and the comparison will
fail despite the fact that the file was actually packaged. This
because the remainder between the dirname and the dvar base name is
used in the path join and in the case of files at the top-level, the
remainder is the empty string, where it should be '/' for comparison
purposes.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Darren Hart [Thu, 15 Sep 2011 22:41:38 +0000 (15:41 -0700)]
Prevent IMAGE_FEATURES from contaminating initrd
Set IMAGE_FEATURES="" in core-image-initramfs to prevent
the setting of things like EXTRA_IMAGE_FEATURES in local.conf
from contaminating the initrd with features meant for the rootfs.
Suggested-by: Richard Purdie <richardpurdie@linuxfoundation.org> Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Darren Hart [Thu, 15 Sep 2011 22:41:37 +0000 (15:41 -0700)]
Set an explicit path for the initrd scripts
If we don't set PATH, then the shell will specify one for us.
Busybox adds the sbin dirs, but bash does not. I hit an
issue where bash (among other things) ended up in my initrd
and the boot scripts failed due to a bad default PATH. While
that is a separate issue, we should not be at the mercy of the
shell's default PATH. Update the initrdscripts to all specify:
PATH=/sbin:/bin:/usr/sbin:/usr/bin
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Without this patch this error occours on arm with vfp and softfloat:
| math_vfp_asm.S:273: Error: selected processor does not support `fnegd d12,d4'
| math_vfp_asm.S:273: Error: selected processor does not support `fstmiad r0!,{d12,d13,d14,d15}'
| math_vfp_asm.S:273: Error: selected processor does not support `fmxr fpscr,lr'
| make[3]: *** [math_vfp_asm.lo] Error 1
Signed-off-by: Bernhard Guillon <Bernhard.Guillon@hale.at> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Fri, 26 Aug 2011 08:01:04 +0000 (10:01 +0200)]
subversion: remove neon-detection.patch and --with-neon option
* upstream detection seems to be doing its job right now
* I don't see how this is supposed to work
-- neon_config="$withval/bin/neon-config"
-+ neon_config="env env PKG_CONFIG_PATH=${withval}:${PKG_CONFIG_PATH} pkg-config neon"
when neon_config should be sysroots/nokia900/usr/bin/crossscripts/neon-config
"
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Richard Purdie [Thu, 15 Sep 2011 10:22:39 +0000 (11:22 +0100)]
cml1/kernel: Update do_menuconfig to use oe.terminal()
The recent environment fixes broke the menuconfig task since it couldn't access
variables like DISPLAY. This patch updates it to use oe.terminal instead
allowing it to work again.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tom Zanussi [Wed, 14 Sep 2011 18:01:55 +0000 (13:01 -0500)]
initramfs-live-install: add support for grub2
grub2 needs a different set of install steps from grub 0.97. This
adds them to init-install.sh and adds an install-time check that
determines which version is being used and which steps to use
depending on the version of grub selected.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Bruce Ashfield [Fri, 9 Sep 2011 22:27:46 +0000 (18:27 -0400)]
linux-yocto: move common tasks to a common location
During the initial development of the linux-yocto recipes there were
several additional tasks that needed to be run in any inheriting
recipe. At that time, they didn't seem to fire if they were in the
include file versus the recipes themselves. As it turns out, these
tasks do work fine if placed in the linux-yocto.inc file, and the
rest of the recipes can be simplified as a result.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Paul Eggleton [Wed, 14 Sep 2011 16:19:55 +0000 (17:19 +0100)]
task-core: split into task-core-console and task-core-x11
[YOCTO #1481]
Since tasks are referred to almost exclusively via RDEPENDS, and bitbake
will build an entire task recipe when only one of its task packages are
actually needed, building a console-only image that uses
task-core-apps-console (or less directly, has apps-console in its
IMAGE_FEATURES) will cause a build of a whole list of X11 applications
that aren't needed. Splitting the task-core recipe into X11 and console
portions prevents this issue.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Eric Bénard [Sat, 10 Sep 2011 20:07:45 +0000 (22:07 +0200)]
qt4: add blacklist-diginotar-certs patch
- this patch comes from Nokia and blacklist all DigiNotar intermediates
and root certificates, more details are available here :
http://labs.qt.nokia.com/2011/09/07/what-the-diginotar-security-breach-means-for-qt-users-continued/
Currently with deb packaging, we have 2 issues when running
"bitbake meta-toolchain-gmae".
1) when MACHINE="qemux86", SDKMACHINE="i686", INSTALL_BASEARCH_DEB is "i686",
too. This causes the following ERROR:
| E: Couldn't find package task-sdk-host-nativesdk
NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed
This is becasue: due to the DPKG_ARCH mapping, we create such a deb package
tmp/deploy/deb/i686-nativesdk/task-sdk-host-nativesdk_1.0-r10_i386.deb; dpkg
can't recoginze the package. We need to map INSTALL_BASEARCH_DEB in the same
way.
2) when MACHINE="qemux86", SDKMACHINE="x86_64", INSTALL_BASEARCH_DEB is
"x86_64", too.
We get such an ERROR:
| E: Couldn't find package task-cross-canadian-i586
NOTE: package meta-toolchain-gmae-1.0-r6: task do_populate_sdk: Failed
This is because: dpkg can't recognize the generated package
tmp/deploy/deb/x86_64-nativesdk/task-cross-canadian-i586_1.0-r0_i386.deb
Here the "i386" suffix is incorrect and should be "x86_64" -- the i386
comes from the line
DPKG_ARCH_i586 ?= "i386" in package_deb.bbclass.
However, for canadian package, actually here the overriding of DPKG (from
"x86-64" to "i386") should not happen -- it accidently happens just because
TARGET_ARCH exists in OVERRIDES. We can move the overriding logic to the
anonymous python function to work this around.
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Mark Hatle [Wed, 14 Sep 2011 00:38:02 +0000 (19:38 -0500)]
Uprev to latest version of prelink_git, fixing TLS issues
[YOCTO #1473]
From the upstream cross prelink respository:
Fix printf typecast problem
Without this fix the printed TLS(...) information is incorrect, which
causes the core prelinker code to incorrectly prelink. This bug triggers
primarily on x86 (32-bit) hosts, targeting x86 (32-bit) targets and arm
targets.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Whilst this needs renaming it at least brings this image into
line with the other images and ensures consistent behaviour.
Renaming can take place at a future point.
This fixes the problem where extra packages could be added to other
image types using this varibale but not in the case of the minimal
image.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This moves a couple of files to a pkgmgt package so that
they will not be installed by default. This removes the
Add/Remove Software Icon from rpm based rootfs.
The pkg_postinst_dpkg seems buggy, e.g., for dpkg-native,
${IMAGE_ROOTFS}/${sysconfdir}/rcS.d doesn't exist.
I think OE's version(do_install_prepend) at
http://git.openembedded.org/cgit.cgi/openembedded/tree/recipes/dpkg/dpkg.inc
is correct, so let's change to OE's version.
And, bth dpkg and update-alternatives-cworth supply
/usr/bin/update-alternatives and this causes conflict. e.g., bug 1070.
We can resolve the issue by ask dpkg not to supply the binary.
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This relocation issues caused following bug and introduce one partial fix bb024d:
[YOCTO #1440]
But the environment val hacking is not working all the time, as nsgmsl may
append wrong path in some case. This fix use search directory "-D" as solution.
And more important, change the iputils' way to make doc: Use the sysid in
current directory instead of parent directory, as "../" is also appended to the
search directory then lead searching failure.
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> CC: Saul Would <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Phil Blundell [Wed, 7 Sep 2011 12:02:10 +0000 (13:02 +0100)]
shadow: add patch for useradd lossage
This fixes (or, at least, papers over) a failure in do_install for recipes which
inherit useradd.bbclass. Rewinding optind in this way is not entirely portable
but in practice it seems to work on GNU-ish build hosts at least.
Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Scott Garman [Fri, 9 Sep 2011 09:59:27 +0000 (02:59 -0700)]
runqemu: improve auto-detection of rootfs filenames
This refactors the way rootfs filenames are auto-detected when you
run the runqemu script without an explicit rootfs filename argument.
It allows the script to use rootfs files generated by hob, and when
there are mutliple rootfs files to choose from, it will pick the
most recently created one.
Fixes [YOCTO #1437].
Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 9 Sep 2011 17:21:24 +0000 (18:21 +0100)]
bitbake.conf: Default to explicitly setting the variable to disable pseudo
If we don't do this, sometimes pseudo can end up enabling itself when
it isn't required. Setting this value into the environment explicitly
ensures that does not happen.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 9 Sep 2011 17:18:44 +0000 (18:18 +0100)]
runqemu-internal: Hide some harmless warning messages
If sudo is used in the pseudo environment, as done in image tests when
the user hasn't pre-setup the tap device, ensure the LD_PRELOAD error
message isn't seen by the user.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 9 Sep 2011 17:14:56 +0000 (18:14 +0100)]
imagetest-qemu/runqueue: Since we no longer support BUILDDIR, use TMPDIR
Commit 993672fa2739794a6dd0dbd7bb232fa60522b897 removed the BUILDDIR
support from runqueue which broke the imagetest-qemu integration. We now
therefore need to set TMPDIR and pass this through the environment to
ensure the runqueue script finds the right locations without running
bitbake directly.
This patch also adds a sleep to the qemu command in the error case so that
this remains on the screen for a period of time so the user can see errors
more easily.
This change unbreaks automated testing failures on the autobuilder.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch causes the linuxdoc-tools-native to fail, cause it's
overriding the SGML_CATALOG_FILES, need to find a better way to
set the CATALOG_FILE information for opensp / nsgmls
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This reverts commit bb024d7a8c771c189b94b1ae177e29f3c318e236. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 7 Sep 2011 17:39:54 +0000 (18:39 +0100)]
terminal.bbclass: Improve environment handling
Currently the environment handling for terminals is inconsistent. There
are two fixes here:
a) Ensure the environment is setup before all oe.terminal call
b) Actually set the environment before the spawn calls since we need
variables like DISPLAY when the commands are being executed, not just
within the terminal environment. If this doesn't happen, DISPLAY can end
up not set with the errors that brings with it when trying to run X
commands.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Wed, 7 Sep 2011 16:05:42 +0000 (17:05 +0100)]
base.bbclass: fix substring matching in COMMERCIAL_LICENSE
Previously, if for example you had a package called "mx", and a second
package called "libomxil" listed in COMMERCIAL_LICENSE (without mx being
listed there), it would match mx as being commercially licensed because
mx is a substring of libomxil. Fix the search to ensure it only matches
the listed package name exactly.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 7 Sep 2011 17:34:47 +0000 (18:34 +0100)]
sstate: Avoid contention between sstate packages
If several sstate packages are decompressing at the same time, they can
conflict over the "fixmepath". If two packages try to write to this at
the same time it results in an error. To avoid this we remove the file
once we've finished processing it.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
By using the included libxml and libcroco, we do not create additional
on this core library. There was an ordering issue that when one library
was not built, but gettext detected the other library a compliation would
fail, this will force it to always use the included libraries.
Paul Eggleton [Wed, 7 Sep 2011 16:05:39 +0000 (17:05 +0100)]
core-image.bbclass: zap root password if debug-tweaks not enabled
If you do not have debug-tweaks in IMAGE_FEATURES, then zap the root
password so that you can't log in as root without a password in an image
potentially intended for a production system.
Also mention debug-tweaks in the comments listing IMAGE_FEATURES in this
file.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Update to the latest upstream version. This includes a number of
generic fixes, as well as a complete refresh of the prelink-rtld.
(Prelink-rtld is similar to the ld.so/ldd functionality on a normal
system.)
The new prelink-rtld update syncs to eglibc-2.13 and enables new
symbol resolution, include GNU_UNIQUE, that was causing problems on
x86_64 and potentially other architectures with C++.
An assert has been added to also detect a bad GNU_HASH situation
which was detected on some PPC64 systems. The underlying problem is
within the toolchain, however prelink was making it worse leaving the
problem undetected.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Richard Purdie [Tue, 6 Sep 2011 16:15:59 +0000 (17:15 +0100)]
glib-networking: Ensure certificates are consistently disabled
Currently configure is looking whether the build system has certificates
to determine the certificate paths. This is clear contamination so
this patch disables that functionality to ensure builds are consistent.
We could equally set this option to a consistent path if we start
installing certificates.
[YOCTO #1451]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Dexuan Cui [Tue, 6 Sep 2011 09:14:52 +0000 (17:14 +0800)]
package_deb.bbclass: put the stderr into log.do_xxx-attemptonly.xxx
Currently the stderr msgs go into log.do_rootfs and can cause a fatal failure
in "log_check rootfs".
However, the err msg could be spurious since we *only attempt* to install the
the packages, which may not exist actually. E.g., without this patch, we can
get a fatal ERROR due to
E: Couldn't find package task-core-tools-dev.
Lianhao Lu [Mon, 5 Sep 2011 06:00:41 +0000 (14:00 +0800)]
initramfs-live-install: Be consistent with grub.
[YOCTO #1428]
Because the underlying grub 0.97 the initramfs-live-install RDEPDNEDS on
only supports 32bit x86 target, set the COMPATIBLE_HOST accordingly.