Skip to contentSkip to conversation

misc fixes

PATCH In review [email protected] 3 participants 7 messages Dec 21, 2011 – Dec 22, 2011

lore
Share & tools
lore
#0 lore raw

cover misc fixes

From: Nitin A Kamble <[email protected]>

Here are few misc fixes for oecore.

Thanks,
Nitin

The following changes since commit dee0fc1462ba18551571c3b2d0f2b443a2feca18:

multilib.conf: Enable shadow-sysroot and libffi (2011-12-21 17:24:44 +0000)

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

H.J. Lu (1):
gmp: Don't check "$CC $CFLAGS" for x32 in gmp configure

Nitin A Kamble (2):
bitbake.conf multilib.conf: move the definition of baselib
binutils: fix building on distros with matching binutils version

 meta/conf/bitbake.conf                             |    2 +-
 meta/conf/multilib.conf                            |    2 -
 .../binutils/binutils-cross-canadian_2.22.bb       |    2 +-
 .../binutils/binutils-crosssdk_2.22.bb             |    2 +-
 meta/recipes-devtools/binutils/binutils.inc        |    2 +-
 meta/recipes-devtools/binutils/binutils_2.22.bb    |    2 +-
 meta/recipes-support/gmp/gmp/gmp_fix_for_x32.patch |   24 ++++++++-----------
 7 files changed, 15 insertions(+), 21 deletions(-)
Signature · 1 line
1.7.6.4
#1 lore raw

PATCH 1/3 gmp: Don't check "$CC $CFLAGS" for x32 in gmp configure

From: "H.J. Lu" <[email protected]>

There is no need to check "$CC $CFLAGS" for x32 in gmp configure. The way GMP works is that it makes all the ABIs available for the user to pick from based on the target, but the final ABI is selected based on the $ABI variable or if compiler passes the ABI test. The test for x32 ABI is

any_x32_testlist="sizeof-long-4"

GMP will select x32 ABI only if long is 4byte, which will only be set to 4 by -mx32 passed in "$CC $CFLAGS".

---
 meta/recipes-support/gmp/gmp/gmp_fix_for_x32.patch |   24 ++++++++-----------
 1 files changed, 10 insertions(+), 14 deletions(-)
meta/recipes-support/gmp/gmp/gmp_fix_for_x32.patch +10 -14
index b8e22aa..76d3a00 100644
@@ -8,7 +8,7 @@ Signed Off By: Nitin A Kamble <[email protected]> 2011/11/21
 
 --- gmp-4.3.2/configure.in.x32	2011-08-12 15:03:06.143548291 -0700
 +++ gmp-4.3.2/configure.in	2011-08-12 15:06:20.580595316 -0700
-@@ -1499,6 +1499,25 @@ case $host in
+@@ -1499,6 +1499,21 @@ case $host in
  	    path_64="x86_64/atom x86_64"
  	    ;;
  	esac
@@ -16,19 +16,15 @@ Signed Off By: Nitin A Kamble <[email protected]> 2011/11/21
 +	# X32 support.
 +	case x"$path_64" in
 +	  xx86_64*)
-+	    case x"$CC $CFLAGS" in
-+	      x*-mx32*)
-+		abilist="x32 64 32"
-+		path_x32="$path_64"
-+		limb_x32=longlong
-+		cclist_x32="gcc"
-+		gcc_x32_cflags="-O2 -mx32"
-+		any_x32_testlist="sizeof-long-4"
-+		CALLING_CONVENTIONS_OBJS_x32='amd64call.lo amd64check$U.lo'
-+		SPEED_CYCLECOUNTER_OBJ_x32=x86_64.lo
-+		cyclecounter_size_x32=2
-+		;;
-+	    esac
++	    abilist="x32 64 32"
++	    path_x32="$path_64"
++	    limb_x32=longlong
++	    cclist_x32="gcc"
++	    gcc_x32_cflags="-O2 -mx32"
++	    any_x32_testlist="sizeof-long-4"
++	    CALLING_CONVENTIONS_OBJS_x32='amd64call.lo amd64check$U.lo'
++	    SPEED_CYCLECOUNTER_OBJ_x32=x86_64.lo
++	    cyclecounter_size_x32=2
 +	    ;;
 +	esac
  	;;
Signature · 1 line
1.7.6.4
#2 lore raw

PATCH 2/3 bitbake.conf multilib.conf: move the definition of baselib

From: Nitin A Kamble <[email protected]>

The baselib value varies with tune, even when multilib is not configured. This commit makes the logic to find value of baselib based on the tune available outside of multilib setup.

This Fixes bug: [YOCTO #1854]

---
 meta/conf/bitbake.conf  |    2 +-
 meta/conf/multilib.conf |    2 --
 2 files changed, 1 insertions(+), 3 deletions(-)
meta/conf/bitbake.conf +1 -1
index 1c21616..700a40a 100644
@@ -9,7 +9,7 @@
 # Used by multilib code to change the library paths
 baselib = "${BASELIB}"
 baselib[vardepvalue] = "${baselib}"
-BASELIB = "lib"
+BASELIB = "${@d.getVar('BASE_LIB_tune-' + (d.getVar('DEFAULTTUNE', True) or 'INVALID'), True) or 'lib'}"
 BASELIB_powerpc64 = "lib64"
 
 # Path prefixes
meta/conf/multilib.conf +0 -2
index 87a3d86..a9448df 100644
@@ -1,6 +1,4 @@
 
-baselib = "${@d.getVar('BASE_LIB_tune-' + (d.getVar('DEFAULTTUNE', True) or 'INVALID'), True) or 'lib'}"
-
 MULTILIB_VARIANTS = "${@extend_variants(d,'MULTILIBS','multilib')}"
 MULTILIB_SAVE_VARNAME = "DEFAULTTUNE"
 
Signature · 1 line
1.7.6.4
#3 lore raw

PATCH 3/3 binutils: fix building on distros with matching binutils version

In reply to [email protected]

From: Nitin A Kamble <[email protected]>

x86_64 opensuse 11.4 has bintuils version 2.21, and when binutils_2.21 recipe is built for x86_64 target then, the invocation of distro gcc fails with errors like this:

/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/as:
symbol lookup error: /usr/lib64/gcc/x86_64-suse-linux/4.5/.. make[2]: *** [sysinfo.o] Error 1

The issue rootcaused as incompatible LD_LIBRARY_PATH while running the distro gcc.

As per Martin Jansa gentoo also sees similar issue with binutils 2.22 recipe.

This commit fixes the issue by clearing the LD_LIBRARY_PATH for distro gcc (CC_FOR_BUILD)

This Fixes bug: [YOCTO #1833]

---
 .../binutils/binutils-cross-canadian_2.22.bb       |    2 +-
 .../binutils/binutils-crosssdk_2.22.bb             |    2 +-
 meta/recipes-devtools/binutils/binutils.inc        |    2 +-
 meta/recipes-devtools/binutils/binutils_2.22.bb    |    2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)
meta/recipes-devtools/binutils/binutils-cross-canadian_2.22.bb +1 -1
index e91e7dc..a49aded 100644
@@ -1,3 +1,3 @@
 require binutils_${PV}.bb
 require binutils-cross-canadian.inc
-PR = "r1"
+PR = "r2"
meta/recipes-devtools/binutils/binutils-crosssdk_2.22.bb +1 -1
index 21289cd..0e8b6e4 100644
@@ -4,7 +4,7 @@ inherit crosssdk
 
 PROVIDES = "virtual/${TARGET_PREFIX}binutils-crosssdk"
 
-PR = "r1"
+PR = "r2"
 
 do_configure_prepend () {
 	sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATHNATIVE}/lib ${SDKPATHNATIVE}/usr/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt
meta/recipes-devtools/binutils/binutils.inc +1 -1
index 5cb2cc9..30a0416 100644
@@ -76,7 +76,7 @@ export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
 export CC_FOR_HOST = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 export CXX_FOR_HOST = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 
-export CC_FOR_BUILD = "${BUILD_CC}"
+export CC_FOR_BUILD = "LD_LIBRARY_PATH= ${BUILD_CC}"
 export CPP_FOR_BUILD = "${BUILD_CPP}"
 export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
 
meta/recipes-devtools/binutils/binutils_2.22.bb +1 -1
index f1e7e12..41a30ee 100644
@@ -1,6 +1,6 @@
 require binutils.inc
 
-PR = "r1"
+PR = "r2"
 
 LIC_FILES_CHKSUM="\
     file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
Signature · 1 line
1.7.6.4
#4 lore raw

Re: [PATCH 3/3] binutils: fix building on distros with matching binutils version

Quoted 10 lines · On Wed, Dec 21, 2011 at 11:27:14AM -0800, [email protected] wrote:

From: Nitin A Kamble <[email protected]>

x86_64 opensuse 11.4 has bintuils version 2.21, and when binutils_2.21 recipe is built for x86_64 target then, the invocation of distro gcc fails with errors like this:

/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/as:
symbol lookup error: /usr/lib64/gcc/x86_64-suse-linux/4.5/.. make[2]: *** [sysinfo.o] Error 1

Quoted 5 lines

The issue rootcaused as incompatible LD_LIBRARY_PATH while running the distro gcc.

As per Martin Jansa gentoo also sees similar issue with binutils 2.22 recipe.

I can confirm that with similar patch based on your fix for 2.21 in poky-contrib/nitin/bugfix I was able to build binutils for qemux86-64 for first time without manual fix :).

Cheers,

Quoted 68 lines

This commit fixes the issue by clearing the LD_LIBRARY_PATH for distro gcc (CC_FOR_BUILD)

This Fixes bug: [YOCTO #1833]

---
 .../binutils/binutils-cross-canadian_2.22.bb       |    2 +-
 .../binutils/binutils-crosssdk_2.22.bb             |    2 +-
 meta/recipes-devtools/binutils/binutils.inc        |    2 +-
 meta/recipes-devtools/binutils/binutils_2.22.bb    |    2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)
meta/recipes-devtools/binutils/binutils-cross-canadian_2.22.bb +1 -1
index e91e7dc..a49aded 100644
@@ -1,3 +1,3 @@
 require binutils_${PV}.bb
 require binutils-cross-canadian.inc
-PR = "r1"
+PR = "r2"
meta/recipes-devtools/binutils/binutils-crosssdk_2.22.bb +1 -1
index 21289cd..0e8b6e4 100644
@@ -4,7 +4,7 @@ inherit crosssdk
 
 PROVIDES = "virtual/${TARGET_PREFIX}binutils-crosssdk"
 
-PR = "r1"
+PR = "r2"
 
 do_configure_prepend () {
 	sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATHNATIVE}/lib ${SDKPATHNATIVE}/usr/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt
meta/recipes-devtools/binutils/binutils.inc +1 -1
index 5cb2cc9..30a0416 100644
@@ -76,7 +76,7 @@ export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
 export CC_FOR_HOST = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 export CXX_FOR_HOST = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 
-export CC_FOR_BUILD = "${BUILD_CC}"
+export CC_FOR_BUILD = "LD_LIBRARY_PATH= ${BUILD_CC}"
 export CPP_FOR_BUILD = "${BUILD_CPP}"
 export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
 
meta/recipes-devtools/binutils/binutils_2.22.bb +1 -1
index f1e7e12..41a30ee 100644
@@ -1,6 +1,6 @@
 require binutils.inc
 
-PR = "r1"
+PR = "r2"
 
 LIC_FILES_CHKSUM="\
     file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
Signature · 7 lines
1.7.6.4


_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#5 lore raw

Re: [PATCH 3/3] binutils: fix building on distros with matching binutils version

Martin,
Thanks for the report.
Nitin

Quoted 115 lines

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Martin Jansa
Sent: Wednesday, December 21, 2011 2:41 PM
To: Patches and discussions about the oe-core layer
Subject: Re: [OE-core] [PATCH 3/3] binutils: fix building on distros with matching binutils version

Quoted 7 lines · On Wed, Dec 21, 2011 at 11:27:14AM -0800, [email protected] wrote:

From: Nitin A Kamble <[email protected]>

x86_64 opensuse 11.4 has bintuils version 2.21, and when binutils_2.21 recipe is built for x86_64 target then, the invocation of distro gcc fails with errors like this:

/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-

linux/bin/as:

Quoted 4 lines

symbol lookup error: /usr/lib64/gcc/x86_64-suse-linux/4.5/.. make[2]: *** [sysinfo.o] Error 1

The issue rootcaused as incompatible LD_LIBRARY_PATH while running

the

Quoted 4 lines

distro gcc.

As per Martin Jansa gentoo also sees similar issue with binutils 2.22 recipe.

I can confirm that with similar patch based on your fix for 2.21 in poky-contrib/nitin/bugfix I was able to build binutils for qemux86-64 for first time without manual fix :).

Cheers,

Quoted 1 line

This commit fixes the issue by clearing the LD_LIBRARY_PATH for

distro

Quoted 71 lines

gcc (CC_FOR_BUILD)

This Fixes bug: [YOCTO #1833]

---
 .../binutils/binutils-cross-canadian_2.22.bb       |    2 +-
 .../binutils/binutils-crosssdk_2.22.bb             |    2 +-
 meta/recipes-devtools/binutils/binutils.inc        |    2 +-
 meta/recipes-devtools/binutils/binutils_2.22.bb    |    2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-devtools/binutils/binutils-cross-canadian_2.22.bb b/meta/recipes-devtools/binutils/binutils-cross-canadian_2.22.bb index e91e7dc..a49aded 100644

meta/recipes-devtools/binutils/binutils-cross-canadian_2.22.bb +1 -1
@@ -1,3 +1,3 @@
 require binutils_${PV}.bb
 require binutils-cross-canadian.inc
-PR = "r1"
+PR = "r2"
meta/recipes-devtools/binutils/binutils-crosssdk_2.22.bb +1 -1
index 21289cd..0e8b6e4 100644
@@ -4,7 +4,7 @@ inherit crosssdk
 
 PROVIDES = "virtual/${TARGET_PREFIX}binutils-crosssdk"
 
-PR = "r1"
+PR = "r2"
 
 do_configure_prepend () {
 	sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATHNATIVE}/lib

${SDKPATHNATIVE}/usr/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt diff --git a/meta/recipes-devtools/binutils/binutils.inc b/meta/recipes-devtools/binutils/binutils.inc index 5cb2cc9..30a0416 100644

meta/recipes-devtools/binutils/binutils.inc +1 -1
@@ -76,7 +76,7 @@ export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
 export CC_FOR_HOST = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 export CXX_FOR_HOST = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 
-export CC_FOR_BUILD = "${BUILD_CC}"
+export CC_FOR_BUILD = "LD_LIBRARY_PATH= ${BUILD_CC}"
 export CPP_FOR_BUILD = "${BUILD_CPP}"
 export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
 
meta/recipes-devtools/binutils/binutils_2.22.bb +1 -1
index f1e7e12..41a30ee 100644
@@ -1,6 +1,6 @@
 require binutils.inc
 
-PR = "r1"
+PR = "r2"
 
 LIC_FILES_CHKSUM="\
 

file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
--
1.7.6.4

Quoted 4 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

--
Martin 'JaMa' Jansa jabber: [email protected]

#6 lore raw
In reply to [email protected]
Quoted 9 lines · On 12/21/2011 11:27 AM, [email protected] wrote:

From: Nitin A Kamble<[email protected]>

Here are few misc fixes for oecore.

Thanks,
Nitin

The following changes since commit dee0fc1462ba18551571c3b2d0f2b443a2feca18:

Quoted 9 lines
   multilib.conf: Enable shadow-sysroot and libffi (2011-12-21 17:24:44 +0000)

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

H.J. Lu (1):
gmp: Don't check "$CC $CFLAGS" for x32 in gmp configure

Pulled into OE-Core

Quoted 2 lines

Nitin A Kamble (2):
bitbake.conf multilib.conf: move the definition of baselib

This requires more information based on RP's Comment:
"this is a major layout change for x86-64 but Nitin makes no comment
on that in the commit"

Quoted 2 lines

binutils: fix building on distros with matching binutils version

Merged the binutils patch to OE-Core

Quoted 9 lines
  meta/conf/bitbake.conf                             |    2 +-
  meta/conf/multilib.conf                            |    2 -
  .../binutils/binutils-cross-canadian_2.22.bb       |    2 +-
  .../binutils/binutils-crosssdk_2.22.bb             |    2 +-
  meta/recipes-devtools/binutils/binutils.inc        |    2 +-
  meta/recipes-devtools/binutils/binutils_2.22.bb    |    2 +-
  meta/recipes-support/gmp/gmp/gmp_fix_for_x32.patch |   24 ++++++++-----------
  7 files changed, 15 insertions(+), 21 deletions(-)