Misc Fixes
cover Misc Fixes
From: Nitin A Kamble <[email protected]>
The following changes since commit 06fc2d2ec8e72f063f2c67601b2f027f76971e05:
documentation/dev-manual/dev-manual-common-tasks.xml: Title change (2012-03-30 17:20:51 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib nitin/misc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/misc
Nitin A Kamble (3):
nasm: fix issue with repeat configure cross-canadian.bbclass: fix rpath for sdk executables
poky-tiny: avoid eglibc locale packaging
meta-yocto/conf/distro/poky-tiny.conf | 3 +++ meta/classes/cross-canadian.bbclass | 4 +++- meta/recipes-devtools/nasm/nasm_2.07.bb | 8 ++++---- 3 files changed, 10 insertions(+), 5 deletions(-)
Signature · 1 line
1.7.6.4
PATCH 1/3 nasm: fix issue with repeat configure
From: Nitin A Kamble <[email protected]>
This Fixes bug: [YOCTO #2176]
This fixes the following issue as mentioned in the bug:
If nasm-native has to be rebuilt (due to a signature change) it will fail:
| checking for a BSD-compatible install... /usr/bin/install -c
| /media/large/tmp/work/x86_64-linux/nasm-native-2.07-r1/nasm-2.07/configure:
line 4261: syntax error near unexpected token `-W'
| /media/large/tmp/work/x86_64-linux/nasm-native-2.07-r1/nasm-2.07/configure:
line 4261: `PA_ADD_CFLAGS(-W)'
| ERROR: oe_runconf failed
NOTE: package nasm-native-2.07-r1: task do_configure: Failed
The failure appears to be caused by do_patch_fixaclocal being run a second time
--- meta/recipes-devtools/nasm/nasm_2.07.bb | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-)
meta/recipes-devtools/nasm/nasm_2.07.bb +4 -4
@@ -13,12 +13,12 @@ SRC_URI[sha256sum] = "ac70ee451c73d742c9ff830502e5f8b1f648b2abffa8fd00944243283b inherit autotools -do_patch_fixaclocal () { - mv aclocal.m4 acinclude.m4 +do_configure_prepend () { + if [ -f aclocal.m4 ] && [ ! -f acinclude.m4 ]; then + mv aclocal.m4 acinclude.m4 + fi } -addtask do_patch_fixaclocal after do_patch before do_configure - do_install() { install -d ${D}${bindir} install -d ${D}${mandir}/man1
Signature · 1 line
1.7.6.4
PATCH 2/3 cross-canadian.bbclass: fix rpath for sdk executables
From: Nitin A Kamble <[email protected]>
This makes the libraries located in places like this findable:/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib
Which avoids linking cross canadian sdk executables with host libraries like this:
$ ldd /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/bin/x86_64-oe-linux/x86_64-oe-linux-gdb
linux-vdso.so.1 => (0x00007fffb7fff000)
libreadline.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libreadline.so.6 (0x00007fbfb5511000)
libdl.so.2 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libdl.so.2 (0x00007fbfb530c000)
libncurses.so.5 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libncurses.so.5 (0x00007fbfb50e9000)
libtinfo.so.5 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libtinfo.so.5 (0x00007fbfb4ec2000)
libz.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libz.so.1 (0x00007fbfb4cac000)
libm.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libm.so.6 (0x00007fbfb4a2a000)
libpthread.so.0 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libpthread.so.0 (0x00007fbfb480d000)
libutil.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libutil.so.1 (0x00007fbfb4609000)
libexpat.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libexpat.so.1 (0x00007fbfb43e0000)
libc.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libc.so.6 (0x00007fbfb4059000)
/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x0000003f05000000)--- meta/classes/cross-canadian.bbclass | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
meta/classes/cross-canadian.bbclass +3 -1
@@ -48,7 +48,9 @@ DPKG_ARCH = "${SDK_ARCH}" CPPFLAGS = "${BUILDSDK_CPPFLAGS}" CFLAGS = "${BUILDSDK_CFLAGS}" CXXFLAGS = "${BUILDSDK_CFLAGS}" -LDFLAGS = "${BUILDSDK_LDFLAGS}" +LDFLAGS = "${BUILDSDK_LDFLAGS} \ + -Wl,-rpath-link,${STAGING_LIBDIR}/.. \ + -Wl,-rpath,${libdir}/.. " DEPENDS_GETTEXT = "gettext-native gettext-nativesdk"
Signature · 1 line
1.7.6.4
Re: [PATCH 2/3] cross-canadian.bbclass: fix rpath for sdk executables
Quoted 31 lines · On Fri, Mar 30, 2012 at 03:52:05PM -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This makes the libraries located in places like this findable:
/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/libWhich avoids linking cross canadian sdk executables with host libraries like this:
$ ldd /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/bin/x86_64-oe-linux/x86_64-oe-linux-gdb linux-vdso.so.1 => (0x00007fffb7fff000) libreadline.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libreadline.so.6 (0x00007fbfb5511000) libdl.so.2 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libdl.so.2 (0x00007fbfb530c000) libncurses.so.5 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libncurses.so.5 (0x00007fbfb50e9000) libtinfo.so.5 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libtinfo.so.5 (0x00007fbfb4ec2000) libz.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libz.so.1 (0x00007fbfb4cac000) libm.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libm.so.6 (0x00007fbfb4a2a000) libpthread.so.0 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libpthread.so.0 (0x00007fbfb480d000) libutil.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libutil.so.1 (0x00007fbfb4609000) libexpat.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libexpat.so.1 (0x00007fbfb43e0000) libc.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libc.so.6 (0x00007fbfb4059000) /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x0000003f05000000)Signed-off-by Nitin A Kamble <[email protected]>--- meta/classes/cross-canadian.bbclass | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)meta/classes/cross-canadian.bbclass +0
-0
meta/classes/cross-canadian.bbclass DPKG_ARCH = "${SDK_ARCH}" · line 53
Quoted 7 lines
meta/classes/cross-canadian.bbclass +3
-1@@ -48,7 +48,9 @@ DPKG_ARCH = "${SDK_ARCH}" CPPFLAGS = "${BUILDSDK_CPPFLAGS}" CFLAGS = "${BUILDSDK_CFLAGS}" CXXFLAGS = "${BUILDSDK_CFLAGS}" -LDFLAGS = "${BUILDSDK_LDFLAGS}" +LDFLAGS = "${BUILDSDK_LDFLAGS} \ + -Wl,-rpath-link,${STAGING_LIBDIR}/.. \ + -Wl,-rpath,${libdir}/.. "
https://wiki.yoctoproject.org/wiki/Recipe_%26_Patch_Style_Guide#White_Space_Management
says you should use spaces for indentation (except shell functions and some but not all python functions e.g populate_packages)
Maybe someone should write vim-syntax file for .bb and .bbclass :).
Cheers,
Quoted 10 lines
meta/classes/cross-canadian.bbclass +0
-0DEPENDS_GETTEXT = "gettext-native gettext-nativesdk"Signature · 6 lines
1.7.6.4 _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
Signature · 1 line
Martin 'JaMa' Jansa jabber: [email protected]
Re: [PATCH 2/3] cross-canadian.bbclass: fix rpath for sdk executables
Quoted 1 line · Martin Jansa
Maybe someone should write vim-syntax file for .bb and .bbclass :).
Re: [PATCH 2/3] cross-canadian.bbclass: fix rpath for sdk executables
In reply to [email protected]Quoted 31 lines · On Fri, 2012-03-30 at 15:28 -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This makes the libraries located in places like this findable:
/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/libWhich avoids linking cross canadian sdk executables with host libraries like this:
$ ldd /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/bin/x86_64-oe-linux/x86_64-oe-linux-gdb linux-vdso.so.1 => (0x00007fffb7fff000) libreadline.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libreadline.so.6 (0x00007fbfb5511000) libdl.so.2 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libdl.so.2 (0x00007fbfb530c000) libncurses.so.5 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libncurses.so.5 (0x00007fbfb50e9000) libtinfo.so.5 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libtinfo.so.5 (0x00007fbfb4ec2000) libz.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libz.so.1 (0x00007fbfb4cac000) libm.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libm.so.6 (0x00007fbfb4a2a000) libpthread.so.0 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libpthread.so.0 (0x00007fbfb480d000) libutil.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libutil.so.1 (0x00007fbfb4609000) libexpat.so.1 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/x86_64-oe-linux/../libexpat.so.1 (0x00007fbfb43e0000) libc.so.6 => /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/libc.so.6 (0x00007fbfb4059000) /usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x0000003f05000000)Signed-off-by Nitin A Kamble <[email protected]>--- meta/classes/cross-canadian.bbclass | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)meta/classes/cross-canadian.bbclass +0
-0
meta/classes/cross-canadian.bbclass DPKG_ARCH = "${SDK_ARCH}" · line 55
Quoted 9 lines
meta/classes/cross-canadian.bbclass +3
-1@@ -48,7 +48,9 @@ DPKG_ARCH = "${SDK_ARCH}" CPPFLAGS = "${BUILDSDK_CPPFLAGS}" CFLAGS = "${BUILDSDK_CFLAGS}" CXXFLAGS = "${BUILDSDK_CFLAGS}" -LDFLAGS = "${BUILDSDK_LDFLAGS}" +LDFLAGS = "${BUILDSDK_LDFLAGS} \ + -Wl,-rpath-link,${STAGING_LIBDIR}/.. \ + -Wl,-rpath,${libdir}/.. " DEPENDS_GETTEXT = "gettext-native gettext-nativesdk"
I've merged this, fixing the whitespace myself this time. Please keep an eye on whitespace in future (as commented on the version of this that went to the poky list accidentally).
Cheers,
Richard
PATCH 3/3 poky-tiny: avoid eglibc locale packaging
In reply to [email protected]From: Nitin A Kamble <[email protected]>
This fixes bug: [YOCTO #2089]
This avoids these errors
NOTE: package eglibc-locale-2.13-r19: task do_populate_sysroot: Started
ERROR: Error executing a python function in /opt/poky.git/meta/recipes-core/eglibc/eglibc-locale_2.13.bb:
OSError: [Errno 2] No such file or directory:
'/home/rchatre/concordia/dev/ccd-distro-work/tmp/work/core2-poky-linux/eglibc-locale-2.13-r19/package/usr/lib/gconv'
ERROR: The stack trace of python calls that resulted in this exception/failure was:
ERROR: File "package_do_split_gconvs", line 264, in <module>
ERROR:·
ERROR: File "package_do_split_gconvs", line 45, in package_do_split_gconvs
ERROR:·
ERROR: File "package.bbclass", line 30, in do_split_packages
ERROR:·
ERROR: The code that was being executed was:
ERROR: 0260:»------»-------bb.note("generation of binary locales disabled.
this may break i18n!")
ERROR: 0261:
ERROR: 0262:
ERROR: 0263:
ERROR: *** 0264:package_do_split_gconvs(d)
ERROR: 0265:
ERROR: (file: 'package_do_split_gconvs', lineno: 264, function: <module>)
ERROR: 0041:»------»-------»-------d.setVar('RPROVIDES_%s' % pkg,
pkg.replace(bpn, 'glibc'))
ERROR: 0042:
ERROR: 0043:»------do_split_packages(d, gconv_libdir,
file_regex='^(.*)\.so$', output_pattern=bpn+'-gconv-%s', \
ERROR: 0044:»------»-------description='gconv module for character set
%s', hook=calc_gconv_deps, \
ERROR: *** 0045:»------»-------extra_depends=bpn+'-gconv')
ERROR: 0046:
ERROR: 0047:»------def calc_charmap_deps(fn, pkg, file_regex,
output_pattern, group):
ERROR: 0048:»------»-------deps = []
ERROR: 0049:»------»-------f = open(fn, "r")
ERROR: (file: 'package_do_split_gconvs', lineno: 45, function:package_do_split_gconvs)
ERROR: Function failed: package_do_split_gconvs
ERROR: Logfile of failure stored in:/home/rchatre/concordia/dev/ccd-distro-work/tmp/work/core2-poky-linux/eglibc-locale-2.13-r19/temp/log.do_package.31042
NOTE: package eglibc-locale-2.13-r19: task do_package: Failed
ERROR: Task 552 (/opt/poky.git/meta/recipes-core/eglibc/eglibc-locale_2.13.bb,do_package) failed with exit code '1'
--- meta-yocto/conf/distro/poky-tiny.conf | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
meta-yocto/conf/distro/poky-tiny.conf +3 -0
@@ -74,6 +74,9 @@ DISTRO_FEATURES_LIBC = "${DISTRO_FEATURES_LIBC_TINY} \ ${DISTRO_FEATURES_LIBC_NET} \ " +# This tells libc packaging that no locales are to be packaged +PACKAGE_NO_GCONV = "1" + # Comment out any of the lines below to disable them in the build # DISTRO_FEATURES options: # alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci
Signature · 1 line
1.7.6.4
Re: [PATCH 3/3] poky-tiny: avoid eglibc locale packaging
Quoted 60 lines · On 03/30/2012 03:52 PM, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This fixes bug: [YOCTO #2089]
This avoids these errors
NOTE: package eglibc-locale-2.13-r19: taskdo_populate_sysroot: Started
ERROR: Error executing a python function in/opt/poky.git/meta/recipes-core/eglibc/eglibc-locale_2.13.bb:
OSError: [Errno 2] No such file or directory:
'/home/rchatre/concordia/dev/ccd-distro-work/tmp/work/core2-poky-linux/eglibc-locale-2.13-r19/package/usr/lib/gconv'ERROR: The stack trace of python calls that resulted in this exception/failure was:
ERROR: File "package_do_split_gconvs", line 264, in <module>
ERROR:·
ERROR: File "package_do_split_gconvs", line 45, inpackage_do_split_gconvs
ERROR:·
ERROR: File "package.bbclass", line 30, indo_split_packages
ERROR:·
ERROR: The code that was being executed was:
ERROR: 0260:»------»-------bb.note("generation of binary locales disabled.
this may break i18n!")ERROR: 0261: ERROR: 0262: ERROR: 0263: ERROR: *** 0264:package_do_split_gconvs(d) ERROR: 0265: ERROR: (file: 'package_do_split_gconvs', lineno: 264, function: <module>) ERROR: 0041:»------»-------»-------d.setVar('RPROVIDES_%s' % pkg, pkg.replace(bpn, 'glibc')) ERROR: 0042: ERROR: 0043:»------do_split_packages(d, gconv_libdir, file_regex='^(.*)\.so$', output_pattern=bpn+'-gconv-%s', \ ERROR: 0044:»------»-------description='gconv module for character set %s', hook=calc_gconv_deps, \ ERROR: *** 0045:»------»-------extra_depends=bpn+'-gconv') ERROR: 0046: ERROR: 0047:»------def calc_charmap_deps(fn, pkg, file_regex, output_pattern, group): ERROR: 0048:»------»-------deps = [] ERROR: 0049:»------»-------f = open(fn, "r") ERROR: (file: 'package_do_split_gconvs', lineno: 45, function:
package_do_split_gconvs)
ERROR: Function failed:package_do_split_gconvs
ERROR: Logfile of failure stored in:/home/rchatre/concordia/dev/ccd-distro-work/tmp/work/core2-poky-linux/eglibc-locale-2.13-r19/temp/log.do_package.31042
NOTE: package eglibc-locale-2.13-r19: taskdo_package: Failed
ERROR: Task 552 (/opt/poky.git/meta/recipes-core/eglibc/eglibc-locale_2.13.bb,do_package) failed with exit code '1'Signed-off-by Nitin A Kamble <[email protected]>--- meta-yocto/conf/distro/poky-tiny.conf | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)meta-yocto/conf/distro/poky-tiny.conf +0
-0
meta-yocto/conf/distro/poky-tiny.conf DISTRO_FEATURES_LIBC = "${DISTRO_FEATURES_LIBC_TINY} \ · line 82
Quoted 9 lines
meta-yocto/conf/distro/poky-tiny.conf +3
-0@@ -74,6 +74,9 @@ DISTRO_FEATURES_LIBC = "${DISTRO_FEATURES_LIBC_TINY} \ ${DISTRO_FEATURES_LIBC_NET} \ " +# This tells libc packaging that no locales are to be packaged +PACKAGE_NO_GCONV = "1" + # Comment out any of the lines below to disable them in the build # DISTRO_FEATURES options: # alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci
Thanks for looking into this Nitin! I'm fine with this fix if it gets things going. I wonder though, I presume omitting something from DISTRO_FEATURES_LIBC is what triggers this bug... could that same omission not be tested to avoid the failure? Seems strange to have to explicitly set PACKAGE_NO_GCONV.
Thoughts?
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [PATCH 3/3] poky-tiny: avoid eglibc locale packaging
Quoted 5 lines
-----Original Message-----
From: Darren Hart [mailto:[email protected]]
Quoted 7 lines
Thanks for looking into this Nitin! I'm fine with this fix if it gets things going. I wonder though, I presume omitting something from
DISTRO_FEATURES_LIBCis what triggers this bug... could that same omission not be tested to avoid the failure? Seems strange to have to explicitly setPACKAGE_NO_GCONV.Thoughts?
Makes sense, I will look into such solution.
Nitin
Richard Purdie
AppliedRe: [PATCH 1/3] nasm: fix issue with repeat configure
In reply to [email protected]Quoted 15 lines · On Fri, 2012-03-30 at 15:28 -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This Fixes bug: [YOCTO #2176]
This fixes the following issue as mentioned in the bug:
If nasm-native has to be rebuilt (due to a signature change) it will fail:| checking for a BSD-compatible install...
/usr/bin/install-c
| /media/large/tmp/work/x86_64-linux/nasm-native-2.07-r1/nasm-2.07/configure:
line 4261: syntax error near unexpected token `-W'
| /media/large/tmp/work/x86_64-linux/nasm-native-2.07-r1/nasm-2.07/configure:
line 4261: `PA_ADD_CFLAGS(-W)'
| ERROR:oe_runconffailed
NOTE: package nasm-native-2.07-r1: taskdo_configure: Failed
Quoted 6 lines
The failure appears to be caused by
do_patch_fixaclocalbeing run a second timeSigned-off-by Nitin A Kamble <[email protected]>--- meta/recipes-devtools/nasm/nasm_2.07.bb | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-)
Merged to master, thanks.
Richard