Phil Staub [Thu, 31 Jan 2013 16:35:25 +0000 (08:35 -0800)]
libaio: Fix MIPS system call interface
The io_syscallX wrappers in syscall-mips.h discard error return status
by overwriting the value returned in v0 from the system call with -1.
Modify this behavior by returning the negative of the return value on
error (as identified by a3 != 0). This convention is consistent with
the behavior observed in syscall-ppc.h.
For a description of the MIPS system call interface, see:
http://www.linux-mips.org/wiki/Syscall
Signed-off-by: Phil Staub <Phil.Staub@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Thu, 31 Jan 2013 18:31:04 +0000 (13:31 -0500)]
multilib: skip packages that provide virtual/kernel
Rather than keying on recipes that inherit kernel.bbclass, we should
be checking for providers of virtual/kernel when skipping kernel
recipes in multlib builds.
Not all providers of virtual/kernel inherit kernel.bbclass (notably
linux-dummy), so checking on the provider is a more complete check.
We need to be sure to check for inheritance of module-base as well, this
allows for packages that provides modules to avoid the multilib renaming.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Asselstine [Thu, 31 Jan 2013 18:31:03 +0000 (13:31 -0500)]
kernel: avoid copying unnecessary files during do_install
kernel_do_install() populates $kerneldir with files needed to build
external modules. To accomplish this there are several copy commands
to get source from the kernel source tree and build trees after which
a 'clean' is performed. Since we are copying from the build tree we
get about 1G of .o and .cmd files copied over only to have them
removed when we clean. This adds additional IO overhead as well as
overhead caused by pseudo. By avoiding copying these files in the
first place we get multiple gains:
* avoid initial copy
* avoid file deletes during clean
* reduce pseudo overhead
Additionally we are making use of cpio vs cp which tends to be
significantly faster at performing copies.
With these changes I observe a 15-30% decrease in the time to complete
the do_install() operation on the kernel.
[YOCTO #3517]
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* By default enable only swrast. This needs to
be here or for some reason qemuarm tries to
detect the intel dri libraries and fails.
* For x86 and x86-64 explicitly set all of
the supported drm drivers.
builds properly with qemux86 qemuarm and qemux86-64
Signed-off-by: Ian Reinhart Geiser <igeiser@devonit.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Marko Lindqvist [Fri, 25 Jan 2013 22:26:37 +0000 (00:26 +0200)]
harfbuzz: fix install of version.h
version.h is listed both in pkginclude_HEADERS (via $HBHEADERS) and
nodist_pkginclude_HEADERS. This double listing is likely cause of
the make install error:
/usr/bin/install: cannot create regular file `.../harfbuzz/0.9.10-r0/image/usr/include/harfbuzz/hb-version.h': File exists
Just remove the nodist_pkginclude_HEADERS entry. We're not creating
the tarball, and listing version.h here wouldn't prevent the other
listing from including it to tarball anyway.
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Richard Purdie [Tue, 29 Jan 2013 13:39:08 +0000 (13:39 +0000)]
insane.bbclass: Fix incorrect getVar call
On a trace I was a bit puzzled why getVar was making 180 calls to len(d).
This is an expensive operation that should be very rarely called and
certainly not by getVar. In perl's do_package it was resulting in
~1.5 million function calls from those 180 cases.
Ultimately this typo was why. Lets fix it and save the CPU cyles.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Saul Wold [Tue, 29 Jan 2013 22:38:11 +0000 (14:38 -0800)]
module.bbclass: Don't add pkg_postinst/pkg_prerm to all packages in recipe
The code in module.bbclass was appending the pkg_postinst and
pkg_prerm to all packages that are part of a given recipe, meaning
that the -lic, -dev, -doc, ... packages all got the scriptlet
This change uses only which macthes with the RDEPENDS and FILES
already used in module.bbclass.
The failure was that rootfs creation would fail due to the -lic package
being installed before the kernel and the script would fail.
[YOCTO #3803]
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Saul Wold [Tue, 29 Jan 2013 23:04:26 +0000 (15:04 -0800)]
rootfs_rpm: Escape the backtick to ensure the ls runs on the target
This change ensures that the ls /etc/rpm-postinsts runs in the target
at first boot time, rather than at the creation time of the script on
the host.
This was causing the following error in the rootfs log:
+ install -d /srv/ssd/sgw/machines/fri2/tmp/work/fri2-poky-linux/core-image-minimal/1.0-r0/rootfs//etc/rcS.d
+ i=
+ ls /etc/rpm-postinsts/
ls: cannot access /etc/rpm-postinsts/: No such file or directory
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andreas Müller [Fri, 18 Jan 2013 12:41:49 +0000 (13:41 +0100)]
package.bbclass: remove RRECOMMENDS on base packages for locale packages
As long as we support only one locale package per recipe this leads to unwanted
packages in images. This patch was motivated by samba (meta-oe): only wanting
libsmbclient one gets full samba server into the image. For my standard image
the follwing package were removed by this patch:
Xin Ouyang [Thu, 24 Jan 2013 11:25:33 +0000 (19:25 +0800)]
libcgroup: fix the QA issue for pam_cgroup.so*
PAM modules in ${base_libdir}/security/ should be binary .so files,
not symlinks, so fix this. Since pam_cgroup.so is installed into
${base_libdir}/security, move libcgroup.so.* to ${base_libdir} to
avoid "unsafe-references-in-binaries" QA issue.
This allows one not to install rarely used or fs specific files
As discussed in http://thread.gmane.org/gmane.comp.handhelds.openembedded.core/31744/focus=31804
Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
xorg-minimal-fonts: depend on font-alias instead of shipping fonts.alias
| Collected errors:
| * check_data_file_clashes: Package font-alias wants to install file /home/hrw/HDD/devel/canonical/aarch64/openembedded/build/tmp-eglibc/work/genericarmv8-oe-linux/core-image-lsb-dev/1.0-r0/rootfs/usr/share/fonts/X11/misc/fonts.alias
| But that file is already provided by package * xorg-minimal-fonts
| * opkg_install_cmd: Cannot install package packagegroup-core-lsb-dev.
| ERROR: Function failed: do_rootfs (see /home/hrw/HDD/devel/canonical/aarch64/openembedded/build/tmp-eglibc/work/genericarmv8-oe-linux/core-image-lsb-dev/1.0-r0/temp/log.do_rootfs.7564 for further information)
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Hongxu Jia [Thu, 17 Jan 2013 12:56:37 +0000 (20:56 +0800)]
gtk-icon-cache.bbclass:fix support postrm at image creation time
When use postrm on the build machine, it installs the hook in intercept-scripts
directory and exit 0, the hook will be later invoked and it will properly call
gtk-update-icon-cache.
Martin Jansa [Fri, 25 Jan 2013 19:42:52 +0000 (20:42 +0100)]
eglibc-scripts: don't package mtrace, RDEPEND on eglibc-mtrace instead, fix RDEPENDS
* eglibc-mtrace and eglibc-scripts provide the same mtrace script
* remove mtrace from eglibc-scripts and replace it with RDEPENDS
* mtrace also needs perl (eglibc-mtrace has correct RDEPENDS), bash is
for sotruss and xtrace
* remove invalid RDEPENDS_ldd, ldd is now using /bin/sh and is not
packaged by eglibc-scripts
* fixes error in world-image build:
* check_data_file_clashes: Package eglibc-mtrace wants to install file
rootfs/usr/bin/mtrace
But that file is already provided by package * eglibc-scripts
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Fri, 25 Jan 2013 19:42:53 +0000 (20:42 +0100)]
eglibc-package: remove infodir/dir if it exists
* fixes error in world-image build:
* check_data_file_clashes: Package eglibc-doc wants to install file
rootfs/usr/share/info/dir
But that file is already provided by package * gcc-doc
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Fri, 25 Jan 2013 15:17:06 +0000 (15:17 +0000)]
valgrind: explicitly disable MPI2 support
We don't have support for this in OE-Core, so ensure we don't pick this
up from the build host if e.g. openmpi development files happen to be
installed there.
Fixes [YOCTO #3726].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Thu, 24 Jan 2013 20:18:23 +0000 (12:18 -0800)]
gawk: Add missing dependency on readline
building from shared state often ends up with
|
/b/kraj/angstrom/build/tmp-angstrom_next-uclibc/work/i586-angstrom-linux-uclibc/gawk/4.0.1-r1/gawk-4
.0.1/debug.c:4135: undefined reference to `rl_reset_terminal'
|
/b/kraj/angstrom/build/tmp-angstrom_next-uclibc/work/i586-angstrom-linux-uclibc/gawk/4.0.1-r1/gawk-4
.0.1/debug.c:4138: undefined reference to `rl_get_screen_size'
| debug.o: In function `unserialize':
Adding the missing readline dependency to fix such cases
where readline has not been populated in sysroot via some
other dependency and gawk would then use it or bail out.
Khem Raj [Thu, 24 Jan 2013 02:29:44 +0000 (18:29 -0800)]
libpcap: Turn canusb support into PACKAGECONFIG
libpcap notices libusb in its configure if its sysrooted
and ignores it if its not. But this causes problems since
there is no explicit dependency on libusb. Rebuild from shared
state sometimes fails when libusb has not been yet populated
in sysroot and libpcap has. And do_configure of consumers of libpcap e.g. tcpdump
are probing for features on libpcap. All the tests fail since
none of link steps succeed and it sees as if libpcap does
not have required features and configure of tcpdump bails out.
turn canusb into PACKAGECONFIG and let it be disabled
by default.
Backport additional patches needed for disable-canusb to work
Khem Raj [Thu, 24 Jan 2013 21:07:24 +0000 (13:07 -0800)]
libtirpc: Disable DES functions on uclibc
uclibc does not provide these functions so dont expect them
/usr/lib/libtirpc.so: undefined reference to `key_encryptsession_pk'
/usr/lib/libtirpc.so: undefined reference to `getnetname'
/usr/lib/libtirpc.so: undefined reference to `cbc_crypt'
/usr/lib/libtirpc.so: undefined reference to `ecb_crypt'
/usr/lib/libtirpc.so: undefined reference to `getpublickey'
/usr/lib/libtirpc.so: undefined reference to `key_gendes'
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Thu, 24 Jan 2013 21:07:29 +0000 (13:07 -0800)]
tcmode-default.inc: Switch to git version of uclibc by default
systemd related functionality is tested in latest git of uclibc
therefore lets use it as default provider for uclibc as its the
most tested version on master
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Constantin Musca [Thu, 24 Jan 2013 16:07:24 +0000 (18:07 +0200)]
wpa-supplicant: upgrade to 2.0
- as of February 11, 2012, the project has chosen to use only
the BSD license option for future distribution
- wpa-supplicant-1.0 dir was not version specific,
as such it is generic now
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
No where in the systemd readme does it specify that usbutils
is a dependancy of systemd. I can only guess that it was added
due to an issue elsewhere in the chain or it was brought in
when udev was merged and the dependancies never checked.
I have build tested this with no issues.
Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wenzong Fan [Fri, 25 Jan 2013 08:06:56 +0000 (16:06 +0800)]
git: remove unpackaged perl-native files
${libdir} is not applicable for the install path of perl-native files,
files are always installed to /usr/lib no matter the target is 32/64
bits. After installing, remove unpackaged and unneeded perl-native
files to prevent warnings.
Fix warning:
WARNING: For recipe git, the following files/directories were \
installed but not shipped in any package:
...
WARNING: /usr/lib/perl-native/perl/5.14.2/Git.pm
WARNING: /usr/lib/perl-native/perl/5.14.2/perllocal.pod
WARNING: /usr/lib/perl-native/perl/5.14.2/Error.pm
WARNING: /usr/lib/perl-native/perl/5.14.2/auto
[YOCTO#3780]
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Kang Kai [Mon, 21 Jan 2013 08:57:12 +0000 (16:57 +0800)]
perl: update to 5.14.3
There is a securty issue:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-5195
Update perl to 5.14.3 to resolve this problem.
Patches hurd-ccflags.diff, h2ph-multiarch.diff, index-tainting.diff and
hurd-hints.diff have been merged, so remove them from SRC_URI.
Update patches config.sh and Makefile.SH.patch with new PV.
Kang Kai [Mon, 21 Jan 2013 09:03:21 +0000 (17:03 +0800)]
perl-native: update to 5.14.3:
There is a securty issue:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-5195
Update perl to 5.14.3 could resolve this problem. And update perl-native
first.
Richard Purdie [Wed, 23 Jan 2013 14:28:31 +0000 (14:28 +0000)]
sstate: Add optimisation for useradd injected dependencies
useradd.bbclass adds sstate dependencies on base-passwd, shadow-native and
shadow-sysroot. Due to the way these are injected, they interact badly with
the other dependency validation logic and end up pulling in dependencies we
don't actually need. This patch adds code to optimise those cases out.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 23 Jan 2013 14:27:33 +0000 (14:27 +0000)]
Split do_packagedata task from do_package
Currently, do_rootfs has a dependency on all the do_package output being present
due to its usage of the pkgdata directories. This means that if you run:
bitbake xxxx-image -c rootfs
you end up having to fetch and unpack all the do_package data which is usually
large and inefficient. It also means rm_work has to leave all the do_package
data lying around so rootfs works.
This patch splits the actual creation of the pkgdata directory off into a separate
task, "packagedata" which happens immediately after do_package. We can then remap
the dependencies so this task is depended upon, not do_package. Sstate can then be
programmed not to require do_package at the appropriate times.
Whilst this patch doesn't do so, it opens the possibility of rm_work wiping
out the do_package output from WORKDIR as long as it also removed the do_package
stamp (both normal and setscene variants) and allowing more space savings
with rm_work which has been regularly requested.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Constantin Musca [Fri, 18 Jan 2013 11:48:29 +0000 (13:48 +0200)]
packagegroup-core-gtk-directfb: rename to packagegroup-core-directfb
- DirectFB is not supported by gtk versions >= 2.18
- remove the backwards compatibility statements (packagegroup-core-directfb
is an independent packagegroup)
- remove all gtk dependencies
[YOCTO #3642]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Wed, 23 Jan 2013 06:08:04 +0000 (14:08 +0800)]
init-live.sh: move /media/xxx over to the real root filesystem
Previously, the /media/xxx which contains the root image was not
moved to be under the real root filesystem. Because of this, the
output of the 'mount' command is somewhat confusing, that is, it
has some mount point that is not even in the filesystem.
Besides, on some machine, it caused the recovery procedure when we
booted it next time.
This patches fixes this issue by moving the /media/xxx over to be
under the real root filesystem.
[YOCTO #2064]
[YOCTO #3705]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
MiLo [Mon, 21 Jan 2013 08:46:59 +0000 (09:46 +0100)]
gcc: Enable OpenMP compiling and library
Multicore embedded systems are getting more and more common.
Remove "--disable-openmp" from the GCC configuration options and
always build libgomp. This only creates a "bigger" compiler but
has no effect on the compiled binaries that don't use openmp.
Tested a clean build on mips32el and arm7a, no problems encountered.
Autoconf will not detect OpenMP after this change, because it will
build and run a target binary on the build system. In order to use
OpenMP, the variable ac_cv_prog_c_openmp=-fopenmp must be set.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The rearrangement of various file contents left these empty modules which
don't get packaged and hence lead to image creation errors on anything using
them. This patch ensures the dependencies are attached to the packages
which contain the config files or the build module infrastructure as
appropriate. It also resolves some confusion over whether the name is
perl-module-build or perl-module-module-build, the latter being the
autogenerated dependency which previously couldn't be found.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sat, 19 Jan 2013 23:49:24 +0000 (23:49 +0000)]
perl: Add dyanloader build hack
Patch perl to allow builds to work where a native perl running against target modules
attempts to load a dynamic binary module. We assume that a native version of the
module exists as it would for the target and perform an appropriate path
substitution.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sat, 19 Jan 2013 23:48:46 +0000 (23:48 +0000)]
perl-native: Add errno_ver.diff patch to native perl
Apply the errno_ver.diff patch to the native perl version. This ensures that when
we're building target modules, running the native perl binary but in a target
configuration we don't see error messages.
libencode-detect-perl is a module which tests this.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Fri, 25 Jan 2013 11:28:57 +0000 (11:28 +0000)]
rpm: properly disable perl file dependency checking for rpmdeps
We don't want the perl module dependencies being added to each package
by rpmdeps because it causes too many problems when the modules aren't
available at install time (since they get added in do_package which is
too late for the build system to ensure they are available), and it
appears that the perl dependency gathering isn't working reliably in any
case judging by how they are detected on some build hosts and not
others.
This was being disabled previously but it seems like the macros moved
to a different file at some point and nobody noticed; thus make sure we
disable the macros in all RPM macro files.
Should fix [YOCTO #3699].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Wed, 23 Jan 2013 02:45:00 +0000 (18:45 -0800)]
systemd: Fix build on ppc
ppc discovers an interesting issue in linking systemd where a library is
missing in link cmdline and linker barfs
./.libs/libsystemd-core.a(libsystemd_core_la-manager.o): In function
`manager_check_finished':
/builddir/build/BUILD/systemd-196/src/core/manager.c:2092: undefined
reference to `sd_notifyf'
collect2: error: ld returned 1 exit status
Paul Eggleton [Wed, 23 Jan 2013 12:10:10 +0000 (12:10 +0000)]
zypper: remove
Functionality provided by Zypper is now covered more effectively by
Smart (python-smartpm) which is now being used for package management
on the target when enabled and RPM packaging is selected.
Fixes [YOCTO #3349].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 21 Jan 2013 22:49:50 +0000 (22:49 +0000)]
packagedata: Add error message if multiple recipes try to write the same package
If multiple recipes try and write the same package it resulted in a
rather confusing traceback and unintuitive error. This patch
prints a human readable error instead.
[YOCTO #3645]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 24 Jan 2013 05:56:11 +0000 (21:56 -0800)]
core-image: Add hwcodecs IMAGE_FEATURE
Currently hardware codecs are being injected in rather ugly ways and end up
either in no or all images. This adds a dedicated IMAGE_FEATURE for them based
on the MACHINE_HWCODECS variable. We may need to refine this in due course
but this patch at least illustrates the concept.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
At present its hard for the system to provide extra x11 hardware codecs.
We could lump them in with the XSERVER variable but this is suboptimal as
in some use cases the user might not want to include them in some images.
With this patch we keep our options open about separating usage of the two
in the future.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Instead, do the backfilling at ConfigParse time so that it happens earlier in
the parse, which results in that inherit behaving as expected when sysvinit was
backfilled.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>