Khem Raj [Sun, 23 Oct 2011 14:31:07 +0000 (07:31 -0700)]
pulseaudio: inherit perlnative
manpage generatition uses xmltoman utility
which inturn uses xml-parser. So we add
libxml-parser-perl-native to DEPENDS and also
inherit perlnative so it does not use the one
from build host
Martin Jansa [Tue, 18 Oct 2011 21:03:20 +0000 (23:03 +0200)]
libatomics-ops: force ARM mode
* otherwise ie spitz (armv5te) build fails with:
| make[3]: Entering directory `/OE/shr-core/tmp/work/armv5te-oe-linux-gnueabi/libatomics-ops-1.2-r5/libatomic_ops-1.2/src'
| arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=xscale --sysroot=/OE/shr-core/tmp/sysroots/spitz -DHAVE_CONFIG_H -I. -fPIC -O
2 -pipe -g -feliminate-unused-debug-types -DNDEBUG -c atomic_ops.c
| arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=xscale --sysroot=/OE/shr-core/tmp/sysroots/spitz -DHAVE_CONFIG_H -I. -fPIC -O
2 -pipe -g -feliminate-unused-debug-types -DNDEBUG -c atomic_ops_stack.c
| arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=xscale --sysroot=/OE/shr-core/tmp/sysroots/spitz -DHAVE_CONFIG_H -I. -fPIC -O
2 -pipe -g -feliminate-unused-debug-types -DNDEBUG -c atomic_ops_malloc.c
| atomic_ops_malloc.c: In function 'msb':
| atomic_ops_malloc.c:223:2: warning: right shift count >= width of type [enabled by default]
| rm -f libatomic_ops_gpl.a
| ar cru libatomic_ops_gpl.a atomic_ops_stack.o atomic_ops_malloc.o
| arm-oe-linux-gnueabi-ranlib libatomic_ops_gpl.a
| {standard input}: Assembler messages:
| {standard input}:286: Error: selected processor does not support Thumb mode `swp r1,r2,[r3]'
| {standard input}:329: Error: selected processor does not support Thumb mode `swp r0,r1,[r3]'
* this is just work around, proper fix proposed by Henning Heinold
hm we should think of reworking this recipe now. Because since gcc 4.5
pulseaudio for arm can use the gcc internal atomicstuff and in oe-core
and meta-oe we have 4.5 or 4.6 only. The lib is
only needed for mips and it is still the old release, on cvs
is a much better version, which supports thumb too, if
remember correctly.
Richard Purdie [Mon, 14 Nov 2011 17:43:45 +0000 (17:43 +0000)]
dpkg/update-alternatives: Fix dpkg version of update-alternatives to be usable
The version of dpkg the updates-alternatives-dpkg recipe pointed
at no longer used a perl script but a compiled binary. This meant
the "all" architecture field was invalid, as as the sed operation
during do_patch. All things considered the separate recipe was
pretty pointless.
This patch moves update-alternatives back to being built as part
of the dpkg recipe. It also moves various functionalty to the .inc
file which it belongs and fixes building and packaging of the dpkg
perl modules.
Richard Purdie [Mon, 14 Nov 2011 12:45:57 +0000 (12:45 +0000)]
base-passwd: Fix the broken preinst/postinstall
The preinst accesses file which may not yet have been unpacked.
The postinst is too late for the creation of these files
for at least the opkg backend.
This patch therefore encodes the file contents into the preinst,
resolving the various issues once and for all.
Richard Purdie [Fri, 11 Nov 2011 17:17:01 +0000 (17:17 +0000)]
opkg: Ensure we use the uname/gname fields when extracting tarballs
When extracting packages onto the target system in particular, we
really want to ensure the name fields in the tarball are used over
and above the numerical uid/gid values. This patch adds this
functionality to opkg and ensures package upgrades work correctly
permission wise.
Richard Purdie [Sat, 12 Nov 2011 08:36:55 +0000 (08:36 +0000)]
rootfs_ipk.bbclass: Ensure bad recommendations persist in the status file
Currently bad recommendations are added to the status file with status
"ok". After a single opkg command, whilst it will ignore the recommendation,
the status changes to "installed" even if the recommended package was not
installed. Whilst this is likely a glitch in opkg's logic, the correct
way to persist the information in the status file is to set the status
to "hold" as deinstall packages with that status remain. With this change
the bad recommendations persist accross multiple opkg runs and the system
behaves as expected.
Paul Eggleton [Fri, 21 Oct 2011 13:49:39 +0000 (14:49 +0100)]
util-linux: split out mkfs into its own package
For those external tools such as Webmin that call mkfs to do formatting
operations, it is useful to have it in its own package to avoid dragging
in the rest of util-linux.
Mark Hatle [Wed, 9 Nov 2011 23:02:43 +0000 (17:02 -0600)]
shadow: Generate the shadow files at rootfs construction
With the recent changes to the shadow-native package support "--root",
we can now convert the passwd/group files to their shadow forms while
doing the rootfs install, instead of waiting to run on the target.
Mark Hatle [Thu, 10 Nov 2011 17:43:02 +0000 (11:43 -0600)]
rootfs_rpm.bbclass: Turn off script debugging
Disable script debugging, as the log files become huge and take a
long time to process during the log check step. This results in a
performance improvement.
Mark Hatle [Thu, 10 Nov 2011 16:30:21 +0000 (10:30 -0600)]
rootfs_rpm.bbclass: Enable pre and post install scripts
[YOCTO #1755]
We change the want the RPM rootfs install works to install pre and post install
scripts. The new method uses a script helper that is invoked by RPM outside
of the normal chroot.
The wrapper is dynamically generated prior to the install starting. It will
check the return code of the script. If the script fails, it will store a copy
to be executed on the first system boot. This is similar to the previous
mechanism.
In addition, a line of debug was added to the scripts as written by package_rpm
to list which package and which script for later debugging, if necessary.
Darren Hart [Tue, 8 Nov 2011 18:21:28 +0000 (10:21 -0800)]
ncurses: refactor configure to avoid configuring widec when disabled
The ENABLE_WIDEC variable can be used to disable ncurses wide character support
when your C library doesn't support it. Currently, the do_configure step
configures for both narrow and wide characters regardless and only checks
ENABLE_WIDEC during compilation. This leads to QA failures with host
contamination during configure if the C library doesn't support wide characters.
Refactor do_configure with a new ncurses_configure helper function and only
configure for wide character support if ENABLE_WIDEC is true.
Ensure that configure errors are propogated back through to do_configure.
Tested with ENABLE_WIDEC as true and false via an ncurses bbappend on i586,
including basic error injection.
Saul Wold [Tue, 8 Nov 2011 20:29:24 +0000 (12:29 -0800)]
udev-extraconf: blacklist /dev/md
Do not mount /dev/md by default via udev, this resolved a problem
with the sanity test failing due to seeing the error while attempting
to mount /dev/md0
Scott Garman [Wed, 9 Nov 2011 02:23:48 +0000 (18:23 -0800)]
useradd.bbclass: only modify packages in USERADD_PACKAGES
Previously we injected the user/group preinstall script into all
output packages. This fixes that so that only packages listed in
USERADD_PACKAGES get modified.
It also removes the USERADDPN variable, which is no longer needed.
Paul Eggleton [Wed, 9 Nov 2011 11:33:41 +0000 (11:33 +0000)]
busybox: add grep to temporary links during uninstall
In the busybox package prerm we set up some temporary links and modify
PATH so that certain utilities are provided for the purpose of running
update-alternatives; if grep is not among these then you get errors when
removing busybox, so add a temporary link for grep as well.
Paul Eggleton [Wed, 9 Nov 2011 11:12:08 +0000 (11:12 +0000)]
classes/package_rpm: disable uninstall scripts for upgrades
Our current assumption (based on the behaviour of opkg) when writing
recipes is that prerm and postrm do not get called during an upgrade.
When using rpm however, these are mapped to the rpm "preun" and "postun"
events which occur after postinst for upgrades, and when these contain
removal type operations (such as update-alternatives --remove) this
causes problems.
This patch wraps each preun and postun script for rpm in a check that
determines whether or not the script is being called during an upgrade,
and skips the entire script if it is, which mimics the behaviour of opkg
under the same conditions.
Tom Zanussi [Sat, 5 Nov 2011 01:25:03 +0000 (20:25 -0500)]
python: skip setup.py 'import check' when cross-compiling
build_extension() in setup.py, as part of the build process, does an
'import check' on the built extension. The import check in turn
dlopen()'s the shared library associated with the extension, which
isn't something that makes sense if that library was cross-compiled
for a different architecture.
This was noticed with an x86_64 target that was compiled with avx
support, because it caused 'illegal instruction' exceptions:
For other target architectures, it doesn't necessarily cause illegal
instruction exceptions, but still fails. For example, on arm, the
failure pathway causes this warning:
*** WARNING: renaming "cmath" since importing it failed: .../cmath.so:
wrong ELF class: ELFCLASS32
This patch to setup.py and the associated recipe changes allow the
whole 'import check' logic to be skipped when cross-compiling.
Tom Zanussi [Wed, 2 Nov 2011 03:47:53 +0000 (22:47 -0500)]
libzypp: fix mishandling of hyphenated arches
Several hyphen-to-underscore translations were missing, causing
compiler errors trying to build arches with hyphens in their names.
This adds the missing translations.
Eric Bénard [Tue, 8 Nov 2011 15:46:38 +0000 (16:46 +0100)]
useradd.bbclass: handle nativesdk case
* without this patch, building dbus-nativesdk leads to a missing
dependency on 'base-passwd-nativesdk'
This was added by commit 46e6c3fa8034b12d178d605f3f5d7efe69671a13
* this patch handle the nativesdk case in the class useradd
* close bug 1702 http://bugzilla.pokylinux.org/show_bug.cgi?id=1702
* v2 from Scott Garman with Richard Purdie's tricks
Signed-off-by: Eric Bénard <eric@eukrea.com> Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Dongxiao Xu [Tue, 8 Nov 2011 06:19:37 +0000 (14:19 +0800)]
multilib: Drop MULTILIB_IMAGE_INSTALL
There should just be a single IMAGE_INSTALL variable. If the package
backends need this split into different multilib components they should
be responsible for doing this, not the user.
This commit removes the MULTILIB_IMAGE_INSTALL variable.
Eric Bénard [Tue, 8 Nov 2011 08:41:48 +0000 (09:41 +0100)]
dbus: fix install for virtclass-nativesdk
* 46e6c3fa8034b12d178d605f3f5d7efe69671a13 changed do_install
which now fails for nativesdk (chown messagebus leads to no
such user)
* tested by building meta-toolchain-qte and running the generated
sdk
Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Touchpad did not work in the qtdemoE if the library libts-1.0.so was not loaded
manually using the LD_PRELOAD variable. This problem was fixed in the tslib mainline
https://github.com/kergoth/tslib after the 1.0 release. We just import the patch.
Kumar Gala [Wed, 2 Nov 2011 07:23:14 +0000 (02:23 -0500)]
udev-164: Update init script to do an explicit add action
With udev 152 or greater the default action for 'udevadm trigger' was
modified to be 'change' instead of 'add.
To ensure initial coldplug events at boot are seen be scripts the are
expecting them as 'add' events we invoke udevadm with an explicit
'--action=add'.
tmpfs/encryptfs/(and most likely, but not confirmed)ramfs TMPDIRs
cause diskstats to choke. No device entry ends up in /proc/diskstats
for these fs types, which ends up causing the failure.
The short term solution is to exclude these fs types from diskstat
collection. Longer term we will want to see if we can collect
meaningful diskio for each of these, and other, use cases, but for
this cleans up Bug 1700.
Saul Wold [Thu, 27 Oct 2011 14:15:36 +0000 (16:15 +0200)]
connman: Use useradd to add the xuser for DBus
Connmand needs to start as the xuser as defined in the dbus
configuration and needs to share this with rootless X. Since
it's possible for connmand to run on a sytem without rootless
X we still need to create the user here.
Useradd will fail gracefully if the user already exists.
Richard Purdie [Tue, 1 Nov 2011 14:21:11 +0000 (14:21 +0000)]
package.bbclass: Fix various problems
Before this change:
a) Ownership and permissions of files copied from packages to
package-split could get lost during the copy process. This change
ensures they are preserved.
b) Ownership and permissions of directories could also get lost.
Most of the complexity in this patch is addressing this problem
ensuring newly created directories match the source ones being
copied.
c) There was no warning about directories being created but not
shipped by any package.
Julian Pidancet [Wed, 26 Oct 2011 21:41:23 +0000 (22:41 +0100)]
Give coreutils a chance to build the df utility
The coreutils configure script is unable determine how to get free
space from the Operating System when cross-compiling.
This changes caches the result of the "statfs2_bsize" test for the
coreutils configure script.
Both glibc and uclibc defines statfs as a two-argument function
and uses a struct statfs containing a f_bsize field. That's why
the fu_cv_sys_stat_statfs2_bsize variable has to be defined for
both libcs.
Khem Raj [Sun, 23 Oct 2011 14:31:07 +0000 (07:31 -0700)]
pulseaudio: inherit perlnative
manpage generatition uses xmltoman utility
which inturn uses xml-parser. So we add
libxml-parser-perl-native to DEPENDS and also
inherit perlnative so it does not use the one
from build host
Otavio Salvador [Thu, 20 Oct 2011 21:20:43 +0000 (21:20 +0000)]
base-passwd: move initial criation of group and passwd to preinst
To allow use and manipulation of users and groups at rootfs building
time, the '/etc/passwd' and '/etc/group' needs to be available as soon
as possible.
Otavio Salvador [Thu, 20 Oct 2011 21:18:11 +0000 (21:18 +0000)]
useradd.bbclass: check if a group already exists manually
The use of groupadd -f makes much more difficult to figure when a
group is not add. This was the case of the class not working for our
usage and this being caused by the lack of '/etc/group' file but
unnoticed as groupadd wasn't failing according.
Anders Darander [Wed, 19 Oct 2011 11:15:19 +0000 (13:15 +0200)]
module.bbclass: add lock to prevent error bulding ext modules
When external modules are built, files in $STAGING_KERNEL_DIR/scripts/basic will/can get
rebuilt.
This raises a potential race condition. Prevent this by adding a lock around the
do_make_scripts() function. Further, make sure that the kernel has been installed
to the sysroot, prior to executing this new task.
Khem Raj [Tue, 18 Oct 2011 01:00:29 +0000 (18:00 -0700)]
gcc-4.6: Backport PR46934 fix
We have been hitting this issue on ARM/thumb and
have a workaround in place to compile samba
http://git.openembedded.org/openembedded/commit/recipes/samba/samba_3.2.15.bb?id=4ba7aa07c0dcd28f94515ff9927e2a04403fcf15
This backport should fix the gcc bug
Martin Jansa [Mon, 17 Oct 2011 22:09:20 +0000 (00:09 +0200)]
fontconfig: fix fix-pkgconfig.patch
* missing $ is causing problems ie when building webkit-efl
* see http://lists.linuxtogo.org/pipermail/openembedded-core/2011-June/003798.html
for details
Xiaofeng Yan [Mon, 17 Oct 2011 09:24:34 +0000 (17:24 +0800)]
lsb: Change link of ${baselib} to lib64 for 64bits system
Correct two faults:
1 Binaries of lsb test suite need ld-linux.so* in /lib64.
for example:
Target$ ./lsbcmdchk
-sh: ./lsbcmdchk: No such file or directory
Target$ strings lsbcmdchk | grep "ld-"
/lib64/ld-lsb-x86-64.so.3
"lsbcmdchk" from lsb test suite is a binary program.
A new modification to lsb_1.4.bb caused that binaries from lsb test suite can't run
because binaries of lsb test suite need ld-linux.so* in /lib64.
But the link is changed due to adding multilib. I changed this link again.
2 correct mandir
Waring will appear when running task task do_populate_sysroot
NOTE: package lsb-1.4-r2: task do_populate_sysroot: Succeeded
WARNING: For recipe lsb, the following files were installed but not shipped in any package:
WARNING: /{datadir}/man/man1/lsb_release.1.gz
I changed mandir=${D}/man to mandir=${D}/${datadir}/man
Samuel Stirtzel [Tue, 13 Sep 2011 11:30:33 +0000 (13:30 +0200)]
data.py: fixed message domain errors
The dynamic message domain was introduced by Richard Purdie with the following patch:
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=a6c48298b17e6a5844b3638b422fe226e3b67b89
Samuel Stirtzel [Tue, 13 Sep 2011 11:30:32 +0000 (13:30 +0200)]
patch.py: fixed message domain errors
The dynamic message domain was introduced by Richard Purdie with the following patch:
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=a6c48298b17e6a5844b3638b422fe226e3b67b89
Wenzong Fan [Tue, 11 Oct 2011 08:32:23 +0000 (16:32 +0800)]
qt4-x11-free: Fix broken regexes in qt4-x11-free's recipe.
[YOCTO #1671]
qt4-x11-free's recipe includes a sed script to sanitize it's .prl files,
which are used by qmake to generate a list of libs and includes in the
Makefiles it generates. It however, fails to take into account the possibility
of trailing slashes, and thus leaves them in, and breaks gcc's syntax.
Update these regexes to account for them.
Signed-off-by: Tom Rini <tom_rini@mentor.com> Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Julian Pidancet [Fri, 7 Oct 2011 00:13:41 +0000 (01:13 +0100)]
Use useradd and update-rc.d classes in the OpenSSH recipe
The current sshd postinst and postrm scripts in the OpenSSH make the
package dependant of the adduser/addgroup scripts which may not be
available on all systems.
This patch replaces the sshd postinst and postrm scripts with proper
usage of the useradd and update-rc.d classes.
This patch had been modified from the previous proposed version to
use useradd long options for more clarity.
Julian Pidancet [Fri, 7 Oct 2011 00:13:40 +0000 (01:13 +0100)]
Fix the --root option in shadow-native programs
The add_root_cmd_options.patch that we apply to shadow-native allow the
various programs from the shadow utility package to chroot() so they can
be used to modify etc/passwd and etc/group if they are located in a
sysroot.
Some of the shadow programs (gpasswd, useradd and usermod) need to parse
the command line in two passes. But we can't use getopt_long() twice
because getopt_long() reorders the command line arguments, and
consequently corrupts the option parsing during the second pass.
This patch fixes this issue by replacing the first pass by a very simple
manual walk of the command line to handle the --root argument.
This change is a patch of another patch, I apologize if it is
difficult to read. But IMHO it wouldn't make sense to put the patch for
this issue in another separated file.
The --root options in groupadd and useradd are needed to make the
useradd class work, and this issue was preventing to use useradd and
groupadd long options while using the class.
Jason Wessel [Wed, 5 Oct 2011 15:26:30 +0000 (10:26 -0500)]
Allow user mode NFS server to run without rpcbind / portmap
and nfsroot mount without the need to talk to an RPC info
server as long as the port numbers for mountd and nfsd
are known in advance.
This patch updates the qemu startup scripts and the
user mode NFS server to have the ability to start
without the need to use rpcbind or portmap services.