Fixes Multi-Lib & M3
PATCH 2/22 glibc: deleted
In reply to Saul WoldFrom: Phil Blundell <[email protected]>
Glibc 2.10.1 is outdated now and eglibc seems to provide a superset of its functionality.
--- meta/conf/distro/include/tclibc-glibc.inc | 32 - meta/conf/distro/include/tcmode-default.inc | 5 - .../glibc/glibc-2.10.1/arm-longlong.patch | 60 -- .../glibc/glibc-2.10.1/arm-memcpy.patch | 760 -------------------- .../glibc/glibc-2.10.1/dl-cache-libcmp.patch | 12 - .../recipes-core/glibc/glibc-2.10.1/etc/ld.so.conf | 2 - .../glibc/glibc-2.10.1/fhs-linux-paths.patch | 13 - .../glibc/glibc-2.10.1/generate-supported.mk | 11 - .../glibc/glibc-2.10.1/generic-bits_select.h | 35 - .../glibc/glibc-2.10.1/generic-bits_time.h | 75 -- .../glibc/glibc-2.10.1/generic-bits_types.h | 200 ----- .../glibc/glibc-2.10.1/generic-bits_typesizes.h | 66 -- .../glibc-2.9-enable-binutils-2.2.patch | 37 - .../glibc-arm-IO-acquire-lock-fix.diff | 15 - .../glibc/glibc-2.10.1/glibc-arm-no-asm-page.patch | 17 - .../glibc/glibc-2.10.1/glibc-check_pf.patch | 345 --------- .../glibc/glibc-2.10.1/ldd-unbash.patch | 13 - .../glibc/glibc-2.10.1/ldsocache-varrun.patch | 20 - .../glibc/glibc-2.10.1/march-i686.patch | 39 - .../glibc/glibc-2.10.1/mips-rld-map-check.patch | 23 - .../glibc/glibc-2.10.1/nptl-crosscompile.patch | 28 - .../glibc/glibc-2.10.1/nscd-init.patch | 41 -- .../glibc/glibc-2.10.1/powerpc-sqrt-hack.diff | 27 - .../recipes-core/glibc/glibc-2.10.1/rulesfix.patch | 15 - meta/recipes-core/glibc/glibc-initial.inc | 67 -- meta/recipes-core/glibc/glibc-initial_2.10.1.bb | 10 - meta/recipes-core/glibc/glibc-locale_2.10.1.bb | 63 -- meta/recipes-core/glibc/glibc-package.inc | 96 --- meta/recipes-core/glibc/glibc.inc | 60 -- meta/recipes-core/glibc/glibc_2.10.1.bb | 161 ----- meta/recipes-core/glibc/site_config/funcs | 474 ------------ meta/recipes-core/glibc/site_config/headers | 156 ---- meta/recipes-core/glibc/site_config/types | 21 - 33 files changed, 0 insertions(+), 2999 deletions(-) delete mode 100644 meta/conf/distro/include/tclibc-glibc.inc delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/arm-longlong.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/arm-memcpy.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/dl-cache-libcmp.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/etc/ld.so.conf delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/fhs-linux-paths.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generate-supported.mk delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_select.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_time.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_types.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_typesizes.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-2.9-enable-binutils-2.2.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-arm-IO-acquire-lock-fix.diff delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-arm-no-asm-page.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-check_pf.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/ldd-unbash.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/ldsocache-varrun.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/march-i686.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/mips-rld-map-check.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/nptl-crosscompile.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/nscd-init.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/powerpc-sqrt-hack.diff delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/rulesfix.patch delete mode 100644 meta/recipes-core/glibc/glibc-initial.inc delete mode 100644 meta/recipes-core/glibc/glibc-initial_2.10.1.bb delete mode 100644 meta/recipes-core/glibc/glibc-locale_2.10.1.bb delete mode 100644 meta/recipes-core/glibc/glibc-package.inc delete mode 100644 meta/recipes-core/glibc/glibc-stage.inc delete mode 100644 meta/recipes-core/glibc/glibc.inc delete mode 100644 meta/recipes-core/glibc/glibc_2.10.1.bb delete mode 100644 meta/recipes-core/glibc/site_config/funcs delete mode 100644 meta/recipes-core/glibc/site_config/headers delete mode 100644 meta/recipes-core/glibc/site_config/types
meta/conf/distro/include/tclibc-glibc.inc deleted +0 -32
@@ -1,32 +0,0 @@ -# -# glibc specific configuration -# - -LIBCEXTENSION = "${@['', '-gnu'][(d.getVar('ABIEXTENSION', True) or '') != '']}" - -# Add glibc to the overrides. -OVERRIDES =. "libc-glibc:" - -PREFERRED_PROVIDER_virtual/libiconv ?= "glibc" -PREFERRED_PROVIDER_virtual/libiconv-nativesdk ?= "glibc-nativesdk" -PREFERRED_PROVIDER_virtual/libintl ?= "glibc" -PREFERRED_PROVIDER_virtual/libc ?= "glibc" -PREFERRED_PROVIDER_virtual/libc-nativesdk ?= "glibc-nativesdk" -PREFERRED_PROVIDER_virtual/libc-locale ?= "glibc-locale" - -CXXFLAGS += "-fvisibility-inlines-hidden" - -LIBC_DEPENDENCIES = "\ - libsegfault \ - glibc \ - glibc-dbg \ - glibc-dev \ - glibc-utils \ - glibc-thread-db \ - glibc-localedata-i18n \ - glibc-gconv-ibm850 \ - glibc-gconv-cp1252 \ - glibc-gconv-iso8859-1 \ - glibc-gconv-iso8859-15 \ - locale-base-en-gb \ - "
meta/conf/distro/include/tcmode-default.inc +0 -5
@@ -49,11 +49,6 @@ PREFERRED_VERSION_binutils-crosssdk ?= "${BINUVERSION}" PREFERRED_VERSION_binutils-cross-canadian ?= "${BINUVERSION}" PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}" PREFERRED_VERSION_linux-libc-headers-nativesdk ?= "${LINUXLIBCVERSION}" -PREFERRED_VERSION_glibc ?= "${GLIBCVERSION}" -PREFERRED_VERSION_glibc-locale ?= "${GLIBCVERSION}" -PREFERRED_VERSION_glibc-nativesdk ?= "${GLIBCVERSION}" -PREFERRED_VERSION_glibc-initial ?= "${GLIBCVERSION}" -PREFERRED_VERSION_glibc-initial-nativesdk ?= "${GLIBCVERSION}" PREFERRED_VERSION_eglibc ?= "${EGLIBCVERSION}" PREFERRED_VERSION_eglibc-locale ?= "${EGLIBCVERSION}" PREFERRED_VERSION_eglibc-nativesdk ?= "${EGLIBCVERSION}"
meta/recipes-core/glibc/glibc-2.10.1/arm-longlong.patch deleted +0 -60
60 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/arm-memcpy.patch deleted +0 -760
760 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/dl-cache-libcmp.patch deleted +0 -12
@@ -1,12 +0,0 @@ -Upstream-Status: Inappropriate [not used] - ---- glibc-2.4/elf/Versions.ark 2006-03-11 23:30:09.000000000 +0100 -+++ glibc-2.4/elf/Versions 2006-03-11 23:31:44.000000000 +0100 -@@ -63,5 +63,7 @@ - _dl_debug_state; - # Pointer protection. - __pointer_chk_guard; -+ # for ldconfig -+ _dl_cache_libcmp; - } - }
meta/recipes-core/glibc/glibc-2.10.1/etc/ld.so.conf deleted +0 -2
@@ -1,2 +0,0 @@ -/usr/local/lib -include /etc/ld.so.conf.d/*
meta/recipes-core/glibc/glibc-2.10.1/fhs-linux-paths.patch deleted +0 -13
@@ -1,13 +0,0 @@ -Upstream-Status: Inappropriate [not used] - ---- glibc-2.1.1/sysdeps/unix/sysv/linux/paths.h~ Thu May 27 13:16:33 1999 -+++ glibc-2.1.1/sysdeps/unix/sysv/linux/paths.h Thu May 27 13:17:55 1999 -@@ -71,7 +71,7 @@ - /* Provide trailing slash, since mostly used for building pathnames. */ - #define _PATH_DEV "/dev/" - #define _PATH_TMP "/tmp/" --#define _PATH_VARDB "/var/db/" -+#define _PATH_VARDB "/var/lib/misc/" - #define _PATH_VARRUN "/var/run/" - #define _PATH_VARTMP "/var/tmp/" -
meta/recipes-core/glibc/glibc-2.10.1/generate-supported.mk deleted +0 -11
@@ -1,11 +0,0 @@ -#!/usr/bin/make - -include $(IN) - -all: - rm -f $(OUT) - touch $(OUT) - for locale in $(SUPPORTED-LOCALES); do \ - [ $$locale = true ] && continue; \ - echo $$locale | sed 's,/, ,' >> $(OUT); \ - done
meta/recipes-core/glibc/glibc-2.10.1/generic-bits_select.h deleted +0 -35
@@ -1,35 +0,0 @@ -/* Copyright (C) 1997, 1998, 2001 Free Software Foundation, Inc. -This file is part of the GNU C Library. - -The GNU C Library is free software; you can redistribute it and/or -modify it under the terms of the GNU Lesser General Public -License as published by the Free Software Foundation; either -version 2.1 of the License, or (at your option) any later version. - -The GNU C Library is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -Lesser General Public License for more details. - -You should have received a copy of the GNU Lesser General Public -License along with the GNU C Library; if not, write to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -02111-1307 USA. */ - -#ifndef _SYS_SELECT_H -# error "Never use <bits/select.h> directly; include <sys/select.h> instead." -#endif - - -/* We don't use `memset' because this would require a prototype and -the array isn't too big. */ -#define __FD_ZERO (s) \ - do { \ - unsigned int __i; \ - fd_set *__arr = (s); \ - for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) \ - __FDS_BITS (__arr)[__i] = 0; \ - } while (0) -#define __FD_SET (d, s) (__FDS_BITS (s)[__FDELT(d)] |= __FDMASK(d)) -#define __FD_CLR (d, s) (__FDS_BITS (s)[__FDELT(d)] &= ~__FDMASK(d)) -#define __FD_ISSET (d, s) ((__FDS_BITS (s)[__FDELT(d)] & __FDMASK(d)) != 0)
meta/recipes-core/glibc/glibc-2.10.1/generic-bits_time.h deleted +0 -75
75 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/generic-bits_types.h deleted +0 -200
200 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/generic-bits_typesizes.h deleted +0 -66
66 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/glibc-2.9-enable-binutils-2.2.patch deleted +0 -37
@@ -1,37 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - ---- glibc-2.9.orig/configure.in 2009-10-22 15:38:13.000000000 +0200 -+++ glibc-2.9/configure.in 2009-10-22 15:37:33.000000000 +0200 -@@ -844,10 +844,10 @@ - # Accept binutils 2.13 or newer. - AC_CHECK_PROG_VER(AS, $AS, --version, - [GNU assembler.* \([0-9]*\.[0-9.]*\)], -- [2.1[3-9]*], AS=: critic_missing="$critic_missing as") -+ [2.1[3-9]* | 2.2* ], AS=: critic_missing="$critic_missing as") - AC_CHECK_PROG_VER(LD, $LD, --version, - [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)], -- [2.1[3-9]*], LD=: critic_missing="$critic_missing ld") -+ [2.1[3-9]* | 2.2* ], LD=: critic_missing="$critic_missing ld") - - # We need the physical current working directory. We cannot use the - # "pwd -P" shell builtin since that's not portable. Instead we try to ---- glibc-2.9.orig/configure 2009-02-26 22:28:17.000000000 +0100 -+++ glibc-2.9/configure 2009-10-22 15:43:11.000000000 +0200 -@@ -4531,7 +4531,7 @@ - ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 2.1[3-9]*) -+ 2.1[3-9]* | 2.2*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -4594,7 +4594,7 @@ - ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 2.1[3-9]*) -+ 2.1[3-9]* | 2.2*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -
meta/recipes-core/glibc/glibc-2.10.1/glibc-arm-IO-acquire-lock-fix.diff deleted +0 -15
@@ -1,15 +0,0 @@ -Arm needs a similar fix as http://sourceware.org/ml/libc-ports/2007-12/msg00000.html - -Upstream-Status: Inappropriate [not used] - ---- /tmp/stdio-lock.h 2008-03-04 18:51:15.555038993 +0100 -+++ glibc-2.7/ports/sysdeps/unix/sysv/linux/arm/bits/stdio-lock.h 2008-03-04 18:51:28.445035052 +0100 -@@ -50,6 +50,8 @@ - _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, (_fp)); \ - _IO_flockfile (_fp) - -+# define _IO_acquire_lock_clear_flags2(_fp) _IO_acquire_lock (_fp) -+ - # define _IO_release_lock(_fp) \ - _IO_funlockfile (_fp); \ - _IO_cleanup_region_end (0)
meta/recipes-core/glibc/glibc-2.10.1/glibc-arm-no-asm-page.patch deleted +0 -17
@@ -1,17 +0,0 @@ -http://sourceware.org/ml/libc-ports/2008-04/msg00005.html - -Upstream-Status: Inappropriate [not used] - - -Index: glibc-2.6.1/ports/sysdeps/unix/sysv/linux/arm/ioperm.c -=================================================================== ---- glibc-2.6.1.orig/ports/sysdeps/unix/sysv/linux/arm/ioperm.c 2008-09-12 18:08:18.000000000 -0700 -+++ glibc-2.6.1/ports/sysdeps/unix/sysv/linux/arm/ioperm.c 2008-09-12 18:08:28.000000000 -0700 -@@ -45,7 +45,6 @@ - #include <sys/mman.h> - - #include <linux/version.h> --#include <asm/page.h> - #include <sys/sysctl.h> - - #define PATH_ARM_SYSTYPE "/etc/arm_systype"
meta/recipes-core/glibc/glibc-2.10.1/glibc-check_pf.patch deleted +0 -345
345 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/ldd-unbash.patch deleted +0 -13
@@ -1,13 +0,0 @@ -Upstream-Status: Inappropriate [not used] - ---- glibc-2.5/elf/ldd.bash.in.org 2006-04-30 16:06:20.000000000 +0000 -+++ glibc-2.5/elf/ldd.bash.in 2007-03-30 19:18:57.000000000 +0000 -@@ -110,7 +110,7 @@ - # environments where the executed program might not have permissions - # to write to the console/tty. But only bash 3.x supports the pipefail - # option, and we don't bother to handle the case for older bash versions. --if set -o pipefail 2> /dev/null; then -+if false; then - try_trace() { - eval $add_env '"$@"' | cat - }
meta/recipes-core/glibc/glibc-2.10.1/ldsocache-varrun.patch deleted +0 -20
@@ -1,20 +0,0 @@ -This patch moves ld.so.cache from /etc to /var/run. This is for devices -where /etc is JFFS2 or CRAMFS but /var is a ramdisk. - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - -Upstream-Status: Inappropriate [not used] - ---- libc/sysdeps/generic/dl-cache.h~ldsocache-varrun -+++ libc/sysdeps/generic/dl-cache.h -@@ -29,7 +29,7 @@ - #endif - - #ifndef LD_SO_CACHE --# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache" -+# define LD_SO_CACHE "/var/run/ld.so.cache" - #endif - - #ifndef add_system_dir
meta/recipes-core/glibc/glibc-2.10.1/march-i686.patch deleted +0 -39
@@ -1,39 +0,0 @@ -2007-02-15 Khem Raj <kraj@xxxxxxxxxx> - - * sysdeps/unix/sysv/linux/i386/sysdep.h: Re-define __i686. - * nptl/sysdeps/pthread/pt-initfini.c: Ditto. - - -Upstream-Status: Inappropriate [not used] - -Index: sysdeps/unix/sysv/linux/i386/sysdep.h -=================================================================== ---- sysdeps/unix/sysv/linux/i386/sysdep.h (revision 1469) -+++ sysdeps/unix/sysv/linux/i386/sysdep.h (working copy) -@@ -29,6 +29,10 @@ - #include <dl-sysdep.h> - #include <tls.h> - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h -Index: nptl/sysdeps/pthread/pt-initfini.c -=================================================================== ---- nptl/sysdeps/pthread/pt-initfini.c (revision 1469) -+++ nptl/sysdeps/pthread/pt-initfini.c (working copy) -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); -
meta/recipes-core/glibc/glibc-2.10.1/mips-rld-map-check.patch deleted +0 -23
@@ -1,23 +0,0 @@ -On mips target, binutils currently sets DT_MIPS_RLD_MAP to 0 in dynamic -section if a --version-script sets _RLD_MAP to local. This is apparently -a binutils bug, but libc shouldn't segfault in this case. - -see also: http://sourceware.org/bugilla/show_bug.cgi?id=11615 - -Upstream-Status: Inappropriate [not used] - -9/19/2010 - added by Qing He <[email protected]> ---- -diff -ru glibc-2.10.1.orig/ports/sysdeps/mips/dl-machine.h glibc-2.10.1/ports/sysdeps/mips/dl-machine.h ---- glibc-2.10.1.orig/ports/sysdeps/mips/dl-machine.h 2009-05-16 16:36:20.000000000 +0800 -+++ glibc-2.10.1/ports/sysdeps/mips/dl-machine.h 2010-09-19 09:11:53.000000000 +0800 -@@ -70,7 +70,8 @@ - /* If there is a DT_MIPS_RLD_MAP entry in the dynamic section, fill it in - with the run-time address of the r_debug structure */ - #define ELF_MACHINE_DEBUG_SETUP(l,r) \ --do { if ((l)->l_info[DT_MIPS (RLD_MAP)]) \ -+do { if ((l)->l_info[DT_MIPS (RLD_MAP)] && \ -+ (l)->l_info[DT_MIPS (RLD_MAP)]->d_un.d_ptr) \ - *(ElfW(Addr) *)((l)->l_info[DT_MIPS (RLD_MAP)]->d_un.d_ptr) = \ - (ElfW(Addr)) (r); \ - } while (0)
meta/recipes-core/glibc/glibc-2.10.1/nptl-crosscompile.patch deleted +0 -28
@@ -1,28 +0,0 @@ -Upstream-Status: Inappropriate [not used] - ---- glibc-2.4/nptl/sysdeps/pthread/configure.in.ark 2006-03-12 00:41:40.000000000 +0100 -+++ glibc-2.4/nptl/sysdeps/pthread/configure.in 2006-03-12 00:44:08.000000000 +0100 -@@ -45,5 +45,6 @@ - AC_MSG_ERROR([the compiler must support C cleanup handling]) - fi - else -- AC_MSG_ERROR(forced unwind support is required) -+ AC_MSG_WARN([forced unwind support is required, can't be verified while crosscompiling]) -+ AC_DEFINE(HAVE_FORCED_UNWIND) - fi ---- glibc-2.4/nptl/sysdeps/pthread/configure.ark 2006-03-12 00:42:47.000000000 +0100 -+++ glibc-2.4/nptl/sysdeps/pthread/configure 2006-03-12 00:44:08.000000000 +0100 -@@ -153,7 +153,10 @@ - { (exit 1); exit 1; }; } - fi - else -- { { echo "$as_me:$LINENO: error: forced unwind support is required" >&5 --echo "$as_me: error: forced unwind support is required" >&2;} -- { (exit 1); exit 1; }; } -+ { echo "$as_me:$LINENO: WARNING: forced unwind support is required, can't be verified while crosscompiling" >&5 -+echo "$as_me: WARNING: forced unwind support is required, can't be verified while crosscompiling" >&2;} -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_FORCED_UNWIND 1 -+_ACEOF -+ - fi
meta/recipes-core/glibc/glibc-2.10.1/nscd-init.patch deleted +0 -41
41 lines not on this page · raw message
meta/recipes-core/glibc/glibc-2.10.1/powerpc-sqrt-hack.diff deleted +0 -27
@@ -1,27 +0,0 @@ -Upstream-Status: Inappropriate [not used] - -diff -Nurd ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c ---- ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c 2006-04-14 07:44:30.000000000 +0200 -+++ glibc-2.5/sysdeps/powerpc/fpu/e_sqrt.c 2006-12-08 12:53:32.202227000 +0100 -@@ -25,6 +25,9 @@ - #include <sysdep.h> - #include <ldsodefs.h> - -+#define __CPU_HAS_FSQRT ((GLRO(dl_hwcap) & PPC_FEATURE_64) != 0) -+ -+ - static const double almost_half = 0.5000000000000001; /* 0.5 + 2^-53 */ - static const ieee_float_shape_type a_nan = {.word = 0x7fc00000 }; - static const ieee_float_shape_type a_inf = {.word = 0x7f800000 }; -diff -Nurd ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c ---- ../glibc-initial-2.5-r4/glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c 2006-04-14 07:44:30.000000000 +0200 -+++ glibc-2.5/sysdeps/powerpc/fpu/e_sqrtf.c 2006-12-08 12:53:36.992227000 +0100 -@@ -25,6 +25,8 @@ - #include <sysdep.h> - #include <ldsodefs.h> - -+#define __CPU_HAS_FSQRT ((GLRO(dl_hwcap) & PPC_FEATURE_64) != 0) -+ - static const float almost_half = 0.50000006; /* 0.5 + 2^-24 */ - static const ieee_float_shape_type a_nan = {.word = 0x7fc00000 }; - static const ieee_float_shape_type a_inf = {.word = 0x7f800000 };
meta/recipes-core/glibc/glibc-2.10.1/rulesfix.patch deleted +0 -15
@@ -1,15 +0,0 @@ -Upstream-Status: Inappropriate [not used] - -Index: glibc-2.9/Makerules -=================================================================== ---- glibc-2.9.orig/Makerules 2009-09-14 16:39:21.000000000 +0100 -+++ glibc-2.9/Makerules 2009-09-14 16:39:50.000000000 +0100 -@@ -173,6 +173,8 @@ - # it's used in sysd-rules, below. - $(common-objpfx)%.h $(common-objpfx)%.h.d: $(..)scripts/gen-as-const.awk \ - %.sym $(common-before-compile) -+ rm -f $(@:.h=.h.d) -+ rm -f $(@:.h.d=.h) - $(AWK) -f $< $(filter %.sym,$^) \ - | $(CC) -S -o $(@:.h.d=.h)T3 $(CFLAGS) $(CPPFLAGS) -x c - \ - -MD -MP -MF $(@:.h=.h.d)T -MT '$(@:.h=.h.d) $(@:.h.d=.h)'
meta/recipes-core/glibc/glibc-initial.inc deleted +0 -67
67 lines not on this page · raw message
meta/recipes-core/glibc/glibc-initial_2.10.1.bb deleted +0 -10
@@ -1,10 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc - -do_install_locale() { - : -} - -do_configure_prepend () { - unset CFLAGS -}
meta/recipes-core/glibc/glibc-locale_2.10.1.bb deleted +0 -63
63 lines not on this page · raw message
meta/recipes-core/glibc/glibc-package.inc deleted +0 -96
96 lines not on this page · raw message
meta/recipes-core/glibc/glibc-stage.inc deleted +0 -0
meta/recipes-core/glibc/glibc.inc deleted +0 -60
60 lines not on this page · raw message
meta/recipes-core/glibc/glibc_2.10.1.bb deleted +0 -161
161 lines not on this page · raw message
meta/recipes-core/glibc/site_config/funcs deleted +0 -474
474 lines not on this page · raw message
meta/recipes-core/glibc/site_config/headers deleted +0 -156
156 lines not on this page · raw message
meta/recipes-core/glibc/site_config/types deleted +0 -21
@@ -1,21 +0,0 @@ -char -char * -double -float -int -long -long double -long int -long long -long long int -short -short int -signed char -unsigned char -unsigned int -unsigned long
Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Signature · 1 line
1.7.3.4
Part of the diff is not shown here. View the raw message.
PATCH 1/22 meta-environment: set correct *MULTIMACH_TARGET_SYS.
In reply to Saul WoldFrom: Lianhao Lu <[email protected]>
Fixed [BUGID #1299]. OLD_MULTIMACH_TARGET_SYS is no longer available. Use new recipe-scope variable REAL_MULTIMACH_TARGET_SYS instead.
--- meta/classes/toolchain-scripts.bbclass | 7 ++++--- meta/recipes-core/meta/meta-environment.bb | 9 +++++---- 2 files changed, 9 insertions(+), 7 deletions(-)
meta/classes/toolchain-scripts.bbclass +4 -3
@@ -66,13 +66,14 @@ toolchain_create_tree_env_script () { # This function creates an environment-setup-script for use by the ADT installer toolchain_create_sdk_env_script_for_installer () { # Create environment setup script - script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${OLD_MULTIMACH_TARGET_SYS} + local multimach_target_sys=$1 + script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${multimach_target_sys} rm -f $script touch $script - echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/${OLD_MULTIMACH_TARGET_SYS}:$PATH' >> $script + echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/'"${multimach_target_sys}"':$PATH' >> $script echo 'export PKG_CONFIG_SYSROOT_DIR=##SDKTARGETSYSROOT##' >> $script echo 'export PKG_CONFIG_PATH=##SDKTARGETSYSROOT##${target_libdir}/pkgconfig' >> $script - echo 'export CONFIG_SITE=${SDKPATH}/site-config-${OLD_MULTIMACH_TARGET_SYS}' >> $script + echo 'export CONFIG_SITE=${SDKPATH}/site-config-'"${multimach_target_sys}" >> $script echo 'export CC=${TARGET_PREFIX}gcc' >> $script echo 'export CXX=${TARGET_PREFIX}g++' >> $script echo 'export GDB=${TARGET_PREFIX}gdb' >> $script
meta/recipes-core/meta/meta-environment.bb +5 -4
@@ -2,13 +2,14 @@ DESCRIPTION = "Package of environment files for SDK" LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \ file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" LICENSE = "MIT" -PR = "r4" +PR = "r5" EXCLUDE_FROM_WORLD = "1" inherit toolchain-scripts # get target config site before inheritting cross-canadian TARGET_CONFIG_SITE := "${@siteinfo_get_files(d)}" +REAL_MULTIMACH_TARGET_SYS = "${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}" SDK_DIR = "${WORKDIR}/sdk" SDK_OUTPUT = "${SDK_DIR}/image"
@@ -22,12 +23,12 @@ do_generate_content() { rm -rf ${SDK_OUTPUT} mkdir -p ${SDK_OUTPUT}/${SDKPATH} - toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${OLD_MULTIMACH_TARGET_SYS} ${TARGET_CONFIG_SITE} + toolchain_create_sdk_siteconfig ${SDK_OUTPUT}/${SDKPATH}/site-config-${REAL_MULTIMACH_TARGET_SYS} ${TARGET_CONFIG_SITE} - toolchain_create_sdk_env_script_for_installer + toolchain_create_sdk_env_script_for_installer ${REAL_MULTIMACH_TARGET_SYS} # Add version information - toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${OLD_MULTIMACH_TARGET_SYS} + toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${REAL_MULTIMACH_TARGET_SYS} } addtask generate_content before do_install after do_compile
Signature · 1 line
1.7.3.4
cover Fixes Multi-Lib & M3
Richard,
This set of patches are what have been pulled together for the M3 RC1 build. They include patches to multi-lib and tuning changes put last week.
There are also 2 changes from Josh for bitbake, not included here, which are included in stage/master_under_test.
There are competing changes from Martin and Khem for the ARM fix, the first change from Martin did not seem to solve (or there is a different issue that I have not evaluated). I am building Khem's change, but it also seems to fail in eglibc, so ARM is still an issue
Thanks
Sau!
One note, I
The following changes since commit e23f9ce928353c9da2b9c4bfa9a1a125a7d160f2:
feature-arm-thumb: respect ARM_INSTRUCTION_SET (2011-07-29 10:18:15 -0700)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib sgw/mut
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=sgw/mut
Khem Raj (1):
feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide
thumb mode
Koen Kooi (2):
package_{deb, rpm, ipk}.bbclass: fix 'lingusa' typo arch-armv7a.inc: fix armv7a-vfp-neon -> armv7a compat case
Kumar Gala (5):
libzypp: Fix variable substitution problem in do_archgen step tune/arch-powerpc64: Fix typo with 64-bit TUNE_CCARGS handling tune/arch-powerpc64: Remove support for soft-float from ppc64 tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU sanity.bbclass: Add sanity check that TUNE_PKGARCH appears in
PACKAGE_ARCHS
Lianhao Lu (1):
meta-environment: set correct *MULTIMACH_TARGET_SYS.
Malcolm Crossley (1):
tune-ppce500mc: Adjust PowerPC e500mc tune file to correctly set hard
fpu.
Mark Hatle (4):
tune/powerpc: Cleanup setting of TUNE_PKGARCH
populate_sdk: Fix the introduction of sdknative packages bitbake.conf: Add default tune-${DEFAULTTUNE} override rootfs_rpm.bbclass: Fix multilib configurations to use DEFAULTTUNE
Phil Blundell (1):
glibc: deleted
Saul Wold (7):
docbook-sgml-dtd-native: Write a bak file for shared state docbook-dsssl-stylesheets-native: Write a bak file for shared state
openjade-native: Write a bak file for shared state
sgml-common-native: Read a catalog backup to repopulate
sgml-docbook.cat
sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS
twice
libzypp: Bump PR
external-*toolchain: remove glibc-utils provide
meta/classes/package_deb.bbclass | 6 +- meta/classes/package_ipk.bbclass | 6 +- meta/classes/package_rpm.bbclass | 25 +- meta/classes/populate_sdk_deb.bbclass | 11 +- meta/classes/populate_sdk_rpm.bbclass | 11 +- meta/classes/rootfs_rpm.bbclass | 2 +- meta/classes/sanity.bbclass | 14 +- meta/classes/toolchain-scripts.bbclass | 7 +- meta/conf/bitbake.conf | 3 +- meta/conf/distro/include/tclibc-glibc.inc | 32 - meta/conf/distro/include/tcmode-default.inc | 5 - meta/conf/machine/include/arm/arch-armv7a.inc | 4 +- .../conf/machine/include/arm/feature-arm-thumb.inc | 6 +- meta/conf/machine/include/powerpc/arch-powerpc.inc | 5 +- .../machine/include/powerpc/arch-powerpc64.inc | 9 +- meta/conf/machine/include/tune-ppc603e.inc | 4 +- meta/conf/machine/include/tune-ppce300c2.inc | 5 +- meta/conf/machine/include/tune-ppce500.inc | 5 +- meta/conf/machine/include/tune-ppce500mc.inc | 7 +- meta/conf/machine/include/tune-ppce500v2.inc | 5 +- .../glibc/glibc-2.10.1/arm-longlong.patch | 60 -- .../glibc/glibc-2.10.1/arm-memcpy.patch | 760 -------------------- .../glibc/glibc-2.10.1/dl-cache-libcmp.patch | 12 - .../recipes-core/glibc/glibc-2.10.1/etc/ld.so.conf | 2 - .../glibc/glibc-2.10.1/fhs-linux-paths.patch | 13 - .../glibc/glibc-2.10.1/generate-supported.mk | 11 - .../glibc/glibc-2.10.1/generic-bits_select.h | 35 - .../glibc/glibc-2.10.1/generic-bits_time.h | 75 -- .../glibc/glibc-2.10.1/generic-bits_types.h | 200 ----- .../glibc/glibc-2.10.1/generic-bits_typesizes.h | 66 -- .../glibc-2.9-enable-binutils-2.2.patch | 37 - .../glibc-arm-IO-acquire-lock-fix.diff | 15 - .../glibc/glibc-2.10.1/glibc-arm-no-asm-page.patch | 17 - .../glibc/glibc-2.10.1/glibc-check_pf.patch | 345 --------- .../glibc/glibc-2.10.1/ldd-unbash.patch | 13 - .../glibc/glibc-2.10.1/ldsocache-varrun.patch | 20 - .../glibc/glibc-2.10.1/march-i686.patch | 39 - .../glibc/glibc-2.10.1/mips-rld-map-check.patch | 23 - .../glibc/glibc-2.10.1/nptl-crosscompile.patch | 28 - .../glibc/glibc-2.10.1/nscd-init.patch | 41 -- .../glibc/glibc-2.10.1/powerpc-sqrt-hack.diff | 27 - .../recipes-core/glibc/glibc-2.10.1/rulesfix.patch | 15 - meta/recipes-core/glibc/glibc-initial.inc | 67 -- meta/recipes-core/glibc/glibc-initial_2.10.1.bb | 10 - meta/recipes-core/glibc/glibc-locale_2.10.1.bb | 63 -- meta/recipes-core/glibc/glibc-package.inc | 96 --- meta/recipes-core/glibc/glibc.inc | 60 -- meta/recipes-core/glibc/glibc_2.10.1.bb | 161 ----- meta/recipes-core/glibc/site_config/funcs | 474 ------------ meta/recipes-core/glibc/site_config/headers | 156 ---- meta/recipes-core/glibc/site_config/types | 21 - .../meta/external-csl-toolchain_2008q3-72.bb | 4 +- meta/recipes-core/meta/external-poky-toolchain.bb | 4 +- meta/recipes-core/meta/meta-environment.bb | 9 +- .../docbook-dsssl-stylesheets-native_1.79.bb | 5 +- .../docbook-sgml-dtd/docbook-sgml-dtd-native.inc | 5 +- .../openjade/openjade-native_1.3.2.bb | 5 +- .../sgml-common/sgml-common-native_0.6.3.bb | 18 +- meta/recipes-extended/libzypp/libzypp_git.bb | 8 +- 59 files changed, 111 insertions(+), 3081 deletions(-) delete mode 100644 meta/conf/distro/include/tclibc-glibc.inc delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/arm-longlong.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/arm-memcpy.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/dl-cache-libcmp.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/etc/ld.so.conf delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/fhs-linux-paths.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generate-supported.mk delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_select.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_time.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_types.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/generic-bits_typesizes.h delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-2.9-enable-binutils-2.2.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-arm-IO-acquire-lock-fix.diff delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-arm-no-asm-page.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/glibc-check_pf.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/ldd-unbash.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/ldsocache-varrun.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/march-i686.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/mips-rld-map-check.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/nptl-crosscompile.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/nscd-init.patch delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/powerpc-sqrt-hack.diff delete mode 100644 meta/recipes-core/glibc/glibc-2.10.1/rulesfix.patch delete mode 100644 meta/recipes-core/glibc/glibc-initial.inc delete mode 100644 meta/recipes-core/glibc/glibc-initial_2.10.1.bb delete mode 100644 meta/recipes-core/glibc/glibc-locale_2.10.1.bb delete mode 100644 meta/recipes-core/glibc/glibc-package.inc delete mode 100644 meta/recipes-core/glibc/glibc-stage.inc delete mode 100644 meta/recipes-core/glibc/glibc.inc delete mode 100644 meta/recipes-core/glibc/glibc_2.10.1.bb delete mode 100644 meta/recipes-core/glibc/site_config/funcs delete mode 100644 meta/recipes-core/glibc/site_config/headers delete mode 100644 meta/recipes-core/glibc/site_config/types
Signature · 1 line
1.7.3.4
PATCH 3/22 libzypp: Fix variable substitution problem in do_archgen step
From: Kumar Gala <[email protected]>
The do_archgen step creates a script that utilizes the variable name ${ARCH}. However, we also utilize and define ${ARCH} so instead of having the following in the script:
COMPAT_WITH="${ARCH},${COMPAT} $COMPAT_WITH"We get something like:
COMPAT_WITH="powerpc,${COMPAT} $COMPAT_WITH"Just renaming the variable in the script to not conflict with ${ARCH} fixes the issue.
--- meta/recipes-extended/libzypp/libzypp_git.bb | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-extended/libzypp/libzypp_git.bb +3 -3
@@ -111,9 +111,9 @@ do_archgen () { shift ; continue;; esac if [ "${AVOID_CONSTRUCTOR}" != "true" ]; then - ARCH="_$1" + CARCH="_$1" else - ARCH="IdString(\"$1\")" + CARCH="IdString(\"$1\")" fi shift COMPAT=""
@@ -129,7 +129,7 @@ do_archgen () { COMPAT="${arch_val},$COMPAT" fi done - COMPAT_WITH="${ARCH},${COMPAT} $COMPAT_WITH" + COMPAT_WITH="${CARCH},${COMPAT} $COMPAT_WITH" done for each_compat in ${COMPAT_WITH} ; do echo " defCompatibleWith( ${each_compat} );" >> zypp/poky-arch.h
Signature · 1 line
1.7.3.4
PATCH 11/22 tune-ppce500mc: Adjust PowerPC e500mc tune file to correctly set hard fpu.
In reply to Saul WoldFrom: Malcolm Crossley <[email protected]>
--- meta/conf/machine/include/tune-ppce500mc.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/machine/include/tune-ppce500mc.inc +1 -1
@@ -7,5 +7,5 @@ TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce500mc", "-mcpu=e500mc TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES", "ppce500mc", "ppce500mc", "", d)}" AVAILTUNES += "ppce500mc" -TUNE_FEATURES_tune-ppce500mc = "m32 hard-fpu ppce500mc" +TUNE_FEATURES_tune-ppce500mc = "m32 fpu-hard ppce500mc" PACKAGE_EXTRA_ARCHS_tune-ppce500mc = "powerpc ppce500mc"
Signature · 1 line
1.7.3.4
PATCH 12/22 sanity.bbclass: Add sanity check that TUNE_PKGARCH appears in PACKAGE_ARCHS
In reply to Saul WoldFrom: Kumar Gala <[email protected]>
Its possible we get duplications if we explicity add TUNE_PKGARCH to PACKAGE_ARCHS so instead just add a sanity check to verify it.
--- meta/classes/sanity.bbclass | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-)
meta/classes/sanity.bbclass +9 -1
@@ -375,8 +375,10 @@ def check_sanity(e): elif oeroot.find (' ') != -1: messages = messages + "Error, you have a space in your COREBASE directory path. Please move the installation to a directory which doesn't include a space." - # Check that we don't have duplicate entries in PACKAGE_ARCHS + # Check that we don't have duplicate entries in PACKAGE_ARCHS & that TUNE_PKGARCH is in PACKAGE_ARCHS pkgarchs = data.getVar('PACKAGE_ARCHS', e.data, True) + tunepkg = data.getVar('TUNE_PKGARCH', e.data, True) + tunefound = False seen = {} dups = []
@@ -385,9 +387,15 @@ def check_sanity(e): dups.append(pa) else: seen[pa] = 1 + if pa == tunepkg: + tunefound = True + if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups) + if tunefound == False: + messages = messages + "Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (%s)." % tunepkg + if messages != "": raise_sanity_error(messages)
Signature · 1 line
1.7.3.4
PATCH 6/22 openjade-native: Write a bak file for shared state
In reply to Saul WoldThis patch writes a sgml-docbook.bak that is read by the sgml-common during a shared state sysroot populate, because it comes out of order.
--- .../openjade/openjade-native_1.3.2.bb | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
meta/recipes-devtools/openjade/openjade-native_1.3.2.bb +4 -1
@@ -7,7 +7,7 @@ SECTION = "base" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=641ff1e4511f0a87044ad42f87cb1045" -PR = "r3" +PR = "r4" DEPENDS = "opensp-native sgml-common-native" RDEPENDS_${PN} = "sgml-common"
@@ -69,6 +69,9 @@ openjade_sstate_postinst() { # Ensure that the catalog file sgml-docbook.cat is properly # updated when the package is installed from sstate cache. ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-openjade \ + --add ${sysconfdir}/sgml/sgml-docbook.bak \ + ${sysconfdir}/sgml/openjade-${PV}.cat + ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-openjade \ --add ${sysconfdir}/sgml/sgml-docbook.cat \ ${sysconfdir}/sgml/openjade-${PV}.cat fi
Signature · 1 line
1.7.3.4
PATCH 8/22 tune/arch-powerpc64: Fix typo with 64-bit TUNE_CCARGS handling
In reply to Saul WoldFrom: Kumar Gala <[email protected]>
When figuring out how to set TUNE_CCARGS we should look for 'm64' not 'n64' in TUNE_FEATURES.
--- .../machine/include/powerpc/arch-powerpc64.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/machine/include/powerpc/arch-powerpc64.inc +1 -1
@@ -1,6 +1,6 @@ TUNEVALID[m64] = "Power ELF64 standard ABI" TUNE_CONFLICTS[m64] = "m32" -TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "n64", "-m64", "", d)}" +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m64", "-m64", "", d)}" TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", [ "m64" ], "powerpc64", "", d)}" AVAILTUNES += "powerpc64 powerpc64-nf"
Signature · 1 line
1.7.3.4
PATCH 4/22 docbook-sgml-dtd-native: Write a bak file for shared state
In reply to Saul WoldThis patch writes a sgml-docbook.bak that is read by the sgml-common during a shared state sysroot populate, because it comes out of order.
--- .../docbook-sgml-dtd/docbook-sgml-dtd-native.inc | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
meta/recipes-devtools/docbook-sgml-dtd/docbook-sgml-dtd-native.inc +4 -1
@@ -20,7 +20,7 @@ SRC_URI = "http://www.docbook.org/sgml/${DTD_VERSION}/docbook-${DTD_VERSION}.zip # The .zip file extracts to the current dir S = "${WORKDIR}" -INC_PR = "r2" +INC_PR = "r3" SSTATEPOSTINSTFUNCS += "docbook_sgml_dtd_sstate_postinst" SYSROOT_PREPROCESS_FUNCS += "docbook_sgml_dtd_sysroot_preprocess"
@@ -45,6 +45,9 @@ docbook_sgml_dtd_sstate_postinst () { # Ensure that the catalog file sgml-docbook.cat is properly # updated when the package is installed from sstate cache. ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-docbook-sgml-dtd-${DTD_VERSION} \ + --add ${sysconfdir}/sgml/sgml-docbook.bak \ + ${sysconfdir}/sgml/sgml-docbook-dtd-${DTD_VERSION}.cat + ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-docbook-sgml-dtd-${DTD_VERSION} \ --add ${sysconfdir}/sgml/sgml-docbook.cat \ ${sysconfdir}/sgml/sgml-docbook-dtd-${DTD_VERSION}.cat fi
Signature · 1 line
1.7.3.4
PATCH 5/22 docbook-dsssl-stylesheets-native: Write a bak file for shared state
In reply to Saul WoldThis patch writes a sgml-docbook.bak that is read by the sgml-common during a shared state sysroot populate, because it comes out of order.
--- .../docbook-dsssl-stylesheets-native_1.79.bb | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
meta/recipes-devtools/docbook-dsssl-stylesheets/docbook-dsssl-stylesheets-native_1.79.bb +4 -1
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://README;beginline=41;endline=74;md5=875385159b2ee76ecf DEPENDS = "sgml-common-native" -PR = "r3" +PR = "r4" SRC_URI = "${SOURCEFORGE_MIRROR}/docbook/docbook-dsssl-${PV}.tar.bz2"
@@ -45,6 +45,9 @@ docbook_dsssl_stylesheets_sstate_postinst () { # Ensure that the catalog file sgml-docbook.cat is properly # updated when the package is installed from sstate cache. ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-docbook-dsssl \ + --add ${sysconfdir}/sgml/sgml-docbook.bak \ + ${sysconfdir}/sgml/dsssl-docbook-stylesheets.cat + ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-docbook-dsssl \ --add ${sysconfdir}/sgml/sgml-docbook.cat \ ${sysconfdir}/sgml/dsssl-docbook-stylesheets.cat fi
Signature · 1 line
1.7.3.4
PATCH 16/22 populate_sdk: Fix the introduction of sdknative packages
In reply to Saul WoldFrom: Mark Hatle <[email protected]>
The sdknative packages were not being introduced into the list of available packages properly. Fix this by always introducing it and avoiding a sed of one type to another.
Also fix a number of minor issues with the RPM behavior when building sdk images.
--- meta/classes/package_rpm.bbclass | 19 +++++++++---------- meta/classes/populate_sdk_deb.bbclass | 11 ++--------- meta/classes/populate_sdk_rpm.bbclass | 11 ++--------- 3 files changed, 13 insertions(+), 28 deletions(-)
meta/classes/package_rpm.bbclass +9 -10
@@ -32,14 +32,12 @@ package_update_index_rpm () { eval archs=\${${archvar}} packagedirs="" packagedirs_sdk="" - for arch in $archs; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi + if [ "${SDK_ARCH}-nativesdk" != "-nativesdk" ]; then + packagedirs_sdk="${DEPLOY_DIR_RPM}/${SDK_ARCH}-nativesdk" + fi + for arch in $archs ; do packagedirs="${DEPLOY_DIR_RPM}/$arch $packagedirs" - packagedirs_sdk="${DEPLOY_DIR_RPM}/$sdkarch$extension $packagedirs_sdk" + packagedirs_sdk="${DEPLOY_DIR_RPM}/$arch $packagedirs_sdk" rm -rf ${DEPLOY_DIR_RPM}/$arch/solvedb rm -rf ${DEPLOY_DIR_RPM}/$sdkarch$extension/solvedb
@@ -95,6 +93,7 @@ package_update_index_rpm () { # package_generate_rpm_conf () { printf "_solve_dbpath " > ${RPMCONF_TARGET_BASE}.macro + printf "_solve_dbpath " > ${RPMCONF_HOST_BASE}.macro o_colon_t=false o_colon_h=false
@@ -238,7 +237,7 @@ package_install_internal_rpm () { echo "Unable to find package $pkg ($ml_pkg)!" exit 1 fi - echo $pkg_name >> ${IMAGE_ROOTFS}/install/install.manifest + echo $pkg_name >> ${target_rootfs}/install/install.manifest done fi fi
@@ -258,7 +257,7 @@ package_install_internal_rpm () { echo "Unable to find package $pkg ($ml_pkg)!" exit 1 fi - echo $pkg_name >> ${IMAGE_ROOTFS}/install/install.manifest + echo $pkg_name >> ${target_rootfs}/install/install.manifest done fi
@@ -303,7 +302,7 @@ package_install_internal_rpm () { # Dump the full set of recommends... ${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \ --predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \ - -D "_dbpath ${IMAGE_ROOTFS}/install" -D "`cat ${confbase}.macro`" \ + -D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}.macro`" \ -D "__dbi_txn create nofsync private" \ -qa --qf "[%{RECOMMENDS}\n]" | sort -u > ${target_rootfs}/install/recommend # Did we add more to the list?
meta/classes/populate_sdk_deb.bbclass +2 -9
@@ -34,16 +34,9 @@ fakeroot populate_sdk_deb () { export INSTALL_ROOTFS_DEB="${SDK_OUTPUT}" export INSTALL_BASEARCH_DEB="${SDK_ARCH}" export INSTALL_PACKAGES_NORMAL_DEB="${TOOLCHAIN_HOST_TASK}" - INSTALL_ARCHS_DEB="" + INSTALL_ARCHS_DEB="${SDK_ARCH}-nativesdk" for arch in ${PACKAGE_ARCHS}; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi - if [ -e ${DEPLOY_DIR_DEB}/$sdkarch$extension ]; then - INSTALL_ARCHS_DEB="$INSTALL_ARCHS_DEB $sdkarch$extension" - fi + INSTALL_ARCHS_DEB="$INSTALL_ARCHS_DEB $arch" done export INSTALL_ARCHS_DEB
meta/classes/populate_sdk_rpm.bbclass +2 -9
@@ -53,16 +53,9 @@ fakeroot populate_sdk_rpm () { export INSTALL_PLATFORM_RPM="${SDK_ARCH}" export INSTALL_CONFBASE_RPM="${RPMCONF_HOST_BASE}" export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_HOST_TASK}" - export INSTALL_PLATFORM_EXTRA_RPM="" + export INSTALL_PLATFORM_EXTRA_RPM="${SDK_ARCH}-nativesdk" for arch in ${PACKAGE_ARCHS}; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi - if [ -e ${DEPLOY_DIR_RPM}/$sdkarch$extension ]; then - INSTALL_PLATFORM_EXTRA_RPM="$sdkarch $INSTALL_PLATFORM_EXTRA_RPM" - fi + INSTALL_PLATFORM_EXTRA_RPM="$arch $INSTALL_PLATFORM_EXTRA_RPM" done export INSTALL_PLATFORM_EXTRA_RPM
Signature · 1 line
1.7.3.4
PATCH 7/22 sgml-common-native: Read a catalog backup to repopulate sgml-docbook.cat
In reply to Saul WoldThis reads the sgml-docbook.bak and adds the entries into sgml-docbook.cat since this occurs out of order during shared state sysroot populate.
--- .../sgml-common/sgml-common-native_0.6.3.bb | 18 +++++++++++++++++- 1 files changed, 17 insertions(+), 1 deletions(-)
meta/recipes-devtools/sgml-common/sgml-common-native_0.6.3.bb +17 -1
@@ -13,7 +13,7 @@ LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://LICENSE-GPLv2;md5=ab8a50abe86dfc859e148baae043c89b" SECTION = "base" -PR = "r0" +PR = "r1" require sgml-common_${PV}.bb inherit native
@@ -21,6 +21,8 @@ inherit native S = "${WORKDIR}/sgml-common-${PV}" SYSROOT_PREPROCESS_FUNCS += "sgml_common_native_mangle" +SSTATEPOSTINSTFUNCS += "sgml_common_sstate_postinst" + do_install_append() { # install-catalog script contains hard-coded references to
@@ -46,3 +48,17 @@ sgml_common_native_mangle () { # Remove ${D} path from catalog file created by install-catalog script sed -i -e "s|${D}||g" ${SYSROOT_DESTDIR}${sysconfdir}/sgml/catalog } + +sgml_common_sstate_postinst() { + if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ] + then + if [ -e ${sysconfdir}/sgml/sgml-docbook.bak ]; then + for catalog in `awk '{print $2}' ${sysconfdir}/sgml/sgml-docbook.bak`; do + if [ ! `grep $catalog ${sysconfdir}/sgml/sgml-docbook.cat 1> /dev/null 2>&1` ]; then + ${bindir}/install-catalog \ + --add ${sysconfdir}/sgml/sgml-docbook.cat $catalog + fi + done + fi + fi +}
Signature · 1 line
1.7.3.4
PATCH 10/22 tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
In reply to Saul WoldFrom: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in TUNE_FEATURES rather than 'fpu-hard' to determine setting 'nf' (no-float) in PPCPKGSFX_FPU.
--- meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/machine/include/powerpc/arch-powerpc.inc +1 -1
@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)} ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}" -PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}" TUNE_PKGARCH ?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"
Signature · 1 line
1.7.3.4
PATCH 14/22 libzypp: Bump PR
In reply to Saul Wold--- meta/recipes-extended/libzypp/libzypp_git.bb | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/recipes-extended/libzypp/libzypp_git.bb +1 -1
@@ -14,7 +14,7 @@ RDEPENDS_${PN} = "sat-solver" S = "${WORKDIR}/git" SRCREV = "15b6c52260bbc52b3d8e585e271b67e10cc7c433" PV = "0.0-git${SRCPV}" -PR = "r11" +PR = "r12" SRC_URI = "git://gitorious.org/opensuse/libzypp.git;protocol=git \ file://no-doc.patch \
Signature · 1 line
1.7.3.4
PATCH 15/22 tune/powerpc: Cleanup setting of TUNE_PKGARCH
In reply to Saul WoldFrom: Mark Hatle <[email protected]>
Based on Kumar Gala <[email protected]>'s patch.
By default we use ppc, or ppc64. Each tune either specifies their manual version or can use the PPC_PKGARCH to specify a new prefix if they support both float and no-float variants.
--- meta/conf/machine/include/powerpc/arch-powerpc.inc | 3 ++- .../machine/include/powerpc/arch-powerpc64.inc | 1 + meta/conf/machine/include/tune-ppc603e.inc | 4 ++-- meta/conf/machine/include/tune-ppce300c2.inc | 5 +++-- meta/conf/machine/include/tune-ppce500.inc | 5 +++-- meta/conf/machine/include/tune-ppce500mc.inc | 5 +++-- meta/conf/machine/include/tune-ppce500v2.inc | 5 +++-- 7 files changed, 17 insertions(+), 11 deletions(-)
meta/conf/machine/include/powerpc/arch-powerpc.inc +2 -1
@@ -8,6 +8,7 @@ DEFAULTTUNE ?= "powerpc" TUNEVALID[m32] = "Power ELF32 standard ABI" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m32", "-m32", "", d)}" TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m32", "powerpc", "", d)}" +PPC_PKGARCH = "ppc" TUNEVALID[fpu-hard] = "Use hardware FPU." TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", "-mhard-float", "", d)}"
@@ -20,7 +21,7 @@ ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-e PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}" -TUNE_PKGARCH ?= "${TUNE_ARCH}${PPCPKGSFX_FPU}" +TUNE_PKGARCH ?= "${PPC_PKGARCH}${PPCPKGSFX_FPU}" # Basic tune definitions AVAILTUNES += "powerpc powerpc-nf"
meta/conf/machine/include/powerpc/arch-powerpc64.inc +1 -0
@@ -2,6 +2,7 @@ TUNEVALID[m64] = "Power ELF64 standard ABI" TUNE_CONFLICTS[m64] = "m32 nf" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m64", "-m64", "", d)}" TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", [ "m64" ], "powerpc64", "", d)}" +PPC_PKGARCH = "ppc64" AVAILTUNES += "powerpc64" TUNE_FEATURES_tune-powerpc64 ?= "m64 fpu-hard"
meta/conf/machine/include/tune-ppc603e.inc +2 -2
@@ -4,8 +4,8 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[ppc603e] = "Enable ppc603e specific processor optimizations" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppc603e", "-mcpu=603e", "", d)}" -TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES", "ppc603e", "ppc603e", "", d)}" +PPC_PKGARCH_tune-ppc603e = "ppc603e" AVAILTUNES += "ppc603e" TUNE_FEATURES_tune-ppc603e = "m32 fpu-hard ppc603e" -PACKAGE_EXTRA_ARCHS_tune-ppc603e = "powerpc ppc603e" +PACKAGE_EXTRA_ARCHS_tune-ppc603e = "ppc ppc603e"
meta/conf/machine/include/tune-ppce300c2.inc +3 -2
@@ -4,8 +4,9 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[ppce300c2] = "Enable ppce300c2 specific processor optimizations" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c2", "-mcpu=e300c2", "", d)}" -TUNE_PKGARCH = "${@bb.utils.contains("TUNE_FEATURES", "ppce300c2", "ppce300c2", "${TUNE_ARCH}", d)}" +PPC_PKGARCH_tune-ppce300c2 = "ppce300c2" +TUNE_PKGARCH_tune-ppce300c2 = "ppce300c2" AVAILTUNES += "ppce300c2" TUNE_FEATURES_tune-ppce300c2 = "m32 fpu-soft ppce300c2" -PACKAGE_EXTRA_ARCHS_tune-ppce300c2 = "powerpc-nf ppce300c2" +PACKAGE_EXTRA_ARCHS_tune-ppce300c2 = "ppc-nf ppce300c2"
meta/conf/machine/include/tune-ppce500.inc +3 -2
@@ -4,12 +4,13 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[ppce500] = "Enable ppce500 specific processor optimizations" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce500", "-mcpu=8540", "", d)}" -TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES", "ppce500", "ppce500", "", d)}" +PPC_PKGARCH_tune-ppce500 = "ppce500" +TUNE_PKGARCH_tune-ppce500 = "ppce500" TUNEVALID[spe] = "Enable SPE ABI extensions" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "spe", "-mabi=spe -mspe", "", d)}" -TARGET_FPU = "ppc-efs" +TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", [ "ppce500", "spe" ], "ppc-efs", "", d)}" AVAILTUNES += "ppce500" TUNE_FEATURES_tune-ppce500 = "m32 spe ppce500"
meta/conf/machine/include/tune-ppce500mc.inc +3 -2
@@ -4,8 +4,9 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[ppce500mc] = "Enable ppce500mc specific processor optimizations" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce500mc", "-mcpu=e500mc", "", d)}" -TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES", "ppce500mc", "ppce500mc", "", d)}" +PPC_PKGARCH_tune-ppce500mc = "ppce500mc" +TUNE_PKGARCH_tune-ppce500mc = "ppce500mc" AVAILTUNES += "ppce500mc" TUNE_FEATURES_tune-ppce500mc = "m32 fpu-hard ppce500mc" -PACKAGE_EXTRA_ARCHS_tune-ppce500mc = "powerpc ppce500mc" +PACKAGE_EXTRA_ARCHS_tune-ppce500mc = "ppc ppce500mc"
meta/conf/machine/include/tune-ppce500v2.inc +3 -2
@@ -4,12 +4,13 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[ppce500v2] = "Enable ppce500v2 specific processor optimizations" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce500v2", "-mcpu=8548", "", d)}" -TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES", "ppce500v2", "ppce500v2", "", d)}" +PPC_PKGARCH_tune-ppce500v2 = "ppce500v2" +TUNE_PKGARCH_tune-ppce500v2 = "ppce500v2" TUNEVALID[spe] = "Enable SPE ABI extensions" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "spe", "-mabi=spe -mspe", "", d)}" -TARGET_FPU = "ppc-efd" +TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", [ "ppce500v2", "spe" ], "ppc-efd", "", d)}" AVAILTUNES += "ppce500v2" TUNE_FEATURES_tune-ppce500v2 = "m32 spe ppce500v2"
Signature · 1 line
1.7.3.4
PATCH 9/22 tune/arch-powerpc64: Remove support for soft-float from ppc64
In reply to Saul WoldFrom: Kumar Gala <[email protected]>
All 64-bit PPC processors support hard-float so no need to support soft-float.
--- .../machine/include/powerpc/arch-powerpc64.inc | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
meta/conf/machine/include/powerpc/arch-powerpc64.inc +2 -4
@@ -1,10 +1,8 @@ TUNEVALID[m64] = "Power ELF64 standard ABI" -TUNE_CONFLICTS[m64] = "m32" +TUNE_CONFLICTS[m64] = "m32 nf" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m64", "-m64", "", d)}" TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", [ "m64" ], "powerpc64", "", d)}" -AVAILTUNES += "powerpc64 powerpc64-nf" +AVAILTUNES += "powerpc64" TUNE_FEATURES_tune-powerpc64 ?= "m64 fpu-hard" BASE_LIB_tune-powerpc64 = "lib64" -TUNE_FEATURES_tune-powerpc64-nf ?= "m64 fpu-soft" -BASE_LIB_tune-powerpc64-nf = "lib64"
Signature · 1 line
1.7.3.4
PATCH 13/22 sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
In reply to Saul Wold--- meta/classes/sanity.bbclass | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-)
meta/classes/sanity.bbclass +5 -3
@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1: + pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = True if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)
Signature · 1 line
1.7.3.4
PATCH 17/22 bitbake.conf: Add default tune-${DEFAULTTUNE} override
In reply to Saul WoldFrom: Mark Hatle <[email protected]>
We need to add the tune-* override in order for more complicated tune features to function properly.
--- meta/conf/bitbake.conf | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
meta/conf/bitbake.conf +2 -1
@@ -637,9 +637,10 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}" # # This works for functions as well, they are really just environment variables. # Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. -OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" +OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${TUNEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" DISTROOVERRIDES ?= "${DISTRO}" MACHINEOVERRIDES ?= "${MACHINE}" +TUNEOVERRIDES ?= "tune-${DEFAULTTUNE}" CPU_FEATURES ?= "" CPU_FEATURES_arm ?= "vfp"
Signature · 1 line
1.7.3.4
PATCH 18/22 rootfs_rpm.bbclass: Fix multilib configurations to use DEFAULTTUNE
In reply to Saul WoldFrom: Mark Hatle <[email protected]>
Earlier iterations of the multilib patch used "TUNENAME", which was later renamed to DEFAULTTUNE. This file was missed in the rename.
--- meta/classes/rootfs_rpm.bbclass | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/classes/rootfs_rpm.bbclass +1 -1
@@ -217,7 +217,7 @@ python () { overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + eext[1] localdata.setVar("OVERRIDES", overrides) # TEMP: OVERRIDES isn't working right - localdata.setVar("TUNENAME", localdata.getVar("TUNENAME_virtclass-multilib-" + eext[1], False) or "") + localdata.setVar("DEFAULTTUNE", localdata.getVar("DEFAULTTUNE_virtclass-multilib-" + eext[1], False) or "") ml_package_archs += localdata.getVar("PACKAGE_ARCHS", True) or "" #bb.note("ML_PACKAGE_ARCHS %s %s %s" % (eext[1], localdata.getVar("PACKAGE_ARCHS", True) or "(none)", overrides)) bb.data.setVar('MULTILIB_PACKAGE_ARCHS', ml_package_archs, d)
Signature · 1 line
1.7.3.4
PATCH 19/22 package_{deb, rpm, ipk}.bbclass: fix 'lingusa' typo
In reply to Saul WoldFrom: Koen Kooi <[email protected]>
--- meta/classes/package_deb.bbclass | 6 +++--- meta/classes/package_ipk.bbclass | 6 +++--- meta/classes/package_rpm.bbclass | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-)
meta/classes/package_deb.bbclass +3 -3
@@ -116,7 +116,7 @@ package_install_internal_deb () { local archs="${INSTALL_ARCHS_DEB}" local package_to_install="${INSTALL_PACKAGES_NORMAL_DEB}" local package_attemptonly="${INSTALL_PACKAGES_ATTEMPTONLY_DEB}" - local package_lingusa="${INSTALL_PACKAGES_LINGUAS_DEB}" + local package_linguas="${INSTALL_PACKAGES_LINGUAS_DEB}" local task="${INSTALL_TASK_DEB}" rm -f ${STAGING_ETCDIR_NATIVE}/apt/sources.list.rev
@@ -155,12 +155,12 @@ package_install_internal_deb () { # Uclibc builds don't provide this stuff.. if [ x${TARGET_OS} = "xlinux" ] || [ x${TARGET_OS} = "xlinux-gnueabi" ] ; then - if [ ! -z "${package_lingusa}" ]; then + if [ ! -z "${package_linguas}" ]; then apt-get install glibc-localedata-i18n --force-yes --allow-unauthenticated if [ $? -ne 0 ]; then exit 1 fi - for i in ${package_lingusa}; do + for i in ${package_linguas}; do apt-get install $i --force-yes --allow-unauthenticated if [ $? -ne 0 ]; then exit 1
meta/classes/package_ipk.bbclass +3 -3
@@ -99,7 +99,7 @@ package_install_internal_ipk() { local conffile="${INSTALL_CONF_IPK}" local package_to_install="${INSTALL_PACKAGES_NORMAL_IPK}" local package_attemptonly="${INSTALL_PACKAGES_ATTEMPTONLY_IPK}" - local package_lingusa="${INSTALL_PACKAGES_LINGUAS_IPK}" + local package_linguas="${INSTALL_PACKAGES_LINGUAS_IPK}" local package_multilib="${INSTALL_PACKAGES_MULTILIB_IPK}" local task="${INSTALL_TASK_IPK}"
@@ -111,8 +111,8 @@ package_install_internal_ipk() { # Uclibc builds don't provide this stuff... if [ x${TARGET_OS} = "xlinux" ] || [ x${TARGET_OS} = "xlinux-gnueabi" ] ; then - if [ ! -z "${package_lingusa}" ]; then - for i in ${package_lingusa}; do + if [ ! -z "${package_linguas}" ]; then + for i in ${package_linguas}; do opkg-cl ${ipkg_args} install $i done fi
meta/classes/package_rpm.bbclass +3 -3
@@ -193,7 +193,7 @@ package_install_internal_rpm () { local confbase="${INSTALL_CONFBASE_RPM}" local package_to_install="${INSTALL_PACKAGES_NORMAL_RPM}" local package_attemptonly="${INSTALL_PACKAGES_ATTEMPTONLY_RPM}" - local package_lingusa="${INSTALL_PACKAGES_LINGUAS_RPM}" + local package_linguas="${INSTALL_PACKAGES_LINGUAS_RPM}" local providename="${INSTALL_PROVIDENAME_RPM}" local task="${INSTALL_TASK_RPM}"
@@ -222,8 +222,8 @@ package_install_internal_rpm () { # Uclibc builds don't provide this stuff... if [ x${TARGET_OS} = "xlinux" ] || [ x${TARGET_OS} = "xlinux-gnueabi" ] ; then - if [ ! -z "${package_lingusa}" ]; then - for pkg in ${package_lingusa}; do + if [ ! -z "${package_linguas}" ]; then + for pkg in ${package_linguas}; do echo "Processing $pkg..." archvar=base_package_archs
Signature · 1 line
1.7.3.4
PATCH 20/22 arch-armv7a.inc: fix armv7a-vfp-neon -> armv7a compat case
In reply to Saul WoldFrom: Koen Kooi <[email protected]>
Without this 'armv7a' is used as TUNE_ARCH but does *not* end up in PACKAGE_EXTRA_ARCHS:
arch all 1
arch any 6
arch noarch 11
arch arm 16
arch armv4 21
arch armv4t 26
arch armv5 31
arch armv5t 36
arch armv5-vfp 41
arch armv5t-vfp 46
arch armv5e 51
arch armv5te 56
arch armv5e-vfp 61
arch armv5te-vfp 66
arch armv6-vfp 71
arch armv6t-vfp 76
arch armv7-vfp 81
arch armv7t2-vfp 86
arch armv7a-vfp 91
arch armv7at2-vfp 96
arch armv7a-vfp-neon 101
arch armv7at2-vfp-neon 106
arch beagleboard 111
Which leads to a failing do_rootfs
The fix might look like it's in the wrong line, but it's only place in the .inc where it works.
--- meta/conf/machine/include/arm/arch-armv7a.inc | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
meta/conf/machine/include/arm/arch-armv7a.inc +2 -2
@@ -17,7 +17,7 @@ TUNE_FEATURES_tune-armv7at-neon ?= "armv7a vfp neon thumb" PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7a-vfp" PACKAGE_EXTRA_ARCHS_tune-armv7a-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-neon" PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7a-vfp armv7at2-vfp" -PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a armv7a-vfp-neon armv7at2-vfp-neon" # VFP Tunes AVAILTUNES += "armv7hf armv7thf armv7hf-neon armv7thf-neon
@@ -39,7 +39,7 @@ TUNE_FEATURES_tune-armv7atb-neon ?= "${TUNE_FEATURES_tune-armv7at-neon} bigendia PACKAGE_EXTRA_ARCHS_tune-armv7ab = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7ab-vfp" PACKAGE_EXTRA_ARCHS_tune-armv7atb = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7ab-vfp armv7at2b-vfp" PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7ab-vfp-neon" -PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7ab-vfp-neon armv7at2b-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7ab armv7ab-vfp-neon armv7at2b-vfp-neon" # Big Endian + VFP AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-neon armv7athfb-neon"
Signature · 1 line
1.7.3.4
PATCH 21/22 external-*toolchain: remove glibc-utils provide
In reply to Saul WoldThis was causing a multiple providers error
--- .../meta/external-csl-toolchain_2008q3-72.bb | 4 ++-- meta/recipes-core/meta/external-poky-toolchain.bb | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-)
meta/recipes-core/meta/external-csl-toolchain_2008q3-72.bb +2 -2
@@ -16,9 +16,9 @@ PROVIDES = "\ virtual/libiconv \ glibc-thread-db \ virtual/linux-libc-headers " -RPROVIDES = "glibc-utils libsegfault glibc-thread-db" +RPROVIDES = "libsegfault glibc-thread-db" PACKAGES_DYNAMIC = "glibc-gconv-*" -PR = "r1" +PR = "r2" #SRC_URI = "http://www.codesourcery.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-${PV}-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2"
meta/recipes-core/meta/external-poky-toolchain.bb +2 -2
@@ -9,10 +9,10 @@ PROVIDES = "\ virtual/libintl \ virtual/libiconv \ virtual/linux-libc-headers " -RPROVIDES = "glibc-utils libsegfault glibc-thread-db libgcc-dev libstdc++-dev libstdc++" +RPROVIDES = "libsegfault glibc-thread-db libgcc-dev libstdc++-dev libstdc++" PACKAGES_DYNAMIC = "glibc-gconv-*" INHIBIT_DEFAULT_DEPS = "1" -PR = "r1" +PR = "r2" # License applies to this recipe code, not the toolchain itself LICENSE = "MIT"
Signature · 1 line
1.7.3.4
PATCH 22/22 feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
In reply to Saul WoldFrom: Khem Raj <[email protected]>
This will decouple the compiling in thumb mode from having thumb capable cores.
--- .../conf/machine/include/arm/feature-arm-thumb.inc | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
meta/conf/machine/include/arm/feature-arm-thumb.inc +4 -2
@@ -4,9 +4,11 @@ # encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size) # but requires more instructions (140% for 70% smaller code) so may be # slower. -TUNEVALID[thumb] = "Use thumb instructions instead of ARM" -ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TUNEVALID[thumb] = "Use thumb instructions instead of ARM if ARM_INSTRUCTION_SET != arm" +ARM_THUMB_M_OPT = "${@['-mthumb', '-mno-thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'arm']}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}" + +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "-mthumb", "-mno-thumb", d)}" OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}" # Note armv7 will hit on armv7a as well
Signature · 1 line
1.7.3.4
Re: [PATCH 17/22] bitbake.conf: Add default tune-${DEFAULTTUNE} override
In reply to Saul WoldQuoted 16 lines · Saul Wold
From: Mark Hatle <[email protected]>
We need to add the tune-* override in order for more complicated tune features to function properly.
Signed-off-by Mark Hatle <[email protected]>--- meta/conf/bitbake.conf | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)meta/conf/bitbake.conf +0
-0@@ -637,9 +637,10 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}" #
meta/conf/bitbake.conf AUTO_LIBNAME_PKGS = "${PACKAGES}" · line 646
Quoted 10 lines
meta/conf/bitbake.conf +2
-1# This works for functions as well, they are really just environment variables. # Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. -OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" +OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${TUNEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" DISTROOVERRIDES ?= "${DISTRO}" MACHINEOVERRIDES ?= "${MACHINE}" +TUNEOVERRIDES ?= "tune-${DEFAULTTUNE}" CPU_FEATURES ?= "" CPU_FEATURES_arm ?= "vfp"
This is a really bad idea and evidently hasn't been tested or thought through :(
Why? The problem is you can't "unset" an override. This means you will lock DEFAULTTUNE's values into the system and if you then want to change to a different multilib the result will be confused at best.
So I'm afraid this is going to need a rethink.
Cheers,
Richard
Re: [PATCH 15/22] tune/powerpc: Cleanup setting of TUNE_PKGARCH
In reply to Saul WoldQuoted 57 lines · Saul Wold
From: Mark Hatle <[email protected]>
Based on Kumar Gala <[email protected]>'s patch.
By default we use ppc, or ppc64. Each tune either specifies their manual version or can use the
PPC_PKGARCHto specify a new prefix if they support both float and no-float variants.Signed-off-by Mark Hatle <[email protected]>--- meta/conf/machine/include/powerpc/arch-powerpc.inc | 3 ++- .../machine/include/powerpc/arch-powerpc64.inc | 1 + meta/conf/machine/include/tune-ppc603e.inc | 4 ++-- meta/conf/machine/include/tune-ppce300c2.inc | 5 +++-- meta/conf/machine/include/tune-ppce500.inc | 5 +++-- meta/conf/machine/include/tune-ppce500mc.inc | 5 +++-- meta/conf/machine/include/tune-ppce500v2.inc | 5 +++-- 7 files changed, 17 insertions(+), 11 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +2
-1@@ -8,6 +8,7 @@ DEFAULTTUNE ?= "powerpc" TUNEVALID[m32] = "Power ELF32 standard ABI" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m32", "-m32", "", d)}" TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m32", "powerpc", "", d)}" +PPC_PKGARCH = "ppc" TUNEVALID[fpu-hard] = "Use hardware FPU." TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard", "-mhard-float", "", d)}"@@ -20,7 +21,7 @@ ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-e PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}" -TUNE_PKGARCH ?= "${TUNE_ARCH}${PPCPKGSFX_FPU}" +TUNE_PKGARCH ?= "${PPC_PKGARCH}${PPCPKGSFX_FPU}" # Basic tune definitions AVAILTUNES += "powerpc powerpc-nf"meta/conf/machine/include/powerpc/arch-powerpc64.inc +1
-0@@ -2,6 +2,7 @@ TUNEVALID[m64] = "Power ELF64 standard ABI" TUNE_CONFLICTS[m64] = "m32 nf" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m64", "-m64", "", d)}" TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", [ "m64" ], "powerpc64", "", d)}" +PPC_PKGARCH = "ppc64" AVAILTUNES += "powerpc64" TUNE_FEATURES_tune-powerpc64 ?= "m64 fpu-hard"meta/conf/machine/include/tune-ppc603e.inc +0
-0
meta/conf/machine/include/tune-ppc603e.inc require conf/machine/include/powerpc/arch-powerpc.inc · line 7
Quoted 5 lines
meta/conf/machine/include/tune-ppc603e.inc +1
-1@@ -4,8 +4,8 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[ppc603e] = "Enable ppc603e specific processor optimizations" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppc603e", "-mcpu=603e", "", d)}" -TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES", "ppc603e", "ppc603e", "", d)}" +PPC_PKGARCH_tune-ppc603e = "ppc603e"
I was going to ask how this is meant to work without overrides, then I saw the later patch (which are queued in the wrong order). I suspect you need to use syntax like:
PPC_PKGARCH ??= "${@d.getvar(bb.data.expand("PPC_PKGARCH_tune-${DEFAULTTUNE}"), True) or d.getvar("PPC_PKGARCH", True)}"
above and then this will work without overrides.
Cheers,
Richard
Re: [PATCH 17/22] bitbake.conf: Add default tune-${DEFAULTTUNE} override
In reply to Saul WoldQuoted 15 lines · Saul Wold
From: Mark Hatle <[email protected]>
We need to add the tune-* override in order for more complicated tune features to function properly.
Signed-off-by Mark Hatle <[email protected]>--- meta/conf/bitbake.conf | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)meta/conf/bitbake.conf +0
-0
meta/conf/bitbake.conf AUTO_LIBNAME_PKGS = "${PACKAGES}" · line 643
Quoted 8 lines
meta/conf/bitbake.conf +2
-1@@ -637,9 +637,10 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}" # # This works for functions as well, they are really just environment variables. # Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. -OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" +OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${TUNEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" DISTROOVERRIDES ?= "${DISTRO}" MACHINEOVERRIDES ?= "${MACHINE}" +TUNEOVERRIDES ?= "tune-${DEFAULTTUNE}"
What exactly are the "more complicated tune features" that require this? It's not obvious to me that this is a good idea.
p.
Re: [PATCH 10/22] tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
In reply to Saul WoldQuoted 16 lines · Saul Wold
From: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in
TUNE_FEATURESrather than 'fpu-hard' to determine setting 'nf' (no-float) inPPCPKGSFX_FPU.Signed-off-by Kumar Gala <[email protected]>--- meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +0
-0
meta/conf/machine/include/powerpc/arch-powerpc.inc TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)} · line 23
Quoted 7 lines
meta/conf/machine/include/powerpc/arch-powerpc.inc +1
-1@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)} ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}" -PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}" TUNE_PKGARCH ?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"
Whilst the change itself may or may not be ok, it would need to change the various boards that are already setting or not setting fpu-hard as a feature so as it stands this change is incomplete.
Cheers,
Richard
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
In reply to Saul WoldQuoted 17 lines · Saul Wold
Signed-off-by Saul Wold <[email protected]>--- meta/classes/sanity.bbclass | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +3
-1@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1:
meta/classes/sanity.bbclass def check_sanity(e): · line 396
Quoted 10 lines
meta/classes/sanity.bbclass +2
-2+ pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = True if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)
How about we don't put duplicates in there in the first place?
Which board/tune files is this occurring with?
Cheers,
Richard
Re: [PATCH 16/22] populate_sdk: Fix the introduction of sdknative packages
In reply to Saul WoldQuoted 8 lines · Saul Wold
From: Mark Hatle <[email protected]>
The sdknative packages were not being introduced into the list of available packages properly. Fix this by always introducing it and avoiding a sed of one type to another.
Also fix a number of minor issues with the RPM behavior when building sdk images.
I'm afraid this change looks wrong to me. Firstly, all arch packages are "all", not "all-nativesdk". You're also cutting down the arch list to a single sdk entry rather than the intended package_archs list.
"all" == "all-nativesdk" as things stand might be wrong for various other reasons I can think of but it is what would currently be generated.
All things considered, this issue needs more work.
Cheers,
Richard
Quoted 112 lines
Signed-off-by Mark Hatle <[email protected]>--- meta/classes/package_rpm.bbclass | 19 +++++++++---------- meta/classes/populate_sdk_deb.bbclass | 11 ++--------- meta/classes/populate_sdk_rpm.bbclass | 11 ++--------- 3 files changed, 13 insertions(+), 28 deletions(-)meta/classes/package_rpm.bbclass +9
-10@@ -32,14 +32,12 @@ package_update_index_rpm () { eval archs=\${${archvar}} packagedirs="" packagedirs_sdk="" - for arch in $archs; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi + if [ "${SDK_ARCH}-nativesdk" != "-nativesdk" ]; then + packagedirs_sdk="${DEPLOY_DIR_RPM}/${SDK_ARCH}-nativesdk" + fi + for arch in $archs ; do packagedirs="${DEPLOY_DIR_RPM}/$arch $packagedirs" - packagedirs_sdk="${DEPLOY_DIR_RPM}/$sdkarch$extension $packagedirs_sdk" + packagedirs_sdk="${DEPLOY_DIR_RPM}/$arch $packagedirs_sdk" rm -rf ${DEPLOY_DIR_RPM}/$arch/solvedb rm -rf ${DEPLOY_DIR_RPM}/$sdkarch$extension/solvedb@@ -95,6 +93,7 @@ package_update_index_rpm () { # package_generate_rpm_conf () { printf "_solve_dbpath " > ${RPMCONF_TARGET_BASE}.macro + printf "_solve_dbpath " > ${RPMCONF_HOST_BASE}.macro o_colon_t=false o_colon_h=false@@ -238,7 +237,7 @@ package_install_internal_rpm () { echo "Unable to find package $pkg ($ml_pkg)!" exit 1 fi - echo $pkg_name >> ${IMAGE_ROOTFS}/install/install.manifest + echo $pkg_name >> ${target_rootfs}/install/install.manifest done fi fi@@ -258,7 +257,7 @@ package_install_internal_rpm () { echo "Unable to find package $pkg ($ml_pkg)!" exit 1 fi - echo $pkg_name >> ${IMAGE_ROOTFS}/install/install.manifest + echo $pkg_name >> ${target_rootfs}/install/install.manifest done fi@@ -303,7 +302,7 @@ package_install_internal_rpm () { # Dump the full set of recommends... ${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \ --predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \ - -D "_dbpath ${IMAGE_ROOTFS}/install" -D "`cat ${confbase}.macro`" \ + -D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}.macro`" \ -D "__dbi_txn create nofsync private" \ -qa --qf "[%{RECOMMENDS}\n]" | sort -u > ${target_rootfs}/install/recommend # Did we add more to the list?meta/classes/populate_sdk_deb.bbclass +2
-9@@ -34,16 +34,9 @@ fakeroot populate_sdk_deb () { export INSTALL_ROOTFS_DEB="${SDK_OUTPUT}" export INSTALL_BASEARCH_DEB="${SDK_ARCH}" export INSTALL_PACKAGES_NORMAL_DEB="${TOOLCHAIN_HOST_TASK}" - INSTALL_ARCHS_DEB="" + INSTALL_ARCHS_DEB="${SDK_ARCH}-nativesdk" for arch in ${PACKAGE_ARCHS}; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi - if [ -e ${DEPLOY_DIR_DEB}/$sdkarch$extension ]; then - INSTALL_ARCHS_DEB="$INSTALL_ARCHS_DEB $sdkarch$extension" - fi + INSTALL_ARCHS_DEB="$INSTALL_ARCHS_DEB $arch" done export INSTALL_ARCHS_DEBmeta/classes/populate_sdk_rpm.bbclass +2
-9@@ -53,16 +53,9 @@ fakeroot populate_sdk_rpm () { export INSTALL_PLATFORM_RPM="${SDK_ARCH}" export INSTALL_CONFBASE_RPM="${RPMCONF_HOST_BASE}" export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_HOST_TASK}" - export INSTALL_PLATFORM_EXTRA_RPM="" + export INSTALL_PLATFORM_EXTRA_RPM="${SDK_ARCH}-nativesdk" for arch in ${PACKAGE_ARCHS}; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi - if [ -e ${DEPLOY_DIR_RPM}/$sdkarch$extension ]; then - INSTALL_PLATFORM_EXTRA_RPM="$sdkarch $INSTALL_PLATFORM_EXTRA_RPM" - fi + INSTALL_PLATFORM_EXTRA_RPM="$arch $INSTALL_PLATFORM_EXTRA_RPM" done export INSTALL_PLATFORM_EXTRA_RPM
Re: [PATCH 20/22] arch-armv7a.inc: fix armv7a-vfp-neon -> armv7a compat case
In reply to Saul WoldQuoted 42 lines · Saul Wold
From: Koen Kooi <[email protected]>
Without this 'armv7a' is used as
TUNE_ARCHbut does *not* end up inPACKAGE_EXTRA_ARCHS:arch all 1
arch any 6
arch noarch 11
arch arm 16
arch armv4 21
arch armv4t 26
arch armv5 31
arch armv5t 36
arch armv5-vfp 41
arch armv5t-vfp 46
arch armv5e 51
arch armv5te 56
arch armv5e-vfp 61
arch armv5te-vfp 66
arch armv6-vfp 71
arch armv6t-vfp 76
arch armv7-vfp 81
arch armv7t2-vfp 86
arch armv7a-vfp 91
arch armv7at2-vfp 96
arch armv7a-vfp-neon 101
arch armv7at2-vfp-neon 106
arch beagleboard 111Which leads to a failing
do_rootfsThe fix might look like it's in the wrong line, but it's only place in the .inc where it works.
Signed-off-by Koen Kooi <[email protected]>--- meta/conf/machine/include/arm/arch-armv7a.inc | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)meta/conf/machine/include/arm/arch-armv7a.inc +0
-0
meta/conf/machine/include/arm/arch-armv7a.inc TUNE_FEATURES_tune-armv7at-neon ?= "armv7a vfp neon thumb" · line 20
Quoted 5 lines
meta/conf/machine/include/arm/arch-armv7a.inc +1
-1@@ -17,7 +17,7 @@ TUNE_FEATURES_tune-armv7at-neon ?= "armv7a vfp neon thumb" PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7a-vfp" PACKAGE_EXTRA_ARCHS_tune-armv7a-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-neon" PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7a-vfp armv7at2-vfp" -PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a armv7a-vfp-neon armv7at2-vfp-neon"
Nearly :)
You need to add it to the PACKAGE_EXTRA_ARCHS_tune-armv7a and PACKAGE_EXTRA_ARCHS_tune-armv7at lines.
Cheers,
Richard
Re: [PATCH 21/22] external-*toolchain: remove glibc-utils provide
In reply to Saul WoldQuoted 1 line · Saul Wold
This was causing a multiple providers error
What kind of multiple providers error? This change doesn't feel right to me and likely breaks external toolchains.
Cheers,
Richard
Quoted 40 lines
Signed-off-by Saul Wold <[email protected]>--- .../meta/external-csl-toolchain_2008q3-72.bb | 4 ++-- meta/recipes-core/meta/external-poky-toolchain.bb | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-)meta/recipes-core/meta/external-csl-toolchain_2008q3-72.bb +2
-2@@ -16,9 +16,9 @@ PROVIDES = "\ virtual/libiconv \ glibc-thread-db \ virtual/linux-libc-headers " -RPROVIDES = "glibc-utils libsegfault glibc-thread-db" +RPROVIDES = "libsegfault glibc-thread-db" PACKAGES_DYNAMIC = "glibc-gconv-*" -PR = "r1" +PR = "r2" #SRC_URI = "http://www.codesourcery.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-${PV}-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2"meta/recipes-core/meta/external-poky-toolchain.bb +2
-2@@ -9,10 +9,10 @@ PROVIDES = "\ virtual/libintl \ virtual/libiconv \ virtual/linux-libc-headers " -RPROVIDES = "glibc-utils libsegfault glibc-thread-db libgcc-dev libstdc++-dev libstdc++" +RPROVIDES = "libsegfault glibc-thread-db libgcc-dev libstdc++-dev libstdc++" PACKAGES_DYNAMIC = "glibc-gconv-*" INHIBIT_DEFAULT_DEPS = "1" -PR = "r1" +PR = "r2" # License applies to this recipe code, not the toolchain itself LICENSE = "MIT"
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
In reply to Saul WoldQuoted 18 lines · Saul Wold
From: Khem Raj <[email protected]>
This will decouple the compiling in thumb mode from having thumb capable cores.
Signed-off-by Khem Raj <[email protected]>--- .../conf/machine/include/arm/feature-arm-thumb.inc | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)meta/conf/machine/include/arm/feature-arm-thumb.inc +0
-0@@ -4,9 +4,11 @@ # encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size) # but requires more instructions (140% for 70% smaller code) so may be # slower.
meta/conf/machine/include/arm/feature-arm-thumb.inc line 14
Quoted 10 lines
meta/conf/machine/include/arm/feature-arm-thumb.inc +4
-2-TUNEVALID[thumb] = "Use thumb instructions instead of ARM" -ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TUNEVALID[thumb] = "Use thumb instructions instead of ARM if ARM_INSTRUCTION_SET != arm" +ARM_THUMB_M_OPT = "${@['-mthumb', '-mno-thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'arm']}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}" + +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "-mthumb", "-mno-thumb", d)}" OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}" # Note armv7 will hit on armv7a as well
The original change committed into master in my absence is broken. This patch is just making things even worse and more broken :(
I suspect what people really wanted was:
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "-mno-thumb", d)}"
Cheers,
Richard
Quoted 11 lines · Saul Wold
This set of patches are what have been pulled together for the M3 RC1 build. They include patches to multi-lib and tuning changes put last week.
There are also 2 changes from Josh for bitbake, not included here, which are included in stage/master_under_test.
There are competing changes from Martin and Khem for the ARM fix, the first change from Martin did not seem to solve (or there is a different issue that I have not evaluated). I am building Khem's change, but it also seems to fail in eglibc, so ARM is still an issue
I've sent some feedback on the patches in this series, I've taken about half the patches, the others are going to need some further work I'm afraid :(
Cheers,
Richard
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
In reply to Richard PurdieOp 1 aug. 2011, om 15:03 heeft Richard Purdie het volgende geschreven:
Quoted 26 lines · Saul Wold
Quoted 25 lines
Signed-off-by Saul Wold <[email protected]>---
meta/classes/sanity.bbclass | 8 +++++---1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +5
-3@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1: + pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = True
Quoted 4 lines
meta/classes/sanity.bbclass def check_sanity(e): · line 396
Quoted 2 lines
meta/classes/sanity.bbclass +0
-0if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)How about we don't put duplicates in there in the first place?
AIUI this is fatal in OE classic as well, so there really shouldn't be any duplicates in PACKAGE_(EXTRA_)ARCHS
Re: [PATCH 20/22] arch-armv7a.inc: fix armv7a-vfp-neon -> armv7a compat case
In reply to Richard PurdieOp 1 aug. 2011, om 15:10 heeft Richard Purdie het volgende geschreven:
Quoted 51 lines · Saul Wold
Quoted 45 lines
From: Koen Kooi <[email protected]>
Without this 'armv7a' is used as
TUNE_ARCHbut does *not* end up inPACKAGE_EXTRA_ARCHS:arch all 1
arch any 6
arch noarch 11
arch arm 16
arch armv4 21
arch armv4t 26
arch armv5 31
arch armv5t 36
arch armv5-vfp 41
arch armv5t-vfp 46
arch armv5e 51
arch armv5te 56
arch armv5e-vfp 61
arch armv5te-vfp 66
arch armv6-vfp 71
arch armv6t-vfp 76
arch armv7-vfp 81
arch armv7t2-vfp 86
arch armv7a-vfp 91
arch armv7at2-vfp 96
arch armv7a-vfp-neon 101
arch armv7at2-vfp-neon 106
arch beagleboard 111Which leads to a failing
do_rootfsThe fix might look like it's in the wrong line, but it's only place in the .inc where it works.
Signed-off-by Koen Kooi <[email protected]>---
meta/conf/machine/include/arm/arch-armv7a.inc | 4 ++--1 files changed, 2 insertions(+), 2 deletions(-)meta/conf/machine/include/arm/arch-armv7a.inc +0
-0@@ -17,7 +17,7 @@ TUNE_FEATURES_tune-armv7at-neon ?= "armv7a vfp neon thumb"PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7a-vfp" PACKAGE_EXTRA_ARCHS_tune-armv7a-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-neon" PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7a-vfp armv7at2-vfp"
meta/conf/machine/include/arm/arch-armv7a.inc
Quoted 2 lines
meta/conf/machine/include/arm/arch-armv7a.inc +1
-1-PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a armv7a-vfp-neon armv7at2-vfp-neon"Nearly :)
Quoted 2 lines
You need to add it to the PACKAGE_EXTRA_ARCHS_tune-armv7a and PACKAGE_EXTRA_ARCHS_tune-armv7at lines.
I tried adding it to those and it didn't show up in 'bitbake -e'. A new try today:
meta/conf/machine/include/arm/arch-armv7a.inc +2 -2
@@ -14,9 +14,9 @@ TUNE_FEATURES_tune-armv7a ?= "armv7a vfp" TUNE_FEATURES_tune-armv7at ?= "armv7a vfp thumb" TUNE_FEATURES_tune-armv7a-neon ?= "armv7a vfp neon" TUNE_FEATURES_tune-armv7at-neon ?= "armv7a vfp neon thumb" -PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7a-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7a-vfp testv7a" PACKAGE_EXTRA_ARCHS_tune-armv7a-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-neon" -PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7a-vfp armv7at2-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7a-vfp armv7at2-vfp testv7at" PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a armv7a-vfp-neon armv7at2-vfp-neon"
koen@dominion:/OE/tentacle/sources/openembedded-core/meta$ bitbake -e | grep testv
PACKAGE_ARCHS="all any noarch arm armv4 armv4t armv5 armv5t armv5-vfp armv5t-vfp armv5e armv5te armv5e-vfp armv5te-vfp armv6-vfp armv6t-vfp armv7-vfp armv7t2-vfp armv7a-vfp armv7at2-vfp testv7at armv7a armv7a-vfp-neon armv7at2-vfp-neon beagleboard"
ipkgarchs="all any noarch arm armv4 armv4t armv5 armv5t armv5-vfp armv5t-vfp armv5e armv5te armv5e-vfp armv5te-vfp armv6-vfp armv6t-vfp armv7-vfp armv7t2-vfp armv7a-vfp armv7at2-vfp testv7at armv7a armv7a-vfp-neon armv7at2-vfp-neon beagleboard"
So it doesn't work in 'armv7a', but it does work in 'armv7at'. I'll send an updated patch.
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
In reply to Richard PurdieQuoted 26 lines · Richard Purdie
Quoted 25 lines · Saul Wold
Signed-off-by Saul Wold <[email protected]>---
meta/classes/sanity.bbclass | 8 +++++---1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +5
-3@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1: + pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = True
Quoted 6 lines
meta/classes/sanity.bbclass def check_sanity(e): · line 396
Quoted 2 lines
meta/classes/sanity.bbclass +0
-0if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)How about we don't put duplicates in there in the first place?
Which board/tune files is this occurring with?
Yeah, not sure about this one, I added the sanity check to find this early. Ran into issues with my PPC patch set and took a while to find (thus figured a sanity check made sense to check early on).
- k
Re: [PATCH 10/22] tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
In reply to Richard PurdieQuoted 20 lines · Richard Purdie
Quoted 19 lines · Saul Wold
From: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in
TUNE_FEATURESrather than 'fpu-hard' to determine setting 'nf' (no-float) inPPCPKGSFX_FPU.Signed-off-by Kumar Gala <[email protected]>---
meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +-1 files changed, 1 insertions(+), 1 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +0
-0@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)}ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}"
Quoted 8 lines
Quoted 4 lines
meta/conf/machine/include/powerpc/arch-powerpc.inc +1
-1-PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}"
TUNE_PKGARCH?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"Whilst the change itself may or may not be ok, it would need to change the various boards that are already setting or not setting fpu-hard as a feature so as it stands this change is incomplete.
Which boards are you speaking of? I'm not aware of any that set soft float at this point for PPC.
- k
Re: [PATCH 17/22] bitbake.conf: Add default tune-${DEFAULTTUNE} override
In reply to Phil BlundellQuoted 11 lines · Phil Blundell
Quoted 10 lines · Saul Wold
From: Mark Hatle <[email protected]>
We need to add the tune-* override in order for more complicated tune features to function properly.
Signed-off-by Mark Hatle <[email protected]>--- meta/conf/bitbake.conf | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
Quoted 16 lines
meta/conf/bitbake.conf AUTO_LIBNAME_PKGS = "${PACKAGES}" · line 643
Quoted 13 lines
meta/conf/bitbake.conf +2
-1@@ -637,9 +637,10 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}" # # This works for functions as well, they are really just environment variables. # Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. -OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" +OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${TUNEOVERRIDES}:${DISTROOVERRIDES}:forcevariable" DISTROOVERRIDES ?= "${DISTRO}" MACHINEOVERRIDES ?= "${MACHINE}" +TUNEOVERRIDES ?= "tune-${DEFAULTTUNE}"What exactly are the "more complicated tune features" that require this? It's not obvious to me that this is a good idea.
See the other patch that Richard commented on. My understanding was that the value of the OVERRIDES could change during the multilib configurations. Seems that I was wrong here.
The concept behind this was to be able to specify certain values based on an override instead of having to do inline python.. but it appears that simply won't work.
(Values such as package_extra_arch, pkgarch, etc..)
--Mark
Quoted 8 lines
p.
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Re: [PATCH 16/22] populate_sdk: Fix the introduction of sdknative packages
In reply to Richard PurdieQuoted 10 lines · Richard Purdie
Quoted 8 lines · Saul Wold
From: Mark Hatle <[email protected]>
The sdknative packages were not being introduced into the list of available packages properly. Fix this by always introducing it and avoiding a sed of one type to another.
Also fix a number of minor issues with the RPM behavior when building sdk images.
Quoted 7 lines
I'm afraid this change looks wrong to me. Firstly, all arch packages are "all", not "all-nativesdk". You're also cutting down the arch list to a single sdk entry rather than the intended
package_archslist."all" == "all-nativesdk" as things stand might be wrong for various other reasons I can think of but it is what would currently be generated.
No, that's not what is happening at all. The original sed was completely broken and wouldn't always work.
The arch list being processed is the target arch list.. typically it's something like:
all any noarch powerpc ppc603e qemuppc
Before the system was trying to do a search/replace on "HOST_ARCH" and replace it with SDK_ARCH.. this is kind of insane.. because there is no guaranty that HOST_ARCH will even be in the arch list. So instead the patch simply adds SDK_ARCH-nativesdk, and then processes the list as normal.. the result is:
x86_64-nativesdk all any noarch powerpc ppc603e qemuppc
before it would have been (assuming the sed even worked)
all any noarch x86_64-nativesdk ppc603e qemuppc
so any packages with arch of "powerpc" would have been missed and the install failed.. (or if powerpc didn't exist, it would end up without x86_64-nativesdk even in the list.. which is how I found the problem.)
Quoted 127 lines
All things considered, this issue needs more work.
Cheers,
Richard
Quoted 102 lines
Signed-off-by Mark Hatle <[email protected]>--- meta/classes/package_rpm.bbclass | 19 +++++++++---------- meta/classes/populate_sdk_deb.bbclass | 11 ++--------- meta/classes/populate_sdk_rpm.bbclass | 11 ++--------- 3 files changed, 13 insertions(+), 28 deletions(-)meta/classes/package_rpm.bbclass +9
-10@@ -32,14 +32,12 @@ package_update_index_rpm () { eval archs=\${${archvar}} packagedirs="" packagedirs_sdk="" - for arch in $archs; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi + if [ "${SDK_ARCH}-nativesdk" != "-nativesdk" ]; then + packagedirs_sdk="${DEPLOY_DIR_RPM}/${SDK_ARCH}-nativesdk" + fi + for arch in $archs ; do packagedirs="${DEPLOY_DIR_RPM}/$arch $packagedirs" - packagedirs_sdk="${DEPLOY_DIR_RPM}/$sdkarch$extension $packagedirs_sdk" + packagedirs_sdk="${DEPLOY_DIR_RPM}/$arch $packagedirs_sdk" rm -rf ${DEPLOY_DIR_RPM}/$arch/solvedb rm -rf ${DEPLOY_DIR_RPM}/$sdkarch$extension/solvedb@@ -95,6 +93,7 @@ package_update_index_rpm () { # package_generate_rpm_conf () { printf "_solve_dbpath " > ${RPMCONF_TARGET_BASE}.macro + printf "_solve_dbpath " > ${RPMCONF_HOST_BASE}.macro o_colon_t=false o_colon_h=false@@ -238,7 +237,7 @@ package_install_internal_rpm () { echo "Unable to find package $pkg ($ml_pkg)!" exit 1 fi - echo $pkg_name >> ${IMAGE_ROOTFS}/install/install.manifest + echo $pkg_name >> ${target_rootfs}/install/install.manifest done fi fi@@ -258,7 +257,7 @@ package_install_internal_rpm () { echo "Unable to find package $pkg ($ml_pkg)!" exit 1 fi - echo $pkg_name >> ${IMAGE_ROOTFS}/install/install.manifest + echo $pkg_name >> ${target_rootfs}/install/install.manifest done fi@@ -303,7 +302,7 @@ package_install_internal_rpm () { # Dump the full set of recommends... ${RPM} --predefine "_rpmds_sysinfo_path ${target_rootfs}/etc/rpm/sysinfo" \ --predefine "_rpmrc_platform_path ${target_rootfs}/etc/rpm/platform" \ - -D "_dbpath ${IMAGE_ROOTFS}/install" -D "`cat ${confbase}.macro`" \ + -D "_dbpath ${target_rootfs}/install" -D "`cat ${confbase}.macro`" \ -D "__dbi_txn create nofsync private" \ -qa --qf "[%{RECOMMENDS}\n]" | sort -u > ${target_rootfs}/install/recommend # Did we add more to the list?meta/classes/populate_sdk_deb.bbclass +2
-9@@ -34,16 +34,9 @@ fakeroot populate_sdk_deb () { export INSTALL_ROOTFS_DEB="${SDK_OUTPUT}" export INSTALL_BASEARCH_DEB="${SDK_ARCH}" export INSTALL_PACKAGES_NORMAL_DEB="${TOOLCHAIN_HOST_TASK}" - INSTALL_ARCHS_DEB="" + INSTALL_ARCHS_DEB="${SDK_ARCH}-nativesdk" for arch in ${PACKAGE_ARCHS}; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk" - if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi - if [ -e ${DEPLOY_DIR_DEB}/$sdkarch$extension ]; then - INSTALL_ARCHS_DEB="$INSTALL_ARCHS_DEB $sdkarch$extension" - fi + INSTALL_ARCHS_DEB="$INSTALL_ARCHS_DEB $arch" done export INSTALL_ARCHS_DEBmeta/classes/populate_sdk_rpm.bbclass +1
-3@@ -53,16 +53,9 @@ fakeroot populate_sdk_rpm () { export INSTALL_PLATFORM_RPM="${SDK_ARCH}" export INSTALL_CONFBASE_RPM="${RPMCONF_HOST_BASE}" export INSTALL_PACKAGES_NORMAL_RPM="${TOOLCHAIN_HOST_TASK}" - export INSTALL_PLATFORM_EXTRA_RPM="" + export INSTALL_PLATFORM_EXTRA_RPM="${SDK_ARCH}-nativesdk" for arch in ${PACKAGE_ARCHS}; do - sdkarch=`echo $arch | sed -e 's/${HOST_ARCH}/${SDK_ARCH}/'` - extension="-nativesdk"meta/classes/populate_sdk_rpm.bbclass fakeroot populate_sdk_rpm () { · line 61
Quoted 10 lines
meta/classes/populate_sdk_rpm.bbclass +1
-6- if [ "$sdkarch" = "all" -o "$sdkarch" = "any" -o "$sdkarch" = "noarch" ]; then - extension="" - fi - if [ -e ${DEPLOY_DIR_RPM}/$sdkarch$extension ]; then - INSTALL_PLATFORM_EXTRA_RPM="$sdkarch $INSTALL_PLATFORM_EXTRA_RPM" - fi + INSTALL_PLATFORM_EXTRA_RPM="$arch $INSTALL_PLATFORM_EXTRA_RPM" done export INSTALL_PLATFORM_EXTRA_RPM_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Re: [PATCH 10/22] tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
In reply to Kumar GalaQuoted 26 lines · Kumar Gala
Quoted 23 lines · Richard Purdie
Quoted 22 lines · Saul Wold
From: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in
TUNE_FEATURESrather than 'fpu-hard' to determine setting 'nf' (no-float) inPPCPKGSFX_FPU.Signed-off-by Kumar Gala <[email protected]>---
meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +-1 files changed, 1 insertions(+), 1 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +0
-0@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)}ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}"
meta/conf/machine/include/powerpc/arch-powerpc.inc +1
-1-PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}"
Quoted 7 lines
Quoted 5 lines
Quoted 1 line
TUNE_PKGARCH?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"Whilst the change itself may or may not be ok, it would need to change the various boards that are already setting or not setting fpu-hard as a feature so as it stands this change is incomplete.
Which boards are you speaking of? I'm not aware of any that set soft float at this point for PPC.
It shouldn't be the board setting it to soft-fp, but instead the tune. Something like qemuppc can use the nf 603e tune.
--Mark
Quoted 5 lines
- k
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Re: [PATCH 10/22] tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
Quoted 33 lines · Mark Hatle
Quoted 32 lines · Kumar Gala
Quoted 28 lines · Richard Purdie
Quoted 22 lines · Saul Wold
From: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in
TUNE_FEATURESrather than 'fpu-hard' to determine setting 'nf' (no-float) inPPCPKGSFX_FPU.Signed-off-by Kumar Gala <[email protected]>---
meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +-1 files changed, 1 insertions(+), 1 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +0
-0@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)}ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}"
meta/conf/machine/include/powerpc/arch-powerpc.inc +1
-1-PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}"Quoted 1 line
TUNE_PKGARCH?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"Whilst the change itself may or may not be ok, it would need to change the various boards that are already setting or not setting fpu-hard as a feature so as it stands this change is incomplete.
Quoted 6 lines
Quoted 1 line
Which boards are you speaking of? I'm not aware of any that set soft float at this point for PPC.
It shouldn't be the board setting it to soft-fp, but instead the tune. Something like qemuppc can use the nf 603e tune.
--Mark
Right, and the tune files we have do this already, tune-ppce300c2.inc.
TUNE_FEATURES_tune-ppce300c2 = "m32 fpu-soft ppce300c2"
So, see no reason not to apply this.
- k
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
In reply to Kumar GalaQuoted 29 lines · Kumar Gala
Quoted 26 lines · Richard Purdie
Quoted 25 lines · Saul Wold
Signed-off-by Saul Wold <[email protected]>---
meta/classes/sanity.bbclass | 8 +++++---1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +5
-3@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1: + pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = True
Quoted 8 lines
Quoted 6 lines
meta/classes/sanity.bbclass def check_sanity(e): · line 396
Quoted 2 lines
meta/classes/sanity.bbclass +0
-0if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)How about we don't put duplicates in there in the first place?
Which board/tune files is this occurring with?
Yeah, not sure about this one, I added the sanity check to find this early. Ran into issues with my PPC patch set and took a while to find (thus figured a sanity check made sense to check early on).
I think the issue is when TUNE_PKGARCH does not end up in the PACKAGE_ARCHS and then package managers dont pick the ipks/rpms/debs which are under that dir in deploy/ipk.
Usually we have been doing += to PACKAGE_EXTRA_ARCH variable in layers but with latest tune overhaul += does not work and we have to do _append/_prepend. I dont know if that is Kumar's original problem
Quoted 6 lines
- k
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Signature · 1 line
-Khem
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
In reply to Richard PurdieQuoted 28 lines · Richard Purdie
Quoted 27 lines · Saul Wold
From: Khem Raj <[email protected]>
This will decouple the compiling in thumb mode from having thumb capable cores.
Signed-off-by Khem Raj <[email protected]>--- .../conf/machine/include/arm/feature-arm-thumb.inc | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)meta/conf/machine/include/arm/feature-arm-thumb.inc +4
-2@@ -4,9 +4,11 @@ # encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size) # but requires more instructions (140% for 70% smaller code) so may be # slower. -TUNEVALID[thumb] = "Use thumb instructions instead of ARM" -ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TUNEVALID[thumb] = "Use thumb instructions instead of ARM if ARM_INSTRUCTION_SET != arm" +ARM_THUMB_M_OPT = "${@['-mthumb', '-mno-thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'arm']}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}" + +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "-mthumb", "-mno-thumb", d)}" OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}"
Quoted 1 line
meta/conf/machine/include/arm/feature-arm-thumb.inc line 14
Quoted 1 line
meta/conf/machine/include/arm/feature-arm-thumb.inc +0
-0# Note armv7 will hit on armv7a as well
this patch was wrong anyway. The one from Martin was better which was pushed to help arm builds going.
Quoted 2 lines
The original change committed into master in my absence is broken.i
This commit is what was pushed e23f9ce928353c9da2b9c4bfa9a1a125a7d160f2 how is it broken ?
Quoted 15 lines
patch is just making things even worse and more broken :(
I suspect what people really wanted was:
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "-mno-thumb", d)}"Cheers,
Richard
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Signature · 1 line
-Khem
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
In reply to Khem RajQuoted 39 lines · Khem Raj
Quoted 29 lines · Kumar Gala
Quoted 26 lines · Richard Purdie
Quoted 25 lines · Saul Wold
Signed-off-by Saul Wold <[email protected]>---
meta/classes/sanity.bbclass | 8 +++++---1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +5
-3@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1: + pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = TrueQuoted 8 lines
Quoted 6 lines
meta/classes/sanity.bbclass def check_sanity(e): · line 396
Quoted 2 lines
meta/classes/sanity.bbclass +0
-0if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)How about we don't put duplicates in there in the first place?
Which board/tune files is this occurring with?
Yeah, not sure about this one, I added the sanity check to find this early. Ran into issues with my PPC patch set and took a while to find (thus figured a sanity check made sense to check early on).
Quoted 7 lines
I think the issue is when
TUNE_PKGARCHdoes not end up in thePACKAGE_ARCHSand then package managers dont pick the ipks/rpms/debs which are under that dir in deploy/ipk.
Usually we have been doing += toPACKAGE_EXTRA_ARCHvariable in layers but with latest tune overhaul += does not work and we have to do _append/_prepend. I dont know if that is Kumar's original problem
Yeah, its why I added the sanity check to make sure TUNE_PKGARCH was in the PACKAGE_ARCHS list.
- k
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
Quoted 50 lines · Kumar Gala
Quoted 39 lines · Khem Raj
Quoted 29 lines · Kumar Gala
Quoted 26 lines · Richard Purdie
Quoted 25 lines · Saul Wold
Signed-off-by Saul Wold <[email protected]>---
meta/classes/sanity.bbclass | 8 +++++---1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +0
-0@@ -383,12 +383,14 @@ def check_sanity(e):dups = []
for pa in
pkgarchs.split():
- ifseen.get(pa, 0)== 1:
+ if pa == tunepkg:
+ tunefound = True
+ ifseen.get(pa, 0)== 1:
+pkgarchs.remove(pa)
+ elifseen.get(pa, 0)== 1:
dups.append(pa)
else:
seen[pa] = 1
- if pa == tunepkg:
- tunefound = TrueQuoted 8 lines
Quoted 6 lines
Quoted 2 lines
if len(dups):
messages = messages + "Error, thePACKAGE_ARCHSvariable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)How about we don't put duplicates in there in the first place?
Which board/tune files is this occurring with?
Yeah, not sure about this one, I added the sanity check to find this early. Ran into issues with my PPC patch set and took a while to find (thus figured a sanity check made sense to check early on).
Quoted 7 lines
I think the issue is when
TUNE_PKGARCHdoes not end up in thePACKAGE_ARCHSand then package managers dont pick the ipks/rpms/debs which are under that dir in deploy/ipk.
Usually we have been doing += toPACKAGE_EXTRA_ARCHvariable in layers but with latest tune overhaul += does not work and we have to do _append/_prepend. I dont know if that is Kumar's original problem
Quoted 1 line
Yeah, its why I added the sanity check to make sure
TUNE_PKGARCHwas in thePACKAGE_ARCHSlist.
right now ppc is bitten by this issue. I cannt build images for qemuppc in oe-core atm since TUNE_PKGARCH = "powerpcppc603e" and therefore ipks are put in the subdir with same name which opkg does not know about powerpcppc603e as a PACKAGE_ARCH so doesnt search this subdir for packages.
Quoted 7 lines
- k
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Re: [PATCH 13/22] sanity: Dont throw a warning if TUNE_PKGARCH is in PACKAGE_ARCHS twice
Quoted 51 lines · Khem Raj
Quoted 50 lines · Kumar Gala
Quoted 46 lines · Khem Raj
Quoted 29 lines · Kumar Gala
Quoted 26 lines · Richard Purdie
Quoted 25 lines · Saul Wold
Signed-off-by Saul Wold <[email protected]>---
meta/classes/sanity.bbclass | 8 +++++---1 files changed, 5 insertions(+), 3 deletions(-)meta/classes/sanity.bbclass +5
-3@@ -383,12 +383,14 @@ def check_sanity(e): dups = [] for pa in pkgarchs.split(): - if seen.get(pa, 0) == 1: + if pa == tunepkg: + tunefound = True + if seen.get(pa, 0) == 1: + pkgarchs.remove(pa) + elif seen.get(pa, 0) == 1: dups.append(pa) else: seen[pa] = 1 - if pa == tunepkg: - tunefound = TrueQuoted 8 lines
Quoted 6 lines
meta/classes/sanity.bbclass def check_sanity(e): · line 396
Quoted 2 lines
meta/classes/sanity.bbclass +0
-0if len(dups): messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)How about we don't put duplicates in there in the first place?
Which board/tune files is this occurring with?
Yeah, not sure about this one, I added the sanity check to find this early. Ran into issues with my PPC patch set and took a while to find (thus figured a sanity check made sense to check early on).
I think the issue is when
TUNE_PKGARCHdoes not end up in thePACKAGE_ARCHSand then package managers dont pick the ipks/rpms/debs which are under that dir in deploy/ipk.
Usually we have been doing += toPACKAGE_EXTRA_ARCHvariable in layers but with latest tune overhaul += does not work and we have to do _append/_prepend. I dont know if that is Kumar's original problem
Quoted 7 lines
Quoted 1 line
Yeah, its why I added the sanity check to make sure
TUNE_PKGARCHwas in thePACKAGE_ARCHSlist.right now ppc is bitten by this issue. I cannt build images for qemuppc in oe-core atm since
TUNE_PKGARCH= "powerpcppc603e" and therefore ipks are put in the subdir with same name which opkg does not know about powerpcppc603e as aPACKAGE_ARCHso doesnt search this subdir for packages.
I'm fine with the sanity check, thats great and I merged that. What I don't like is automagically removing duplicates. The variable is order sensitive and who do we know which one to remove?
Cheers,
Rcichard
Re: [PATCH 10/22] tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
In reply to Richard PurdieQuoted 29 lines · Richard Purdie
Quoted 22 lines · Saul Wold
From: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in
TUNE_FEATURESrather than 'fpu-hard' to determine setting 'nf' (no-float) inPPCPKGSFX_FPU.Signed-off-by Kumar Gala <[email protected]>---
meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +-1 files changed, 1 insertions(+), 1 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +0
-0@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)}ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}"
meta/conf/machine/include/powerpc/arch-powerpc.inc +1
-1-PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}"Quoted 1 line
TUNE_PKGARCH?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"Whilst the change itself may or may not be ok, it would need to change the various boards that are already setting or not setting fpu-hard as a feature so as it stands this change is incomplete.
Quoted 3 lines
Cheers,
Richard
Maybe I misunderstood when I first read this, did you mean we should remove explicitly setting 'fpu-hard' on the boards / tune files that are doing this?
- k
Re: [PATCH 10/22] tune/arch-powerpc: Use fpu-soft to set PPCPKGSFX_FPU
Quoted 31 lines · Kumar Gala
Quoted 20 lines · Richard Purdie
Quoted 19 lines · Saul Wold
From: Kumar Gala <[email protected]>
Its more likely that we explicitly set soft-floating point support for a given target than hard. So use 'fpu-soft' in
TUNE_FEATURESrather than 'fpu-hard' to determine setting 'nf' (no-float) inPPCPKGSFX_FPU.Signed-off-by Kumar Gala <[email protected]>---
meta/conf/machine/include/powerpc/arch-powerpc.inc | 2 +-1 files changed, 1 insertions(+), 1 deletions(-)meta/conf/machine/include/powerpc/arch-powerpc.inc +0
-0@@ -18,7 +18,7 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)}ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}"
Quoted 8 lines
Quoted 4 lines
meta/conf/machine/include/powerpc/arch-powerpc.inc +1
-1-PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" +PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "-nf", "", d)}"
TUNE_PKGARCH?= "${TUNE_ARCH}${PPCPKGSFX_FPU}"Whilst the change itself may or may not be ok, it would need to change the various boards that are already setting or not setting fpu-hard as a feature so as it stands this change is incomplete.
Quoted 3 lines
Maybe I misunderstood when I first read this, did you mean we should remove explicitly setting 'fpu-hard' on the boards / tune files that are doing this?
Yes, that is what I meant.
Cheers,
Richard
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
In reply to Richard PurdieQuoted 28 lines · Richard Purdie
Quoted 27 lines · Saul Wold
From: Khem Raj <[email protected]>
This will decouple the compiling in thumb mode from having thumb capable cores.
Signed-off-by Khem Raj <[email protected]>--- .../conf/machine/include/arm/feature-arm-thumb.inc | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)meta/conf/machine/include/arm/feature-arm-thumb.inc +4
-2@@ -4,9 +4,11 @@ # encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size) # but requires more instructions (140% for 70% smaller code) so may be # slower. -TUNEVALID[thumb] = "Use thumb instructions instead of ARM" -ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TUNEVALID[thumb] = "Use thumb instructions instead of ARM if ARM_INSTRUCTION_SET != arm" +ARM_THUMB_M_OPT = "${@['-mthumb', '-mno-thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'arm']}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}" + +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "-mthumb", "-mno-thumb", d)}" OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}"
Quoted 4 lines
meta/conf/machine/include/arm/feature-arm-thumb.inc line 14
Quoted 1 line
meta/conf/machine/include/arm/feature-arm-thumb.inc +0
-0# Note armv7 will hit on armv7a as wellThe original change committed into master in my absence is broken. This patch is just making things even worse and more broken :(
What's the current situation with this? As far as I can tell from the git log, there doesn't appear to have been any significant change in this area since last week: the head of feature-arm-thumb.inc is still at the allegedly-broken commit e23f9ce92.
Does anybody have a summary of what exactly is broken at the moment and what is being done about it?
thanks
p.
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
Quoted 34 lines · Phil Blundell
Quoted 28 lines · Richard Purdie
Quoted 27 lines · Saul Wold
From: Khem Raj <[email protected]>
This will decouple the compiling in thumb mode from having thumb capable cores.
Signed-off-by Khem Raj <[email protected]>--- .../conf/machine/include/arm/feature-arm-thumb.inc | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)meta/conf/machine/include/arm/feature-arm-thumb.inc +4
-2@@ -4,9 +4,11 @@ # encoded RISC sub-set. Thumb code is smaller (maybe 70% of the ARM size) # but requires more instructions (140% for 70% smaller code) so may be # slower. -TUNEVALID[thumb] = "Use thumb instructions instead of ARM" -ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TUNEVALID[thumb] = "Use thumb instructions instead of ARM if ARM_INSTRUCTION_SET != arm" +ARM_THUMB_M_OPT = "${@['-mthumb', '-mno-thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'arm']}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}" + +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "-mthumb", "-mno-thumb", d)}" OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}"Quoted 4 lines
meta/conf/machine/include/arm/feature-arm-thumb.inc line 14
Quoted 1 line
meta/conf/machine/include/arm/feature-arm-thumb.inc +0
-0# Note armv7 will hit on armv7a as wellThe original change committed into master in my absence is broken. This patch is just making things even worse and more broken :(
Quoted 7 lines
What's the current situation with this? As far as I can tell from the git log, there doesn't appear to have been any significant change in this area since last week: the head of feature-arm-thumb.inc is still at the allegedly-broken commit
e23f9ce92.Does anybody have a summary of what exactly is broken at the moment and what is being done about it?
ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}"
Master has the above. This means it can set -mthumb for machines that don't have the thumb feature which seems wrong to me. I suspect it should be:
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "-mno-thumb", d)}"
or if gcc can't cope with that,
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "", d)}"
instead.
Cheers,
Richard
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
Quoted 4 lines · Richard Purdie
ARM_THUMB_M_OPT= "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}"Master has the above. This means it can set -mthumb for machines that don't have the thumb feature which seems wrong to me. I suspect it should be:
Agreed, it does seem as though any bb.utils.contains() where the "true" and "false" arms are identical must be wrong.
Quoted 5 lines
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "-mno-thumb", d)}"or if gcc can't cope with that,
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "", d)}"
I think either of those should be fine.
p.
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
Quoted 6 lines · Phil Blundell
Quoted 5 lines · Richard Purdie
ARM_THUMB_M_OPT= "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}"
Master has the above. This means it can set -mthumb for machines that
don't have the thumb feature which seems wrong to me. I suspect it should be:
Quoted 12 lines
Agreed, it does seem as though any
bb.utils.contains()where the "true" and "false" arms are identical must be wrong.Quoted 7 lines
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "-mno-thumb", d)}"or if gcc can't cope with that,
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "", d)}"I think either of those should be fine.
I prefer the latter since it will have one option less in gcc commandline saving a minute bit of time spent in parsing cmdline.
Quoted 8 lines
p.
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Re: [PATCH 22/22] feature-arm-thumb: Take ARM_INSTRUCTION_SET into account to decide thumb mode
Quoted 16 lines · Khem Raj
Quoted 6 lines · Phil Blundell
Quoted 5 lines · Richard Purdie
ARM_THUMB_M_OPT= "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "${ARM_THUMB_M_OPT}", d)}"
Master has the above. This means it can set -mthumb for machines thatdon't have the thumb feature which seems wrong to me. I suspect it should be:
Quoted 8 lines
Agreed, it does seem as though any
bb.utils.contains()where the "true" and "false" arms are identical must be wrong.Quoted 5 lines
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "-mno-thumb", d)}"or if gcc can't cope with that,
Quoted 7 lines
Quoted 4 lines
Quoted 2 lines
TUNE_CCARGS+= "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "", d)}"I think either of those should be fine.
I prefer the latter since it will have one option less in gcc commandline saving a minute bit of time spent in parsing cmdline.
Since nobody sent me a patch I've just merged a patch to do the latter.
Cheers,
Richard