fixes, recipe upgrades, & gcc multilib enabling commits
cover fixes, recipe upgrades, & gcc multilib enabling commits
From: Nitin A Kamble <[email protected]>
For more information look at the individual commit logs.
The following changes since commit 8bae18bb358755131f13865abb279ac687a03848:
slang: Fix rpath QA warnings (2012-03-15 00:11:40 +0000)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib gcc-multilib-2-for-push
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=gcc-multilib-2-for-push
Nitin A Kamble (8):
gmp: upgrade from 5.0.3 to 5.0.4
automake: upgrade from 1.11.2 to 1.11.3
distro-tracking: update status of recipes
ncurses: fix install error
python: fix install when libdir is not "lib" multilib.conf: add other abi packages to target gcc's dependencies
gcc: remove the 64bithack patch
gcc: enable multilib for target gcc
.../conf/distro/include/distro_tracking_fields.inc | 24 ++--
meta/conf/multilib.conf | 3 +
meta/recipes-core/ncurses/ncurses.inc | 2 +-
meta/recipes-devtools/automake/automake.inc | 2 +-
...utomake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch | 118 ---------------
.../prefer-cpio-over-pax-for-ustar-archives.patch | 30 ++--
.../automake/automake/python-libdir.patch | 32 ++---
.../{automake_1.11.2.bb => automake_1.11.3.bb} | 8 +-
meta/recipes-devtools/gcc/gcc-4.6.inc | 1 -
meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch | 68 ---------
meta/recipes-devtools/gcc/gcc-common.inc | 23 +++
meta/recipes-devtools/gcc/gcc-configure-common.inc | 2 +-
meta/recipes-devtools/gcc/gcc-configure-target.inc | 1 +
meta/recipes-devtools/gcc/gcc-multilib-config.inc | 155 ++++++++++++++++++++
meta/recipes-devtools/gcc/libgcc_4.6.bb | 42 ++++++
.../python/fix_for_using_different_libdir.patch | 78 ++++++++++
meta/recipes-devtools/python/python_2.7.2.bb | 3 +-
meta/recipes-support/gmp/gmp/gmp_bugfix.patch | 94 ------------
.../gmp/{gmp_5.0.3.bb => gmp_5.0.4.bb} | 7 +-
19 files changed, 358 insertions(+), 335 deletions(-)
delete mode 100644 meta/recipes-devtools/automake/automake/automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch
rename meta/recipes-devtools/automake/{automake_1.11.2.bb => automake_1.11.3.bb} (85%)
delete mode 100644 meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch
create mode 100644 meta/recipes-devtools/gcc/gcc-multilib-config.inc
create mode 100644 meta/recipes-devtools/python/python/fix_for_using_different_libdir.patch
delete mode 100644 meta/recipes-support/gmp/gmp/gmp_bugfix.patch
rename meta/recipes-support/gmp/{gmp_5.0.3.bb => gmp_5.0.4.bb} (54%)Signature · 1 line
1.7.6.4
PATCH 1/8 gmp: upgrade from 5.0.3 to 5.0.4
From: Nitin A Kamble <[email protected]>
gmp_bugfix.patch : removed this patch as it is in upstream now
---
meta/recipes-support/gmp/gmp/gmp_bugfix.patch | 94 --------------------
.../gmp/{gmp_5.0.3.bb => gmp_5.0.4.bb} | 7 +-
2 files changed, 3 insertions(+), 98 deletions(-)
delete mode 100644 meta/recipes-support/gmp/gmp/gmp_bugfix.patch
rename meta/recipes-support/gmp/{gmp_5.0.3.bb => gmp_5.0.4.bb} (54%)meta/recipes-support/gmp/gmp/gmp_bugfix.patch deleted +0 -94
@@ -1,94 +0,0 @@ -Upstream-Status: Pending - -When LONG_MIN is passed to val, -val is undefined. This patch fixes -it. See for details: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50066 - -Received this patch from H.J. Lu <[email protected]> - -Signed-Off-By: Nitin A Kamble <[email protected]> 2011/12/01 - ---- gmp-4.3.2/mpf/iset_si.c.ll 2010-01-07 12:09:03.000000000 -0800 -+++ gmp-4.3.2/mpf/iset_si.c 2011-11-30 16:42:35.827944358 -0800 -@@ -31,7 +31,7 @@ mpf_init_set_si (mpf_ptr r, long int val - r->_mp_prec = prec; - r->_mp_d = (mp_ptr) (*__gmp_allocate_func) ((prec + 1) * BYTES_PER_MP_LIMB); - -- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val); -+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val); - - r->_mp_d[0] = vl & GMP_NUMB_MASK; - size = vl != 0; ---- gmp-4.3.2/mpf/set_si.c.ll 2010-01-07 12:09:03.000000000 -0800 -+++ gmp-4.3.2/mpf/set_si.c 2011-11-30 16:42:47.823878367 -0800 -@@ -27,7 +27,7 @@ mpf_set_si (mpf_ptr dest, long val) - mp_size_t size; - mp_limb_t vl; - -- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val); -+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val); - - dest->_mp_d[0] = vl & GMP_NUMB_MASK; - size = vl != 0; ---- gmp-4.3.2/mpz/cmp_si.c.ll 2010-01-07 12:09:03.000000000 -0800 -+++ gmp-4.3.2/mpz/cmp_si.c 2011-11-30 13:44:25.923319700 -0800 -@@ -27,7 +27,7 @@ _mpz_cmp_si (mpz_srcptr u, signed long i - { - mp_size_t usize = u->_mp_size; - mp_size_t vsize; -- mp_limb_t u_digit; -+ mp_limb_t u_digit, vl_digit; - - #if GMP_NAIL_BITS != 0 - /* FIXME. This isn't very pretty. */ -@@ -41,11 +41,14 @@ _mpz_cmp_si (mpz_srcptr u, signed long i - - vsize = 0; - if (v_digit > 0) -- vsize = 1; -+ { -+ vsize = 1; -+ vl_digit = (mp_limb_t) (unsigned long) v_digit; -+ } - else if (v_digit < 0) - { - vsize = -1; -- v_digit = -v_digit; -+ vl_digit = (mp_limb_t) -(unsigned long) v_digit; - } - - if (usize != vsize) -@@ -56,10 +59,10 @@ _mpz_cmp_si (mpz_srcptr u, signed long i - - u_digit = u->_mp_d[0]; - -- if (u_digit == (mp_limb_t) (unsigned long) v_digit) -+ if (u_digit == vl_digit) - return 0; - -- if (u_digit > (mp_limb_t) (unsigned long) v_digit) -+ if (u_digit > vl_digit) - return usize; - else - return -usize; ---- gmp-4.3.2/mpz/iset_si.c.ll 2010-01-07 12:09:03.000000000 -0800 -+++ gmp-4.3.2/mpz/iset_si.c 2011-11-30 13:44:25.924319695 -0800 -@@ -31,7 +31,7 @@ mpz_init_set_si (mpz_ptr dest, signed lo - dest->_mp_alloc = 1; - dest->_mp_d = (mp_ptr) (*__gmp_allocate_func) (BYTES_PER_MP_LIMB); - -- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val); -+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val); - - dest->_mp_d[0] = vl & GMP_NUMB_MASK; - size = vl != 0; ---- gmp-4.3.2/mpz/set_si.c.ll 2010-01-07 12:09:03.000000000 -0800 -+++ gmp-4.3.2/mpz/set_si.c 2011-11-30 13:44:25.947319574 -0800 -@@ -27,7 +27,7 @@ mpz_set_si (mpz_ptr dest, signed long in - mp_size_t size; - mp_limb_t vl; - -- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val); -+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val); - - dest->_mp_d[0] = vl & GMP_NUMB_MASK; - size = vl != 0;
meta/recipes-support/gmp/gmp_5.0.4.bb renamed from meta/recipes-support/gmp/gmp_5.0.3.bb +3 -4
@@ -4,11 +4,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ file://version.c;endline=18;md5=d8c56b52b9092346b9f93b4da65ef790" PR = "r0" -SRC_URI_append += "file://gmp_bugfix.patch \ - file://use-includedir.patch \ +SRC_URI_append += "file://use-includedir.patch \ file://gmp_fix_for_x32.patch" export CC_FOR_BUILD = "${BUILD_CC}" -SRC_URI[md5sum] = "8061f765cc86b9765921a0c800615804" -SRC_URI[sha256sum] = "dcafe9989c7f332b373e1f766af8e9cd790fc802fdec422a1910a6ef783480e3" +SRC_URI[md5sum] = "50c3edcb7c9438e04377ee9a1a061b79" +SRC_URI[sha256sum] = "35d4aade3e4bdf0915c944599b10d23f108ffedf6c3188aeec52221c5cf9a06f"
Signature · 1 line
1.7.6.4
PATCH 2/8 automake: upgrade from 1.11.2 to 1.11.3
From: Nitin A Kamble <[email protected]>
Removed already upstream patch:
automake/automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch
Rebased these patches to the newer code:
automake/prefer-cpio-over-pax-for-ustar-archives.patch automake/python-libdir.patch
Changed the tarball name from bz2 to gz, as the bz2 tar ball is not published for the 1.11.3 version.
---
meta/recipes-devtools/automake/automake.inc | 2 +-
...utomake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch | 118 --------------------
.../prefer-cpio-over-pax-for-ustar-archives.patch | 30 +++--
.../automake/automake/python-libdir.patch | 32 +++---
.../{automake_1.11.2.bb => automake_1.11.3.bb} | 8 +-
5 files changed, 36 insertions(+), 154 deletions(-)
delete mode 100644 meta/recipes-devtools/automake/automake/automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch
rename meta/recipes-devtools/automake/{automake_1.11.2.bb => automake_1.11.3.bb} (85%)meta/recipes-devtools/automake/automake.inc +1 -1
@@ -5,7 +5,7 @@ LICENSE = "GPLv2" HOMEPAGE = "http://www.gnu.org/software/automake/" SECTION = "devel" -SRC_URI = "${GNU_MIRROR}/automake/automake-${PV}.tar.bz2 " +SRC_URI = "${GNU_MIRROR}/automake/automake-${PV}.tar.gz" inherit autotools
meta/recipes-devtools/automake/automake/automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch deleted +0 -118
118 lines not on this page · raw message
meta/recipes-devtools/automake/automake/prefer-cpio-over-pax-for-ustar-archives.patch +17 -13
@@ -15,11 +15,15 @@ Upstream-Status: Pending Signed-off-by: Tom Rini <[email protected]> -Index: automake-1.11.1/m4/tar.m4 +Updated for version 1.11.3: +Signed-off-by: Nitin A Kamble <[email protected]> +Date: 2011/03/14 + +Index: automake-1.11.3/m4/tar.m4 =================================================================== ---- automake-1.11.1.orig/m4/tar.m4 -+++ automake-1.11.1/m4/tar.m4 -@@ -30,7 +30,7 @@ m4_if([$1], [v7], +--- automake-1.11.3.orig/m4/tar.m4 2012-01-31 03:41:18.000000000 -0800 ++++ automake-1.11.3/m4/tar.m4 2012-03-14 17:36:11.901303777 -0700 +@@ -31,7 +31,7 @@ m4_if([$1], [v7], [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works.
@@ -28,16 +32,16 @@ Index: automake-1.11.1/m4/tar.m4 _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. -Index: automake-1.11.1/Makefile.in +Index: automake-1.11.3/Makefile.in =================================================================== ---- automake-1.11.1.orig/Makefile.in -+++ automake-1.11.1/Makefile.in -@@ -44,7 +44,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/a - $(top_srcdir)/m4/missing.m4 $(top_srcdir)/m4/mkdirp.m4 \ +--- automake-1.11.3.orig/Makefile.in 2012-02-01 02:37:59.000000000 -0800 ++++ automake-1.11.3/Makefile.in 2012-03-14 17:38:03.530869197 -0700 +@@ -62,7 +62,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/a $(top_srcdir)/m4/options.m4 $(top_srcdir)/m4/runlog.m4 \ - $(top_srcdir)/m4/sanity.m4 $(top_srcdir)/m4/strip.m4 \ -- $(top_srcdir)/m4/substnot.m4 $(top_srcdir)/m4/tar.m4 \ -+ $(top_srcdir)/m4/substnot.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/sanity.m4 $(top_srcdir)/m4/silent.m4 \ + $(top_srcdir)/m4/strip.m4 $(top_srcdir)/m4/substnot.m4 \ +- $(top_srcdir)/m4/tar.m4 $(top_srcdir)/configure.ac ++ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) + am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
meta/recipes-devtools/automake/automake/python-libdir.patch +14 -18
@@ -2,11 +2,11 @@ Upstream-Status: Inappropriate [embedded specific] Signed-off-by: Kumar Gala <[email protected]> -Index: automake-1.11.1/m4/python.m4 +Index: automake-1.11.3/m4/python.m4 =================================================================== ---- automake-1.11.1.orig/m4/python.m4 -+++ automake-1.11.1/m4/python.m4 -@@ -88,12 +88,13 @@ python2.1 python2.0]) +--- automake-1.11.3.orig/m4/python.m4 2012-01-31 03:41:18.000000000 -0800 ++++ automake-1.11.3/m4/python.m4 2012-03-14 17:48:49.194509698 -0700 +@@ -92,12 +92,13 @@ AC_DEFUN([AM_PATH_PYTHON], [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
@@ -22,16 +22,14 @@ Index: automake-1.11.1/m4/python.m4 AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) dnl At times (like when building shared libraries) you may want -@@ -122,7 +123,7 @@ python2.1 python2.0]) - am_py_prefix=$prefix - fi - am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null || -- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"` -+ echo "$PYTHON_LIB_PREFIX/python$PYTHON_VERSION/site-packages"` +@@ -127,13 +128,13 @@ AC_DEFUN([AM_PATH_PYTHON], case $am_cv_python_pythondir in $am_py_prefix*) am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` -@@ -132,7 +133,7 @@ python2.1 python2.0]) +- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` ++ am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix/lib,$PYTHON_LIB_PREFIX,"` + ;; + *) case $am_py_prefix in /usr|/System*) ;; *)
@@ -40,16 +38,14 @@ Index: automake-1.11.1/m4/python.m4 ;; esac ;; -@@ -160,7 +161,7 @@ python2.1 python2.0]) - am_py_exec_prefix=$exec_prefix - fi - am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null || -- echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"` -+ echo "$PYTHON_LIB_PREFIX/python$PYTHON_VERSION/site-packages"` +@@ -162,13 +163,13 @@ AC_DEFUN([AM_PATH_PYTHON], case $am_cv_python_pyexecdir in $am_py_exec_prefix*) am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` -@@ -170,7 +171,7 @@ python2.1 python2.0]) +- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` ++ am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix/lib,$PYTHON_LIB_PREFIX,"` + ;; + *) case $am_py_exec_prefix in /usr|/System*) ;; *)
meta/recipes-devtools/automake/automake_1.11.3.bb renamed from meta/recipes-devtools/automake/automake_1.11.2.bb +4 -4
@@ -37,12 +37,12 @@ PATHFIXPATCH_virtclass-nativesdk = "" SRC_URI += "${PATHFIXPATCH} \ file://prefer-cpio-over-pax-for-ustar-archives.patch \ file://python-libdir.patch \ - file://automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch \ file://py-compile-compile-only-optimized-byte-code.patch" -PR = "r2" -SRC_URI[md5sum] = "18194e804d415767bae8f703c963d456" -SRC_URI[sha256sum] = "4f46d1f9380c8a3506280750f630e9fc915cb1a435b724be56b499d016368718" +SRC_URI[md5sum] = "93ecb319f0365cb801990b00f658d026" +SRC_URI[sha256sum] = "921b5188057e57bdd9c0ba06e21d0b0ea7dafa61a9bd08a2b041215bcff12f55" + +PR = "r0" do_install () { oe_runmake 'DESTDIR=${D}' install
Signature · 1 line
1.7.6.4
PATCH 3/8 distro-tracking: update status of recipes
In reply to [email protected]From: Nitin A Kamble <[email protected]>
--- .../conf/distro/include/distro_tracking_fields.inc | 24 ++++++++++--------- 1 files changed, 13 insertions(+), 11 deletions(-)
meta/conf/distro/include/distro_tracking_fields.inc +13 -11
@@ -37,7 +37,8 @@ RECIPE_MANUAL_CHECK_DATE_pn-libpcre = "Feb 01, 2012" RECIPE_MAINTAINER_pn-libpcre = "Nitin A Kamble <[email protected]>" DISTRO_PN_ALIAS_pn-libpcre = "Mandriva=libpcre0 Fedora=pcre" -RECIPE_LATEST_VERSION_pn-bdwgc = "7.2alpha5" +RECIPE_LATEST_VERSION_pn-bdwgc = "20110107" +RECIPE_NO_UPDATE_REASON_pn-bdwgc = "20110107 is same as the 7.2alpha5" RECIPE_LAST_UPDATE_pn-bdwgc = "Feb 01, 2012" RECIPE_MANUAL_CHECK_DATE_pn-bdwgc = "Feb 01, 2012" RECIPE_MAINTAINER_pn-bdwgc = "Nitin A Kamble <[email protected]>"
@@ -3089,9 +3090,9 @@ RECIPE_NO_UPDATE_REASON_pn-autoconf="seeing rpm issue with the 2.68 version, a b RECIPE_MAINTAINER_pn-autoconf = "Nitin A Kamble <[email protected]>" RECIPE_STATUS_pn-automake="green" -RECIPE_LATEST_VERSION_pn-automake="1.11.1" -RECIPE_LAST_UPDATE_pn-automake = "Jan 29, 2010" -RECIPE_MANUAL_CHECK_DATE_pn-automake = "Jul 06, 2011" +RECIPE_LATEST_VERSION_pn-automake="1.11.3" +RECIPE_LAST_UPDATE_pn-automake = "Mar 14, 2012" +RECIPE_MANUAL_CHECK_DATE_pn-automake = "Mar 14, 2012" RECIPE_MAINTAINER_pn-automake = "Nitin A Kamble <[email protected]>" RECIPE_STATUS_pn-bison="green"
@@ -3278,9 +3279,9 @@ RECIPE_LAST_UPDATE_pn-mpfr = "Nov 15, 2011" RECIPE_MAINTAINER_pn-mpfr = "Nitin A Kamble <[email protected]>" RECIPE_STATUS_pn-gmp="green" -RECIPE_LATEST_VERSION_pn-gmp="5.0.3" -RECIPE_LAST_UPDATE_pn-gmp = "Feb 01, 2012" -RECIPE_MANUAL_CHECK_DATE_pn-gmp = "Feb 01, 2012" +RECIPE_LATEST_VERSION_pn-gmp="5.0.4" +RECIPE_LAST_UPDATE_pn-gmp = "Mar 14, 2012" +RECIPE_MANUAL_CHECK_DATE_pn-gmp = "Mar 14, 2012" RECIPE_MAINTAINER_pn-gmp = "Nitin A Kamble <[email protected]>" RECIPE_STATUS_pn-libmpc="green"
@@ -5933,10 +5934,11 @@ RECIPE_STATUS_pn-groff = "red" RECIPE_LATEST_VERSION_pn-groff = "1.21" RECIPE_NO_UPDATE_REASON_pn-groff = "1.18.1.4 is latest GPLv2 Version no 1.21" -RECIPE_STATUS_pn-eglibc = "red" -RECIPE_LATEST_VERSION_pn-eglibc = "2.13-r15508" -RECIPE_LAST_UPDATE_pn-eglibc = "Nov 16, 2011" -RECIPE_MANUAL_CHECK_DATE_pn-eglibc = "Nov 16, 2011" +RECIPE_STATUS_pn-eglibc = "green" +RECIPE_LATEST_VERSION_pn-eglibc = "git:16540" +RECIPE_LAST_UPDATE_pn-eglibc = "Jan 01, 2012" +RECIPE_MANUAL_CHECK_DATE_pn-eglibc = "Jan 01, 2012" +RECIPE_MAINTAINER_pn-eglibc = "Nitin A Kamble <[email protected]>" RECIPE_STATUS_pn-lighttpd = "red" RECIPE_LAST_UPDATE_pn-lighttpd = "Jul 28, 2011"
Signature · 1 line
1.7.6.4
PATCH 4/8 ncurses: fix install error
In reply to [email protected]From: Nitin A Kamble <[email protected]>
Fix this issue:
| rm: cannot remove `/srv/home/nitin/builds/build-multilib/tmp/work/x86_64-poky-linux/ncurses-5.9-r6.1/image/usr/lib64/terminfo': No such file or directory
NOTE: package ncurses-5.9-r6.1: task do_install: Failed
PR not bumped as there is no change in the packages output.
--- meta/recipes-core/ncurses/ncurses.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/recipes-core/ncurses/ncurses.inc +1 -1
@@ -151,7 +151,7 @@ shell_do_install() { ln -sf xterm-color ${D}${sysconfdir}/terminfo/x/xterm fi - rm ${D}${libdir}/terminfo + rm -f ${D}${libdir}/terminfo if [ "${PN}" = "ncurses" ]; then mv ${D}${bindir}/clear ${D}${bindir}/clear.${PN}
Signature · 1 line
1.7.6.4
Re: [PATCH 4/8] ncurses: fix install error
Quoted 9 lines · On 03/14/2012 07:02 PM, [email protected] wrote:
From: Nitin A Kamble<[email protected]>
Fix this issue:
| rm: cannot remove `/srv/home/nitin/builds/build-multilib/tmp/work/x86_64-poky-linux/ncurses-5.9-r6.1/image/usr/lib64/terminfo': No such file or directory
NOTE: package ncurses-5.9-r6.1: taskdo_install: FailedPR not bumped as there is no change in the packages output.
Signed-off-by Nitin A Kamble<[email protected]>
Thank you for catching this.
Quoted 17 lines
--- meta/recipes-core/ncurses/ncurses.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)meta/recipes-core/ncurses/ncurses.inc +1
-1@@ -151,7 +151,7 @@ shell_do_install() { ln -sf xterm-color ${D}${sysconfdir}/terminfo/x/xterm fi - rm ${D}${libdir}/terminfo + rm -f ${D}${libdir}/terminfo if [ "${PN}" = "ncurses" ]; then mv ${D}${bindir}/clear ${D}${bindir}/clear.${PN}
Signature · 3 lines
Scott Garman Embedded Linux Engineer - Yocto Project Intel Open Source Technology Center
PATCH 5/8 python: fix install when libdir is not "lib"
In reply to [email protected]From: Nitin A Kamble <[email protected]>
This commit fixes python's install issue of not finding the native pythong binray modules.
--- .../python/fix_for_using_different_libdir.patch | 78 ++++++++++++++++++++ meta/recipes-devtools/python/python_2.7.2.bb | 3 +- 2 files changed, 80 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/python/python/fix_for_using_different_libdir.patch
meta/recipes-devtools/python/python/fix_for_using_different_libdir.patch new file +78 -0
@@ -0,0 +1,78 @@ +Upstream-Status: Inappropriate [Embedded specific] + +This patch fixes issuing with different libdir like lib64. +This patch makes the native python binary modules findable +in the install process of the host python. + +Signed-Off-By: Nitin A Kamble <[email protected]> +Date: 2012/03/14 + +Index: Python-2.7.2/Lib/sysconfig.py +=================================================================== +--- Python-2.7.2.orig/Lib/sysconfig.py ++++ Python-2.7.2/Lib/sysconfig.py +@@ -7,10 +7,10 @@ from os.path import pardir, realpath + + _INSTALL_SCHEMES = { + 'posix_prefix': { +- 'stdlib': '{base}/lib/python{py_version_short}', +- 'platstdlib': '{platbase}/lib/python{py_version_short}', +- 'purelib': '{base}/lib/python{py_version_short}/site-packages', +- 'platlib': '{platbase}/lib/python{py_version_short}/site-packages', ++ 'stdlib': '{base}/'+sys.lib+'/python{py_version_short}', ++ 'platstdlib': '{platbase}/'+sys.lib+'/python{py_version_short}', ++ 'purelib': '{base}/'+sys.lib+'/python{py_version_short}/site-packages', ++ 'platlib': '{platbase}/'+sys.lib+'/python{py_version_short}/site-packages', + 'include': '{base}/include/python{py_version_short}', + 'platinclude': '{platbase}/include/python{py_version_short}', + 'scripts': '{base}/bin', +@@ -65,10 +65,10 @@ _INSTALL_SCHEMES = { + 'data' : '{userbase}', + }, + 'posix_user': { +- 'stdlib': '{userbase}/lib/python{py_version_short}', +- 'platstdlib': '{userbase}/lib/python{py_version_short}', +- 'purelib': '{userbase}/lib/python{py_version_short}/site-packages', +- 'platlib': '{userbase}/lib/python{py_version_short}/site-packages', ++ 'stdlib': '{userbase}/'+sys.lib+'/python{py_version_short}', ++ 'platstdlib': '{userbase}/'+sys.lib+'/python{py_version_short}', ++ 'purelib': '{userbase}/'+sys.lib+'/python{py_version_short}/site-packages', ++ 'platlib': '{userbase}/'+sys.lib+'/python{py_version_short}/site-packages', + 'include': '{userbase}/include/python{py_version_short}', + 'scripts': '{userbase}/bin', + 'data' : '{userbase}', +Index: Python-2.7.2/Makefile.pre.in +=================================================================== +--- Python-2.7.2.orig/Makefile.pre.in ++++ Python-2.7.2/Makefile.pre.in +@@ -928,25 +928,25 @@ libinstall: build_all $(srcdir)/Lib/$(PL + done; \ + done + $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt +- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ PYTHONPATH=$(DESTDIR)$(LIBDEST):${CROSSPYTHONPATH} $(RUNSHARED) \ + $(HOSTPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + $(DESTDIR)$(LIBDEST) +- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ PYTHONPATH=$(DESTDIR)$(LIBDEST):${CROSSPYTHONPATH} $(RUNSHARED) \ + $(HOSTPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + $(DESTDIR)$(LIBDEST) +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ -PYTHONPATH=$(DESTDIR)$(LIBDEST):${CROSSPYTHONPATH} $(RUNSHARED) \ + $(HOSTPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ -PYTHONPATH=$(DESTDIR)$(LIBDEST):${CROSSPYTHONPATH} $(RUNSHARED) \ + $(HOSTPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ ++ -PYTHONPATH=$(DESTDIR)$(LIBDEST):${CROSSPYTHONPATH} $(RUNSHARED) \ + $(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()" + + # Create the PLATDIR source directory, if one wasn't distributed..
meta/recipes-devtools/python/python_2.7.2.bb +2 -1
@@ -20,7 +20,7 @@ SRC_URI += "\ file://setup_py_skip_cross_import_check.patch \ file://add-md5module-support.patch \ file://host_include_contamination.patch \ - file://sys_platform_is_now_always_linux2.patch \ + file://fix_for_using_different_libdir.patch \ " S = "${WORKDIR}/Python-${PV}"
@@ -99,6 +99,7 @@ do_install() { oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \ HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \ + CROSSPYTHONPATH=${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/ \ STAGING_LIBDIR=${STAGING_LIBDIR} \ STAGING_INCDIR=${STAGING_INCDIR} \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
Signature · 1 line
1.7.6.4
Re: [PATCH 5/8] python: fix install when libdir is not "lib"
Hello Nitin,
meta/recipes-devtools/python/python_2.7.2.bb SRC_URI += "\ · line 23
Quoted 7 lines · On 15.03.2012 03:02, [email protected] wrote:
meta/recipes-devtools/python/python_2.7.2.bb +0
-1@@ -20,7 +20,7 @@ SRC_URI += "\ file://setup_py_skip_cross_import_check.patch \ file://add-md5module-support.patch \ file://host_include_contamination.patch \ - file://sys_platform_is_now_always_linux2.patch \
did you remove this one by accident?
Regards,
Andreas
Re: [PATCH 5/8] python: fix install when libdir is not "lib"
Quoted 24 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Andreas Oberritter
Sent: Wednesday, March 14, 2012 8:00 PM
To: [email protected]
Subject: Re: [OE-core] [PATCH 5/8] python: fix install when libdir is not "lib"Hello Nitin,
meta/recipes-devtools/python/python_2.7.2.bb SRC_URI += "\ · line 23
Quoted 7 lines · On 15.03.2012 03:02, [email protected] wrote:
meta/recipes-devtools/python/python_2.7.2.bb +0
-1@@ -20,7 +20,7 @@ SRC_URI += "\ file://setup_py_skip_cross_import_check.patch \ file://add-md5module-support.patch \ file://host_include_contamination.patch \ - file://sys_platform_is_now_always_linux2.patch \did you remove this one by accident?
Quoted 3 lines
Regards,
Andreas
Andreas,
Yes, it was an accident. I will correct it. Thanks for catching.
Nitin
Re: [PATCH 5/8] python: fix install when libdir is not "lib"
In reply to [email protected]Quoted 17 lines · On Wed, Mar 14, 2012 at 07:02:14PM -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This commit fixes python's install issue of not finding the native pythong binray modules.
Signed-off-by Nitin A Kamble <[email protected]>--- .../python/fix_for_using_different_libdir.patch | 78 ++++++++++++++++++++ meta/recipes-devtools/python/python_2.7.2.bb | 3 +- 2 files changed, 80 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/python/python/fix_for_using_different_libdir.patchmeta/recipes-devtools/python/python_2.7.2.bb +0
-0
meta/recipes-devtools/python/python_2.7.2.bb SRC_URI += "\ · line 23
Quoted 5 lines
meta/recipes-devtools/python/python_2.7.2.bb +1
-1@@ -20,7 +20,7 @@ SRC_URI += "\ file://setup_py_skip_cross_import_check.patch \ file://add-md5module-support.patch \ file://host_include_contamination.patch \ - file://sys_platform_is_now_always_linux2.patch \ + file://fix_for_using_different_libdir.patch \
^ really?
Quoted 11 lines
meta/recipes-devtools/python/python_2.7.2.bb +1
-0" S = "${WORKDIR}/Python-${PV}"@@ -99,6 +99,7 @@ do_install() { oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \ HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \ + CROSSPYTHONPATH=${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/ \ STAGING_LIBDIR=${STAGING_LIBDIR} \ STAGING_INCDIR=${STAGING_INCDIR} \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
Signature · 1 line
Martin 'JaMa' Jansa jabber: [email protected]
Re: [PATCH 5/8] python: fix install when libdir is not "lib"
Quoted 29 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Martin Jansa
Sent: Thursday, March 15, 2012 12:19 AM
To: Patches and discussions about the oe-core layer
Subject: Re: [OE-core] [PATCH 5/8] python: fix install when libdir is not "lib"Quoted 8 lines · On Wed, Mar 14, 2012 at 07:02:14PM -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This commit fixes python's install issue of not finding the native pythong binray modules.
Signed-off-by Nitin A Kamble <[email protected]>--- .../python/fix_for_using_different_libdir.patch | 78++++++++++++++++++++
Quoted 2 lines
meta/recipes-devtools/python/python_2.7.2.bb | 3 +- 2 files changed, 80 insertions(+), 1 deletions(-) create mode100644
Quoted 1 line
meta/recipes-
devtools/python/python/fix_for_using_different_libdir.pat
Quoted 2 lines
ch
Quoted 13 lines
meta/recipes-devtools/python/python_2.7.2.bb SRC_URI += "\ · line 23
Quoted 11 lines
meta/recipes-devtools/python/python_2.7.2.bb +1
-1@@ -20,7 +20,7 @@ SRC_URI += "\ file://setup_py_skip_cross_import_check.patch \ file://add-md5module-support.patch \ file://host_include_contamination.patch \ - file://sys_platform_is_now_always_linux2.patch \ + file://fix_for_using_different_libdir.patch \^ really?
Martin,
Removing a patch was an accident. It is getting fixed now. Thanks for catching it.
Nitin
Quoted 18 lines
meta/recipes-devtools/python/python_2.7.2.bb do_install() { · line 103
Quoted 10 lines
meta/recipes-devtools/python/python_2.7.2.bb +2
-0" S = "${WORKDIR}/Python-${PV}"@@ -99,6 +99,7 @@ do_install() { oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \ HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \ + +CROSSPYTHONPATH=${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-d
meta/recipes-devtools/python/python_2.7.2.bb do_install() { · line 105
Quoted 4 lines
meta/recipes-devtools/python/python_2.7.2.bb +1
-0+ynload/ \ STAGING_LIBDIR=${STAGING_LIBDIR} \ STAGING_INCDIR=${STAGING_INCDIR} \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \--
Martin 'JaMa' Jansa jabber: [email protected]
PATCH 6/8 multilib.conf: add other abi packages to target gcc's dependencies
In reply to [email protected]From: Nitin A Kamble <[email protected]>
--- meta/conf/multilib.conf | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
meta/conf/multilib.conf +3 -0
@@ -6,6 +6,9 @@ MULTILIB_SAVE_VARNAME = "DEFAULTTUNE" MULTILIBS ??= "multilib:lib32" +# This adds multilib gcc components like "lib32-libgcc libx32-libgcc" +DEPENDS_append_pn-gcc = "${@'-libgcc '.join(d.getVar('MULTILIB_VARIANTS',True) .split() + [''])}" + STAGING_DIR_HOST = "${STAGING_DIR}/${MLPREFIX}${MACHINE}" STAGING_DIR_TARGET = "${STAGING_DIR}/${MLPREFIX}${MACHINE}"
Signature · 1 line
1.7.6.4
PATCH 7/8 gcc: remove the 64bithack patch
In reply to [email protected]From: Nitin A Kamble <[email protected]>
and bump PR
--- meta/recipes-devtools/gcc/gcc-4.6.inc | 1 - meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch | 68 --------------------- 2 files changed, 0 insertions(+), 69 deletions(-) delete mode 100644 meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch
meta/recipes-devtools/gcc/gcc-4.6.inc +0 -1
@@ -59,7 +59,6 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH};proto=http \ file://gcc-poison-system-directories.patch \ file://gcc-poison-dir-extend.patch \ file://gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \ - file://64bithack.patch \ file://optional_libstdc.patch \ file://disable_relax_pic_calls_flag.patch \ file://COLLECT_GCC_OPTIONS.patch \
meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch deleted +0 -68
68 lines not on this page · raw message
Signature · 1 line
1.7.6.4
Re: [PATCH 7/8] gcc: remove the 64bithack patch
Quoted 10 lines · On Wed, 2012-03-14 at 19:02 -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
and bump PR
Signed-off-by Nitin A Kamble <[email protected]>--- meta/recipes-devtools/gcc/gcc-4.6.inc | 1 - meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch | 68 --------------------- 2 files changed, 0 insertions(+), 69 deletions(-) delete mode 100644 meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch
As far as I can tell whilst this will make multilib work on the target device, since you've removed this patch, the actual -cross toolchains used for multilib builds will be broken since they may or may not look in the correct libdir?
Cheers,
Richard
Re: [PATCH 7/8] gcc: remove the 64bithack patch
Quoted 24 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Richard Purdie
Sent: Thursday, March 15, 2012 1:31 AM
To: Patches and discussions about the oe-core layer
Subject: Re: [OE-core] [PATCH 7/8] gcc: remove the 64bithack patchQuoted 8 lines · On Wed, 2012-03-14 at 19:02 -0700, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
and bump PR
Signed-off-by Nitin A Kamble <[email protected]>--- meta/recipes-devtools/gcc/gcc-4.6.inc | 1 - meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch | 68 ---------------------
Quoted 2 lines
2 files changed, 0 insertions(+), 69 deletions(-) delete mode 100644 meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch
Quoted 9 lines
As far as I can tell whilst this will make multilib work on the target device, since you've removed this patch, the actual -cross toolchains used for multilib builds will be broken since they may or may not look in the correct libdir?
Cheers,
Richard
Hi Richard,
This is not an issue. do_gcc_multilib_setup() is always configuring the gcc multilib files. For cross gcc recipes it is only using DEFAULTTUNE while for target it is using DEFAULTTUNE & MULTILIB_VARIENTS. Also in my testing cross gcc recipes did not have any such issues.
Thanks,
Nitin
PATCH 8/8 gcc: enable multilib for target gcc
In reply to [email protected]From: Nitin A Kamble <[email protected]>
add a task to setup multilib configuration for target gcc.
This commit modifies target gcc, in such a way that it supports configured multilib targets output.
Tested this, and this works on the target now.
root@qemux86-64:~# gcc -m64 t.c -o t root@qemux86-64:~# file t t: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped root@qemux86-64:~# ./t Hello World ! root@qemux86-64:~# gcc -m32 t.c -o t root@qemux86-64:~# file t t: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped root@qemux86-64:~# ./t Hello World !
--- meta/recipes-devtools/gcc/gcc-common.inc | 23 +++ meta/recipes-devtools/gcc/gcc-configure-common.inc | 2 +- meta/recipes-devtools/gcc/gcc-configure-target.inc | 1 + meta/recipes-devtools/gcc/gcc-multilib-config.inc | 155 ++++++++++++++++++++ meta/recipes-devtools/gcc/libgcc_4.6.bb | 42 ++++++ 5 files changed, 222 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-multilib-config.inc
meta/recipes-devtools/gcc/gcc-common.inc +23 -0
@@ -34,6 +34,29 @@ def get_gcc_multiarch_setting(bb, d): return multiarch_options[target_arch] return "" +# this is used by the multilib setup of gcc +def get_tune_parameters (tune, d) : + availtunes = d.getVar('AVAILTUNES', True) + if tune not in availtunes.split(): + bb.error('The tune: %s is not one of the available tunes: %s', tune, availtunes) + + localdata = bb.data.createCopy(d) + override = ':tune-' + tune + localdata.setVar('OVERRIDES', localdata.getVar('OVERRIDES', False) + override) + bb.data.update_data(localdata) + + retdict = {} + retdict['tune'] = tune + retdict['ccargs'] = localdata.getVar('TUNE_CCARGS', True) + retdict['features'] = localdata.getVar('TUNE_FEATURES', True) + retdict['baselib'] = localdata.getVar('BASE_LIB', True) + retdict['arch'] = localdata.getVar('TUNE_ARCH', True) + retdict['abiextension'] = localdata.getVar('ABIEXTENSION', True) + retdict['target_fpu'] = localdata.getVar('TARGET_FPU', True) + retdict['pkgarch'] = localdata.getVar('TUNE_PKGARCH', True) + retdict['package_extra_archs'] = localdata.getVar('PACKAGE_EXTRA_ARCHS', True) + return retdict + # We really need HOST_SYS here for some packages and TARGET_SYS for others. # For now, libgcc is most important so we fix for that - RP. SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
meta/recipes-devtools/gcc/gcc-configure-common.inc +1 -1
@@ -25,7 +25,7 @@ EXTRA_OECONF_PATHS ?= "" EXTRA_OECONF_INITIAL ?= "" EXTRA_OECONF_INTERMEDIATE ?= "" -GCCMULTILIB = "--disable-multilib" +GCCMULTILIB ?= "--disable-multilib" EXTRA_OECONF = "${@['--enable-clocale=generic', ''][d.getVar('USE_NLS', True) != 'no']} \ --with-gnu-ld \
meta/recipes-devtools/gcc/gcc-configure-target.inc +1 -0
@@ -1,4 +1,5 @@ require gcc-configure-common.inc +require gcc-multilib-config.inc EXTRA_OECONF_PATHS = " \ --with-local-prefix=${STAGING_DIR_TARGET}${prefix} \
meta/recipes-devtools/gcc/gcc-multilib-config.inc new file +155 -0
155 lines not on this page · raw message
meta/recipes-devtools/gcc/libgcc_4.6.bb +42 -0
51 lines not on this page · raw message
Signature · 1 line
1.7.6.4
Re: [PATCH 8/8] gcc: enable multilib for target gcc
Quoted 4 lines · On Wed, Mar 14, 2012 at 9:02 PM, <[email protected]> wrote:
${libdir}/${TARGET_SYS}/${BINV}/crt* \
+ ${libdir}/${TARGET_SYS}/${BINV}/32 \
+ ${libdir}/${TARGET_SYS}/${BINV}/x32 \
+ ${libdir}/${TARGET_SYS}/${BINV}/n32 \
Would ${libdir}/${TARGET_SYS}/${BINV}/64 ever exist?
-M
Re: [PATCH 8/8] gcc: enable multilib for target gcc
Quoted 11 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of McClintock Matthew-B29882
Sent: Wednesday, March 14, 2012 7:43 PM
To: Patches and discussions about the oe-core layer
Subject: Re: [OE-core] [PATCH 8/8] gcc: enable multilib for target gccOn Wed, Mar 14, 2012 at 9:02 PM, <[email protected]> wrote:
Quoted 8 lines
Quoted 4 lines
${libdir}/${TARGET_SYS}/${BINV}/crt* \
+ ${libdir}/${TARGET_SYS}/${BINV}/32 \
+ ${libdir}/${TARGET_SYS}/${BINV}/x32 \
+ ${libdir}/${TARGET_SYS}/${BINV}/n32 \Would ${libdir}/${TARGET_SYS}/${BINV}/64 ever exist?
-M
It will exist. Thanks for catching this.
Nitin
Re: [PATCH 8/8] gcc: enable multilib for target gcc
In reply to [email protected]Quoted 16 lines · On Wed, Mar 14, 2012 at 9:02 PM, <[email protected]> wrote:
+ multilibs =
d.getVar('MULTILIB_VARIANTS', True)
+ target_arch =d.getVar('TARGET_ARCH', True)meta/recipes-devtools/gcc/gcc-multilib-config.inc new file +14
-0+ + gcc_target_config_files = { + 'x86_64' : ['gcc/config/i386/t-linux64', 'gcc/config/i386/t-linux'], + 'i586' : ['gcc/config/mips/t-linux'], + 'mips' : ['gcc/config/mips/t-linux64', 'gcc/config/mips/t-linux'], + 'ppc' : ['gcc/config/rs6000/t-linux64'] } + + gcc_header_config_files = { + 'x86_64' : ['gcc/config/i386/linux64.h'], + 'i586' : ['gcc/config/mips/linux.h'], + 'mips' : ['gcc/config/mips/linux64.h', 'gcc/config/mips/linux.h'], + 'ppc' : ['gcc/config/rs6000/linux64.h', 'gcc/config/rs6000/linux.h'] } + + if target_arch not in gcc_target_config_files:
meta/recipes-devtools/gcc/gcc-multilib-config.inc line 59
Quoted 10 lines
meta/recipes-devtools/gcc/gcc-multilib-config.inc new file +10
-0+ bb.warn('gcc multilib setup is not supported for TARGET_ARCH=' + target_arch) + return + + gcc_multilib_target_config_files = gcc_target_config_files[target_arch] + gcc_multilib_header_config_files = gcc_header_config_files[target_arch] + + ml_list = ['DEFAULTTUNE'] + if multilibs != '': + for ml in multilibs.split(' '): + ml_list.append('DEFAULTTUNE_virtclass-multilib-' + ml)
What about adding non-multilib variants? I want to make one toolchain for ppce500v2, ppce500mc, ppce5550, and ppc64e5500?
Also, somehow, should we enforce all "toolchains" are built through this multilib build process such that I only need to configure things properly and then theoretically I can make a toolchain ONCE that supports all desired targets? E.g. I don't think we want references to DEFAULTTUNE since I don't want the DEFAULTTUNE to matter? Does this make any sense?
-M
Re: [PATCH 8/8] gcc: enable multilib for target gcc
Quoted 31 lines · On Thu, 2012-03-15 at 02:47 +0000, McClintock Matthew-B29882 wrote:
Quoted 16 lines · On Wed, Mar 14, 2012 at 9:02 PM, <[email protected]> wrote:
meta/recipes-devtools/gcc/gcc-multilib-config.inc new file +16
-0+ multilibs = d.getVar('MULTILIB_VARIANTS', True) + target_arch = d.getVar('TARGET_ARCH', True) + + gcc_target_config_files = { + 'x86_64' : ['gcc/config/i386/t-linux64', 'gcc/config/i386/t-linux'], + 'i586' : ['gcc/config/mips/t-linux'], + 'mips' : ['gcc/config/mips/t-linux64', 'gcc/config/mips/t-linux'], + 'ppc' : ['gcc/config/rs6000/t-linux64'] } + + gcc_header_config_files = { + 'x86_64' : ['gcc/config/i386/linux64.h'], + 'i586' : ['gcc/config/mips/linux.h'], + 'mips' : ['gcc/config/mips/linux64.h', 'gcc/config/mips/linux.h'], + 'ppc' : ['gcc/config/rs6000/linux64.h', 'gcc/config/rs6000/linux.h'] } + + if target_arch not in gcc_target_config_files:meta/recipes-devtools/gcc/gcc-multilib-config.inc line 59
Quoted 10 lines
meta/recipes-devtools/gcc/gcc-multilib-config.inc new file +10
-0+ bb.warn('gcc multilib setup is not supported for TARGET_ARCH=' + target_arch) + return + + gcc_multilib_target_config_files = gcc_target_config_files[target_arch] + gcc_multilib_header_config_files = gcc_header_config_files[target_arch] + + ml_list = ['DEFAULTTUNE'] + if multilibs != '': + for ml in multilibs.split(' '): + ml_list.append('DEFAULTTUNE_virtclass-multilib-' + ml)What about adding non-multilib variants? I want to make one toolchain for ppce500v2, ppce500mc, ppce5550, and ppc64e5500?
Quoted 6 lines
Also, somehow, should we enforce all "toolchains" are built through this multilib build process such that I only need to configure things properly and then theoretically I can make a toolchain ONCE that supports all desired targets? E.g. I don't think we want references to DEFAULTTUNE since I don't want the DEFAULTTUNE to matter? Does this make any sense?
Whilst I understand the desire, this is not what the patch series is intended for and I don't think it reasonable to try and change the patch series to fit that requirement.
The big issue you face trying to do the above is iterating over the toolchain building libgcc and libc for each of the variants you mention. This is particularly hard since at least in the multilib case they have different libdir paths, in your non-multilib case, they would overlap.
So no, I don't think its possible to do what you describe in this context.
Cheers,
Richard
Re: [PATCH 8/8] gcc: enable multilib for target gcc
Quoted 3 lines · Richard Purdie
Whilst I understand the desire, this is not what the patch series is intended for and I don't think it reasonable to try and change the patch series to fit that requirement.
Not insisting on anything just spurring further conversation...
Quoted 7 lines
The big issue you face trying to do the above is iterating over the toolchain building libgcc and libc for each of the variants you mention. This is particularly hard since at least in the multilib case they have different libdir paths, in your non-multilib case, they would overlap.
So no, I don't think its possible to do what you describe in this context.
I'm not sure of all the issues, but I know we make toolchains that support all Freescale parts - that's something I'm looking to reproduce with Yocto at some point.
Also, regarding multilib recipes (not gcc) have you given though to having multilib sort of always in effect? I.E if I build a lib32-binutils on a 64-bit machine - it should go generate the sstate-cache that could be reused by a pure 32-bit machine?
Basically we are creating these one-off sstate-caches for this scenario... sstate for lib64 on a lib32 machine or vice versa...
-M
Quoted 6 lines · On 03/14/2012 07:02 PM, [email protected] wrote:
From: Nitin A Kamble<[email protected]>
For more information look at the individual commit logs.
The following changes since commit
8bae18bb358755131f13865abb279ac687a03848:
Quoted 8 lines
slang: Fix rpath QA warnings (2012-03-15 00:11:40 +0000)
are available in the git repository at:
git://git.pokylinux.org/poky-contribgcc-multilib-2-for-push
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=gcc-multilib-2-for-pushNitin A Kamble (8):
gmp: upgrade from 5.0.3 to 5.0.4
Merged
Quoted 1 line
automake: upgrade from 1.11.2 to 1.11.3
Holding on on this change due to issue already seen.
Quoted 3 lines
distro-tracking: update status of recipes
ncurses: fix install error
python: fix install when libdir is not "lib"
Merged these into OE-Core
Quoted 4 lines
multilib.conf: add other abi packages to target gcc's dependencies
gcc: remove the 64bithack patch
gcc: enable multilib for target gcc
We are going to hold off on the multilib changes for after 1.2
Thanks
Sau!
Quoted 28 lines
.../conf/distro/include/distro_tracking_fields.inc | 24 ++-- meta/conf/multilib.conf | 3 + meta/recipes-core/ncurses/ncurses.inc | 2 +- meta/recipes-devtools/automake/automake.inc | 2 +- ...utomake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch | 118 --------------- .../prefer-cpio-over-pax-for-ustar-archives.patch | 30 ++-- .../automake/automake/python-libdir.patch | 32 ++--- .../{automake_1.11.2.bb => automake_1.11.3.bb} | 8 +- meta/recipes-devtools/gcc/gcc-4.6.inc | 1 - meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch | 68 --------- meta/recipes-devtools/gcc/gcc-common.inc | 23 +++ meta/recipes-devtools/gcc/gcc-configure-common.inc | 2 +- meta/recipes-devtools/gcc/gcc-configure-target.inc | 1 + meta/recipes-devtools/gcc/gcc-multilib-config.inc | 155 ++++++++++++++++++++ meta/recipes-devtools/gcc/libgcc_4.6.bb | 42 ++++++ .../python/fix_for_using_different_libdir.patch | 78 ++++++++++ meta/recipes-devtools/python/python_2.7.2.bb | 3 +- meta/recipes-support/gmp/gmp/gmp_bugfix.patch | 94 ------------ .../gmp/{gmp_5.0.3.bb => gmp_5.0.4.bb} | 7 +- 19 files changed, 358 insertions(+), 335 deletions(-)delete mode 100644
meta/recipes-devtools/automake/automake/automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patchrename meta/recipes-devtools/automake/{automake_1.11.2.bb => automake_1.11.3.bb} (85%) delete mode 100644meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch
create mode 100644 meta/recipes-devtools/gcc/gcc-multilib-config.inc
create mode 100644meta/recipes-devtools/python/python/fix_for_using_different_libdir.patchdelete mode 100644meta/recipes-support/gmp/gmp/gmp_bugfix.patch
rename meta/recipes-support/gmp/{gmp_5.0.3.bb => gmp_5.0.4.bb} (54%)