This patch partially fixes problems when building multilib extended
images such as libXX-core-image-minimal. Its not a perfect/complete
solution but works much better than any previous code did.
Dexuan Cui [Thu, 22 Sep 2011 08:38:35 +0000 (16:38 +0800)]
qemu-config: use pkg_postinst to generate the proper shutdown.desktop
[YOCTO #1507]
We need to remove the file qemuarm/shutdown.desktop, or else, on qemuarm,
due to the PACKAGE_ARCH overriding from all to qemuarm in base.bbclass,
the generated deb file will be stored at
tmp/deploy/deb/qemuarm/qemu-config_1.0-r21_allarch.deb rather than
tmp/deploy/deb/all/qemu-config_1.0-r21_all.deb, and the package qemu-config
won't be installable -- task-base finally rdepends on qemu-config, so we get
the do_rootfs failure:
The following packages have unmet dependencies:
| task-base-extended: Depends: task-base but it is not going to be installed
| E: Broken packages
There is also a generic shutdown.desktop, we can keep it and use a proper
pkg_postinst to cope with the case of qemuarm.
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Thu, 22 Sep 2011 17:12:10 +0000 (12:12 -0500)]
foomatic-filters: Disable filter checking
Disable a few checks, and hard code the values for a few other items
to work around potential host contamination issues. We also default
to the cups configuration for items.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We pass --with-cpu to eglibc now. Which breaks
the configure for cpus that it does not support
We add support for ppc603e which gets 2.12
building for qemuppc.
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
qemugl: Use local variable rather than "push" to save register
New gcc uses "%esp" rather than "%ebp" to index local variable in stack, and
push between save-to/restore-from stack decrease "%esp", which leads wrong
index. Saving registers via local variables to make gcc aware of this and avoid
stack disorder.
[YOCTO #1442] got fixed
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
libxml2 provides a libxml2.a library, which wasn't included in any of
the packages. Usually static libs are included into a -staticdev
package, but this package wasn't generated for libxml2, due to
libxml2.inc redeclaring PACKAGES variable (to include libxml2-utils).
Replace PACKAGES setting with expansion to include all default packages
(and so -staticdev package with libxml2.a).
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It seems nobody uses preloadable_libintl.so in OE world. It's not
included in any package. To stop oe-core from emiting a unshipped files
warning, remove that file in the end of do_install.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
icecc.bbclass: fix handling of nativesdk and cross-canadian packages
icecc.bbclass assumed that nativesdk and cross-canadian packages should
use local icecc version. Instead those packages should use target-like
scheme for toolchain tarball generation.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
icecc-create-env(-native) is a native package. But if it doesn't have
the -native suffix, some dependency tracking stuff in oe-core (in
nativesdk.bbclass) get's crazy about it, trying to generate dependencies
to icecc-create-env-native packages. To fix that simply add -native
suffix to this package.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Thu, 22 Sep 2011 01:55:33 +0000 (20:55 -0500)]
python: Fix cgi.py runtime issue
By default cgi.py attempts to use /usr/local/bin/python as its
interpreter. However, on my Linux systems, including OE-Core,
python is installed into {bindir}. Adjust this one file based on
the comment at the top of the upstream file.
This resolves an issue where a runtime dependency discovered during
RPM packaging breaks the rootfs construction.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Thu, 22 Sep 2011 01:47:05 +0000 (20:47 -0500)]
task-core-lsb: Remove perl-dev
Remove the perl-dev recipe from the required packages. When this
recipe is included, libc6-dev is automatically added as are a large
number of other -dev packages. Eventually this creates a system
where the dependencies may not be able to be satisfied.
The perl-dev package should not be required in order to pass the LSB
testing.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Thu, 22 Sep 2011 01:47:04 +0000 (20:47 -0500)]
sudo: Fix PAM dependencies
When PAM is enabled for the distribution we need to be sure to have a
build dependency of libpam, and runtime dependencies on the pam modules
used by the sudo package.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Thu, 22 Sep 2011 01:47:03 +0000 (20:47 -0500)]
perl: Fix a few perl binaries to use target interpreter paths
A small number of target installed programs, "${bindir}/pod*",
were incorrectly using the perl-native paths to access perl. This
caused a dependency failure during RPM rootfs install, and also
prevented those specific components from functioning.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Thu, 22 Sep 2011 01:47:01 +0000 (20:47 -0500)]
usbutils: Move the pkgconfig file(s) to the -dev package
pkgconfig files belong in the -dev package. They automatically add
a runtime dependency (when packaging with RPM) for "pkgconfig", which
is not desired to be installed with this package.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Wed, 21 Sep 2011 18:57:48 +0000 (18:57 +0000)]
linux-yocto: kernel configuration cleanups
There were some config fragment warnings that were being hidden
by virtue of being output while generating the full config versus
the ones that were generated during the configuration audit task.
This change does the following:
- Updates the kern-tools SRCREV to include changes that move
all kernel configuration warnings to the audit script
- Updates the meta SRCREV for linux-yocto to get updated
kernel configuration fragments that are warning-free. These
are duplicated configs, and other changes that have a net
result of no runtime changes.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Mon, 19 Sep 2011 14:11:56 +0000 (14:11 +0000)]
linux-yocto: add blktrace feature
Updating the 3.0 kernel to enable blktrace to match our previous
functionality. This is done by the following meta branch commit:
[
meta: add blktrace feature
Add a 'blktrace feature' that turns on kernel support for blktrace, a
block I/O tracing tool. Added to 'standard' alongside similar tracing
tool config.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
]
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kernel configuration validation takes place between two files. An
unprocessed configuration file (which is all the options found in
the various configuration fragments) and the final .config produced
by the lkc.
The unprocessed configuration file's name historically is based on
the name of the branch that was used to build the BSP. But with the
ability to map machine names to arbitrary branches, this is no longer
always true.
Searching for the pattern *-config-* in the meta subdirectory will
only match the config file, and frees the config validation phase
from being concerned with what branch was used to build the BSP.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 21 Sep 2011 11:38:31 +0000 (12:38 +0100)]
debian.bbclass: Fix hardcoded "lib" reference
This patch removes a hardcoded "lib" reference from debian.bbclass
allowing libdirs like "lib64" to be used. Whilst working on this area of
code, a similar assumption about "bin" is removed and the regular
expression compilation is moved to the parent function since it doesn't
change and this will improve the speed of the code.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Hatle [Mon, 19 Sep 2011 15:11:11 +0000 (10:11 -0500)]
Update python dependencies to be simply to "python"
Previously python dependencies were of the format "python(abi) = ..."
This format is not yet supportable within OE, so revert to a form
we know we can handle.
Introduce a change to package.bbclass that ensures it will causes the
sstate-cache's "package" to invalidate. Since pythondeps changed, the
output of rpmdeps changes, which causes the per-file dependency
information to change.... thus we need to invalidate the cache!
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
As for libpng recipe, the libpng.pc is a symbol link to libpng12.pc,
if packaging them into two different packages, we will get a dangling
link for libpng.pc, and when calculating rpm dependency with that file,
we will get nothing.
Only keep one version of dev package to fix the issue.
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>