Skip to contentSkip to conversation

uclibc upgrade, initial kmod and thumb tune

PATCH Applied Khem Raj 11 participants 70 messages Feb 6, 2012 – May 3, 2012

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

v2 cover uclibc upgrade, initial kmod and thumb tune

I have added few more patches on top

Renaming POKY to CORE-IMAGE
Adding yp.org as fallback mirror for oe-core
build fixes needed to get going on ubuntu 12.04

All qemu core-image-sato builds (from scratch) and boots on both eglibc/uclibc with this set

The following changes since commit 18d9fcfc4bc4b01f73e89f3b988c9d3d543c7705:

libzypp: add missing runtime dependences on gzip and gnupg (2012-02-03 17:23:28 +0000)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/misc
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc

Khem Raj (20):
task-core-tools: Divide it into 3 recipes
Enable options needed for ltp to compile
arm/tune: Correct the logic which added thumb-interwork to OVERRIDES tunearch/arm: Differentiate between thumb code generation and thumb
capability
tune-thumb.inc: Delete
uclibc: Get the thumb features from tune flags
kmod: Add recipes
module-init-tools: Delete
image.bbclass,kernel.bbclass: Use kmod-native instead of
module-init-tools-cross
pseudo: Wrap renameat and opendir
uclibc: Upgrade recipes from 0.9.32 -> 0.9.33
zlib: Upgrade 1.2.5 -> 1.2.6
runqemu-internal: qemuarm can handle 256M gconf,consolekit: Avoid polkit when compiling with uclibc
python: Fix build failure of python-elementtree on x86_64
libdrm: Fix build failure unearthed by uclibc classes,recipes: Replace POKY_* with CORE_IMAGE_*
libx11: Backport _XGetRequest API
gcc-cross-testing: Fix evaluation of user and target name mirrors.bbclass: Add yp.org and oe.org to fallback mirrors

 meta/classes/core-image.bbclass                    |    8 +-
 meta/classes/image.bbclass                         |    2 +-
 meta/classes/kernel.bbclass                        |    9 +-
 meta/classes/mirrors.bbclass                       |   21 +-
 .../conf/distro/include/distro_tracking_fields.inc |   26 +-
 meta/conf/distro/include/tcmode-default.inc        |    2 +-
 .../conf/machine/include/arm/feature-arm-thumb.inc |   20 +-
 meta/conf/machine/include/tune-strongarm1100.inc   |    4 +-
 meta/conf/machine/include/tune-thumb.inc           |   32 --
 meta/conf/multilib.conf                            |    4 +-
 meta/recipes-core/images/core-image-minimal.bb     |    2 +-
 meta/recipes-core/images/self-hosted-image.bb      |    2 +-
 meta/recipes-core/tasks/task-core-tools-debug.bb   |   26 ++
 ...sk-core-tools.bb => task-core-tools-profile.bb} |   81 +---
 .../recipes-core/tasks/task-core-tools-testapps.bb |   46 ++
 ...rch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch |   29 --
 ...fd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch |   33 --
 .../uclibc-0.9.32/detect-bx-availibility.patch     |   75 ----
 .../uclibc/uclibc-0.9.32/epoll-asm-fix.patch       |   25 --
 .../uclibc/uclibc-0.9.32/include-arm-asm.h.patch   |   65 ---
 .../uclibc/uclibc-0.9.32/mount.h-update.patch      |   85 ----
 .../uclibc-0.9.32/remove-eabi-oabi-selection.patch |   91 ----
 .../uclibc-0.9.32/remove-sub-arch-variants.patch   |  215 ---------
 .../uclibc/uclibc-0.9.32/rtld_no.patch             |  215 ---------
 .../uclibc/uclibc-0.9.32/select-force-thumb.patch  |  172 --------
 .../uclibc/uclibc-0.9.32/sync_file_range2.patch    |   47 --
 .../uclibc-0.9.32/transform-eabi-oabi-choice.patch |   71 ---
 .../uclibc-0.9.32/uclibc-arm-ftruncate64.patch     |   13 -
 .../uclibc-0.9.32/uclibc_scheduler_update.patch    |  455 --------------------
 ...rr-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch |   32 ++
 ...fstat-Use-64bit-version-of-syscall-if-ava.patch |  177 ++++++++
 .../argp-headers.patch                             |    2 +
 .../argp-support.patch                             |    3 +
 .../compile-arm-fork-with-O2.patch                 |    2 +-
 .../uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch    |   25 ++
 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch  |   37 ++
 ...so_use_arm_dl_linux_resolve_in_thumb_mode.patch |    6 +
 .../libc_symbols_include_bits_uclibc_config.patch  |   19 +
 .../mips/uClibc.machine                            |    0
 .../orign_path.patch                               |   94 ++--
 .../powerpc_copysignl.patch                        |    6 +
 .../remove_attribute_optimize_Os.patch             |   17 +-
 .../{uclibc-0.9.32 => uclibc-0.9.33}/uClibc.distro |    8 +-
 .../uClibc.machine                                 |    0
 .../uclibc-execvpe.patch                           |    3 +
 .../uclibc_enable_log2_test.patch                  |    5 +
 meta/recipes-core/uclibc/uclibc-config.inc         |    4 +-
 meta/recipes-core/uclibc/uclibc-git/uClibc.distro  |    5 +
 ...-initial_0.9.32.bb => uclibc-initial_0.9.33.bb} |    0
 meta/recipes-core/uclibc/uclibc.inc                |    1 -
 .../uclibc/{uclibc_0.9.32.bb => uclibc_0.9.33.bb}  |   26 +-
 meta/recipes-core/zlib/files/Makefile.am           |    9 -
 meta/recipes-core/zlib/files/configure.ac          |   48 --
 .../zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch   |   20 -
 meta/recipes-core/zlib/zlib_1.2.5.bb               |   41 --
 meta/recipes-core/zlib/zlib_1.2.6.bb               |   26 ++
 meta/recipes-devtools/gcc/gcc-cross.inc            |    6 +-
 meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++
 meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227 ++++++++++
 meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-
 .../python/python/host_include_contamination.patch |   27 ++
 meta/recipes-devtools/python/python_2.7.2.bb       |    3 +-
 meta/recipes-extended/images/core-image-basic.bb   |    2 +-
 meta/recipes-extended/images/core-image-lsb-dev.bb |    2 +-
 meta/recipes-extended/images/core-image-lsb-sdk.bb |    2 +-
 meta/recipes-extended/images/core-image-lsb.bb     |    2 +-
 meta/recipes-gnome/gnome/gconf_3.2.3.bb            |    9 +-
 .../drm/libdrm/GNU_SOURCE_definition.patch         |   30 ++
 meta/recipes-graphics/drm/libdrm_2.4.30.bb         |    6 +-
 meta/recipes-graphics/images/core-image-clutter.bb |    2 +-
 .../images/core-image-gtk-directfb.bb              |    2 +-
 ...quest-as-substitute-for-GetReq-GetReqExtr.patch |  137 ++++++
 meta/recipes-graphics/xorg-lib/libx11_1.4.4.bb     |    3 +
 meta/recipes-kernel/kmod/kmod-native_git.bb        |   14 +
 meta/recipes-kernel/kmod/kmod.inc                  |   31 ++
 meta/recipes-kernel/kmod/kmod/depmod-search.conf   |    6 +
 meta/recipes-kernel/kmod/kmod_git.bb               |   62 +++
 .../module-init-tools/files/disable_man.patch      |   25 --
 .../files/grab_module_memset.patch                 |   21 -
 .../files/modutils_extension.patch                 |   25 --
 .../module-init-tools-cross_3.16.bb                |   10 -
 .../module-init-tools/module-init-tools.inc        |   24 -
 .../module-init-tools/module-init-tools_3.16.bb    |   42 --
 .../files/PD.patch                                 |    0
 .../files/modutils.sh                              |    0
 .../modutils-initscripts.bb                        |    0
 meta/recipes-qt/images/qt4e-demo-image.bb          |    2 +-
 .../recipes-support/consolekit/consolekit_0.4.5.bb |   11 +-
 scripts/runqemu-internal                           |   13 +-
 89 files changed, 1257 insertions(+), 2079 deletions(-)
 delete mode 100644 meta/conf/machine/include/tune-thumb.inc
 create mode 100644 meta/recipes-core/tasks/task-core-tools-debug.bb
 rename meta/recipes-core/tasks/{task-core-tools.bb => task-core-tools-profile.bb} (48%)
 create mode 100644 meta/recipes-core/tasks/task-core-tools-testapps.bb
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/argp-headers.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/argp-support.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/compile-arm-fork-with-O2.patch (97%)
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch (86%)
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/mips/uClibc.machine (100%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/orign_path.patch (64%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/powerpc_copysignl.patch (96%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/remove_attribute_optimize_Os.patch (93%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uClibc.distro (96%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uClibc.machine (100%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uclibc-execvpe.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uclibc_enable_log2_test.patch (81%)
 rename meta/recipes-core/uclibc/{uclibc-initial_0.9.32.bb => uclibc-initial_0.9.33.bb} (100%)
 rename meta/recipes-core/uclibc/{uclibc_0.9.32.bb => uclibc_0.9.33.bb} (45%)
 delete mode 100644 meta/recipes-core/zlib/files/Makefile.am
 delete mode 100644 meta/recipes-core/zlib/files/configure.ac
 delete mode 100644 meta/recipes-core/zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch
 delete mode 100644 meta/recipes-core/zlib/zlib_1.2.5.bb
 create mode 100644 meta/recipes-core/zlib/zlib_1.2.6.bb
 create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch
 create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch
 create mode 100644 meta/recipes-devtools/python/python/host_include_contamination.patch
 create mode 100644 meta/recipes-graphics/drm/libdrm/GNU_SOURCE_definition.patch
 create mode 100644 meta/recipes-graphics/xorg-lib/libx11-1.4.4/0001-Add-_XGetRequest-as-substitute-for-GetReq-GetReqExtr.patch
 create mode 100644 meta/recipes-kernel/kmod/kmod-native_git.bb
 create mode 100644 meta/recipes-kernel/kmod/kmod.inc
 create mode 100644 meta/recipes-kernel/kmod/kmod/depmod-search.conf
 create mode 100644 meta/recipes-kernel/kmod/kmod_git.bb
 delete mode 100644 meta/recipes-kernel/module-init-tools/files/disable_man.patch
 delete mode 100644 meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch
 delete mode 100644 meta/recipes-kernel/module-init-tools/files/modutils_extension.patch
 delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools-cross_3.16.bb
 delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools.inc
 delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools_3.16.bb
 rename meta/recipes-kernel/{module-init-tools => modutils-initscripts}/files/PD.patch (100%)
 rename meta/recipes-kernel/{module-init-tools => modutils-initscripts}/files/modutils.sh (100%)
 rename meta/recipes-kernel/{module-init-tools => modutils-initscripts}/modutils-initscripts.bb (100%)
Signature · 1 line
1.7.5.4
author
#1 lore raw

PATCH v2 1/20 task-core-tools: Divide it into 3 recipes

task-core-tools-debug, task-core-tools-profile, task-core-tools-testapps otherwise if we choose one through PACKAGE_GROUPS all packages are built since they are in same recipe.

---
 .../conf/distro/include/distro_tracking_fields.inc |   26 +++++--
 meta/conf/multilib.conf                            |    4 +-
 meta/recipes-core/tasks/task-core-tools-debug.bb   |   26 ++++++
 ...sk-core-tools.bb => task-core-tools-profile.bb} |   81 ++++++--------------
 .../recipes-core/tasks/task-core-tools-testapps.bb |   46 +++++++++++
 5 files changed, 119 insertions(+), 64 deletions(-)
 create mode 100644 meta/recipes-core/tasks/task-core-tools-debug.bb
 rename meta/recipes-core/tasks/{task-core-tools.bb => task-core-tools-profile.bb} (48%)
 create mode 100644 meta/recipes-core/tasks/task-core-tools-testapps.bb
meta/conf/distro/include/distro_tracking_fields.inc +20 -6
index 42f7e65..09b5bfc 100644
@@ -2467,12 +2467,26 @@ RECIPE_LATEST_RELEASE_DATE_pn-task-core-nfs="n/a"
 RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-nfs="n/a"
 RECIPE_MAINTAINER_pn-task-core-nfs = "Dongxiao Xu <[email protected]>"
 
-RECIPE_STATUS_pn-task-core-tools="green"
-RECIPE_LATEST_VERSION_pn-task-core-tools="1.0"
-RECIPE_NO_OF_PATCHES_pn-task-core-tools="0"
-RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools="n/a"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools="n/a"
-RECIPE_MAINTAINER_pn-task-core-tools = "Dongxiao Xu <[email protected]>"
+RECIPE_STATUS_pn-task-core-tools-debug="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-debug="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-debug="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-debug="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-debug="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-profile = "Dongxiao Xu <[email protected]>"
+
+RECIPE_STATUS_pn-task-core-tools-profile="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-profile="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-profile="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-profile="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-profile="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-profile = "Dongxiao Xu <[email protected]>"
+
+RECIPE_STATUS_pn-task-core-tools-testapps="green"
+RECIPE_LATEST_VERSION_pn-task-core-tools-testapps="1.0"
+RECIPE_NO_OF_PATCHES_pn-task-core-tools-testapps="0"
+RECIPE_LATEST_RELEASE_DATE_pn-task-core-tools-testapps="n/a"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-task-core-tools-testapps="n/a"
+RECIPE_MAINTAINER_pn-task-core-tools-testapps = "Dongxiao Xu <[email protected]>"
 
 RECIPE_STATUS_pn-gst-meta-base="green"
 DISTRO_PN_ALIAS_pn-gst-meta-base = "Meego=gstreamer Fedora=gstreamer OpenSuSE=gstreamer Ubuntu=gstreamer0.10 Mandriva=gstreamer0.10 Debian=gstreamer0.10"
meta/conf/multilib.conf +3 -1
index 9554519..d366fd3 100644
@@ -393,7 +393,9 @@ BBCLASSEXTEND_append_pn-task-core-lsb = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-nfs = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-ssh-dropbear = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-ssh-openssh = " ${MULTILIBS}"
-BBCLASSEXTEND_append_pn-task-core-tools = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-debug = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-profile = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-tools-testapps = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-x11 = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-task-core-x11-sato = " ${MULTILIBS}"
 BBCLASSEXTEND_append_pn-tasks = " ${MULTILIBS}"
meta/recipes-core/tasks/task-core-tools-debug.bb new file +26 -0
new file mode 100644
index 0000000..3c92f3f
@@ -0,0 +1,26 @@
+#
+# Copyright (C) 2008 OpenedHand Ltd.
+#
+
+DESCRIPTION = "Debug tools tasks for OE-Core"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+PACKAGES = "\
+    ${PN} \
+    ${PN}-dbg \
+    ${PN}-dev \
+    "
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+ALLOW_EMPTY = "1"
+
+RDEPENDS_${PN} = "\
+    gdb \
+    gdbserver \
+    tcf-agent \
+    rsync \
+    strace \
+    "
meta/recipes-core/tasks/task-core-tools-profile.bb renamed from meta/recipes-core/tasks/task-core-tools.bb +24 -57

115 lines not on this page · raw message

meta/recipes-core/tasks/task-core-tools-testapps.bb new file +46 -0

46 lines not on this page · raw message

Signature · 1 line
1.7.5.4
author
#2 lore raw

PATCH v2 2/20 Enable options needed for ltp to compile

---
 meta/recipes-core/uclibc/uclibc-git/uClibc.distro |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
meta/recipes-core/uclibc/uclibc-git/uClibc.distro +5 -0
index 3948d1a..c33bf8e 100644
@@ -183,3 +183,8 @@ UCLIBC_HAS_FLOATS=y
 UCLIBC_HAS_UTMPX=y
 UCLIBC_LINUX_MODULE_26=y
 UCLIBC_HAS_RESOLVER_SUPPORT=y
+# needed for LTP
+UCLIBC_SUSV4_LEGACY=y
+UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y
+DO_XSI_MATH=y
+UCLIBC_SV4_DEPRECATED=y
Signature · 1 line
1.7.5.4
author
#3 lore raw

PATCH v2 3/20 arm/tune: Correct the logic which added thumb-interwork to OVERRIDES

In reply to Khem Raj

Add no-thumb-interwork to TUNE_FEATURES for angstrom

---
 .../conf/machine/include/arm/feature-arm-thumb.inc |    2 +-
 meta/conf/machine/include/tune-strongarm1100.inc   |    4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)
meta/conf/machine/include/arm/feature-arm-thumb.inc +1 -1
index b7d6061..da29102 100644
@@ -21,6 +21,6 @@ ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv7", "thumb" ],
 # turn this off - the actual cost is very small.
 TUNEVALID[no-thumb-interwork] = "Disable mixing of thumb and ARM functions"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "-mno-thumb-interwork", "-mthumb-interwork", d)}"
-OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", ":thumb-interwork", "", d)}"
+OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "", ":thumb-interwork", d)}"
 
 TARGET_CC_KERNEL_ARCH += "-mno-thumb-interwork -marm"
meta/conf/machine/include/tune-strongarm1100.inc +1 -3
index 66bab8e..8bd5be7 100644
@@ -6,7 +6,5 @@ TUNEVALID[strongarm] = "Enable Strongarm 1100 series processor optimizations"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "strongarm", "-mtune=strongarm1100", "", d)}"
 
 AVAILTUNES += "strongarm"
-TUNE_FEATURES_tune-strongarm = "${TUNE_FEATURES_tune-armv4} strongarm"
+TUNE_FEATURES_tune-strongarm = "${TUNE_FEATURES_tune-armv4} strongarm no-thumb-interwork"
 PACKAGE_EXTRA_ARCHS_tune-strongarm = "${PACKAGE_EXTRA_ARCHS_tune-armv4}"
-
-
Signature · 1 line
1.7.5.4
author
#4 lore raw

PATCH v2 4/20 tunearch/arm: Differentiate between thumb code generation and thumb capability

In reply to Khem Raj

We have diverged a bit from oe.dev where thumb in OVERRIDES meant the code was being compiled in thumb mode. With tunearch this got a different meaning where it meant that if a core is capable of generating thumb code them we will have this in overrides. With this patch I am trying to address the problem where 'thumbmode' in TUNE_FEATURES means that code will be compiled in thumb mode by default and 'thumb' is to denote that core is capable of thumb instruction set.

---
 .../conf/machine/include/arm/feature-arm-thumb.inc |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)
meta/conf/machine/include/arm/feature-arm-thumb.inc +14 -4
index da29102..68a8e73 100644
@@ -4,10 +4,19 @@
 # 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 = "${@['-marm', '-mthumb'][d.getVar('ARM_INSTRUCTION_SET', 1) == 'thumb']}"
-TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "thumb", "${ARM_THUMB_M_OPT}", "", d)}"
-OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}"
+
+# 'thumbmode' in TUNE_FEATURES means default ISA for code generation is thumb
+# 'thumb' in TUNE_FEATURES means the core supports thumb ISA but code
+# generation can happen in arm or thumb
+# having 'thumbmode' would imply 'thumb' naturally
+
+TUNEVALID[thumbmode] = "Use THUMB instruction set instead of ARM"
+ARM_INSTRUCTION_SET ?= "arm"
+AVAILTUNES += "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", "thumbmode", "", d)}"
+TUNE_CCARGS += "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", "-mthumb", "-marm", d)}"
+OVERRIDES .= "${@bb.utils.contains("ARM_INSTRUCTION_SET", "thumb", ":thumb", "", d)}"
+
+TUNEVALID[thumb] = "THUMB instruction set capable ARM core"
 
 # Note armv7 will hit on armv7a as well
 ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv4", "thumb" ], "t", "", d)}"
@@ -20,6 +29,7 @@ ARMPKGSFX_THUMB .= "${@bb.utils.contains("TUNE_FEATURES", [ "armv7", "thumb" ],
 # arm system and vice versa. It is strongly recommended that DISTROs not
 # turn this off - the actual cost is very small.
 TUNEVALID[no-thumb-interwork] = "Disable mixing of thumb and ARM functions"
+AVAILTUNES += "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "no-thumb-interwork", "thumb-interwork", d)}"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "-mno-thumb-interwork", "-mthumb-interwork", d)}"
 OVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", "", ":thumb-interwork", d)}"
 
Signature · 1 line
1.7.5.4
author
#5 lore raw

PATCH v2 5/20 tune-thumb.inc: Delete

In reply to Khem Raj

The same functionality is provided by
machine/include/arm/feature-arm-thumb.inc
Setting ARM_INSTRUCTION_SET = "thumb"
in distro configs should be enough

---
 meta/conf/machine/include/tune-thumb.inc |   32 ------------------------------
 1 files changed, 0 insertions(+), 32 deletions(-)
 delete mode 100644 meta/conf/machine/include/tune-thumb.inc
meta/conf/machine/include/tune-thumb.inc deleted +0 -32
deleted file mode 100644
index 214e3b6..0000000
@@ -1,32 +0,0 @@
-#tune file for thumb instructions
-
-ARM_INSTRUCTION_SET ?= "arm"
-# "arm" "thumb"
-#    The instruction set the compiler should use when generating application
-#    code.  The kernel is always compiled with arm code at present.  arm code
-#    is the original 32 bit ARM instruction set, thumb code is the 16 bit
-#    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.
-
-THUMB_INTERWORK ?= "yes"
-# "yes" "no"
-#    Whether to compile with code to allow interworking between the two
-#    instruction sets.  This allows thumb code to be executed on a primarily
-#    arm system and vice versa.  It is strongly recommended that DISTROs not
-#    turn this off - the actual cost is very small.
-
-OVERRIDE_THUMB = "${@['', ':thumb'][d.getVar('ARM_INSTRUCTION_SET', 1) == 'thumb']}"
-OVERRIDE_INTERWORK = "${@['', ':thumb-interwork'][d.getVar('THUMB_INTERWORK', 1) == 'yes']}"
-OVERRIDES .= "${OVERRIDE_THUMB}${OVERRIDE_INTERWORK}"
-
-#    Compiler and linker options for application code and kernel code.  These
-#    options ensure that the compiler has the correct settings for the selected
-#    instruction set and interworking.
-ARM_INTERWORK_M_OPT = "${@['-mno-thumb-interwork', '-mthumb-interwork'][d.getVar('THUMB_INTERWORK', 1) == 'yes']}"
-ARM_THUMB_M_OPT = "${@['-marm', '-mthumb'][d.getVar('ARM_INSTRUCTION_SET', 1) == 'thumb']}"
-
-#
-TUNE_CCARGS +=  "${ARM_INTERWORK_M_OPT} ${ARM_THUMB_M_OPT}"
-TARGET_CC_KERNEL_ARCH  += "-mno-thumb-interwork -marm"
-
Signature · 1 line
1.7.5.4
author
#6 lore raw

PATCH v2 6/20 uclibc: Get the thumb features from tune flags

In reply to Khem Raj
---
 meta/recipes-core/uclibc/uclibc-config.inc |    4 +++-
 meta/recipes-core/uclibc/uclibc.inc        |    1 -
 2 files changed, 3 insertions(+), 2 deletions(-)
meta/recipes-core/uclibc/uclibc-config.inc +3 -1
index 8bb0948..f32e6ee 100644
@@ -95,15 +95,17 @@ def uclibc_cfg(feature, features, tokens, cnf, rem):
 def features_to_uclibc_settings(d):
 	cnf, rem = ([], [])
 	distro_features = d.getVar('DISTRO_FEATURES', True).split()
+	tune_features = d.getVar('AVAILTUNES', True).split()
 	uclibc_cfg('ipv4',      distro_features, 'UCLIBC_HAS_IPV4', cnf, rem)
 	uclibc_cfg('ipv6',      distro_features, 'UCLIBC_HAS_IPV6', cnf, rem)
 	uclibc_cfg('largefile', distro_features, 'UCLIBC_HAS_LFS', cnf, rem)
 	uclibc_cfg('nls',       distro_features, 'UCLIBC_HAS_LOCALE', cnf, rem)
-	uclibc_cfg('thumb-interwork', distro_features,'USE_BX', cnf, rem)
 	uclibc_cfg('xattr',     distro_features, 'UCLIBC_HAS_XATTR', cnf, rem)
 	uclibc_cfg('ssp',       distro_features, 'UCLIBC_HAS_SSP', cnf, rem)
 	uclibc_cfg('argp',       distro_features, 'UCLIBC_HAS_ARGP', cnf, rem)
 	uclibc_cfg('libc-posix-clang-wchar',  distro_features,'UCLIBC_HAS_WCHAR', cnf, rem)
+	uclibc_cfg('thumbmode', tune_features,'COMPILE_IN_THUMB_MODE', cnf, rem)
+	uclibc_cfg('thumb-interwork', tune_features,'USE_BX', cnf, rem)
 	return "\n".join(cnf), "\n".join(rem)
 # X, Y = ${@features_to_uclibc_settings(d)}
 # unfortunately doesn't seem to work with bitbake, workaround:
meta/recipes-core/uclibc/uclibc.inc +0 -1
index 5e9e2e9..b797d3f 100644
@@ -124,7 +124,6 @@ configmangle = '/^KERNEL_HEADERS/d; \
                 /^SHARED_LIB_LOADER_PREFIX/d; \
                 /^UCLIBC_EXTRA_CFLAGS/d; \
                 s,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g; \
-                ${@["","s,.*COMPILE_IN_THUMB_MODE.*,COMPILE_IN_THUMB_MODE=y,;"][d.getVar("ARM_INSTRUCTION_SET", 1) != "arm"]} \
                 ${@["","s,.*UCLIBC_HAS_LOCALE.*,UCLIBC_HAS_LOCALE=y,;"][d.getVar("USE_NLS", 1) == "yes"]} \
                 ${@["","s,.*LDSO_GNU_HASH_SUPPORT.*,# LDSO_GNU_HASH_SUPPORT is not set,;"][d.getVar("TARGET_ARCH", 1) in ['mips', 'mipsel', 'mips64', 'mips64el', 'avr32']]} \
                 /^CROSS/d; \
Signature · 1 line
1.7.5.4
author
#7 lore raw

PATCH v2 7/20 kmod: Add recipes

In reply to Khem Raj

kmod is replacement for module-init-tools

---
 meta/recipes-kernel/kmod/kmod-native_git.bb      |   14 +++++
 meta/recipes-kernel/kmod/kmod.inc                |   31 +++++++++++
 meta/recipes-kernel/kmod/kmod/depmod-search.conf |    6 ++
 meta/recipes-kernel/kmod/kmod_git.bb             |   62 ++++++++++++++++++++++
 4 files changed, 113 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-kernel/kmod/kmod-native_git.bb
 create mode 100644 meta/recipes-kernel/kmod/kmod.inc
 create mode 100644 meta/recipes-kernel/kmod/kmod/depmod-search.conf
 create mode 100644 meta/recipes-kernel/kmod/kmod_git.bb
meta/recipes-kernel/kmod/kmod-native_git.bb new file +14 -0
new file mode 100644
index 0000000..96de8b8
@@ -0,0 +1,14 @@
+# Copyright (C) 2012 Khem Raj <[email protected]>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require kmod.inc
+inherit native
+
+PR = "${INC_PR}.0"
+
+do_install_append (){
+	for tool in depmod insmod lsmod modinfo modprobe rmmod
+	do
+		ln -s kmod ${D}${bindir}/$tool
+	done
+}
meta/recipes-kernel/kmod/kmod.inc new file +31 -0
new file mode 100644
index 0000000..ea0247e
@@ -0,0 +1,31 @@
+# Copyright (C) 2012 Khem Raj <[email protected]>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "kmod is a set of tools to handle common tasks with Linux kernel modules like \
+insert, remove, list, check properties, resolve dependencies and aliases."
+HOMEPAGE = "http://packages.profusion.mobi/kmod/"
+LICENSE = "GPL-2.0+ & LGPL-2.1+"
+LICENSE_libkmod = "LGPL-2.1+"
+SECTION = "base"
+PV = "4+gitr${SRCREV}"
+INC_PR = "r0"
+DEPENDS += "gnome-doc-utils-native"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
+                    file://libkmod/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+                   "
+inherit autotools
+
+SRC_URI = "git://git.profusion.mobi/kmod.git;protocol=git;branch=master \
+           file://depmod-search.conf \
+          "
+
+SRCREV = "a2c7d3e8b058a2013aa8da5986d1d11fa13d6fd7"
+
+S = "${WORKDIR}/git"
+
+EXTRA_AUTORECONF += "--install --symlink"
+EXTRA_OECONF +="--enable-debug --enable-logging --enable-tools"
+
+do_configure_prepend () {
+        gtkdocize --docdir ${S}/libkmod/docs || touch ${S}/libkmod/docs/gtk-doc.make
+}
meta/recipes-kernel/kmod/kmod/depmod-search.conf new file +6 -0
new file mode 100644
index 0000000..527c0bb
@@ -0,0 +1,6 @@
+#
+# /etc/depmod.d/depmod.conf
+#
+
+search updates extramodules built-in
+
meta/recipes-kernel/kmod/kmod_git.bb new file +62 -0

62 lines not on this page · raw message

Signature · 1 line
1.7.5.4
Reviewed-by on v2 7/20
#8 lore raw

Re: [PATCH 07/20] kmod: Add recipes

Quoted 23 lines · Khem Raj

kmod is replacement for module-init-tools

---
 meta/recipes-kernel/kmod/kmod-native_git.bb      |   14 +++++
 meta/recipes-kernel/kmod/kmod.inc                |   31 +++++++++++
 meta/recipes-kernel/kmod/kmod/depmod-search.conf |    6 ++
 meta/recipes-kernel/kmod/kmod_git.bb             |   62 ++++++++++++++++++++++
 4 files changed, 113 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-kernel/kmod/kmod-native_git.bb
 create mode 100644 meta/recipes-kernel/kmod/kmod.inc
 create mode 100644 meta/recipes-kernel/kmod/kmod/depmod-search.conf
 create mode 100644 meta/recipes-kernel/kmod/kmod_git.bb
meta/recipes-kernel/kmod/kmod-native_git.bb new file +3 -0
new file mode 100644
index 0000000..96de8b8
@@ -0,0 +1,14 @@
+# Copyright (C) 2012 Khem Raj <[email protected]>
+# Released under the MIT license (see COPYING.MIT for the terms)
+

meta/recipes-kernel/kmod/kmod-native_git.bb line 13

Quoted 10 lines
meta/recipes-kernel/kmod/kmod-native_git.bb new file +10 -0
+require kmod.inc
+inherit native
+
+PR = "${INC_PR}.0"
+
+do_install_append (){
+	for tool in depmod insmod lsmod modinfo modprobe rmmod
+	do
+		ln -s kmod ${D}${bindir}/$tool
+	done

Do we have to ensure to disable module tools in busybox to avoid conflict here?

I had a few other questions, but managed to resolve them by the time I finished reading. It looks good with only the one concern above.

Quoted 118 lines
meta/recipes-kernel/kmod/kmod-native_git.bb new file +1 -0
+}
meta/recipes-kernel/kmod/kmod.inc new file +31 -0
new file mode 100644
index 0000000..ea0247e
@@ -0,0 +1,31 @@
+# Copyright (C) 2012 Khem Raj <[email protected]>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "kmod is a set of tools to handle common tasks with Linux kernel modules like \
+insert, remove, list, check properties, resolve dependencies and aliases."
+HOMEPAGE = "http://packages.profusion.mobi/kmod/"
+LICENSE = "GPL-2.0+ & LGPL-2.1+"
+LICENSE_libkmod = "LGPL-2.1+"
+SECTION = "base"
+PV = "4+gitr${SRCREV}"
+INC_PR = "r0"
+DEPENDS += "gnome-doc-utils-native"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
+                    file://libkmod/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+                   "
+inherit autotools
+
+SRC_URI = "git://git.profusion.mobi/kmod.git;protocol=git;branch=master \
+           file://depmod-search.conf \
+          "
+
+SRCREV = "a2c7d3e8b058a2013aa8da5986d1d11fa13d6fd7"
+
+S = "${WORKDIR}/git"
+
+EXTRA_AUTORECONF += "--install --symlink"
+EXTRA_OECONF +="--enable-debug --enable-logging --enable-tools"
+
+do_configure_prepend () {
+        gtkdocize --docdir ${S}/libkmod/docs || touch ${S}/libkmod/docs/gtk-doc.make
+}
meta/recipes-kernel/kmod/kmod/depmod-search.conf new file +6 -0
new file mode 100644
index 0000000..527c0bb
@@ -0,0 +1,6 @@
+#
+# /etc/depmod.d/depmod.conf
+#
+
+search updates extramodules built-in
+
meta/recipes-kernel/kmod/kmod_git.bb new file +62 -0
new file mode 100644
index 0000000..eaab47b
@@ -0,0 +1,62 @@
+# Copyright (C) 2012 Khem Raj <[email protected]>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require kmod.inc
+
+PR = "${INC_PR}.0"
+
+PROVIDES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+RPROVIDES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+CONFLICTS_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+
+# autotools set prefix to /usr, however we want them in /bin and /sbin
+bindir = "${base_bindir}"
+sbindir = "${base_sbindir}"
+libdir = "${base_libdir}"
+
+SRC_URI += " \
+            file://depmod-search.conf \
+           "
+
+do_install_append () {
+        install -dm755 ${D}${base_bindir}
+        install -dm755 ${D}${base_sbindir}
+        # add symlinks to kmod
+        ln -s ..${base_bindir}/kmod ${D}${base_bindir}/lsmod.kmod
+        for tool in {ins,rm,dep}mod mod{info,probe}; do
+                ln -s ..${base_bindir}/kmod ${D}${base_sbindir}/${tool}.kmod
+        done
+        # configuration directories
+        install -dm755 ${D}${base_libdir}/depmod.d
+        install -dm755 ${D}${base_libdir}/modprobe.d
+        install -dm755 ${D}${sysconfdir}/depmod.d
+        install -dm755 ${D}${sysconfdir}/modprobe.d
+
+        # install depmod.d file for search/ dir
+        install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${base_libdir}/depmod.d/search.conf"
+}
+
+pkg_postinst_kmod() {
+        for f in sbin/insmod sbin/modprobe sbin/rmmod sbin/modinfo; do
+                bn=`basename $f`
+                update-alternatives --install /$f $bn /$f.kmod 60
+        done
+        update-alternatives --install /bin/lsmod bin-lsmod /bin/lsmod.kmod 60
+        update-alternatives --install /sbin/lsmod lsmod /bin/lsmod.kmod 60
+        update-alternatives --install /sbin/depmod depmod /sbin/depmod.kmod 60
+}
+
+pkg_prerm_kmod() {
+        for f in sbin/insmod sbin/modprobe sbin/rmmod sbin/modinfo; do
+                bn=`basename $f`
+                update-alternatives --remove $bn /$f.kmod
+        done
+        update-alternatives --remove bin-lsmod /bin/lsmod.kmod
+        update-alternatives --remove lsmod /bin/lsmod.kmod
+        update-alternatives --remove depmod /sbin/depmod.kmod
+}
+
+PACKAGES =+ "libkmod"
+
+FILES_libkmod = "${base_libdir}/libkmod*${SOLIBS}"
+FILES_${PN} += "${base_libdir}/depmod.d ${base_libdir}/modprobe.d"
Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
author
#9 lore raw

Re: [PATCH 07/20] kmod: Add recipes

Quoted 31 lines · Darren Hart
Quoted 28 lines · Khem Raj

kmod is replacement for module-init-tools

---
 meta/recipes-kernel/kmod/kmod-native_git.bb      |   14 +++++ meta/recipes-kernel/kmod/kmod.inc                |   31 +++++++++++ meta/recipes-kernel/kmod/kmod/depmod-search.conf |    6 ++ meta/recipes-kernel/kmod/kmod_git.bb             |   62 ++++++++++++++++++++++

 4 files changed, 113 insertions(+), 0 deletions(-)

 create mode 100644 meta/recipes-kernel/kmod/kmod-native_git.bb create mode 100644 meta/recipes-kernel/kmod/kmod.inc create mode 100644 meta/recipes-kernel/kmod/kmod/depmod-search.conf create mode 100644 meta/recipes-kernel/kmod/kmod_git.bb

meta/recipes-kernel/kmod/kmod-native_git.bb new file +8 -0
new file mode 100644
index 0000000..96de8b8
@@ -0,0 +1,14 @@
+# Copyright (C) 2012 Khem Raj <[email protected]>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require kmod.inc
+inherit native
+
+PR = "${INC_PR}.0"
+
Quoted 9 lines

meta/recipes-kernel/kmod/kmod-native_git.bb line 13

Quoted 5 lines
meta/recipes-kernel/kmod/kmod-native_git.bb new file +5 -0
+do_install_append (){
+     for tool in depmod insmod lsmod modinfo modprobe rmmod
+     do
+             ln -s kmod ${D}${bindir}/$tool
+     done

Do we have to ensure to disable module tools in busybox to avoid conflict here?

hmm I guess this could be made as a virtual choice. It was not there so I did not do it.

Quoted 2 lines

I had a few other questions, but managed to resolve them by the time I finished reading. It looks good with only the one concern above.

author
#10 lore raw

PATCH v2 8/20 module-init-tools: Delete

In reply to Khem Raj

Since its provided by kmod

---
 .../module-init-tools/files/disable_man.patch      |   25 ------------
 .../files/grab_module_memset.patch                 |   21 ----------
 .../files/modutils_extension.patch                 |   25 ------------
 .../module-init-tools-cross_3.16.bb                |   10 -----
 .../module-init-tools/module-init-tools.inc        |   24 -----------
 .../module-init-tools/module-init-tools_3.16.bb    |   42 --------------------
 .../files/PD.patch                                 |    0
 .../files/modutils.sh                              |    0
 .../modutils-initscripts.bb                        |    0
 9 files changed, 0 insertions(+), 147 deletions(-)
 delete mode 100644 meta/recipes-kernel/module-init-tools/files/disable_man.patch
 delete mode 100644 meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch
 delete mode 100644 meta/recipes-kernel/module-init-tools/files/modutils_extension.patch
 delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools-cross_3.16.bb
 delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools.inc
 delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools_3.16.bb
 rename meta/recipes-kernel/{module-init-tools => modutils-initscripts}/files/PD.patch (100%)
 rename meta/recipes-kernel/{module-init-tools => modutils-initscripts}/files/modutils.sh (100%)
 rename meta/recipes-kernel/{module-init-tools => modutils-initscripts}/modutils-initscripts.bb (100%)
meta/recipes-kernel/module-init-tools/files/disable_man.patch deleted +0 -25
deleted file mode 100644
index 95ad9cf..0000000
@@ -1,25 +0,0 @@
-# disable man page build
-#
-# by Kevin Tian <[email protected]>, 2010-07-21
-
-Upstream-Status: Inappropriate [disable feature]
-
-diff --git a/Makefile.am b/Makefile.am
-index 6f83c12..32972a8 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -39,13 +39,12 @@ modindex_LDADD = $(LDADD) libmodtools.a
- MAN5 = modprobe.conf.5 modules.dep.5 depmod.conf.5 modprobe.d.5
- MAN8 = depmod.8 insmod.8 lsmod.8 rmmod.8 modprobe.8 modinfo.8
- SGML = $(addprefix doc/,  $(MAN5:%.5=%.sgml) $(MAN8:%.8=%.sgml))
--dist_man_MANS = $(MAN5) $(MAN8)
- # If they haven't overridden mandir, fix it (never /man!)
- mandir =$(shell if [ @mandir@ = $(prefix)/man ]; then if [ $(prefix) = / ]; then echo /usr/share/man; else echo $(prefix)/share/man; fi; else echo @mandir@; fi)
- 
- TESTSUITE := $(shell test -e @srcdir@/tests && find @srcdir@/tests -type f ! -name '*~')
- 
--EXTRA_DIST = generate-modprobe.conf FAQ CODING stress_modules.sh install-with-care $(SGML) $(man_MANS) $(TESTSUITE)
-+EXTRA_DIST = generate-modprobe.conf FAQ CODING stress_modules.sh install-with-care
- 
- sbin_PROGRAMS = insmod modprobe rmmod depmod modinfo
- if BUILD_STATIC_UTILS
meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch deleted +0 -21
deleted file mode 100644
index 31dc0e9..0000000
@@ -1,21 +0,0 @@
-# this patch is from Mark Hatle <[email protected]>, who  ran into 
-# a random segfault using the latest module-init-tools (3.12) and finally
-# trace back to depmod.c:grab_module, which appears that the new malloc(...) 
-# setups up things, but never clears the memory that was just allocated.
-#
-# Kevin Tian <[email protected]>, 2010-08-06
-
-Upstream-Status: Pending
-
-diff --git a/depmod.c b/depmod.c
-index 647e5e6..46e03e0 100644
---- a/depmod.c
-+++ b/depmod.c
-@@ -313,6 +313,7 @@ static struct module *grab_module(const char *dirname, const char *filename)
- 
- 	new = NOFAIL(malloc(sizeof(*new)
- 			    + strlen(dirname?:"") + 1 + strlen(filename) + 1));
-+	memset(new, 0x00, sizeof(*new) + strlen(dirname?:"") + 1 + strlen(filename) + 1);
- 	if (dirname)
- 		sprintf(new->pathname, "%s/%s", dirname, filename);
- 	else
meta/recipes-kernel/module-init-tools/files/modutils_extension.patch deleted +0 -25
deleted file mode 100644
index 4a6e0fe..0000000
@@ -1,25 +0,0 @@
-# poky uses new name to differentiate from modutils, so reflect this new name in source
-#
-# comment added by Kevin Tian <[email protected]>, 2010-07-21
-
-Upstream-Status: Inappropriate [embedded specific]
-
---- module-init-tools-3.0-pre10.orig/generate-modprobe.conf
-+++ module-init-tools-3.0-pre10/generate-modprobe.conf
-@@ -45,12 +45,12 @@
-     cp $TESTING_MODPROBE_CONF $MODPROBECONF
- elif [ "$STDIN" = "1" ]; then
-     cat > $MODPROBECONF
--elif [ -x /sbin/modprobe.old ]; then
-+elif [ -x /sbin/modprobe.24 ]; then
-     # In sbin.
--    /sbin/modprobe.old -c > $MODPROBECONF || modprobe_abort
--elif modprobe.old -c >/dev/null 2>&1; then
-+    /sbin/modprobe.24 -c > $MODPROBECONF || modprobe_abort
-+elif modprobe.24 -c >/dev/null 2>&1; then
-     # Somewhere in path.
--    modprobe.old -c > $MODPROBECONF || modprobe_abort
-+    modprobe.24 -c > $MODPROBECONF || modprobe_abort
- elif /sbin/modprobe -V 2>/dev/null | grep -q 'modprobe version'; then
-     # Running /sbin/modprobe gives old version.
-     /sbin/modprobe -c > $MODPROBECONF || modprobe_abort
meta/recipes-kernel/module-init-tools/module-init-tools-cross_3.16.bb deleted +0 -10
deleted file mode 100644
index dee163d..0000000
@@ -1,10 +0,0 @@
-require module-init-tools.inc
-PR = "r0"
-inherit cross
-PROVIDES += "virtual/${TARGET_PREFIX}depmod"
-RDEPENDS_${PN} = ""
-
-SRC_URI[md5sum] = "bc44832c6e41707b8447e2847d2019f5"
-SRC_URI[sha256sum] = "e1f2cdcae64a8effc25e545a5e0bdaf312f816ebbcd0916e4e87450755fab64b"
-
-EXTRA_OECONF_append = " --program-prefix=${TARGET_PREFIX} --disable-static-utils"
meta/recipes-kernel/module-init-tools/module-init-tools.inc deleted +0 -24
deleted file mode 100644
index c290c4f..0000000
@@ -1,24 +0,0 @@
-SUMMARY = "Kernel Module Utilities"
-DESCRIPTION = "This package contains a set of programs for loading, inserting, and removing kernel modules for Linux (versions 2.5.48 and above). It serves the same function that the modutils package serves for Linux 2.4"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
-                    file://lsmod.c;md5=743c873ec42632d2ce37d3c440f366dd"
-SECTION = "base"
-
-PACKAGES =+ "module-init-tools-insmod-static module-init-tools-depmod"
-RDEPENDS_${PN} += "module-init-tools-depmod"
-
-FILES_module-init-tools-depmod = "${sbindir}/depmod.26"
-FILES_module-init-tools-insmod-static = "${sbindir}/insmod.static"
-
-SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/module-init-tools/module-init-tools-${PV}.tar.bz2 \
-           file://modutils_extension.patch \
-           file://disable_man.patch \
-           file://grab_module_memset.patch"
-
-inherit autotools
-
-# module-init-tools uses AX_ENABLE_BUILDDIR to move rest of configuration steps
-# into a subdir. However this macro is not quite cross friendly. Instead of 
-# mangling that macro, a easier way is to take the disable option
-EXTRA_OECONF = "--disable-builddir"
meta/recipes-kernel/module-init-tools/module-init-tools_3.16.bb deleted +0 -42

42 lines not on this page · raw message

meta/recipes-kernel/modutils-initscripts/files/PD.patch renamed from meta/recipes-kernel/module-init-tools/files/PD.patch +0 -0
similarity index 100%
rename from meta/recipes-kernel/module-init-tools/files/PD.patch
rename to meta/recipes-kernel/modutils-initscripts/files/PD.patch
meta/recipes-kernel/modutils-initscripts/files/modutils.sh renamed from meta/recipes-kernel/module-init-tools/files/modutils.sh +0 -0
similarity index 100%
rename from meta/recipes-kernel/module-init-tools/files/modutils.sh
rename to meta/recipes-kernel/modutils-initscripts/files/modutils.sh
meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb renamed from meta/recipes-kernel/module-init-tools/modutils-initscripts.bb +0 -0
similarity index 100%
rename from meta/recipes-kernel/module-init-tools/modutils-initscripts.bb
rename to meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
Signature · 1 line
1.7.5.4
#11 lore raw

Re: [PATCH 08/20] module-init-tools: Delete

Quoted 1 line · Khem Raj

Since its provided by kmod

Perhaps we should wait on deleting this until we've run with kmod as the default for a while?

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
author
#12 lore raw

Re: [PATCH 08/20] module-init-tools: Delete

Quoted 5 lines · Darren Hart
Quoted 1 line · Khem Raj

Since its provided by kmod

Perhaps we should wait on deleting this until we've run with kmod as the default for a while?

Fine with me.

Quoted 5 lines

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

author
#13 lore raw

PATCH v2 9/20 image.bbclass, kernel.bbclass: Use kmod-native instead of module-init-tools-cross

In reply to Khem Raj
---
 meta/classes/image.bbclass  |    2 +-
 meta/classes/kernel.bbclass |    9 ++++-----
 2 files changed, 5 insertions(+), 6 deletions(-)
meta/classes/image.bbclass +1 -1
index 3034725..adb9b39 100644
@@ -173,7 +173,7 @@ fakeroot do_rootfs () {
 		KERNEL_VERSION=`cat ${STAGING_KERNEL_DIR}/kernel-abiversion`
 
 		mkdir -p ${IMAGE_ROOTFS}/lib/modules/$KERNEL_VERSION
-		${TARGET_PREFIX}depmod -a -b ${IMAGE_ROOTFS} -F ${STAGING_KERNEL_DIR}/System.map-$KERNEL_VERSION $KERNEL_VERSION
+		depmod -a -b ${IMAGE_ROOTFS} -F ${STAGING_KERNEL_DIR}/System.map-$KERNEL_VERSION $KERNEL_VERSION
 	fi
 
 	${IMAGE_PREPROCESS_COMMAND}
meta/classes/kernel.bbclass +4 -5
index ec5d65e..be54f8e 100644
@@ -1,7 +1,7 @@
 inherit linux-kernel-base module_strip
 
 PROVIDES += "virtual/kernel"
-DEPENDS += "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}depmod virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
+DEPENDS += "virtual/${TARGET_PREFIX}gcc kmod-native virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
 
 # we include gcc above, we dont need virtual/libc
 INHIBIT_DEFAULT_DEPS = "1"
@@ -259,7 +259,7 @@ if [ ! -e "$D/lib/modules/${KERNEL_VERSION}" ]; then
 	mkdir -p $D/lib/modules/${KERNEL_VERSION}
 fi
 if [ -n "$D" ]; then
-	${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
+	depmod -a -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
 else
 	depmod -a
 fi
@@ -267,7 +267,7 @@ fi
 
 pkg_postinst_modules () {
 if [ -n "$D" ]; then
-	${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
+	depmod -a -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
 else
 	depmod -a
 	update-modules || true
@@ -339,9 +339,8 @@ python populate_packages_prepend () {
 		if m:
 			kernelver_stripped = m.group(1)
 		path = d.getVar("PATH", 1)
-		host_prefix = d.getVar("HOST_PREFIX", 1) or ""
 
-		cmd = "PATH=\"%s\" %sdepmod -n -a -r -b %s -F %s/boot/System.map-%s %s" % (path, host_prefix, dvar, dvar, kernelver, kernelver_stripped)
+		cmd = "PATH=\"%s\" depmod -n -a -b %s -F %s/boot/System.map-%s %s" % (path, dvar, dvar, kernelver, kernelver_stripped)
 		f = os.popen(cmd, 'r')
 
 		deps = {}
Signature · 1 line
1.7.5.4
#14 lore raw

Re: [PATCH 09/20] image.bbclass, kernel.bbclass: Use kmod-native instead of module-init-tools-cross

Some comments regarding implementation are needed here. For example, why is HOST_PREFIX no longer necessary?

Quoted 61 lines · Khem Raj
---
 meta/classes/image.bbclass  |    2 +-
 meta/classes/kernel.bbclass |    9 ++++-----
 2 files changed, 5 insertions(+), 6 deletions(-)
meta/classes/image.bbclass +1 -1
index 3034725..adb9b39 100644
@@ -173,7 +173,7 @@ fakeroot do_rootfs () {
 		KERNEL_VERSION=`cat ${STAGING_KERNEL_DIR}/kernel-abiversion`
 
 		mkdir -p ${IMAGE_ROOTFS}/lib/modules/$KERNEL_VERSION
-		${TARGET_PREFIX}depmod -a -b ${IMAGE_ROOTFS} -F ${STAGING_KERNEL_DIR}/System.map-$KERNEL_VERSION $KERNEL_VERSION
+		depmod -a -b ${IMAGE_ROOTFS} -F ${STAGING_KERNEL_DIR}/System.map-$KERNEL_VERSION $KERNEL_VERSION
 	fi
 
 	${IMAGE_PREPROCESS_COMMAND}
meta/classes/kernel.bbclass +4 -5
index ec5d65e..be54f8e 100644
@@ -1,7 +1,7 @@
 inherit linux-kernel-base module_strip
 
 PROVIDES += "virtual/kernel"
-DEPENDS += "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}depmod virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
+DEPENDS += "virtual/${TARGET_PREFIX}gcc kmod-native virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
 
 # we include gcc above, we dont need virtual/libc
 INHIBIT_DEFAULT_DEPS = "1"
@@ -259,7 +259,7 @@ if [ ! -e "$D/lib/modules/${KERNEL_VERSION}" ]; then
 	mkdir -p $D/lib/modules/${KERNEL_VERSION}
 fi
 if [ -n "$D" ]; then
-	${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
+	depmod -a -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
 else
 	depmod -a
 fi
@@ -267,7 +267,7 @@ fi
 
 pkg_postinst_modules () {
 if [ -n "$D" ]; then
-	${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
+	depmod -a -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
 else
 	depmod -a
 	update-modules || true
@@ -339,9 +339,8 @@ python populate_packages_prepend () {
 		if m:
 			kernelver_stripped = m.group(1)
 		path = d.getVar("PATH", 1)
-		host_prefix = d.getVar("HOST_PREFIX", 1) or ""
 
-		cmd = "PATH=\"%s\" %sdepmod -n -a -r -b %s -F %s/boot/System.map-%s %s" % (path, host_prefix, dvar, dvar, kernelver, kernelver_stripped)
+		cmd = "PATH=\"%s\" depmod -n -a -b %s -F %s/boot/System.map-%s %s" % (path, dvar, dvar, kernelver, kernelver_stripped)
 		f = os.popen(cmd, 'r')
 
 		deps = {}
Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
author
#15 lore raw

Re: [PATCH 09/20] image.bbclass, kernel.bbclass: Use kmod-native instead of module-init-tools-cross

Quoted 2 lines · Darren Hart

Some comments regarding implementation are needed here. For example, why is HOST_PREFIX no longer necessary?

Its no longer treated like a cross-tool like we did before. so depmod is really treated as a host tool since it does not do anything target specific

Quoted 68 lines · Khem Raj
Quoted 56 lines

---
 meta/classes/image.bbclass  |    2 +-
 meta/classes/kernel.bbclass |    9 ++++-----

 2 files changed, 5 insertions(+), 6 deletions(-)
meta/classes/image.bbclass +0 -0
index 3034725..adb9b39 100644
@@ -173,7 +173,7 @@ fakeroot do_rootfs () {

              KERNEL_VERSION=cat ${STAGING_KERNEL_DIR}/kernel-abiversion

              mkdir -p ${IMAGE_ROOTFS}/lib/modules/$KERNEL_VERSION
-             ${TARGET_PREFIX}depmod -a -b ${IMAGE_ROOTFS} -F ${STAGING_KERNEL_DIR}/System.map-$KERNEL_VERSION $KERNEL_VERSION
+             depmod -a -b ${IMAGE_ROOTFS} -F ${STAGING_KERNEL_DIR}/System.map-$KERNEL_VERSION $KERNEL_VERSION fi

      ${IMAGE_PREPROCESS_COMMAND}

meta/classes/kernel.bbclass +0 -0
index ec5d65e..be54f8e 100644
@@ -1,7 +1,7 @@

 inherit linux-kernel-base module_strip

 PROVIDES += "virtual/kernel"

meta/classes/kernel.bbclass +1 -1
-DEPENDS += "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}depmod virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
+DEPENDS += "virtual/${TARGET_PREFIX}gcc kmod-native virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
 # we include gcc above, we dont need virtual/libc
 INHIBIT_DEFAULT_DEPS = "1"
meta/classes/kernel.bbclass +0 -0
@@ -259,7 +259,7 @@ if [ ! -e "$D/lib/modules/${KERNEL_VERSION}" ]; then
       mkdir -p $D/lib/modules/${KERNEL_VERSION}

 fi
 if [ -n "$D" ]; then
-     ${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
+     depmod -a -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION} else
      depmod -a
 fi

meta/classes/kernel.bbclass +0 -0
@@ -267,7 +267,7 @@ fi
 
  pkg_postinst_modules () {

 if [ -n "$D" ]; then
-     ${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION}
+     depmod -a -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_VERSION} ${KERNEL_VERSION} else
      depmod -a
      update-modules || true

meta/classes/kernel.bbclass +0 -0
@@ -339,9 +339,8 @@ python populate_packages_prepend () {

              if m:
                      kernelver_stripped = m.group(1) path = d.getVar("PATH", 1)
-             host_prefix = d.getVar("HOST_PREFIX", 1) or ""

Quoted 5 lines

-             cmd = "PATH=\"%s\" %sdepmod -n -a -r -b %s -F %s/boot/System.map-%s %s" % (path, host_prefix, dvar, dvar, kernelver, kernelver_stripped)
+             cmd = "PATH=\"%s\" depmod -n -a -b %s -F %s/boot/System.map-%s %s" % (path, dvar, dvar, kernelver, kernelver_stripped) f = os.popen(cmd, 'r')

              deps = {}

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel

author
#16 lore raw

PATCH v2 10/20 pseudo: Wrap renameat and opendir

In reply to Khem Raj
---
 meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++
 meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227 ++++++++++++++++++++
 meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-
 3 files changed, 323 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch
 create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +92 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach <[email protected]>
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+    
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
+    path.  This causes a segfault.  Also gonna fix the base_path
+    code not to segfault in that case, but first fix the underlying
+    problem.
+
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 4de488c..9625b38 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,3 +1,7 @@
++2012-02-02:
++	* (seebs) stash dir name for DIR * from opendir using dirfd.
++	* (seebs) add closedir.
++
+ 2011-11-02:
+ 	* (seebs) Call this 1.2 because the UNLOAD change is moderately
+ 	  significant, and so's the clone change.
+diff --git a/ports/unix/guts/closedir.c b/ports/unix/guts/closedir.c
+new file mode 100644
+index 0000000..1085361
+--- /dev/null
++++ b/ports/unix/guts/closedir.c
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (c) 2012 Wind River Systems; see
++ * guts/COPYRIGHT for information.
++ *
++ * static int
++ * wrap_closedir(DIR *dirp) {
++ *	int rc = -1;
++ */
++	if (!dirp) {
++		errno = EFAULT;
++		return -1;
++	}
++
++	int fd = dirfd(dirp);
++	pseudo_client_op(OP_CLOSE, 0, fd, -1, 0, 0);
++	rc = real_closedir(dirp);
++
++/*	return rc;
++ * }
++ */
+diff --git a/ports/unix/guts/opendir.c b/ports/unix/guts/opendir.c
+index 8eaa71f..e69717e 100644
+--- a/ports/unix/guts/opendir.c
++++ b/ports/unix/guts/opendir.c
+@@ -6,8 +6,25 @@
+  * wrap_opendir(const char *path) {
+  *	DIR * rc = NULL;
+  */
++ 	struct stat buf;
++	int save_errno;
+ 
+ 	rc = real_opendir(path);
++	if (rc) {
++		int fd;
++		save_errno = errno;
++		fd = dirfd(rc);
++		if (real_fstat(fd, &buf) == -1) {
++			pseudo_debug(1, "diropen (fd %d) succeeded, but fstat failed (%s).\n",
++				fd, strerror(errno));
++			pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1, path, 0);
++		} else {
++			pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1, path, &buf);
++		}
++
++
++		errno = save_errno;
++	}
+ 
+ /*	return rc;
+  * }
+diff --git a/ports/unix/wrapfuncs.in b/ports/unix/wrapfuncs.in
+index e06e404..32250c4 100644
+--- a/ports/unix/wrapfuncs.in
++++ b/ports/unix/wrapfuncs.in
+@@ -21,6 +21,7 @@ long pathconf(const char *path, int name);
+ char *realpath(const char *name, char *resolved_name); /* version="GLIBC_2.3" */
+ int remove(const char *path); /* flags=AT_SYMLINK_NOFOLLOW */
+ DIR *opendir(const char *path);
++int closedir(DIR *dirp);
+ char *tempnam(const char *template, const char *pfx);
+ char *tmpnam(char *s);
+ int truncate(const char *path, off_t length);
meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +227 -0

227 lines not on this page · raw message

meta/recipes-devtools/pseudo/pseudo_1.2.bb +4 -2
index f2ebc22..04bcbce 100644
@@ -1,10 +1,12 @@
 require pseudo.inc
 
-PR = "r4"
+PR = "r5"
 
 SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
            file://oe-config.patch \
-           file://static_sqlite.patch"
+           file://static_sqlite.patch \
+           file://opendir.patch \
+           file://renameat.patch"
 
 SRC_URI[md5sum] = "a2819084bab7e991f06626d02cf55048"
 SRC_URI[sha256sum] = "4749a22df687f44d24c26e97170d4781a1bd52d5ee092364a40877e4d96ff058"
Signature · 1 line
1.7.5.4
#17 lore raw

Re: [PATCH 10/20] pseudo: Wrap renameat and opendir

Quoted 17 lines · Khem Raj
---
  meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++
  meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227 ++++++++++++++++++++
  meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-
  3 files changed, 323 insertions(+), 2 deletions(-)

create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +2 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach<[email protected]>

meta/recipes-devtools/pseudo/pseudo/opendir.patch line 12

Quoted 10 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +10 -0
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
+    path.  This causes a segfault.  Also gonna fix the base_path
+    code not to segfault in that case, but first fix the underlying
+    problem.
+

Missing Upstream-Status: and Signed-off-by (yes I know we have an email header).

Thanks
Sau!

Quoted 332 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +80 -0
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 4de488c..9625b38 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,3 +1,7 @@
++2012-02-02:
++	* (seebs) stash dir name for DIR * from opendir using dirfd.
++	* (seebs) add closedir.
++
+ 2011-11-02:
+ 	* (seebs) Call this 1.2 because the UNLOAD change is moderately
+ 	  significant, and so's the clone change.
+diff --git a/ports/unix/guts/closedir.c b/ports/unix/guts/closedir.c
+new file mode 100644
+index 0000000..1085361
+--- /dev/null
++++ b/ports/unix/guts/closedir.c
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (c) 2012 Wind River Systems; see
++ * guts/COPYRIGHT for information.
++ *
++ * static int
++ * wrap_closedir(DIR *dirp) {
++ *	int rc = -1;
++ */
++	if (!dirp) {
++		errno = EFAULT;
++		return -1;
++	}
++
++	int fd = dirfd(dirp);
++	pseudo_client_op(OP_CLOSE, 0, fd, -1, 0, 0);
++	rc = real_closedir(dirp);
++
++/*	return rc;
++ * }
++ */
+diff --git a/ports/unix/guts/opendir.c b/ports/unix/guts/opendir.c
+index 8eaa71f..e69717e 100644
+--- a/ports/unix/guts/opendir.c
++++ b/ports/unix/guts/opendir.c
+@@ -6,8 +6,25 @@
+  * wrap_opendir(const char *path) {
+  *	DIR * rc = NULL;
+  */
++ 	struct stat buf;
++	int save_errno;
+
+ 	rc = real_opendir(path);
++	if (rc) {
++		int fd;
++		save_errno = errno;
++		fd = dirfd(rc);
++		if (real_fstat(fd,&buf) == -1) {
++			pseudo_debug(1, "diropen (fd %d) succeeded, but fstat failed (%s).\n",
++				fd, strerror(errno));
++			pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1, path, 0);
++		} else {
++			pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1, path,&buf);
++		}
++
++
++		errno = save_errno;
++	}
+
+ /*	return rc;
+  * }
+diff --git a/ports/unix/wrapfuncs.in b/ports/unix/wrapfuncs.in
+index e06e404..32250c4 100644
+--- a/ports/unix/wrapfuncs.in
++++ b/ports/unix/wrapfuncs.in
+@@ -21,6 +21,7 @@ long pathconf(const char *path, int name);
+ char *realpath(const char *name, char *resolved_name); /* version="GLIBC_2.3" */
+ int remove(const char *path); /* flags=AT_SYMLINK_NOFOLLOW */
+ DIR *opendir(const char *path);
++int closedir(DIR *dirp);
+ char *tempnam(const char *template, const char *pfx);
+ char *tmpnam(char *s);
+ int truncate(const char *path, off_t length);
meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +227 -0
new file mode 100644
index 0000000..74c8585
@@ -0,0 +1,227 @@
+commit 795f2b44b7f692151556782f142a4a6e7d45d892
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 15:49:21 2012 -0600
+
+    Implement renameat()
+
+    After three long years, someone tried to use this.  This was impossibly
+    hard back when pseudo was written, because there was only one dirfd
+    provided for.  Thing is, now, the canonicalization happens in wrapfuncs,
+    so a small tweak to makewrappers to recognize that oldpath should use
+    olddirfd if it exists is enough to get us fully canonicalized paths
+    when needed.
+
+    Also fix the crash if base_path gets called with an fd for which we have
+    no path.
+
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 9625b38..25bd463 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,6 +1,9 @@
+ 2012-02-02:
+ 	* (seebs) stash dir name for DIR * from opendir using dirfd.
+ 	* (seebs) add closedir.
++	* (seebs) add initial pass at renameat()
++	* (seebs) in base_path, don't try to strlen the result if
++	  fd_path() returns NULL.
+
+ 2011-11-02:
+ 	* (seebs) Call this 1.2 because the UNLOAD change is moderately
+diff --git a/makewrappers b/makewrappers
+index 20bbf2b..bf344d6 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -211,12 +211,13 @@ class Function:
+         self.flags = '0'
+         self.port = port
+         self.directory = ''
+-	self.version = 'NULL'
++        self.version = 'NULL'
+         # On Darwin, some functions are SECRETLY converted to foo$INODE64
+         # when called.  So we have to look those up for real_*
+         self.inode64 = None
+         self.real_func = None
+         self.paths_to_munge = []
++        self.dirfds = {}
+         self.hand_wrapped = None
+         # used for the copyright date when creating stub functions
+         self.date = datetime.date.today().year
+@@ -239,6 +240,7 @@ class Function:
+         # * If the arg has a name ending in 'path', we will canonicalize it.
+         # * If the arg is named 'dirfd' or 'flags', it becomes the default
+         #   values for the dirfd and flags arguments when canonicalizing.
++        # * If the name ends in dirfd, we do the same fancy stuff.
+         # * Note that the "comments" field (/* ... */ after the decl) can
+         #   override the dirfd/flags values.
+         self.args = ArgumentList(bits.group(2))
+@@ -246,7 +248,9 @@ class Function:
+             # ignore varargs, they never get these special treatments
+             if arg.vararg:
+                 pass
+-            elif arg.name == 'dirfd':
++            elif arg.name[-5:] == 'dirfd':
++                if len(arg.name)>  5:
++                    self.dirfds[arg.name[:-5]] = True
+                 self.dirfd = 'dirfd'
+             elif arg.name == 'flags':
+                 self.flags = 'flags'
+@@ -325,9 +329,13 @@ class Function:
+         """create/allocate canonical paths"""
+         alloc_paths = []
+         for path in self.paths_to_munge:
++            prefix = path[:-4]
++	    if not prefix in self.dirfds:
++                prefix = ''
++            print "for path %s: prefix<%s>" % ( path, prefix )
+             alloc_paths.append(
+-                "%s = pseudo_root_path(__func__, __LINE__, %s, %s, %s);" %
+-                (path, self.dirfd, path, self.flags))
++                "%s = pseudo_root_path(__func__, __LINE__, %s%s, %s, %s);" %
++                (path, prefix, self.dirfd, path, self.flags))
+         return "\n\t\t\t".join(alloc_paths)
+
+     def free_paths(self):
+diff --git a/ports/unix/guts/renameat.c b/ports/unix/guts/renameat.c
+index c8203b7..f13cd1e 100644
+--- a/ports/unix/guts/renameat.c
++++ b/ports/unix/guts/renameat.c
+@@ -1,15 +1,111 @@
+ /*
+- * Copyright (c) 2008-2010 Wind River Systems; see
++ * Copyright (c) 2008-2012 Wind River Systems; see
+  * guts/COPYRIGHT for information.
+  *
+  * static int
+  * wrap_renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath) {
+  *	int rc = -1;
+  */
++ 	pseudo_msg_t *msg;
++ 	struct stat oldbuf, newbuf;
++	int oldrc, newrc;
++	int save_errno;
++	int old_db_entry = 0;
+
+-	pseudo_diag("help! unimplemented renameat [%s ->  %s].\n", oldpath, newpath);
++	pseudo_debug(2, "renameat: %d,%s->%d,%s\n",
++		olddirfd, oldpath ? oldpath : "<nil>",
++		newdirfd, newpath ? newpath : "<nil>");
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++	if (olddirfd != AT_FDCWD || newdirfd != AT_FDCWD) {
++		errno = ENOSYS;
++		return -1;
++	}
++#endif
++
++	if (!oldpath || !newpath) {
++		errno = EFAULT;
++		return -1;
++	}
++
++	save_errno = errno;
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++	newrc = real_lstat(newpath,&newbuf);
++	oldrc = real_lstat(oldpath,&oldbuf);
++#else
++	oldrc = real___fxstatat(_STAT_VER, olddirfd, oldpath,&oldbuf, AT_SYMLINK_NOFOLLOW);
++	newrc = real___fxstatat(_STAT_VER, newdirfd, newpath,&newbuf, AT_SYMLINK_NOFOLLOW);
++#endif
++
++	errno = save_errno;
++
++	/* newpath must be removed. */
++	/* as with unlink, we have to mark that the file may get deleted */
++	msg = pseudo_client_op_plain(OP_MAY_UNLINK, 0, -1, newdirfd, newpath, newrc ? NULL :&newbuf);
++	if (msg&&  msg->result == RESULT_SUCCEED)
++		old_db_entry = 1;
+ 	rc = real_renameat(olddirfd, oldpath, newdirfd, newpath);
++	save_errno = errno;
++	if (old_db_entry) {
++		if (rc == -1) {
++			/* since we failed, that wasn't really unlinked -- put
++			 * it back.
++			 */
++			pseudo_client_op_plain(OP_CANCEL_UNLINK, 0, -1, newdirfd, newpath,&newbuf);
++		} else {
++			/* confirm that the file was removed */
++			pseudo_client_op_plain(OP_DID_UNLINK, 0, -1, newdirfd, newpath,&newbuf);
++		}
++	}
++	if (rc == -1) {
++		/* and we're done. */
++		errno = save_errno;
++		return rc;
++	}
++	save_errno = errno;
++	/* nothing to do for a "rename" of a link to itself */
++	if (newrc != -1&&  oldrc != -1&&
++	    newbuf.st_dev == oldbuf.st_dev&&
++	    newbuf.st_ino == oldbuf.st_ino) {
++		return rc;
++        }
++
++	/* rename(3) is not mv(1).  rename(file, dir) fails; you must provide
++	 * the corrected path yourself.  You can rename over a directory only
++	 * if the source is a directory.  Symlinks are simply removed.
++	 *
++	 * If we got here, the real rename call succeeded.  That means newpath
++	 * has been unlinked and oldpath has been linked to it.
++	 *
++	 * There are a ton of special cases to error check.  I don't check
++	 * for any of them, because in every such case, the underlying rename
++	 * failed, and there is nothing to do.
++	 * The only tricky part is that, because we used to ignore symlinks,
++	 * we may have to rename or remove directory trees even though in
++	 * theory rename can never destroy a directory tree.
++	 */
++	if (!old_db_entry) {
++		/* create an entry under the old name, which will then be
++		 * renamed; this way, children would get renamed too, if there
++		 * were any.
++		 */
++		if (newrc == 0) {
++			if (newbuf.st_dev != oldbuf.st_dev) {
++				oldbuf.st_dev = newbuf.st_dev;
++				oldbuf.st_ino = newbuf.st_ino;
++			}
++		}
++		pseudo_debug(1, "creating new '%s' [%llu] to rename\n",
++			oldpath, (unsigned long long) oldbuf.st_ino);
++		pseudo_client_op_plain(OP_LINK, 0, -1, olddirfd, oldpath,&oldbuf);
++	}
++	/* special case: use 'fd' for olddirfd, because
++	 * we know it has no other meaning for RENAME
++	 */
++	pseudo_client_op_plain(OP_RENAME, 0, olddirfd, newdirfd, newpath,&oldbuf, oldpath);
+
++	errno = save_errno;
+ /*	return rc;
+  * }
+  */
+diff --git a/pseudo_client.c b/pseudo_client.c
+index 48607c2..4a30420 100644
+--- a/pseudo_client.c
++++ b/pseudo_client.c
+@@ -988,6 +988,8 @@ base_path(int dirfd, const char *path, int leave_last) {
+ 		if (dirfd != -1&&  dirfd != AT_FDCWD) {
+ 			if (dirfd>= 0) {
+ 				basepath = fd_path(dirfd);
++			}
++			if (basepath) {
+ 				baselen = strlen(basepath);
+ 			} else {
+ 				pseudo_diag("got *at() syscall for unknown directory, fd %d\n", dirfd);
+@@ -1128,7 +1130,10 @@ pseudo_client_op(pseudo_op_t op, int access, int fd, int dirfd, const char *path
+ 	if (path) {
+ 		pseudo_debug(2, " %s", path);
+ 	}
+-	if (fd != -1) {
++	/* for OP_RENAME in renameat, "fd" is also used for the
++	 * second dirfd.
++	 */
++	if (fd != -1&&  op != OP_RENAME) {
+ 		pseudo_debug(2, " [fd %d]", fd);
+ 	}
+ 	if (buf) {
meta/recipes-devtools/pseudo/pseudo_1.2.bb +4 -2
index f2ebc22..04bcbce 100644
@@ -1,10 +1,12 @@
  require pseudo.inc
 
-PR = "r4"
+PR = "r5"
 
  SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
             file://oe-config.patch \
-           file://static_sqlite.patch"
+           file://static_sqlite.patch \
+           file://opendir.patch \
+           file://renameat.patch"
 
  SRC_URI[md5sum] = "a2819084bab7e991f06626d02cf55048"
  SRC_URI[sha256sum] = "4749a22df687f44d24c26e97170d4781a1bd52d5ee092364a40877e4d96ff058"
author
#18 lore raw

Re: [PATCH 10/20] pseudo: Wrap renameat and opendir

Quoted 27 lines · Saul Wold
Quoted 26 lines · Khem Raj

---
 meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++ meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227
++++++++++++++++++++
 meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-

 3 files changed, 323 insertions(+), 2 deletions(-)

 create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +8 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
Quoted 8 lines

meta/recipes-devtools/pseudo/pseudo/opendir.patch line 12

Quoted 4 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +4 -0
+    path.  This causes a segfault.  Also gonna fix the base_path
+    code not to segfault in that case, but first fix the underlying
+    problem.
+

Missing Upstream-Status: and Signed-off-by (yes I know we have an email header).

they are backports

Quoted 380 lines

Thanks
       Sau!

Quoted 376 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +56 -0
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 4de488c..9625b38 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,3 +1,7 @@
++2012-02-02:
++      * (seebs) stash dir name for DIR * from opendir using dirfd.
++      * (seebs) add closedir.
++
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+         significant, and so's the clone change.
+diff --git a/ports/unix/guts/closedir.c b/ports/unix/guts/closedir.c
+new file mode 100644
+index 0000000..1085361
+--- /dev/null
++++ b/ports/unix/guts/closedir.c
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (c) 2012 Wind River Systems; see
++ * guts/COPYRIGHT for information.
++ *
++ * static int
++ * wrap_closedir(DIR *dirp) {
++ *    int rc = -1;
++ */
++      if (!dirp) {
++              errno = EFAULT;
++              return -1;
++      }
++
++      int fd = dirfd(dirp);
++      pseudo_client_op(OP_CLOSE, 0, fd, -1, 0, 0);
++      rc = real_closedir(dirp);
++
++/*    return rc;
++ * }
++ */
+diff --git a/ports/unix/guts/opendir.c b/ports/unix/guts/opendir.c
+index 8eaa71f..e69717e 100644
+--- a/ports/unix/guts/opendir.c
++++ b/ports/unix/guts/opendir.c
+@@ -6,8 +6,25 @@
+  * wrap_opendir(const char *path) {
+  *    DIR * rc = NULL;
+  */
++      struct stat buf;
++      int save_errno;
+
+       rc = real_opendir(path);
++      if (rc) {
++              int fd;
++              save_errno = errno;
++              fd = dirfd(rc);
++              if (real_fstat(fd,&buf) == -1) {
 
++                      pseudo_debug(1, "diropen (fd %d) succeeded, but

fstat failed (%s).\n",
++                              fd, strerror(errno));
++                      pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1, path, 0);
++              } else {
++                      pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1, path,&buf);
++              }
++
++
++              errno = save_errno;
++      }

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +9 -0
+
+ /*    return rc;
+  * }
+diff --git a/ports/unix/wrapfuncs.in b/ports/unix/wrapfuncs.in
+index e06e404..32250c4 100644
+--- a/ports/unix/wrapfuncs.in
++++ b/ports/unix/wrapfuncs.in
+@@ -21,6 +21,7 @@ long pathconf(const char *path, int name);
+ char *realpath(const char *name, char *resolved_name); /*

version="GLIBC_2.3" */
+ int remove(const char *path); /* flags=AT_SYMLINK_NOFOLLOW */
+ DIR *opendir(const char *path);
++int closedir(DIR *dirp);
+ char *tempnam(const char *template, const char *pfx);
+ char *tmpnam(char *s);
+ int truncate(const char *path, off_t length);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +7 -0
new file mode 100644
index 0000000..74c8585
@@ -0,0 +1,227 @@
+commit 795f2b44b7f692151556782f142a4a6e7d45d892
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 15:49:21 2012 -0600
+
+    Implement renameat()
+
+    After three long years, someone tried to use this.  This was

impossibly
+    hard back when pseudo was written, because there was only one dirfd
+    provided for.  Thing is, now, the canonicalization happens in wrapfuncs,
+    so a small tweak to makewrappers to recognize that oldpath should use
+    olddirfd if it exists is enough to get us fully canonicalized paths
+    when needed.
+
+    Also fix the crash if base_path gets called with an fd for which we have
+    no path.

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +26 -0
+
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 9625b38..25bd463 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,6 +1,9 @@
+ 2012-02-02:
+       * (seebs) stash dir name for DIR * from opendir using dirfd.
+       * (seebs) add closedir.
++      * (seebs) add initial pass at renameat()
++      * (seebs) in base_path, don't try to strlen the result if
++        fd_path() returns NULL.
+
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+diff --git a/makewrappers b/makewrappers
+index 20bbf2b..bf344d6 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -211,12 +211,13 @@ class Function:
+         self.flags = '0'
+         self.port = port
+         self.directory = ''
+-      self.version = 'NULL'
++        self.version = 'NULL'
+         # On Darwin, some functions are SECRETLY converted to

foo$INODE64
+         # when called.  So we have to look those up for real_*
+         self.inode64 = None
+         self.real_func = None
+         self.paths_to_munge = []
++        self.dirfds = {}
+         self.hand_wrapped = None
+         # used for the copyright date when creating stub functions
+         self.date = datetime.date.today().year
+@@ -239,6 +240,7 @@ class Function:
+         # * If the arg has a name ending in 'path', we will canonicalize it.
+         # * If the arg is named 'dirfd' or 'flags', it becomes the default
+         #   values for the dirfd and flags arguments when canonicalizing.
++        # * If the name ends in dirfd, we do the same fancy stuff.
+         # * Note that the "comments" field (/* ... */ after the decl) can
+         #   override the dirfd/flags values.
+         self.args = ArgumentList(bits.group(2))
+@@ -246,7 +248,9 @@ class Function:
+             # ignore varargs, they never get these special treatments
+             if arg.vararg:
+                 pass
+-            elif arg.name == 'dirfd':
++            elif arg.name[-5:] == 'dirfd':
++                if len(arg.name)>  5:
++                    self.dirfds[arg.name[:-5]] = True
+                 self.dirfd = 'dirfd'
+             elif arg.name == 'flags':
+                 self.flags = 'flags'
+@@ -325,9 +329,13 @@ class Function:
+         """create/allocate canonical paths"""
+         alloc_paths = []
+         for path in self.paths_to_munge:
++            prefix = path[:-4]
++          if not prefix in self.dirfds:
++                prefix = ''
++            print "for path %s: prefix<%s>" % ( path, prefix )
+             alloc_paths.append(
+-                "%s = pseudo_root_path(__func__, __LINE__, %s, %s, %s);" %
+-                (path, self.dirfd, path, self.flags))
++                "%s = pseudo_root_path(__func__, __LINE__, %s%s, %s, %s);" %
++                (path, prefix, self.dirfd, path, self.flags))
+         return "\n\t\t\t".join(alloc_paths)

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +14 -0
+
+     def free_paths(self):
+diff --git a/ports/unix/guts/renameat.c b/ports/unix/guts/renameat.c
+index c8203b7..f13cd1e 100644
+--- a/ports/unix/guts/renameat.c
++++ b/ports/unix/guts/renameat.c
+@@ -1,15 +1,111 @@
+ /*
+- * Copyright (c) 2008-2010 Wind River Systems; see
++ * Copyright (c) 2008-2012 Wind River Systems; see
+  * guts/COPYRIGHT for information.
+  *
+  * static int
+  * wrap_renameat(int olddirfd, const char *oldpath, int newdirfd, const

char *newpath) {
+  *    int rc = -1;
+  */
++      pseudo_msg_t *msg;
++      struct stat oldbuf, newbuf;
++      int oldrc, newrc;
++      int save_errno;
++      int old_db_entry = 0;
+
+-      pseudo_diag("help! unimplemented renameat [%s ->  %s].\n", oldpath, newpath);
++      pseudo_debug(2, "renameat: %d,%s->%d,%s\n",
++              olddirfd, oldpath ? oldpath : "<nil>",
++              newdirfd, newpath ? newpath : "<nil>");
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++      if (olddirfd != AT_FDCWD || newdirfd != AT_FDCWD) { ++              errno = ENOSYS;
++              return -1;
++      }
++#endif
++
++      if (!oldpath || !newpath) {
++              errno = EFAULT;
++              return -1;
++      }
++
++      save_errno = errno;
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++      newrc = real_lstat(newpath,&newbuf);
++      oldrc = real_lstat(oldpath,&oldbuf);
++#else
++      oldrc = real___fxstatat(_STAT_VER, olddirfd, oldpath,&oldbuf, AT_SYMLINK_NOFOLLOW);
++      newrc = real___fxstatat(_STAT_VER, newdirfd, newpath,&newbuf, AT_SYMLINK_NOFOLLOW);

++#endif
++
++      errno = save_errno;
++
++      /* newpath must be removed. */
++      /* as with unlink, we have to mark that the file may get deleted */
++      msg = pseudo_client_op_plain(OP_MAY_UNLINK, 0, -1, newdirfd, newpath, newrc ? NULL :&newbuf);
++      if (msg&&  msg->result == RESULT_SUCCEED)

++              old_db_entry = 1;
+       rc = real_renameat(olddirfd, oldpath, newdirfd, newpath); ++      save_errno = errno;
++      if (old_db_entry) {
++              if (rc == -1) {
++                      /* since we failed, that wasn't really unlinked -- put
++                       * it back.
++                       */
++                      pseudo_client_op_plain(OP_CANCEL_UNLINK, 0, -1, newdirfd, newpath,&newbuf);
++              } else {
++                      /* confirm that the file was removed */ ++                      pseudo_client_op_plain(OP_DID_UNLINK, 0, -1, newdirfd, newpath,&newbuf);
++              }
++      }
++      if (rc == -1) {
++              /* and we're done. */
++              errno = save_errno;
++              return rc;
++      }
++      save_errno = errno;
++      /* nothing to do for a "rename" of a link to itself */ ++      if (newrc != -1&&  oldrc != -1&&
++          newbuf.st_dev == oldbuf.st_dev&&
++          newbuf.st_ino == oldbuf.st_ino) {
++              return rc;
++        }
++
++      /* rename(3) is not mv(1).  rename(file, dir) fails; you must provide
++       * the corrected path yourself.  You can rename over a directory only
++       * if the source is a directory.  Symlinks are simply removed. ++       *
++       * If we got here, the real rename call succeeded.  That means newpath
++       * has been unlinked and oldpath has been linked to it. ++       *
++       * There are a ton of special cases to error check.  I don't check ++       * for any of them, because in every such case, the underlying rename
++       * failed, and there is nothing to do.
++       * The only tricky part is that, because we used to ignore symlinks,
++       * we may have to rename or remove directory trees even though in ++       * theory rename can never destroy a directory tree. ++       */
++      if (!old_db_entry) {
++              /* create an entry under the old name, which will then be ++               * renamed; this way, children would get renamed too, if there
++               * were any.
++               */
++              if (newrc == 0) {
++                      if (newbuf.st_dev != oldbuf.st_dev) { ++                              oldbuf.st_dev = newbuf.st_dev; ++                              oldbuf.st_ino = newbuf.st_ino; ++                      }
++              }
++              pseudo_debug(1, "creating new '%s' [%llu] to rename\n", ++                      oldpath, (unsigned long long) oldbuf.st_ino); ++              pseudo_client_op_plain(OP_LINK, 0, -1, olddirfd, oldpath,&oldbuf);
++      }
++      /* special case: use 'fd' for olddirfd, because
++       * we know it has no other meaning for RENAME
++       */
++      pseudo_client_op_plain(OP_RENAME, 0, olddirfd, newdirfd, newpath,&oldbuf, oldpath);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +10 -0
+
++      errno = save_errno;
+ /*    return rc;
+  * }
+  */
+diff --git a/pseudo_client.c b/pseudo_client.c
+index 48607c2..4a30420 100644
+--- a/pseudo_client.c
++++ b/pseudo_client.c
+@@ -988,6 +988,8 @@ base_path(int dirfd, const char *path, int

leave_last) {
+               if (dirfd != -1&&  dirfd != AT_FDCWD) {

+                       if (dirfd>= 0) {
+                               basepath = fd_path(dirfd);
++                      }
++                      if (basepath) {
+                               baselen = strlen(basepath);
+                       } else {
+                               pseudo_diag("got *at() syscall for unknown directory, fd %d\n", dirfd);
+@@ -1128,7 +1130,10 @@ pseudo_client_op(pseudo_op_t op, int access, int fd, int dirfd, const char *path
+       if (path) {
+               pseudo_debug(2, " %s", path);
+       }
+-      if (fd != -1) {
++      /* for OP_RENAME in renameat, "fd" is also used for the ++       * second dirfd.
++       */
++      if (fd != -1&&  op != OP_RENAME) {

+               pseudo_debug(2, " [fd %d]", fd);
+       }
+       if (buf) {

meta/recipes-devtools/pseudo/pseudo_1.2.bb +0 -0
index f2ebc22..04bcbce 100644
@@ -1,10 +1,12 @@

 require pseudo.inc

meta/recipes-devtools/pseudo/pseudo_1.2.bb +1 -1
-PR = "r4"
+PR = "r5"

 SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
            file://oe-config.patch \
-           file://static_sqlite.patch"
+           file://static_sqlite.patch \
+           file://opendir.patch \
+           file://renameat.patch"

 SRC_URI[md5sum] = "a2819084bab7e991f06626d02cf55048" SRC_URI[sha256sum] = "4749a22df687f44d24c26e97170d4781a1bd52d5ee092364a40877e4d96ff058"

#19 lore raw

Re: [PATCH 10/20] pseudo: Wrap renameat and opendir

Quoted 37 lines · Khem Raj
Quoted 27 lines · Saul Wold
Quoted 26 lines · Khem Raj
---
  meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++
  meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227
++++++++++++++++++++
  meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-
  3 files changed, 323 insertions(+), 2 deletions(-)

create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +8 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
Quoted 8 lines

meta/recipes-devtools/pseudo/pseudo/opendir.patch line 12

Quoted 4 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +4 -0
+    path.  This causes a segfault.  Also gonna fix the base_path
+    code not to segfault in that case, but first fix the underlying
+    problem.
+

Missing Upstream-Status: and Signed-off-by (yes I know we have an email header).

Quoted 2 lines

they are backports

Please update the patch!

Thanks
Sau!

Quoted 381 lines
Quoted 380 lines

Thanks
Sau!

Quoted 376 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +56 -0
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 4de488c..9625b38 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,3 +1,7 @@
++2012-02-02:
++      * (seebs) stash dir name for DIR * from opendir using dirfd.
++      * (seebs) add closedir.
++
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+         significant, and so's the clone change.
+diff --git a/ports/unix/guts/closedir.c b/ports/unix/guts/closedir.c
+new file mode 100644
+index 0000000..1085361
+--- /dev/null
++++ b/ports/unix/guts/closedir.c
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (c) 2012 Wind River Systems; see
++ * guts/COPYRIGHT for information.
++ *
++ * static int
++ * wrap_closedir(DIR *dirp) {
++ *    int rc = -1;
++ */
++      if (!dirp) {
++              errno = EFAULT;
++              return -1;
++      }
++
++      int fd = dirfd(dirp);
++      pseudo_client_op(OP_CLOSE, 0, fd, -1, 0, 0);
++      rc = real_closedir(dirp);
++
++/*    return rc;
++ * }
++ */
+diff --git a/ports/unix/guts/opendir.c b/ports/unix/guts/opendir.c
+index 8eaa71f..e69717e 100644
+--- a/ports/unix/guts/opendir.c
++++ b/ports/unix/guts/opendir.c
+@@ -6,8 +6,25 @@
+  * wrap_opendir(const char *path) {
+  *    DIR * rc = NULL;
+  */
++      struct stat buf;
++      int save_errno;
+
+       rc = real_opendir(path);
++      if (rc) {
++              int fd;
++              save_errno = errno;
++              fd = dirfd(rc);
++              if (real_fstat(fd,&buf) == -1) {
 
++                      pseudo_debug(1, "diropen (fd %d) succeeded, but

fstat failed (%s).\n",
++ fd, strerror(errno));
++ pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1,
path, 0);
++ } else {
++ pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1,
path,&buf);
++ }
++
++
++ errno = save_errno;
++ }

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +9 -0
+
+ /*    return rc;
+  * }
+diff --git a/ports/unix/wrapfuncs.in b/ports/unix/wrapfuncs.in
+index e06e404..32250c4 100644
+--- a/ports/unix/wrapfuncs.in
++++ b/ports/unix/wrapfuncs.in
+@@ -21,6 +21,7 @@ long pathconf(const char *path, int name);
+ char *realpath(const char *name, char *resolved_name); /*

version="GLIBC_2.3" */
+ int remove(const char *path); /* flags=AT_SYMLINK_NOFOLLOW */
+ DIR *opendir(const char *path);
++int closedir(DIR *dirp);
+ char *tempnam(const char *template, const char *pfx);
+ char *tmpnam(char *s);
+ int truncate(const char *path, off_t length);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +7 -0
new file mode 100644
index 0000000..74c8585
@@ -0,0 +1,227 @@
+commit 795f2b44b7f692151556782f142a4a6e7d45d892
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 15:49:21 2012 -0600
+
+    Implement renameat()
+
+    After three long years, someone tried to use this.  This was

impossibly

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +2 -0
+    hard back when pseudo was written, because there was only one dirfd
+    provided for.  Thing is, now, the canonicalization happens in

wrapfuncs,

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +5 -0
+    so a small tweak to makewrappers to recognize that oldpath should use
+    olddirfd if it exists is enough to get us fully canonicalized paths
+    when needed.
+
+    Also fix the crash if base_path gets called with an fd for which we

have

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +27 -0
+    no path.
+
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 9625b38..25bd463 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,6 +1,9 @@
+ 2012-02-02:
+       * (seebs) stash dir name for DIR * from opendir using dirfd.
+       * (seebs) add closedir.
++      * (seebs) add initial pass at renameat()
++      * (seebs) in base_path, don't try to strlen the result if
++        fd_path() returns NULL.
+
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+diff --git a/makewrappers b/makewrappers
+index 20bbf2b..bf344d6 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -211,12 +211,13 @@ class Function:
+         self.flags = '0'
+         self.port = port
+         self.directory = ''
+-      self.version = 'NULL'
++        self.version = 'NULL'
+         # On Darwin, some functions are SECRETLY converted to

foo$INODE64

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +10 -0
+         # when called.  So we have to look those up for real_*
+         self.inode64 = None
+         self.real_func = None
+         self.paths_to_munge = []
++        self.dirfds = {}
+         self.hand_wrapped = None
+         # used for the copyright date when creating stub functions
+         self.date = datetime.date.today().year
+@@ -239,6 +240,7 @@ class Function:
+         # * If the arg has a name ending in 'path', we will canonicalize

it.
+ # * If the arg is named 'dirfd' or 'flags', it becomes the
default
+ # values for the dirfd and flags arguments when
canonicalizing.
++ # * If the name ends in dirfd, we do the same fancy stuff.
+ # * Note that the "comments" field (/* ... */ after the decl)
can

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +23 -0
+         #   override the dirfd/flags values.
+         self.args = ArgumentList(bits.group(2))
+@@ -246,7 +248,9 @@ class Function:
+             # ignore varargs, they never get these special treatments
+             if arg.vararg:
+                 pass
+-            elif arg.name == 'dirfd':
++            elif arg.name[-5:] == 'dirfd':
++                if len(arg.name)>    5:
++                    self.dirfds[arg.name[:-5]] = True
+                 self.dirfd = 'dirfd'
+             elif arg.name == 'flags':
+                 self.flags = 'flags'
+@@ -325,9 +329,13 @@ class Function:
+         """create/allocate canonical paths"""
+         alloc_paths = []
+         for path in self.paths_to_munge:
++            prefix = path[:-4]
++          if not prefix in self.dirfds:
++                prefix = ''
++            print "for path %s: prefix<%s>" % ( path, prefix )
+             alloc_paths.append(
+-                "%s = pseudo_root_path(__func__, __LINE__, %s, %s, %s);"

%

+-                (path, self.dirfd, path, self.flags))
++                "%s = pseudo_root_path(__func__, __LINE__, %s%s, %s,

%s);" %
++ (path, prefix, self.dirfd, path, self.flags))

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +15 -0
+         return "\n\t\t\t".join(alloc_paths)
+
+     def free_paths(self):
+diff --git a/ports/unix/guts/renameat.c b/ports/unix/guts/renameat.c
+index c8203b7..f13cd1e 100644
+--- a/ports/unix/guts/renameat.c
++++ b/ports/unix/guts/renameat.c
+@@ -1,15 +1,111 @@
+ /*
+- * Copyright (c) 2008-2010 Wind River Systems; see
++ * Copyright (c) 2008-2012 Wind River Systems; see
+  * guts/COPYRIGHT for information.
+  *
+  * static int
+  * wrap_renameat(int olddirfd, const char *oldpath, int newdirfd, const

char *newpath) {

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +9 -0
+  *    int rc = -1;
+  */
++      pseudo_msg_t *msg;
++      struct stat oldbuf, newbuf;
++      int oldrc, newrc;
++      int save_errno;
++      int old_db_entry = 0;
+
+-      pseudo_diag("help! unimplemented renameat [%s ->    %s].\n",

oldpath, newpath);
++ pseudo_debug(2, "renameat: %d,%s->%d,%s\n",
++ olddirfd, oldpath ? oldpath : "<nil>",
++ newdirfd, newpath ? newpath : "<nil>");
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++ if (olddirfd != AT_FDCWD || newdirfd != AT_FDCWD) {
++ errno = ENOSYS;
++ return -1;
++ }
++#endif
++
++ if (!oldpath || !newpath) {
++ errno = EFAULT;
++ return -1;
++ }
++
++ save_errno = errno;
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++ newrc = real_lstat(newpath,&newbuf);
++ oldrc = real_lstat(oldpath,&oldbuf);
++#else
++ oldrc = real___fxstatat(_STAT_VER, olddirfd, oldpath,&oldbuf,
AT_SYMLINK_NOFOLLOW);
++ newrc = real___fxstatat(_STAT_VER, newdirfd, newpath,&newbuf,
AT_SYMLINK_NOFOLLOW);

++#endif
++
++ errno = save_errno;
++
++ /* newpath must be removed. */
++ /* as with unlink, we have to mark that the file may get deleted
*/
++ msg = pseudo_client_op_plain(OP_MAY_UNLINK, 0, -1, newdirfd,
newpath, newrc ? NULL :&newbuf);
++ if (msg&& msg->result == RESULT_SUCCEED)

++ old_db_entry = 1;

+       rc = real_renameat(olddirfd, oldpath, newdirfd, newpath);
++      save_errno = errno;
++      if (old_db_entry) {

++ if (rc == -1) {
++ /* since we failed, that wasn't really unlinked --
put
++ * it back.
++ */
++ pseudo_client_op_plain(OP_CANCEL_UNLINK, 0, -1,
newdirfd, newpath,&newbuf);
++ } else {
++ /* confirm that the file was removed */
++ pseudo_client_op_plain(OP_DID_UNLINK, 0, -1,
newdirfd, newpath,&newbuf);
++ }
++ }
++ if (rc == -1) {

++              /* and we're done. */
++              errno = save_errno;
++              return rc;
++      }
++      save_errno = errno;
++      /* nothing to do for a "rename" of a link to itself */
++      if (newrc != -1&&    oldrc != -1&&

++ newbuf.st_dev == oldbuf.st_dev&&
++ newbuf.st_ino == oldbuf.st_ino) {
++ return rc;
++ }
++
++ /* rename(3) is not mv(1). rename(file, dir) fails; you must
provide
++ * the corrected path yourself. You can rename over a directory
only

++       * if the source is a directory.  Symlinks are simply removed.
++       *
++       * If we got here, the real rename call succeeded.  That means
newpath
++       * has been unlinked and oldpath has been linked to it.
++       *
++       * There are a ton of special cases to error check.  I don't check
++       * for any of them, because in every such case, the underlying

rename
++ * failed, and there is nothing to do.
++ * The only tricky part is that, because we used to ignore
symlinks,

++       * we may have to rename or remove directory trees even though in
++       * theory rename can never destroy a directory tree.
++       */

++ if (!old_db_entry) {
++ /* create an entry under the old name, which will then be
++ * renamed; this way, children would get renamed too, if
there
++ * were any.
++ */
++ if (newrc == 0) {
++ if (newbuf.st_dev != oldbuf.st_dev) {
++ oldbuf.st_dev = newbuf.st_dev;
++ oldbuf.st_ino = newbuf.st_ino;
++ }
++ }
++ pseudo_debug(1, "creating new '%s' [%llu] to rename\n",
++ oldpath, (unsigned long long) oldbuf.st_ino);
++ pseudo_client_op_plain(OP_LINK, 0, -1, olddirfd,
oldpath,&oldbuf);
++ }
++ /* special case: use 'fd' for olddirfd, because
++ * we know it has no other meaning for RENAME
++ */
++ pseudo_client_op_plain(OP_RENAME, 0, olddirfd, newdirfd,
newpath,&oldbuf, oldpath);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +10 -0
+
++      errno = save_errno;
+ /*    return rc;
+  * }
+  */
+diff --git a/pseudo_client.c b/pseudo_client.c
+index 48607c2..4a30420 100644
+--- a/pseudo_client.c
++++ b/pseudo_client.c
+@@ -988,6 +988,8 @@ base_path(int dirfd, const char *path, int

leave_last) {

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +8 -0
+               if (dirfd != -1&&    dirfd != AT_FDCWD) {
 
+                       if (dirfd>= 0) {
+                               basepath = fd_path(dirfd);
++                      }
++                      if (basepath) {
+                               baselen = strlen(basepath);
+                       } else {
+                               pseudo_diag("got *at() syscall for unknown

directory, fd %d\n", dirfd);
+@@ -1128,7 +1130,10 @@ pseudo_client_op(pseudo_op_t op, int access, int fd, int dirfd, const char *path

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +11 -0
+       if (path) {
+               pseudo_debug(2, " %s", path);
+       }
+-      if (fd != -1) {
++      /* for OP_RENAME in renameat, "fd" is also used for the
++       * second dirfd.
++       */
++      if (fd != -1&&    op != OP_RENAME) {
 
+               pseudo_debug(2, " [fd %d]", fd);
+       }
+       if (buf) {
meta/recipes-devtools/pseudo/pseudo_1.2.bb +4 -2
index f2ebc22..04bcbce 100644
@@ -1,10 +1,12 @@
  require pseudo.inc
 
-PR = "r4"
+PR = "r5"
 
  SRC_URI =
 "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
             file://oe-config.patch \
-           file://static_sqlite.patch"
+           file://static_sqlite.patch \
+           file://opendir.patch \
+           file://renameat.patch"
 
  SRC_URI[md5sum] = "a2819084bab7e991f06626d02cf55048"

SRC_URI[sha256sum] =
"4749a22df687f44d24c26e97170d4781a1bd52d5ee092364a40877e4d96ff058"

author
#20 lore raw

Re: [PATCH 10/20] pseudo: Wrap renameat and opendir

Quoted 43 lines · Saul Wold
Quoted 42 lines · Khem Raj
Quoted 38 lines · Saul Wold
Quoted 21 lines · Khem Raj

---
 meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++ meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227
++++++++++++++++++++
 meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-

 3 files changed, 323 insertions(+), 2 deletions(-)

 create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +2 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach<[email protected]>

meta/recipes-devtools/pseudo/pseudo/opendir.patch line 12

Quoted 10 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +10 -0
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
+    path.  This causes a segfault.  Also gonna fix the base_path
+    code not to segfault in that case, but first fix the underlying
+    problem.
+

Missing Upstream-Status: and Signed-off-by (yes I know we have an email header).

Quoted 3 lines
Quoted 2 lines

they are backports

Please update the patch!

should be there now.

#21 lore raw

Re: [PATCH 10/20] pseudo: Wrap renameat and opendir

In reply to Saul Wold

The pseudo upstream has been updated. We should like just update the recipe to use git commit: 9461b2a88ba672c533a331f95dd5ba7eba683c77

--Mark

Quoted 431 lines · Saul Wold
Quoted 37 lines · Khem Raj
Quoted 27 lines · Saul Wold
Quoted 26 lines · Khem Raj
---
   meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++
   meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227
++++++++++++++++++++
   meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-
   3 files changed, 323 insertions(+), 2 deletions(-)

create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +8 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
Quoted 8 lines

meta/recipes-devtools/pseudo/pseudo/opendir.patch line 12

Quoted 4 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +4 -0
+    path.  This causes a segfault.  Also gonna fix the base_path
+    code not to segfault in that case, but first fix the underlying
+    problem.
+

Missing Upstream-Status: and Signed-off-by (yes I know we have an email header).

Quoted 2 lines

they are backports

Please update the patch!

Thanks
Sau!

Quoted 377 lines
Quoted 377 lines

Thanks
Sau!

Quoted 373 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +56 -0
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 4de488c..9625b38 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,3 +1,7 @@
++2012-02-02:
++      * (seebs) stash dir name for DIR * from opendir using dirfd.
++      * (seebs) add closedir.
++
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+         significant, and so's the clone change.
+diff --git a/ports/unix/guts/closedir.c b/ports/unix/guts/closedir.c
+new file mode 100644
+index 0000000..1085361
+--- /dev/null
++++ b/ports/unix/guts/closedir.c
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (c) 2012 Wind River Systems; see
++ * guts/COPYRIGHT for information.
++ *
++ * static int
++ * wrap_closedir(DIR *dirp) {
++ *    int rc = -1;
++ */
++      if (!dirp) {
++              errno = EFAULT;
++              return -1;
++      }
++
++      int fd = dirfd(dirp);
++      pseudo_client_op(OP_CLOSE, 0, fd, -1, 0, 0);
++      rc = real_closedir(dirp);
++
++/*    return rc;
++ * }
++ */
+diff --git a/ports/unix/guts/opendir.c b/ports/unix/guts/opendir.c
+index 8eaa71f..e69717e 100644
+--- a/ports/unix/guts/opendir.c
++++ b/ports/unix/guts/opendir.c
+@@ -6,8 +6,25 @@
+  * wrap_opendir(const char *path) {
+  *    DIR * rc = NULL;
+  */
++      struct stat buf;
++      int save_errno;
+
+       rc = real_opendir(path);
++      if (rc) {
++              int fd;
++              save_errno = errno;
++              fd = dirfd(rc);
++              if (real_fstat(fd,&buf) == -1) {
 
++                      pseudo_debug(1, "diropen (fd %d) succeeded, but

fstat failed (%s).\n",
++ fd, strerror(errno));
++ pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1,
path, 0);
++ } else {
++ pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1,
path,&buf);
++ }
++
++
++ errno = save_errno;
++ }

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +9 -0
+
+ /*    return rc;
+  * }
+diff --git a/ports/unix/wrapfuncs.in b/ports/unix/wrapfuncs.in
+index e06e404..32250c4 100644
+--- a/ports/unix/wrapfuncs.in
++++ b/ports/unix/wrapfuncs.in
+@@ -21,6 +21,7 @@ long pathconf(const char *path, int name);
+ char *realpath(const char *name, char *resolved_name); /*

version="GLIBC_2.3" */
+ int remove(const char *path); /* flags=AT_SYMLINK_NOFOLLOW */
+ DIR *opendir(const char *path);
++int closedir(DIR *dirp);
+ char *tempnam(const char *template, const char *pfx);
+ char *tmpnam(char *s);
+ int truncate(const char *path, off_t length);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +7 -0
new file mode 100644
index 0000000..74c8585
@@ -0,0 +1,227 @@
+commit 795f2b44b7f692151556782f142a4a6e7d45d892
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 15:49:21 2012 -0600
+
+    Implement renameat()
+
+    After three long years, someone tried to use this.  This was

impossibly

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +2 -0
+    hard back when pseudo was written, because there was only one dirfd
+    provided for.  Thing is, now, the canonicalization happens in

wrapfuncs,

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +5 -0
+    so a small tweak to makewrappers to recognize that oldpath should use
+    olddirfd if it exists is enough to get us fully canonicalized paths
+    when needed.
+
+    Also fix the crash if base_path gets called with an fd for which we

have

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +27 -0
+    no path.
+
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 9625b38..25bd463 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,6 +1,9 @@
+ 2012-02-02:
+       * (seebs) stash dir name for DIR * from opendir using dirfd.
+       * (seebs) add closedir.
++      * (seebs) add initial pass at renameat()
++      * (seebs) in base_path, don't try to strlen the result if
++        fd_path() returns NULL.
+
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+diff --git a/makewrappers b/makewrappers
+index 20bbf2b..bf344d6 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -211,12 +211,13 @@ class Function:
+         self.flags = '0'
+         self.port = port
+         self.directory = ''
+-      self.version = 'NULL'
++        self.version = 'NULL'
+         # On Darwin, some functions are SECRETLY converted to

foo$INODE64

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +10 -0
+         # when called.  So we have to look those up for real_*
+         self.inode64 = None
+         self.real_func = None
+         self.paths_to_munge = []
++        self.dirfds = {}
+         self.hand_wrapped = None
+         # used for the copyright date when creating stub functions
+         self.date = datetime.date.today().year
+@@ -239,6 +240,7 @@ class Function:
+         # * If the arg has a name ending in 'path', we will canonicalize

it.
+ # * If the arg is named 'dirfd' or 'flags', it becomes the
default
+ # values for the dirfd and flags arguments when
canonicalizing.
++ # * If the name ends in dirfd, we do the same fancy stuff.
+ # * Note that the "comments" field (/* ... */ after the decl)
can

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +23 -0
+         #   override the dirfd/flags values.
+         self.args = ArgumentList(bits.group(2))
+@@ -246,7 +248,9 @@ class Function:
+             # ignore varargs, they never get these special treatments
+             if arg.vararg:
+                 pass
+-            elif arg.name == 'dirfd':
++            elif arg.name[-5:] == 'dirfd':
++                if len(arg.name)>     5:
++                    self.dirfds[arg.name[:-5]] = True
+                 self.dirfd = 'dirfd'
+             elif arg.name == 'flags':
+                 self.flags = 'flags'
+@@ -325,9 +329,13 @@ class Function:
+         """create/allocate canonical paths"""
+         alloc_paths = []
+         for path in self.paths_to_munge:
++            prefix = path[:-4]
++          if not prefix in self.dirfds:
++                prefix = ''
++            print "for path %s: prefix<%s>" % ( path, prefix )
+             alloc_paths.append(
+-                "%s = pseudo_root_path(__func__, __LINE__, %s, %s, %s);"

%

+-                (path, self.dirfd, path, self.flags))
++                "%s = pseudo_root_path(__func__, __LINE__, %s%s, %s,

%s);" %
++ (path, prefix, self.dirfd, path, self.flags))

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +15 -0
+         return "\n\t\t\t".join(alloc_paths)
+
+     def free_paths(self):
+diff --git a/ports/unix/guts/renameat.c b/ports/unix/guts/renameat.c
+index c8203b7..f13cd1e 100644
+--- a/ports/unix/guts/renameat.c
++++ b/ports/unix/guts/renameat.c
+@@ -1,15 +1,111 @@
+ /*
+- * Copyright (c) 2008-2010 Wind River Systems; see
++ * Copyright (c) 2008-2012 Wind River Systems; see
+  * guts/COPYRIGHT for information.
+  *
+  * static int
+  * wrap_renameat(int olddirfd, const char *oldpath, int newdirfd, const

char *newpath) {

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +9 -0
+  *    int rc = -1;
+  */
++      pseudo_msg_t *msg;
++      struct stat oldbuf, newbuf;
++      int oldrc, newrc;
++      int save_errno;
++      int old_db_entry = 0;
+
+-      pseudo_diag("help! unimplemented renameat [%s ->     %s].\n",

oldpath, newpath);
++ pseudo_debug(2, "renameat: %d,%s->%d,%s\n",
++ olddirfd, oldpath ? oldpath : "<nil>",
++ newdirfd, newpath ? newpath : "<nil>");
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++ if (olddirfd != AT_FDCWD || newdirfd != AT_FDCWD) {
++ errno = ENOSYS;
++ return -1;
++ }
++#endif
++
++ if (!oldpath || !newpath) {
++ errno = EFAULT;
++ return -1;
++ }
++
++ save_errno = errno;
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++ newrc = real_lstat(newpath,&newbuf);
++ oldrc = real_lstat(oldpath,&oldbuf);
++#else
++ oldrc = real___fxstatat(_STAT_VER, olddirfd, oldpath,&oldbuf,
AT_SYMLINK_NOFOLLOW);
++ newrc = real___fxstatat(_STAT_VER, newdirfd, newpath,&newbuf,
AT_SYMLINK_NOFOLLOW);

++#endif
++
++ errno = save_errno;
++
++ /* newpath must be removed. */
++ /* as with unlink, we have to mark that the file may get deleted
*/
++ msg = pseudo_client_op_plain(OP_MAY_UNLINK, 0, -1, newdirfd,
newpath, newrc ? NULL :&newbuf);
++ if (msg&& msg->result == RESULT_SUCCEED)

++ old_db_entry = 1;

+       rc = real_renameat(olddirfd, oldpath, newdirfd, newpath);
++      save_errno = errno;
++      if (old_db_entry) {

++ if (rc == -1) {
++ /* since we failed, that wasn't really unlinked --
put
++ * it back.
++ */
++ pseudo_client_op_plain(OP_CANCEL_UNLINK, 0, -1,
newdirfd, newpath,&newbuf);
++ } else {
++ /* confirm that the file was removed */
++ pseudo_client_op_plain(OP_DID_UNLINK, 0, -1,
newdirfd, newpath,&newbuf);
++ }
++ }
++ if (rc == -1) {

++              /* and we're done. */
++              errno = save_errno;
++              return rc;
++      }
++      save_errno = errno;
++      /* nothing to do for a "rename" of a link to itself */
++      if (newrc != -1&&     oldrc != -1&&

++ newbuf.st_dev == oldbuf.st_dev&&
++ newbuf.st_ino == oldbuf.st_ino) {
++ return rc;
++ }
++
++ /* rename(3) is not mv(1). rename(file, dir) fails; you must
provide
++ * the corrected path yourself. You can rename over a directory
only

++       * if the source is a directory.  Symlinks are simply removed.
++       *
++       * If we got here, the real rename call succeeded.  That means
newpath
++       * has been unlinked and oldpath has been linked to it.
++       *
++       * There are a ton of special cases to error check.  I don't check
++       * for any of them, because in every such case, the underlying

rename
++ * failed, and there is nothing to do.
++ * The only tricky part is that, because we used to ignore
symlinks,

++       * we may have to rename or remove directory trees even though in
++       * theory rename can never destroy a directory tree.
++       */

++ if (!old_db_entry) {
++ /* create an entry under the old name, which will then be
++ * renamed; this way, children would get renamed too, if
there
++ * were any.
++ */
++ if (newrc == 0) {
++ if (newbuf.st_dev != oldbuf.st_dev) {
++ oldbuf.st_dev = newbuf.st_dev;
++ oldbuf.st_ino = newbuf.st_ino;
++ }
++ }
++ pseudo_debug(1, "creating new '%s' [%llu] to rename\n",
++ oldpath, (unsigned long long) oldbuf.st_ino);
++ pseudo_client_op_plain(OP_LINK, 0, -1, olddirfd,
oldpath,&oldbuf);
++ }
++ /* special case: use 'fd' for olddirfd, because
++ * we know it has no other meaning for RENAME
++ */
++ pseudo_client_op_plain(OP_RENAME, 0, olddirfd, newdirfd,
newpath,&oldbuf, oldpath);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +10 -0
+
++      errno = save_errno;
+ /*    return rc;
+  * }
+  */
+diff --git a/pseudo_client.c b/pseudo_client.c
+index 48607c2..4a30420 100644
+--- a/pseudo_client.c
++++ b/pseudo_client.c
+@@ -988,6 +988,8 @@ base_path(int dirfd, const char *path, int

leave_last) {

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +8 -0
+               if (dirfd != -1&&     dirfd != AT_FDCWD) {
 
+                       if (dirfd>= 0) {
+                               basepath = fd_path(dirfd);
++                      }
++                      if (basepath) {
+                               baselen = strlen(basepath);
+                       } else {
+                               pseudo_diag("got *at() syscall for unknown

directory, fd %d\n", dirfd);
+@@ -1128,7 +1130,10 @@ pseudo_client_op(pseudo_op_t op, int access, int fd, int dirfd, const char *path

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +11 -0
+       if (path) {
+               pseudo_debug(2, " %s", path);
+       }
+-      if (fd != -1) {
++      /* for OP_RENAME in renameat, "fd" is also used for the
++       * second dirfd.
++       */
++      if (fd != -1&&     op != OP_RENAME) {
 
+               pseudo_debug(2, " [fd %d]", fd);
+       }
+       if (buf) {
meta/recipes-devtools/pseudo/pseudo_1.2.bb +4 -2
index f2ebc22..04bcbce 100644
@@ -1,10 +1,12 @@
   require pseudo.inc
 
-PR = "r4"
+PR = "r5"
 
   SRC_URI =
 "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
              file://oe-config.patch \
-           file://static_sqlite.patch"
+           file://static_sqlite.patch \
+           file://opendir.patch \
+           file://renameat.patch"
 
Quoted 4 lines
Quoted 3 lines
Quoted 3 lines
meta/recipes-devtools/pseudo/pseudo_1.2.bb +0 -0
   SRC_URI[md5sum] = "a2819084bab7e991f06626d02cf55048"
   SRC_URI[sha256sum] =

"4749a22df687f44d24c26e97170d4781a1bd52d5ee092364a40877e4d96ff058"

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

author
#22 lore raw

Re: [PATCH 10/20] pseudo: Wrap renameat and opendir

Quoted 3 lines · Mark Hatle

The pseudo upstream has been updated.  We should like just update the recipe to use git commit:         9461b2a88ba672c533a331f95dd5ba7eba683c77

yes that is for git recipe we still need patches for 1.2 recipe and default is to use 1.2

Quoted 462 lines

--Mark

Quoted 456 lines · Saul Wold
Quoted 42 lines · Khem Raj
Quoted 30 lines · Saul Wold
Quoted 28 lines · Khem Raj

---
  meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++++++ meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227
++++++++++++++++++++
  meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-

  3 files changed, 323 insertions(+), 2 deletions(-)

  create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +9 -0
new file mode 100644
index 0000000..d20f717
@@ -0,0 +1,92 @@
+commit 162f2692c399b93311652201a940fdaf9c9e6924
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 11:45:42 2012 -0600
+
+    Make opendir/closedir stash and forget directory names.
+
+    The dirfd(DIR *) interface allows you to get the fd for a DIR *,
+    meaning you can use it with openat(), meaning you can need its
+    path.  This causes a segfault.  Also gonna fix the base_path
Quoted 8 lines

meta/recipes-devtools/pseudo/pseudo/opendir.patch line 12

Quoted 3 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +3 -0
+    code not to segfault in that case, but first fix the underlying
+    problem.
+

Missing Upstream-Status: and Signed-off-by (yes I know we have an email header).

Quoted 2 lines

they are backports

Please update the patch!

Thanks
       Sau!

Quoted 395 lines
Quoted 395 lines

Thanks
        Sau!

Quoted 391 lines
meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +56 -0
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 4de488c..9625b38 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,3 +1,7 @@
++2012-02-02:
++      * (seebs) stash dir name for DIR * from opendir using dirfd.
++      * (seebs) add closedir.
++
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+         significant, and so's the clone change.
+diff --git a/ports/unix/guts/closedir.c b/ports/unix/guts/closedir.c
+new file mode 100644
+index 0000000..1085361
+--- /dev/null
++++ b/ports/unix/guts/closedir.c
+@@ -0,0 +1,20 @@
++/*
++ * Copyright (c) 2012 Wind River Systems; see
++ * guts/COPYRIGHT for information.
++ *
++ * static int
++ * wrap_closedir(DIR *dirp) {
++ *    int rc = -1;
++ */
++      if (!dirp) {
++              errno = EFAULT;
++              return -1;
++      }
++
++      int fd = dirfd(dirp);
++      pseudo_client_op(OP_CLOSE, 0, fd, -1, 0, 0);
++      rc = real_closedir(dirp);
++
++/*    return rc;
++ * }
++ */
+diff --git a/ports/unix/guts/opendir.c b/ports/unix/guts/opendir.c
+index 8eaa71f..e69717e 100644
+--- a/ports/unix/guts/opendir.c
++++ b/ports/unix/guts/opendir.c
+@@ -6,8 +6,25 @@
+  * wrap_opendir(const char *path) {
+  *    DIR * rc = NULL;
+  */
++      struct stat buf;
++      int save_errno;
+
+       rc = real_opendir(path);
++      if (rc) {
++              int fd;
++              save_errno = errno;
++              fd = dirfd(rc);
++              if (real_fstat(fd,&buf) == -1) {
 
++                      pseudo_debug(1, "diropen (fd %d) succeeded, but

fstat failed (%s).\n",
++                              fd, strerror(errno));
++                      pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1,
path, 0);
++              } else {
++                      pseudo_client_op_plain(OP_OPEN, PSA_READ, fd, -1,
path,&buf);
++              }
++
++
++              errno = save_errno;
++      }

meta/recipes-devtools/pseudo/pseudo/opendir.patch new file +9 -0
+
+ /*    return rc;
+  * }
+diff --git a/ports/unix/wrapfuncs.in b/ports/unix/wrapfuncs.in
+index e06e404..32250c4 100644
+--- a/ports/unix/wrapfuncs.in
++++ b/ports/unix/wrapfuncs.in
+@@ -21,6 +21,7 @@ long pathconf(const char *path, int name);
+ char *realpath(const char *name, char *resolved_name); /*

version="GLIBC_2.3" */
+ int remove(const char *path); /* flags=AT_SYMLINK_NOFOLLOW */
+ DIR *opendir(const char *path);
++int closedir(DIR *dirp);
+ char *tempnam(const char *template, const char *pfx);
+ char *tmpnam(char *s);
+ int truncate(const char *path, off_t length);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +7 -0
new file mode 100644
index 0000000..74c8585
@@ -0,0 +1,227 @@
+commit 795f2b44b7f692151556782f142a4a6e7d45d892
+Author: Peter Seebach<[email protected]>
+Date:   Thu Feb 2 15:49:21 2012 -0600
+
+    Implement renameat()
+
+    After three long years, someone tried to use this.  This was

impossibly
+    hard back when pseudo was written, because there was only one dirfd
+    provided for.  Thing is, now, the canonicalization happens in wrapfuncs,
+    so a small tweak to makewrappers to recognize that oldpath should use
+    olddirfd if it exists is enough to get us fully canonicalized paths
+    when needed.
+
+    Also fix the crash if base_path gets called with an fd for which we
have
+    no path.

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +26 -0
+
+diff --git a/ChangeLog.txt b/ChangeLog.txt
+index 9625b38..25bd463 100644
+--- a/ChangeLog.txt
++++ b/ChangeLog.txt
+@@ -1,6 +1,9 @@
+ 2012-02-02:
+       * (seebs) stash dir name for DIR * from opendir using dirfd.
+       * (seebs) add closedir.
++      * (seebs) add initial pass at renameat()
++      * (seebs) in base_path, don't try to strlen the result if
++        fd_path() returns NULL.
+
+ 2011-11-02:
+       * (seebs) Call this 1.2 because the UNLOAD change is moderately
+diff --git a/makewrappers b/makewrappers
+index 20bbf2b..bf344d6 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -211,12 +211,13 @@ class Function:
+         self.flags = '0'
+         self.port = port
+         self.directory = ''
+-      self.version = 'NULL'
++        self.version = 'NULL'
+         # On Darwin, some functions are SECRETLY converted to

foo$INODE64
+         # when called.  So we have to look those up for real_*
+         self.inode64 = None
+         self.real_func = None
+         self.paths_to_munge = []
++        self.dirfds = {}
+         self.hand_wrapped = None
+         # used for the copyright date when creating stub functions
+         self.date = datetime.date.today().year
+@@ -239,6 +240,7 @@ class Function:
+         # * If the arg has a name ending in 'path', we will canonicalize
it.
+         # * If the arg is named 'dirfd' or 'flags', it becomes the default
+         #   values for the dirfd and flags arguments when canonicalizing.
++        # * If the name ends in dirfd, we do the same fancy stuff.
+         # * Note that the "comments" field (/* ... */ after the decl) can
+         #   override the dirfd/flags values.
+         self.args = ArgumentList(bits.group(2))
+@@ -246,7 +248,9 @@ class Function:
+             # ignore varargs, they never get these special treatments
+             if arg.vararg:
+                 pass
+-            elif arg.name == 'dirfd':
++            elif arg.name[-5:] == 'dirfd':
++                if len(arg.name)>     5:
++                    self.dirfds[arg.name[:-5]] = True
+                 self.dirfd = 'dirfd'
+             elif arg.name == 'flags':
+                 self.flags = 'flags'
+@@ -325,9 +329,13 @@ class Function:
+         """create/allocate canonical paths"""
+         alloc_paths = []
+         for path in self.paths_to_munge:
++            prefix = path[:-4]
++          if not prefix in self.dirfds:
++                prefix = ''
++            print "for path %s: prefix<%s>" % ( path, prefix )
+             alloc_paths.append(
+-                "%s = pseudo_root_path(__func__, __LINE__, %s, %s, %s);"
%
+-                (path, self.dirfd, path, self.flags))
++                "%s = pseudo_root_path(__func__, __LINE__, %s%s, %s, %s);" %
++                (path, prefix, self.dirfd, path, self.flags))
+         return "\n\t\t\t".join(alloc_paths)

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +14 -0
+
+     def free_paths(self):
+diff --git a/ports/unix/guts/renameat.c b/ports/unix/guts/renameat.c
+index c8203b7..f13cd1e 100644
+--- a/ports/unix/guts/renameat.c
++++ b/ports/unix/guts/renameat.c
+@@ -1,15 +1,111 @@
+ /*
+- * Copyright (c) 2008-2010 Wind River Systems; see
++ * Copyright (c) 2008-2012 Wind River Systems; see
+  * guts/COPYRIGHT for information.
+  *
+  * static int
+  * wrap_renameat(int olddirfd, const char *oldpath, int newdirfd,

const
char *newpath) {
+  *    int rc = -1;
+  */
++      pseudo_msg_t *msg;
++      struct stat oldbuf, newbuf;
++      int oldrc, newrc;
++      int save_errno;
++      int old_db_entry = 0;
+
+-      pseudo_diag("help! unimplemented renameat [%s ->     %s].\n", oldpath, newpath);
++      pseudo_debug(2, "renameat: %d,%s->%d,%s\n",
++              olddirfd, oldpath ? oldpath : "<nil>",
++              newdirfd, newpath ? newpath : "<nil>");
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++      if (olddirfd != AT_FDCWD || newdirfd != AT_FDCWD) { ++              errno = ENOSYS;
++              return -1;
++      }
++#endif
++
++      if (!oldpath || !newpath) {
++              errno = EFAULT;
++              return -1;
++      }
++
++      save_errno = errno;
++
++#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS
++      newrc = real_lstat(newpath,&newbuf);
++      oldrc = real_lstat(oldpath,&oldbuf);
++#else
++      oldrc = real___fxstatat(_STAT_VER, olddirfd, oldpath,&oldbuf, AT_SYMLINK_NOFOLLOW);
++      newrc = real___fxstatat(_STAT_VER, newdirfd, newpath,&newbuf, AT_SYMLINK_NOFOLLOW);

++#endif
++
++      errno = save_errno;
++
++      /* newpath must be removed. */
++      /* as with unlink, we have to mark that the file may get deleted
*/
++      msg = pseudo_client_op_plain(OP_MAY_UNLINK, 0, -1, newdirfd, newpath, newrc ? NULL :&newbuf);
++      if (msg&&     msg->result == RESULT_SUCCEED)

++              old_db_entry = 1;
+       rc = real_renameat(olddirfd, oldpath, newdirfd, newpath); ++      save_errno = errno;
++      if (old_db_entry) {
++              if (rc == -1) {
++                      /* since we failed, that wasn't really unlinked --
put
++                       * it back.
++                       */
++                      pseudo_client_op_plain(OP_CANCEL_UNLINK, 0, -1, newdirfd, newpath,&newbuf);
++              } else {
++                      /* confirm that the file was removed */ ++                      pseudo_client_op_plain(OP_DID_UNLINK, 0, -1, newdirfd, newpath,&newbuf);
++              }
++      }
++      if (rc == -1) {
++              /* and we're done. */
++              errno = save_errno;
++              return rc;
++      }
++      save_errno = errno;
++      /* nothing to do for a "rename" of a link to itself */ ++      if (newrc != -1&&     oldrc != -1&&
++          newbuf.st_dev == oldbuf.st_dev&&
++          newbuf.st_ino == oldbuf.st_ino) {
++              return rc;
++        }
++
++      /* rename(3) is not mv(1).  rename(file, dir) fails; you must provide
++       * the corrected path yourself.  You can rename over a directory
only
++       * if the source is a directory.  Symlinks are simply removed. ++       *
++       * If we got here, the real rename call succeeded.  That means newpath
++       * has been unlinked and oldpath has been linked to it. ++       *
++       * There are a ton of special cases to error check.  I don't check
++       * for any of them, because in every such case, the underlying rename
++       * failed, and there is nothing to do.
++       * The only tricky part is that, because we used to ignore symlinks,
++       * we may have to rename or remove directory trees even though in
++       * theory rename can never destroy a directory tree. ++       */
++      if (!old_db_entry) {
++              /* create an entry under the old name, which will then be
++               * renamed; this way, children would get renamed too, if
there
++               * were any.
++               */
++              if (newrc == 0) {
++                      if (newbuf.st_dev != oldbuf.st_dev) { ++                              oldbuf.st_dev = newbuf.st_dev; ++                              oldbuf.st_ino = newbuf.st_ino; ++                      }
++              }
++              pseudo_debug(1, "creating new '%s' [%llu] to rename\n", ++                      oldpath, (unsigned long long) oldbuf.st_ino); ++              pseudo_client_op_plain(OP_LINK, 0, -1, olddirfd, oldpath,&oldbuf);
++      }
++      /* special case: use 'fd' for olddirfd, because
++       * we know it has no other meaning for RENAME
++       */
++      pseudo_client_op_plain(OP_RENAME, 0, olddirfd, newdirfd, newpath,&oldbuf, oldpath);

meta/recipes-devtools/pseudo/pseudo/renameat.patch new file +10 -0
+
++      errno = save_errno;
+ /*    return rc;
+  * }
+  */
+diff --git a/pseudo_client.c b/pseudo_client.c
+index 48607c2..4a30420 100644
+--- a/pseudo_client.c
++++ b/pseudo_client.c
+@@ -988,6 +988,8 @@ base_path(int dirfd, const char *path, int

leave_last) {
+               if (dirfd != -1&&     dirfd != AT_FDCWD) {

+                       if (dirfd>= 0) {
+                               basepath = fd_path(dirfd); ++                      }
++                      if (basepath) {
+                               baselen = strlen(basepath);
+                       } else {
+                               pseudo_diag("got *at() syscall for unknown
directory, fd %d\n", dirfd);
+@@ -1128,7 +1130,10 @@ pseudo_client_op(pseudo_op_t op, int access, int
fd, int dirfd, const char *path
+       if (path) {
+               pseudo_debug(2, " %s", path);
+       }
+-      if (fd != -1) {
++      /* for OP_RENAME in renameat, "fd" is also used for the ++       * second dirfd.
++       */
++      if (fd != -1&&     op != OP_RENAME) {

+               pseudo_debug(2, " [fd %d]", fd);
+       }
+       if (buf) {

meta/recipes-devtools/pseudo/pseudo_1.2.bb +0 -0
index f2ebc22..04bcbce 100644
@@ -1,10 +1,12 @@

  require pseudo.inc

meta/recipes-devtools/pseudo/pseudo_1.2.bb +1 -1
-PR = "r4"
+PR = "r5"

  SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
             file://oe-config.patch \
-           file://static_sqlite.patch"
+           file://static_sqlite.patch \
+           file://opendir.patch \
+           file://renameat.patch"

Quoted 5 lines
Quoted 3 lines
Quoted 3 lines

  SRC_URI[md5sum] = "a2819084bab7e991f06626d02cf55048" SRC_URI[sha256sum] = "4749a22df687f44d24c26e97170d4781a1bd52d5ee092364a40877e4d96ff058"

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

author
#23 lore raw

PATCH v2 11/20 uclibc: Upgrade recipes from 0.9.32 -> 0.9.33

In reply to Khem Raj

Prefer 0.9.33 by default
Delete recipes for 0.9.32

---
 meta/conf/distro/include/tcmode-default.inc        |    2 +-
 ...rch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch |   29 --
 ...fd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch |   33 --
 .../uclibc-0.9.32/detect-bx-availibility.patch     |   75 ----
 .../uclibc/uclibc-0.9.32/epoll-asm-fix.patch       |   25 --
 .../uclibc/uclibc-0.9.32/include-arm-asm.h.patch   |   65 ---
 .../uclibc/uclibc-0.9.32/mount.h-update.patch      |   85 ----
 .../uclibc-0.9.32/remove-eabi-oabi-selection.patch |   91 ----
 .../uclibc-0.9.32/remove-sub-arch-variants.patch   |  215 ---------
 .../uclibc/uclibc-0.9.32/rtld_no.patch             |  215 ---------
 .../uclibc/uclibc-0.9.32/select-force-thumb.patch  |  172 --------
 .../uclibc/uclibc-0.9.32/sync_file_range2.patch    |   47 --
 .../uclibc-0.9.32/transform-eabi-oabi-choice.patch |   71 ---
 .../uclibc-0.9.32/uclibc-arm-ftruncate64.patch     |   13 -
 .../uclibc-0.9.32/uclibc_scheduler_update.patch    |  455 --------------------
 ...rr-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch |   32 ++
 ...fstat-Use-64bit-version-of-syscall-if-ava.patch |  177 ++++++++
 .../argp-headers.patch                             |    2 +
 .../argp-support.patch                             |    3 +
 .../compile-arm-fork-with-O2.patch                 |    2 +-
 .../uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch    |   25 ++
 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch  |   37 ++
 ...so_use_arm_dl_linux_resolve_in_thumb_mode.patch |    6 +
 .../libc_symbols_include_bits_uclibc_config.patch  |   19 +
 .../mips/uClibc.machine                            |    0
 .../orign_path.patch                               |   94 ++--
 .../powerpc_copysignl.patch                        |    6 +
 .../remove_attribute_optimize_Os.patch             |   17 +-
 .../{uclibc-0.9.32 => uclibc-0.9.33}/uClibc.distro |    8 +-
 .../uClibc.machine                                 |    0
 .../uclibc-execvpe.patch                           |    3 +
 .../uclibc_enable_log2_test.patch                  |    5 +
 ...-initial_0.9.32.bb => uclibc-initial_0.9.33.bb} |    0
 .../uclibc/{uclibc_0.9.32.bb => uclibc_0.9.33.bb}  |   26 +-
 34 files changed, 386 insertions(+), 1669 deletions(-)
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/argp-headers.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/argp-support.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/compile-arm-fork-with-O2.patch (97%)
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch (86%)
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/mips/uClibc.machine (100%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/orign_path.patch (64%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/powerpc_copysignl.patch (96%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/remove_attribute_optimize_Os.patch (93%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uClibc.distro (96%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uClibc.machine (100%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uclibc-execvpe.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/uclibc_enable_log2_test.patch (81%)
 rename meta/recipes-core/uclibc/{uclibc-initial_0.9.32.bb => uclibc-initial_0.9.33.bb} (100%)
 rename meta/recipes-core/uclibc/{uclibc_0.9.32.bb => uclibc_0.9.33.bb} (45%)
meta/conf/distro/include/tcmode-default.inc +1 -1
index 5bb253e..b7c2160 100644
@@ -20,7 +20,7 @@ GCCVERSION ?= "4.6%"
 SDKGCCVERSION ?= "4.6%"
 BINUVERSION ?= "2.22"
 EGLIBCVERSION ?= "2.13"
-UCLIBCVERSION ?= "0.9.32"
+UCLIBCVERSION ?= "0.9.33"
 LINUXLIBCVERSION ?= "3.1"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch deleted +0 -29
deleted file mode 100644
index da97d38..0000000
@@ -1,29 +0,0 @@
-From 06cdcd2a9dd6b46b7fbb5b3ae0a62bdb7ee6c402 Mon Sep 17 00:00:00 2001
-From: Khem Raj <[email protected]>
-Date: Mon, 27 Jun 2011 17:48:18 -0700
-Subject: [PATCH] Config.in.arch: Free UCLIBC_HAS_FPU setting from depending on UCLIBC_HAS_FLOATS
-
-UCLIBC_HAS_FLOATS and UCLIBC_HAS_FPU are denoting two different aspects.
-UCLIBC_HAS_FLOATS covers the floating point operations which has nothing
-to do if you have FPU or not.
-
-Signed-off-by: Khem Raj <[email protected]>
----
- extra/Configs/Config.in.arch |    1 -
- 1 files changed, 0 insertions(+), 1 deletions(-)
-
-diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch
-index 5f7a2b0..c1ca390 100644
---- a/extra/Configs/Config.in.arch
-+++ b/extra/Configs/Config.in.arch
-@@ -133,7 +133,6 @@ config UCLIBC_HAS_FLOATS
- 
- config UCLIBC_HAS_FPU
- 	bool "Target CPU has a floating point unit (FPU)"
--	depends on UCLIBC_HAS_FLOATS
- 	default y
- 	help
- 	  If your target CPU does not have a Floating Point Unit (FPU) or a
--- 
-1.7.0.4
-
meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch deleted +0 -33
deleted file mode 100644
index 6892ceb..0000000
@@ -1,33 +0,0 @@
-From ecc7d34cbbaf83aae87b091555650ed33e27ed2e Mon Sep 17 00:00:00 2001
-From: Khem Raj <[email protected]>
-Date: Thu, 30 Jun 2011 00:32:11 -0700
-Subject: [PATCH] mips/signalfd.h: SFD_NONBLOCK for mips is 0200 unlike 04000 commonly
-
-Signed-off-by: Khem Raj <[email protected]>
----
- include/sys/signalfd.h |    9 +++++++++
- 1 files changed, 9 insertions(+), 0 deletions(-)
-
-diff --git a/include/sys/signalfd.h b/include/sys/signalfd.h
-index 8cee17c..f1cb63a 100644
---- a/include/sys/signalfd.h
-+++ b/include/sys/signalfd.h
-@@ -64,6 +64,15 @@ enum
- # define SFD_NONBLOCK SFD_NONBLOCK
-   };
- 
-+#elif defined __mips__
-+enum
-+  {
-+    SFD_CLOEXEC = 02000000,
-+# define SFD_CLOEXEC SFD_CLOEXEC
-+    SFD_NONBLOCK = 0200
-+# define SFD_NONBLOCK SFD_NONBLOCK
-+  };
-+
- #else
- enum
-   {
--- 
-1.7.0.4
-
meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -75

75 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch deleted +0 -25
deleted file mode 100644
index bcd834d..0000000
@@ -1,25 +0,0 @@
-Fix a compile error due to last argument to syscall() not being memory addressable.
-
-Upstream-Status: Pending
-Signed-off-by: Phil Blundell <[email protected]>
-
-diff --git a/libc/sysdeps/linux/common/epoll.c b/libc/sysdeps/linux/common/epoll.c
-index 85b0cfd..c034b2c 100644
---- a/libc/sysdeps/linux/common/epoll.c
-+++ b/libc/sysdeps/linux/common/epoll.c
-@@ -67,12 +67,13 @@ extern __typeof(epoll_pwait) __libc_epoll_pwait;
- int __libc_epoll_pwait(int epfd, struct epoll_event *events, int maxevents,
- 						int timeout, const sigset_t *set)
- {
-+	int nsig = _NSIG / 8;
- 	if (SINGLE_THREAD_P)
--		return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8);
-+		return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig);
- # ifdef __UCLIBC_HAS_THREADS_NATIVE__
- 	else {
- 		int oldtype = LIBC_CANCEL_ASYNC ();
--		int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8);
-+		int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig);
- 		LIBC_CANCEL_RESET (oldtype);
- 		return result;
- 	}
meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -65

65 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -85

85 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch deleted +0 -91

91 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch deleted +0 -215

215 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -215

215 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -172

172 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -47

47 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch deleted +0 -71

71 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -13
deleted file mode 100644
index 504d37b..0000000
@@ -1,13 +0,0 @@
-Index: uclibc-0.9.29/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-===================================================================
---- uclibc-0.9.29.orig/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-+++ uclibc-0.9.29/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-@@ -38,4 +38,8 @@
- /* define if target supports IEEE signed zero floats */
- #define __UCLIBC_HAVE_SIGNED_ZERO__
- 
-+#ifdef __ARM_EABI__
-+# define __UCLIBC_TRUNCATE64_HAS_4_ARGS__
-+#endif
-+
- #endif /* _BITS_UCLIBC_ARCH_FEATURES_H */
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch deleted +0 -455

455 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch new file +32 -0
new file mode 100644
index 0000000..2f0c191
@@ -0,0 +1,32 @@
+From 6c3919a6d4a8686772e2a302bf951548ee24a8c1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Fri, 3 Feb 2012 10:57:44 -0800
+Subject: [PATCH] Declare __err and pass it to INTERNAL_SYSCALL_NCS so
+ subsequent macros can use it
+
+Signed-off-by: Khem Raj <[email protected]>
+---
+ libc/sysdeps/linux/common/bits/syscalls-common.h |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+
+Upstream-Status: Pending
+
+diff --git a/libc/sysdeps/linux/common/bits/syscalls-common.h b/libc/sysdeps/linux/common/bits/syscalls-common.h
+index faebd1b..0f5a929 100644
+--- a/libc/sysdeps/linux/common/bits/syscalls-common.h
++++ b/libc/sysdeps/linux/common/bits/syscalls-common.h
+@@ -59,8 +59,8 @@
+ #ifndef INLINE_SYSCALL_NOERR_NCS
+ # define INLINE_SYSCALL_NOERR_NCS(name, nr, args...)			\
+ ({									\
+-	/*INTERNAL_SYSCALL_DECL(__err);*/					\
+-	long __res = INTERNAL_SYSCALL_NCS(name, /*__err*/, nr, args);	\
++	INTERNAL_SYSCALL_DECL(__err);					\
++	long __res = INTERNAL_SYSCALL_NCS(name, __err, nr, args);	\
+ 	__res;								\
+ })
+ #endif
+-- 
+1.7.5.4
+
meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch new file +177 -0

177 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.33/argp-headers.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-headers.patch +2 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/argp-headers.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/argp-headers.patch
index 7fd148f..b31b991 100644
@@ -8,6 +8,8 @@ Signed-off-by: Salvatore Cro <salvatore.cro at st.com>
  create mode 100644 include/argp.h
  create mode 100644 libc/argp/argp-fmtstream.h
 
+Upstream-Status: Pending
+
 Index: git/include/argp.h
 ===================================================================
 --- /dev/null
meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch +3 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch
index 04a3c78..3e9680f 100644
@@ -13,6 +13,9 @@ it doesn't need to link libuargp.so explicitely.
 Signed-off-by: Salvatore Cro <salvatore.cro at st.com>
 Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono at st.com>
 Signed-off-by: Carmelo Amoroso <carmelo.amoroso at st.com>
+
+Upstream-Status: Pending
+
 ---
  Makefile.in                                 |    8 +
  Makerules                                   |    8 +-
meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch +1 -1
similarity index 97%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch
index 429f27d..15ee0ca 100644
@@ -1,5 +1,5 @@
 When compiling in thumb mode for arm with -Os gcc gives up since it can not find registers
-to spill. So we use -O2 option for compiling fork.c It may be addressable is gcc.
+to spill. So we use -O2 option for compiling fork.c It may be addressable in gcc.
 
 Signed-off-by: Khem Raj <[email protected]>
 
meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch new file +25 -0
new file mode 100644
index 0000000..4e900f3
@@ -0,0 +1,25 @@
+Add definition of MSG_WAITFORONE and MSG_CMSG_CLOEXEC
+
+Upstream-Status: Pending
+
+Index: git/libc/sysdeps/linux/common/bits/socket.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/common/bits/socket.h	2012-01-26 23:23:21.537456132 -0800
++++ git/libc/sysdeps/linux/common/bits/socket.h	2012-01-26 23:25:10.125461388 -0800
+@@ -235,8 +235,15 @@
+ #define	MSG_ERRQUEUE	MSG_ERRQUEUE
+     MSG_NOSIGNAL	= 0x4000, /* Do not generate SIGPIPE.  */
+ #define	MSG_NOSIGNAL	MSG_NOSIGNAL
+-    MSG_MORE		= 0x8000  /* Sender will send more.  */
++    MSG_MORE		= 0x8000,  /* Sender will send more.  */
+ #define	MSG_MORE	MSG_MORE
++    MSG_WAITFORONE      = 0x10000, /* Wait for at least one packet to return.*/
++#define MSG_WAITFORONE  MSG_WAITFORONE
++
++    MSG_CMSG_CLOEXEC    = 0x40000000    /* Set close_on_exit for file
++                                           descriptor received through
++                                           SCM_RIGHTS.  */
++#define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC
+   };
+ 
+ 
meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch new file +37 -0
new file mode 100644
index 0000000..481f23b
@@ -0,0 +1,37 @@
+Implement dup3()
+
+Upstream-Status: Pending
+
+Index: git/libc/sysdeps/linux/common/dup3.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ git/libc/sysdeps/linux/common/dup3.c	2012-01-27 07:40:52.802900849 -0800
+@@ -0,0 +1,15 @@
++/* vi: set sw=4 ts=4: */
++/*
++ * dup3() for uClibc
++ *
++ * Copyright (C) 2000-2006 Erik Andersen <[email protected]>
++ *
++ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
++ */
++
++#include <sys/syscall.h>
++#include <unistd.h>
++
++
++_syscall3(int, dup3, int, oldfd, int, newfd, int, flags)
++libc_hidden_def(dup3)
+Index: git/include/unistd.h
+===================================================================
+--- git.orig/include/unistd.h	2012-01-27 01:19:17.521792781 -0800
++++ git/include/unistd.h	2012-01-27 07:40:03.106898447 -0800
+@@ -512,6 +512,8 @@
+ /* Duplicate FD to FD2, closing FD2 and making it open on the same file.  */
+ extern int dup2 (int __fd, int __fd2) __THROW;
+ libc_hidden_proto(dup2)
++extern int dup3 (int __fd, int __fd2, int __flags) __THROW;
++libc_hidden_proto(dup3)
+ 
+ /* NULL-terminated array of "NAME=VALUE" environment variables.  */
+ extern char **__environ;
meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch +6 -0
similarity index 86%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch
index cfa68ce..d44acca 100644
@@ -1,3 +1,9 @@
+resolver code should always be in arm mode
+
+Signed-off-by: Khem Raj <[email protected]>
+
+Upstream-Status: Pending
+
 Index: uClibc/ldso/ldso/arm/resolve.S
 ===================================================================
 --- uClibc.orig/ldso/ldso/arm/resolve.S	2009-03-20 12:03:32.000000000 -0700
meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch new file +19 -0
new file mode 100644
index 0000000..8064115
@@ -0,0 +1,19 @@
+Index: git/include/libc-symbols.h
+===================================================================
+--- git.orig/include/libc-symbols.h	2011-07-05 17:04:41.171219323 -0700
++++ git/include/libc-symbols.h	2011-07-05 22:50:36.851661478 -0700
+@@ -48,10 +48,12 @@
+ 
+    */
+ 
+-#include <bits/uClibc_arch_features.h>
+-
+ /* Enable declarations of GNU extensions, since we are compiling them.  */
+ #define _GNU_SOURCE	1
++#define __need_uClibc_config_h
++#include <bits/uClibc_config.h>
++#undef __need_uClibc_config_h
++#include <bits/uClibc_arch_features.h>
+ 
+ /* Prepare for the case that `__builtin_expect' is not available.  */
+ #if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ < 96
meta/recipes-core/uclibc/uclibc-0.9.33/mips/uClibc.machine renamed from meta/recipes-core/uclibc/uclibc-0.9.32/mips/uClibc.machine +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/mips/uClibc.machine
rename to meta/recipes-core/uclibc/uclibc-0.9.33/mips/uClibc.machine
meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +48 -46

172 lines not on this page · raw message

meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +6 -0
similarity index 96%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch
index 339ce7f..3fa10af 100644
@@ -1,3 +1,9 @@
+Add ppc copysignl implementation
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <[email protected]>
+
 Index: git/libc/sysdeps/linux/powerpc/Makefile.arch
 ===================================================================
 --- git.orig/libc/sysdeps/linux/powerpc/Makefile.arch
meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch +5 -12
similarity index 93%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch
index 1930383..bee251c 100644
@@ -1,15 +1,8 @@
-Index: git/include/features.h
-===================================================================
---- git.orig/include/features.h
-+++ git/include/features.h
-@@ -186,7 +186,6 @@
- # define __need_uClibc_config_h
- # include <bits/uClibc_config.h>
- # undef __need_uClibc_config_h
--
- /* For uClibc, always optimize for size -- this should disable
-  * a lot of expensive inlining...
-  * TODO: this is wrong! __OPTIMIZE_SIZE__ is an indicator of
+Dont support localised optimizations this helps to have a global -O level
+
+Signed-off-by: Khem Raj <[email protected]>
+Upstream-Status: Pending
+
 Index: git/libpthread/nptl/pthread_mutex_timedlock.c
 ===================================================================
 --- git.orig/libpthread/nptl/pthread_mutex_timedlock.c
meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.distro renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.distro +7 -1
similarity index 96%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.distro
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.distro
index 5638d47..c33bf8e 100644
@@ -181,4 +181,10 @@ UCLIBC_HAS_FLOATS=y
 
 # needed by systemd
 UCLIBC_HAS_UTMPX=y
-
+UCLIBC_LINUX_MODULE_26=y
+UCLIBC_HAS_RESOLVER_SUPPORT=y
+# needed for LTP
+UCLIBC_SUSV4_LEGACY=y
+UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y
+DO_XSI_MATH=y
+UCLIBC_SV4_DEPRECATED=y
meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.machine renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.machine +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.machine
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.machine
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch +3 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch
index cd90a09..fe191fc 100644
@@ -12,6 +12,9 @@ Signed-off-by: Henning Heinold <[email protected]>
  3 files changed, 46 insertions(+), 5 deletions(-)
  create mode 100644 libc/unistd/execvpe.c
 
+
+Upstream-Status: Pending
+
 diff --git a/include/unistd.h b/include/unistd.h
 index 9568790..070e4f2 100644
 --- a/include/unistd.h
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch +5 -0
similarity index 81%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch
index f8f3a7d..37a5988 100644
@@ -1,3 +1,8 @@
+uclibc now has log2 so enable the tests
+
+Signed-off-by: Khem Raj <[email protected]>
+Upstream-Status: Pending
+
 Index: uClibc/test/math/libm-test.inc
 ===================================================================
 --- uClibc/test/math/libm-test.inc	(revision 23784)
meta/recipes-core/uclibc/uclibc-initial_0.9.33.bb renamed from meta/recipes-core/uclibc/uclibc-initial_0.9.32.bb +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-initial_0.9.32.bb
rename to meta/recipes-core/uclibc/uclibc-initial_0.9.33.bb
meta/recipes-core/uclibc/uclibc_0.9.33.bb renamed from meta/recipes-core/uclibc/uclibc_0.9.32.bb +9 -17
similarity index 45%
rename from meta/recipes-core/uclibc/uclibc_0.9.32.bb
rename to meta/recipes-core/uclibc/uclibc_0.9.33.bb
index 235b436..b559fd4 100644
@@ -1,34 +1,26 @@
-SRCREV="9152c4d67c763fde5712e2d181d92c0d7e1e2ab9"
+SRCREV="1548ee3ca582f3732136e71613c87c16230f71cc"
 
 require uclibc.inc
-PR = "${INC_PR}.3"
+
+PR = "${INC_PR}.0"
 PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
 SRC_URI = "git://uclibc.org/uClibc.git;branch=${PV};protocol=git \
 	file://uClibc.machine \
 	file://uClibc.distro \
-	file://uclibc-arm-ftruncate64.patch \
 	file://uclibc_enable_log2_test.patch \
 	file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch \
-	file://select-force-thumb.patch \
-	file://remove-sub-arch-variants.patch \
-	file://transform-eabi-oabi-choice.patch \
-	file://include-arm-asm.h.patch \
-	file://detect-bx-availibility.patch \
-	file://remove-eabi-oabi-selection.patch \
 	file://powerpc_copysignl.patch \
 	file://argp-support.patch \
 	file://argp-headers.patch \
 	file://remove_attribute_optimize_Os.patch \
 	file://compile-arm-fork-with-O2.patch \
-	file://epoll-asm-fix.patch \
-	file://orign_path.patch \
-	file://rtld_no.patch \
-	file://0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch \
-	file://0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch \
 	file://uclibc-execvpe.patch \
-	file://uclibc_scheduler_update.patch \
-	file://sync_file_range2.patch \
-	file://mount.h-update.patch \
+	file://orign_path.patch \
+	file://dup3.patch \
+	file://define-MSG_CMSG_CLOEXEC.patch \
+	file://0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch \
+	file://0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch \
 	"
+
 S = "${WORKDIR}/git"
Signature · 1 line
1.7.5.4
#24 lore raw

Re: [PATCH 11/20] uclibc: Upgrade recipes from 0.9.32 -> 0.9.33

Quoted 40 lines · Khem Raj

Prefer 0.9.33 by default
Delete recipes for 0.9.32

---
  meta/conf/distro/include/tcmode-default.inc        |    2 +-
  ...rch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch |   29 --
  ...fd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch |   33 --
  .../uclibc-0.9.32/detect-bx-availibility.patch     |   75 ----
  .../uclibc/uclibc-0.9.32/epoll-asm-fix.patch       |   25 --
  .../uclibc/uclibc-0.9.32/include-arm-asm.h.patch   |   65 ---
  .../uclibc/uclibc-0.9.32/mount.h-update.patch      |   85 ----
  .../uclibc-0.9.32/remove-eabi-oabi-selection.patch |   91 ----
  .../uclibc-0.9.32/remove-sub-arch-variants.patch   |  215 ---------
  .../uclibc/uclibc-0.9.32/rtld_no.patch             |  215 ---------
  .../uclibc/uclibc-0.9.32/select-force-thumb.patch  |  172 --------
  .../uclibc/uclibc-0.9.32/sync_file_range2.patch    |   47 --
  .../uclibc-0.9.32/transform-eabi-oabi-choice.patch |   71 ---
  .../uclibc-0.9.32/uclibc-arm-ftruncate64.patch     |   13 -
  .../uclibc-0.9.32/uclibc_scheduler_update.patch    |  455 --------------------
  ...rr-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch |   32 ++
  ...fstat-Use-64bit-version-of-syscall-if-ava.patch |  177 ++++++++
  .../argp-headers.patch                             |    2 +
  .../argp-support.patch                             |    3 +
  .../compile-arm-fork-with-O2.patch                 |    2 +-
  .../uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch    |   25 ++
  meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch  |   37 ++
  ...so_use_arm_dl_linux_resolve_in_thumb_mode.patch |    6 +
  .../libc_symbols_include_bits_uclibc_config.patch  |   19 +
  .../mips/uClibc.machine                            |    0
  .../orign_path.patch                               |   94 ++--
  .../powerpc_copysignl.patch                        |    6 +
  .../remove_attribute_optimize_Os.patch             |   17 +-
  .../{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.distro |    8 +-
  .../uClibc.machine                                 |    0
  .../uclibc-execvpe.patch                           |    3 +
  .../uclibc_enable_log2_test.patch                  |    5 +
  ...-initial_0.9.32.bb =>  uclibc-initial_0.9.33.bb} |    0
  .../uclibc/{uclibc_0.9.32.bb =>  uclibc_0.9.33.bb}  |   26 +-
  34 files changed, 386 insertions(+), 1669 deletions(-)
Quoted 16 lines

delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch
delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch
create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch

Missing Upstream-Status in this patch

Quoted 1 line

rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>

uclibc-0.9.33}/argp-headers.patch (99%)

Quoted 6 lines

rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/argp-support.patch (99%)
rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/compile-arm-fork-with-O2.patch (97%) create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch
create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch
rename meta/recipes-core/uclibc/{uclibc-0.9.32 => uclibc-0.9.33}/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch (86%) create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch

Also missing Upstream-Status.

Quoted 2,430 lines
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/mips/uClibc.machine (100%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/orign_path.patch (64%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/powerpc_copysignl.patch (96%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/remove_attribute_optimize_Os.patch (93%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.distro (96%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.machine (100%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uclibc-execvpe.patch (99%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uclibc_enable_log2_test.patch (81%)

rename meta/recipes-core/uclibc/{uclibc-initial_0.9.32.bb => uclibc-initial_0.9.33.bb} (100%) rename meta/recipes-core/uclibc/{uclibc_0.9.32.bb => uclibc_0.9.33.bb} (45%)

meta/conf/distro/include/tcmode-default.inc +1 -1
index 5bb253e..b7c2160 100644
@@ -20,7 +20,7 @@ GCCVERSION ?= "4.6%"
  SDKGCCVERSION ?= "4.6%"
  BINUVERSION ?= "2.22"
  EGLIBCVERSION ?= "2.13"
-UCLIBCVERSION ?= "0.9.32"
+UCLIBCVERSION ?= "0.9.33"
  LINUXLIBCVERSION ?= "3.1"
 
  PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch deleted +0 -29
deleted file mode 100644
index da97d38..0000000
@@ -1,29 +0,0 @@
-From 06cdcd2a9dd6b46b7fbb5b3ae0a62bdb7ee6c402 Mon Sep 17 00:00:00 2001
-From: Khem Raj<[email protected]>
-Date: Mon, 27 Jun 2011 17:48:18 -0700
-Subject: [PATCH] Config.in.arch: Free UCLIBC_HAS_FPU setting from depending on UCLIBC_HAS_FLOATS
-
-UCLIBC_HAS_FLOATS and UCLIBC_HAS_FPU are denoting two different aspects.
-UCLIBC_HAS_FLOATS covers the floating point operations which has nothing
-to do if you have FPU or not.
-
-Signed-off-by: Khem Raj<[email protected]>
----
- extra/Configs/Config.in.arch |    1 -
- 1 files changed, 0 insertions(+), 1 deletions(-)
-
-diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch
-index 5f7a2b0..c1ca390 100644
---- a/extra/Configs/Config.in.arch
-+++ b/extra/Configs/Config.in.arch
-@@ -133,7 +133,6 @@ config UCLIBC_HAS_FLOATS
-
- config UCLIBC_HAS_FPU
- 	bool "Target CPU has a floating point unit (FPU)"
--	depends on UCLIBC_HAS_FLOATS
- 	default y
- 	help
- 	  If your target CPU does not have a Floating Point Unit (FPU) or a
---
-1.7.0.4
-
meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch deleted +0 -33
deleted file mode 100644
index 6892ceb..0000000
@@ -1,33 +0,0 @@
-From ecc7d34cbbaf83aae87b091555650ed33e27ed2e Mon Sep 17 00:00:00 2001
-From: Khem Raj<[email protected]>
-Date: Thu, 30 Jun 2011 00:32:11 -0700
-Subject: [PATCH] mips/signalfd.h: SFD_NONBLOCK for mips is 0200 unlike 04000 commonly
-
-Signed-off-by: Khem Raj<[email protected]>
----
- include/sys/signalfd.h |    9 +++++++++
- 1 files changed, 9 insertions(+), 0 deletions(-)
-
-diff --git a/include/sys/signalfd.h b/include/sys/signalfd.h
-index 8cee17c..f1cb63a 100644
---- a/include/sys/signalfd.h
-+++ b/include/sys/signalfd.h
-@@ -64,6 +64,15 @@ enum
- # define SFD_NONBLOCK SFD_NONBLOCK
-   };
-
-+#elif defined __mips__
-+enum
-+  {
-+    SFD_CLOEXEC = 02000000,
-+# define SFD_CLOEXEC SFD_CLOEXEC
-+    SFD_NONBLOCK = 0200
-+# define SFD_NONBLOCK SFD_NONBLOCK
-+  };
-+
- #else
- enum
-   {
---
-1.7.0.4
-
meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -75
deleted file mode 100644
index 43d19fc..0000000
@@ -1,75 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313307agb;
-        Sat, 8 Jan 2011 16:45:20 -0800 (PST)
-Received: by 10.227.141.78 with SMTP id l14mr16920947wbu.128.1294533919168;
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123])
-        by mx.google.com with ESMTP id w30si33755908wbd.17.2011.01.08.16.45.18;
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])
-	by mwinf5d24 with ME
-	id tClC1f0024v5z3u03ClHDo; Sun, 09 Jan 2011 01:45:18 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-	Bernhard Reutner-Fischer<[email protected]>,
-	Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 6/7] ARM: detect BX availibility at build time
-Date: Sun,  9 Jan 2011 01:45:09 +0100
-Message-Id:<1294533910-19305-7-git-send-email-yann.morin.1998@anciens.enib.fr>
-X-Mailer: git-send-email 1.7.1
-In-Reply-To:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-References:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-
-The "use BX" option is now a suggestion that BX be used if available.
-Use a macro to detect if BX is available at build time. If so, and
-the user requested it be used, then use it. Otherwise, error out.
-
-Macro courtesy Khem RAJ:
-  http://lists.uclibc.org/pipermail/uclibc/2009-April/042301.html
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- extra/Configs/Config.arm              |    4 +++-
- libc/sysdeps/linux/arm/bits/arm_asm.h |    9 ++++++++-
- 2 files changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
-index 227b90c..9aa9e56 100644
---- a/extra/Configs/Config.arm
-+++ b/extra/Configs/Config.arm
-@@ -33,4 +33,6 @@ config COMPILE_IN_THUMB_MODE
- config USE_BX
- 	bool "Use BX in function return"
- 	help
--	  Use BX instruction for THUMB aware architectures.
-+	  Say 'y' to use BX to return from functions on your thumb-aware
-+	  processor. Say 'y' if you need to use interworking. Say 'n' if not.
-+	  It is safe to say 'y' even if you're not doing interworking.
-diff --git a/libc/sysdeps/linux/arm/bits/arm_asm.h b/libc/sysdeps/linux/arm/bits/arm_asm.h
-index 1d87df6..921c9a3 100644
---- a/libc/sysdeps/linux/arm/bits/arm_asm.h
-+++ b/libc/sysdeps/linux/arm/bits/arm_asm.h
-@@ -24,5 +24,12 @@
- #define THUMB1_ONLY 1
- #endif
-
--#endif /* _ARM_ASM_H */
-+#if defined(__USE_BX__)
-+# if (   defined (__ARM_ARCH_2__)  || defined (__ARM_ARCH_3__) \
-+      || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \
-+     )
-+#  error Use of BX was requested, but is not available on the target processor.
-+# endif /* ARCH level */
-+#endif /* __USE_BX__ */
-
-+#endif /* _ARM_ASM_H */
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch deleted +0 -25
deleted file mode 100644
index bcd834d..0000000
@@ -1,25 +0,0 @@
-Fix a compile error due to last argument to syscall() not being memory addressable.
-
-Upstream-Status: Pending
-Signed-off-by: Phil Blundell<[email protected]>
-
-diff --git a/libc/sysdeps/linux/common/epoll.c b/libc/sysdeps/linux/common/epoll.c
-index 85b0cfd..c034b2c 100644
---- a/libc/sysdeps/linux/common/epoll.c
-+++ b/libc/sysdeps/linux/common/epoll.c
-@@ -67,12 +67,13 @@ extern __typeof(epoll_pwait) __libc_epoll_pwait;
- int __libc_epoll_pwait(int epfd, struct epoll_event *events, int maxevents,
- 						int timeout, const sigset_t *set)
- {
-+	int nsig = _NSIG / 8;
- 	if (SINGLE_THREAD_P)
--		return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8);
-+		return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig);
- # ifdef __UCLIBC_HAS_THREADS_NATIVE__
- 	else {
- 		int oldtype = LIBC_CANCEL_ASYNC ();
--		int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8);
-+		int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig);
- 		LIBC_CANCEL_RESET (oldtype);
- 		return result;
- 	}
meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -65
deleted file mode 100644
index 55c312e..0000000
@@ -1,65 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313304agb;
-        Sat, 8 Jan 2011 16:45:19 -0800 (PST)
-Received: by 10.227.155.75 with SMTP id r11mr17188266wbw.3.1294533918432;
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123])
-        by mx.google.com with ESMTP id k3si33753340wbx.29.2011.01.08.16.45.17;
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])
-	by mwinf5d24 with ME
-	id tClC1f0024v5z3u03ClHDf; Sun, 09 Jan 2011 01:45:17 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-	Bernhard Reutner-Fischer<[email protected]>,
-	Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 5/7] ARM: #include<bits/arm_asm.h>  where __USE_BX__ is used
-Date: Sun,  9 Jan 2011 01:45:08 +0100
-Message-Id:<1294533910-19305-6-git-send-email-yann.morin.1998@anciens.enib.fr>
-X-Mailer: git-send-email 1.7.1
-In-Reply-To:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-References:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-
-The check for __USE_BX__ will be available in bits/arm_asm.h,
-so the latter must be included wherever the former is used.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- ldso/ldso/arm/dl-startup.h      |    1 +
- libc/sysdeps/linux/arm/sysdep.h |    1 +
- 2 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/ldso/ldso/arm/dl-startup.h b/ldso/ldso/arm/dl-startup.h
-index a95389d..2dfdaff 100644
---- a/ldso/ldso/arm/dl-startup.h
-+++ b/ldso/ldso/arm/dl-startup.h
-@@ -7,6 +7,7 @@
-  */
-
- #include<features.h>
-+#include<bits/arm_asm.h>
-
- #if !defined(__thumb__)
- __asm__(
-diff --git a/libc/sysdeps/linux/arm/sysdep.h b/libc/sysdeps/linux/arm/sysdep.h
-index 013f88c..e498695 100644
---- a/libc/sysdeps/linux/arm/sysdep.h
-+++ b/libc/sysdeps/linux/arm/sysdep.h
-@@ -21,6 +21,7 @@
- #define _LINUX_ARM_SYSDEP_H 1
-
- #include<common/sysdep.h>
-+#include<bits/arm_asm.h>
-
- #include<sys/syscall.h>
- /* For Linux we can use the system call table in the header file
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -85
deleted file mode 100644
index 3508e0e..0000000
@@ -1,85 +0,0 @@
-Sync mount.h from glibc this is needed to get missing defines
-that some apps e.g. systemd are depending on
-
-Signed-off-by: Khem Raj<[email protected]>
-
-Upstream-Status: Pending
-
-Index: git/include/sys/mount.h
-===================================================================
---- git.orig/include/sys/mount.h	2011-07-21 14:37:27.134255747 -0700
-+++ git/include/sys/mount.h	2011-07-21 14:39:53.844470932 -0700
-@@ -1,5 +1,5 @@
- /* Header file for mounting/unmount Linux filesystems.
--   Copyright (C) 1996,1997,1998,1999,2000,2004 Free Software Foundation, Inc.
-+   Copyright (C) 1996-2000, 2004, 2010 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
-@@ -47,23 +47,46 @@
- #define MS_REMOUNT	MS_REMOUNT
-   MS_MANDLOCK = 64,		/* Allow mandatory locks on an FS.  */
- #define MS_MANDLOCK	MS_MANDLOCK
--  S_WRITE = 128,		/* Write on file/directory/symlink.  */
--#define S_WRITE		S_WRITE
--  S_APPEND = 256,		/* Append-only file.  */
--#define S_APPEND	S_APPEND
--  S_IMMUTABLE = 512,		/* Immutable file.  */
--#define S_IMMUTABLE	S_IMMUTABLE
-+  MS_DIRSYNC = 128,		/* Directory modifications are synchronous.  */
-+#define MS_DIRSYNC	MS_DIRSYNC
-   MS_NOATIME = 1024,		/* Do not update access times.  */
- #define MS_NOATIME	MS_NOATIME
-   MS_NODIRATIME = 2048,		/* Do not update directory access times.  */
- #define MS_NODIRATIME	MS_NODIRATIME
-   MS_BIND = 4096,		/* Bind directory at different place.  */
- #define MS_BIND		MS_BIND
-+  MS_MOVE = 8192,
-+#define MS_MOVE		MS_MOVE
-+  MS_REC = 16384,
-+#define MS_REC		MS_REC
-+  MS_SILENT = 32768,
-+#define MS_SILENT	MS_SILENT
-+  MS_POSIXACL = 1<<  16,	/* VFS does not apply the umask.  */
-+#define MS_POSIXACL	MS_POSIXACL
-+  MS_UNBINDABLE = 1<<  17,	/* Change to unbindable.  */
-+#define MS_UNBINDABLE	MS_UNBINDABLE
-+  MS_PRIVATE = 1<<  18,		/* Change to private.  */
-+#define MS_PRIVATE	MS_PRIVATE
-+  MS_SLAVE = 1<<  19,		/* Change to slave.  */
-+#define MS_SLAVE	MS_SLAVE
-+  MS_SHARED = 1<<  20,		/* Change to shared.  */
-+#define MS_SHARED	MS_SHARED
-+  MS_RELATIME = 1<<  21,	/* Update atime relative to mtime/ctime.  */
-+#define MS_RELATIME	MS_RELATIME
-+  MS_KERNMOUNT = 1<<  22,	/* This is a kern_mount call.  */
-+#define MS_KERNMOUNT	MS_KERNMOUNT
-+  MS_I_VERSION =  1<<  23,	/* Update inode I_version field.  */
-+#define MS_I_VERSION	MS_I_VERSION
-+  MS_STRICTATIME = 1<<  24,	/* Always perform atime updates.  */
-+#define MS_STRICTATIME	MS_STRICTATIME
-+  MS_ACTIVE = 1<<  30,
-+#define MS_ACTIVE	MS_ACTIVE
-+  MS_NOUSER = 1<<  31
-+#define MS_NOUSER	MS_NOUSER
- };
-
- /* Flags that can be altered by MS_REMOUNT  */
--#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_NOATIME \
--		     |MS_NODIRATIME)
-+#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION)
-
-
- /* Magic mount flag number. Has to be or-ed to the flag values.  */
-@@ -100,8 +123,10 @@
- #define MNT_FORCE MNT_FORCE
-   MNT_DETACH = 2,		/* Just detach from the tree.  */
- #define MNT_DETACH MNT_DETACH
--  MNT_EXPIRE = 4		/* Mark for expiry.  */
-+  MNT_EXPIRE = 4,		/* Mark for expiry.  */
- #define MNT_EXPIRE MNT_EXPIRE
-+  UMOUNT_NOFOLLOW = 8		/* Don't follow symlink on umount.  */
-+#define UMOUNT_NOFOLLOW UMOUNT_NOFOLLOW
- };
-
-
meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch deleted +0 -91
deleted file mode 100644
index 8f3464e..0000000
@@ -1,91 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313309agb;
-        Sat, 8 Jan 2011 16:45:20 -0800 (PST)
-Received: by 10.216.173.7 with SMTP id u7mr612034wel.50.1294533919433;
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123])
-        by mx.google.com with ESMTP id e10si33752027wer.68.2011.01.08.16.45.19;
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])
-	by mwinf5d24 with ME
-	id tClC1f0024v5z3u03ClJDu; Sun, 09 Jan 2011 01:45:18 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-	Bernhard Reutner-Fischer<[email protected]>,
-	Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 7/7] ARM: remove EABI/OABI selection
-Date: Sun,  9 Jan 2011 01:45:10 +0100
-Message-Id:<1294533910-19305-8-git-send-email-yann.morin.1998@anciens.enib.fr>
-X-Mailer: git-send-email 1.7.1
-In-Reply-To:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-References:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-
-Rely on the compiler to be properly setup for the default ABI.
-
-When installing-headers, there are two cases:
-- NPTL: no issue, a cross-compiler is already expected
-- LinuxThreads: no issue, EABI/OABI has no impact on installed headers.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- extra/Configs/Config.arm               |   11 -----------
- libc/sysdeps/linux/arm/Makefile.arch   |    9 +++++++--
- libc/sysdeps/linux/arm/bits/huge_val.h |    4 ++--
- 3 files changed, 9 insertions(+), 15 deletions(-)
-
-Index: git/libc/sysdeps/linux/arm/Makefile.arch
-===================================================================
---- git.orig/libc/sysdeps/linux/arm/Makefile.arch
-+++ git/libc/sysdeps/linux/arm/Makefile.arch
-@@ -24,7 +24,12 @@ ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),y)
- CSRC += posix_fadvise.c posix_fadvise64.c
- endif
-
--ifeq ($(CONFIG_ARM_EABI),y)
-+# Is our compiler set up for EABI ?
-+IS_EABI:=$(shell $(CC) $(CFLAGS) -x c - -E -dM</dev/null 2>/dev/null \
-+                 |sed -r -e '/^\#[[:space:]]*define[[:space:]]+__ARM_EABI__([[:space:]]+1)?$$/!d; s/.+/y/;' \
-+          )
-+
-+ifeq ($(IS_EABI),y)
- CSRC += aeabi_assert.c aeabi_atexit.c aeabi_errno_addr.c \
- 	aeabi_localeconv.c aeabi_memclr.c aeabi_memcpy.c \
- 	aeabi_memmove.c aeabi_memset.c find_exidx.c
-@@ -37,7 +42,7 @@ else
- CSRC += syscall.c
- endif
-
--ifeq ($(CONFIG_ARM_EABI),y)
-+ifeq ($(IS_EABI),y)
- libc-static-y += $(ARCH_OUT)/aeabi_lcsts.o $(ARCH_OUT)/aeabi_math.o \
- 	$(ARCH_OUT)/aeabi_sighandlers.o
- libc-nonshared-y += $(ARCH_OUT)/aeabi_lcsts.os $(ARCH_OUT)/aeabi_math.os \
-Index: git/libc/sysdeps/linux/arm/bits/huge_val.h
-===================================================================
---- git.orig/libc/sysdeps/linux/arm/bits/huge_val.h
-+++ git/libc/sysdeps/linux/arm/bits/huge_val.h
-@@ -32,7 +32,7 @@
- # define HUGE_VAL (__extension__ 0x1.0p2047)
- #elif defined __GNUC__
-
--#ifndef __CONFIG_ARM_EABI__
-+#ifndef __ARM_EABI__
- # define HUGE_VAL \
-   (__extension__							      \
-    ((union { unsigned __l __attribute__((__mode__(__DI__))); double __d; })   \
-@@ -50,7 +50,7 @@
-
- typedef union { unsigned char __c[8]; double __d; } __huge_val_t;
-
--#ifndef __CONFIG_ARM_EABI__
-+#ifndef __ARM_EABI__
- # if __BYTE_ORDER == __BIG_ENDIAN
- #  define __HUGE_VAL_bytes	{ 0, 0, 0, 0, 0x7f, 0xf0, 0, 0 }
- # endif
meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch deleted +0 -215
deleted file mode 100644
index 920a669..0000000
@@ -1,215 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313303agb;
-        Sat, 8 Jan 2011 16:45:18 -0800 (PST)
-Received: by 10.227.98.158 with SMTP id q30mr1255804wbn.151.1294533917314;
-        Sat, 08 Jan 2011 16:45:17 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123])
-        by mx.google.com with ESMTP id r3si33749838wbr.54.2011.01.08.16.45.16;
-        Sat, 08 Jan 2011 16:45:17 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])
-	by mwinf5d24 with ME
-	id tClC1f0024v5z3u03ClGDS; Sun, 09 Jan 2011 01:45:16 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-	Bernhard Reutner-Fischer<[email protected]>,
-	Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 3/7] ARM: remove sub-arch/variants selection from menuconfig
-Date: Sun,  9 Jan 2011 01:45:06 +0100
-Message-Id:<1294533910-19305-4-git-send-email-yann.morin.1998@anciens.enib.fr>
-X-Mailer: git-send-email 1.7.1
-In-Reply-To:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-References:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-
-Rely on the compiler to be correctly set up to generate
-appropriate code for the target variant.
-
-This exposes the Thumb option, as it is no longer auto-selected.
-The "Use BX" no longer depends on supported CPU to be selected,
-so it now defaults to 'n' as it shall work by default on CPUs
-that do not have BX.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- Rules.mak                |   19 -------
- extra/Configs/Config.arm |  125 ++--------------------------------------------
- 2 files changed, 5 insertions(+), 139 deletions(-)
-
-diff --git a/Rules.mak b/Rules.mak
-index 2a16908..09741a6 100644
---- a/Rules.mak
-+++ b/Rules.mak
-@@ -332,25 +332,6 @@ ifeq ($(TARGET_ARCH),arm)
- 	OPTIMIZATION+=-fstrict-aliasing
- 	CPU_CFLAGS-$(ARCH_LITTLE_ENDIAN)+=-mlittle-endian
- 	CPU_CFLAGS-$(ARCH_BIG_ENDIAN)+=-mbig-endian
--	CPU_CFLAGS-$(CONFIG_GENERIC_ARM)+=
--	CPU_CFLAGS-$(CONFIG_ARM610)+=-mtune=arm610 -march=armv3
--	CPU_CFLAGS-$(CONFIG_ARM710)+=-mtune=arm710 -march=armv3
--	CPU_CFLAGS-$(CONFIG_ARM7TDMI)+=-mtune=arm7tdmi -march=armv4t
--	CPU_CFLAGS-$(CONFIG_ARM720T)+=-mtune=arm7tdmi -march=armv4t
--	CPU_CFLAGS-$(CONFIG_ARM920T)+=-mtune=arm9tdmi -march=armv4t
--	CPU_CFLAGS-$(CONFIG_ARM922T)+=-mtune=arm9tdmi -march=armv4t
--	CPU_CFLAGS-$(CONFIG_ARM926T)+=-mtune=arm9e -march=armv5te
--	CPU_CFLAGS-$(CONFIG_ARM10T)+=-mtune=arm10tdmi -march=armv5t
--	CPU_CFLAGS-$(CONFIG_ARM1136JF_S)+=-mtune=arm1136jf-s -march=armv6
--	CPU_CFLAGS-$(CONFIG_ARM1176JZ_S)+=-mtune=arm1176jz-s -march=armv6
--	CPU_CFLAGS-$(CONFIG_ARM1176JZF_S)+=-mtune=arm1176jzf-s -march=armv6
--	CPU_CFLAGS-$(CONFIG_ARM_SA110)+=-mtune=strongarm110 -march=armv4
--	CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100 -march=armv4
--	CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110)
--	CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale
--	CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt
--	CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3
--	CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1
- 	CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb
- endif
-
-diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
-index c9c40d4..6c75a00 100644
---- a/extra/Configs/Config.arm
-+++ b/extra/Configs/Config.arm
-@@ -30,129 +30,14 @@ config CONFIG_ARM_EABI
-
- endchoice
-
--choice
--	prompt "Target Processor Type"
--	default CONFIG_GENERIC_ARM
--	help
--	  This is the processor type of your CPU. This information is used for
--	  optimizing purposes.  To build a library that will run on all ARMCPU
--	  types (albeit not optimally fast), you can specify "Generic Arm" here.
--	  If you pick anything other than "Generic Arm", there is no guarantee
--	  that uClibc will even run on anything other than the selected
--	  processor type.
--
--	  Here are the settings recommended for greatest speed:
--	  - "Generic Arm" select this if your compiler is already setup to
--	    optimize things properly, or if you want to run on pretty much
--	    everything, or you just don't much care.
--	  - For anything else, pick the ARM core type that best matches the
--	    cpu you will be using on your device.
--
--	  If you don't know what to do, choose "Generic Arm".
--
--config CONFIG_GENERIC_ARM
--	bool "Generic Arm"
--
--config CONFIG_ARM610
--	bool "Arm 610"
--	select ARCH_HAS_MMU
--
--config CONFIG_ARM710
--	bool "Arm 710"
--	select ARCH_HAS_MMU
--
--config CONFIG_ARM7TDMI
--	bool "Arm 7TDMI"
--	select ARCH_HAS_NO_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM720T
--	bool "Arm 720T"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM920T
--	bool "Arm 920T"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM922T
--	bool "Arm 922T"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM926T
--	bool "Arm 926T"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM10T
--	bool "Arm 10T"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM1136JF_S
--	bool "Arm 1136JF-S"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM1176JZ_S
--	bool "Arm 1176JZ-S"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM1176JZF_S
--	bool "Arm 1176JZF-S"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM_CORTEX_M3
--	bool "Arm Cortex-M3"
--	select ARCH_HAS_NO_MMU
--	select FORCE_THUMB
--
--config CONFIG_ARM_CORTEX_M1
--	bool "Arm Cortex-M1"
--	select ARCH_HAS_NO_MMU
--	select FORCE_THUMB
--
--config CONFIG_ARM_SA110
--	bool "Intel StrongArm SA-110"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM_SA1100
--	bool "Intel StrongArm SA-1100"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM_XSCALE
--	bool "Intel Xscale"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--config CONFIG_ARM_IWMMXT
--	bool "Intel Xscale With WMMX PXA27x"
--	select ARCH_HAS_MMU
--	select HAS_THUMB
--
--endchoice
--
--config HAS_THUMB
--	bool
--
--config FORCE_THUMB
--	bool
--	select HAS_THUMB
--	select COMPILE_IN_THUMB_MODE
--	select USE_BX
--
- config COMPILE_IN_THUMB_MODE
--	bool
-+	bool "Build using Thumb mode"
-+	select USE_BX
-+	help
-+	  Say 'y' here to force building uClibc in thumb mode.
-+	  Say 'n' to use your compiler's default mode.
-
- config USE_BX
- 	bool "Use BX in function return"
--	default y
--	depends on HAS_THUMB
- 	help
- 	  Use BX instruction for THUMB aware architectures.
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -215
deleted file mode 100644
index 30cb7f6..0000000
@@ -1,215 +0,0 @@
-Patch is backported from
-http://lists.busybox.net/pipermail/uclibc/2011-March/045004.html
-
-Upstream-Status: Pending
-
-diff --git a/ldso/include/dl-elf.h b/ldso/include/dl-elf.h
-index 7fbb373..7102351 100644
---- a/ldso/include/dl-elf.h
-+++ b/ldso/include/dl-elf.h
-@@ -25,16 +25,18 @@ static __inline__ void _dl_map_cache(void) { }
- static __inline__ void _dl_unmap_cache(void) { }
- #endif
-
-+#define DL_RESOLVE_SECURE		0x0001
-+#define DL_RESOLVE_NOLOAD		0x0002
-
- /* Function prototypes for non-static stuff in readelflib1.c */
- extern void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
- 	unsigned long rel_addr, unsigned long rel_size);
- extern int _dl_parse_relocation_information(struct dyn_elf *rpnt,
- 	unsigned long rel_addr, unsigned long rel_size);
--extern struct elf_resolve * _dl_load_shared_library(int secure,
-+extern struct elf_resolve * _dl_load_shared_library(int resolve_flags,
- 	struct dyn_elf **rpnt, struct elf_resolve *tpnt, char *full_libname,
- 	int trace_loaded_objects);
--extern struct elf_resolve * _dl_load_elf_shared_library(int secure,
-+extern struct elf_resolve * _dl_load_elf_shared_library(int resolve_flags,
- 	struct dyn_elf **rpnt, char *libname);
- extern struct elf_resolve *_dl_check_if_named_library_is_loaded(const char *full_libname,
- 	int trace_loaded_objects);
-diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
-index 2b2d429..6d35bf2 100644
---- a/ldso/ldso/dl-elf.c
-+++ b/ldso/ldso/dl-elf.c
-@@ -132,7 +132,7 @@ _dl_protect_relro (struct elf_resolve *l)
- /* This function's behavior must exactly match that
-  * in uClibc/ldso/util/ldd.c */
- static struct elf_resolve *
--search_for_named_library(const char *name, int secure, const char *path_list,
-+search_for_named_library(const char *name, int resolve_flags, const char *path_list,
- 	struct dyn_elf **rpnt, const char *origin)
- {
- 	char *mylibname;
-@@ -162,7 +162,7 @@ search_for_named_library(const char *name, int secure, const char *path_list,
-
- 		if (plen>= 7&&  _dl_memcmp(p, "$ORIGIN", 7) == 0) {
- 			int olen;
--			if (secure&&  plen != 7)
-+			if ((resolve_flags&  DL_RESOLVE_SECURE)&&  plen != 7)
- 				continue;
- 			if (origin == NULL)
- 				continue;
-@@ -182,7 +182,7 @@ search_for_named_library(const char *name, int secure, const char *path_list,
- 		_dl_strcat(mylibname, "/");
- 		_dl_strcat(mylibname, name);
-
--		tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname);
-+		tpnt = _dl_load_elf_shared_library(resolve_flags, rpnt, mylibname);
- 		if (tpnt != NULL)
- 			return tpnt;
- 	}
-@@ -194,7 +194,7 @@ search_for_named_library(const char *name, int secure, const char *path_list,
- unsigned long _dl_error_number;
- unsigned long _dl_internal_error_number;
-
--struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
-+struct elf_resolve *_dl_load_shared_library(int resolve_flags, struct dyn_elf **rpnt,
- 	struct elf_resolve *tpnt, char *full_libname, int attribute_unused trace_loaded_objects)
- {
- 	char *pnt;
-@@ -223,7 +223,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
-
- 	if (libname != full_libname) {
- 		_dl_if_debug_dprint("\ttrying file='%s'\n", full_libname);
--		tpnt1 = _dl_load_elf_shared_library(secure, rpnt, full_libname);
-+		tpnt1 = _dl_load_elf_shared_library(resolve_flags, rpnt, full_libname);
- 		if (tpnt1) {
- 			return tpnt1;
- 		}
-@@ -238,7 +238,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
- 	if (pnt) {
- 		pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
- 		_dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt);
--		if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt,
-+		if ((tpnt1 = search_for_named_library(libname, resolve_flags, pnt, rpnt,
- 						      tpnt->libname)) != NULL)
- 			return tpnt1;
- 	}
-@@ -247,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
- 	/* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */
- 	if (_dl_library_path) {
- 		_dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path);
--		if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt, NULL)) != NULL)
-+		if ((tpnt1 = search_for_named_library(libname, resolve_flags, _dl_library_path, rpnt, NULL)) != NULL)
- 		{
- 			return tpnt1;
- 		}
-@@ -261,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
- 	if (pnt) {
- 		pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
- 		_dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt);
--		if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt, NULL)) != NULL)
-+		if ((tpnt1 = search_for_named_library(libname, resolve_flags, pnt, rpnt, NULL)) != NULL)
- 			return tpnt1;
- 	}
- #endif
-@@ -284,7 +284,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
- 			     || libent[i].flags == LIB_ELF_LIBC0
- 			     ||	libent[i].flags == LIB_ELF_LIBC5)
- 			&&  _dl_strcmp(libname, strs + libent[i].sooffset) == 0
--			&&  (tpnt1 = _dl_load_elf_shared_library(secure, rpnt, strs + libent[i].liboffset))
-+			&&  (tpnt1 = _dl_load_elf_shared_library(resolve_flags, rpnt, strs + libent[i].liboffset))
- 			) {
- 				return tpnt1;
- 			}
-@@ -295,14 +295,14 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
- 	/* Look for libraries wherever the shared library loader
- 	 * was installed */
- 	_dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath);
--	tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt, NULL);
-+	tpnt1 = search_for_named_library(libname, resolve_flags, _dl_ldsopath, rpnt, NULL);
- 	if (tpnt1 != NULL)
- 		return tpnt1;
-
- 	/* Lastly, search the standard list of paths for the library.
- 	   This list must exactly match the list in uClibc/ldso/util/ldd.c */
- 	_dl_if_debug_dprint("\tsearching full lib path list\n");
--	tpnt1 = search_for_named_library(libname, secure,
-+	tpnt1 = search_for_named_library(libname, resolve_flags,
- 					UCLIBC_RUNTIME_PREFIX "lib:"
- 					UCLIBC_RUNTIME_PREFIX "usr/lib"
- #ifndef __LDSO_CACHE_SUPPORT__
-@@ -329,7 +329,7 @@ goof:
-  * are required.
-  */
-
--struct elf_resolve *_dl_load_elf_shared_library(int secure,
-+struct elf_resolve *_dl_load_elf_shared_library(int resolve_flags,
- 	struct dyn_elf **rpnt, char *libname)
- {
- 	ElfW(Ehdr) *epnt;
-@@ -368,7 +368,7 @@ struct elf_resolve *_dl_load_elf_shared_library(int secure,
- 	}
- 	/* If we are in secure mode (i.e. a setu/gid binary using LD_PRELOAD),
- 	   we don't load the library if it isn't setuid. */
--	if (secure) {
-+	if (resolve_flags&  DL_RESOLVE_SECURE) {
- 		if (!(st.st_mode&  S_ISUID)) {
- 			_dl_close(infile);
- 			return NULL;
-@@ -384,6 +384,10 @@ struct elf_resolve *_dl_load_elf_shared_library(int secure,
- 			return tpnt;
- 		}
- 	}
-+	if (resolve_flags&  DL_RESOLVE_NOLOAD) {
-+		_dl_close(infile);
-+		return NULL;
-+	}
- 	header = _dl_mmap((void *) 0, _dl_pagesize, PROT_READ | PROT_WRITE,
- 			MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE, -1, 0);
- 	if (_dl_mmap_check_error(header)) {
-diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
-index 9423670..b71af34 100644
---- a/ldso/ldso/ldso.c
-+++ b/ldso/ldso/ldso.c
-@@ -646,7 +646,9 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
- 			if (!_dl_secure || _dl_strchr(str, '/') == NULL) {
- 				_dl_if_debug_dprint("\tfile='%s';  needed by '%s'\n", str, _dl_progname);
-
--				tpnt1 = _dl_load_shared_library(_dl_secure,&rpnt, NULL, str, trace_loaded_objects);
-+				tpnt1 = _dl_load_shared_library(
-+					_dl_secure ? DL_RESOLVE_SECURE : 0,
-+					&rpnt, NULL, str, trace_loaded_objects);
- 				if (!tpnt1) {
- #ifdef __LDSO_LDD_SUPPORT__
- 					if (trace_loaded_objects)
-diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c
-index 68cd579..edf38d2 100644
---- a/ldso/libdl/libdl.c
-+++ b/ldso/libdl/libdl.c
-@@ -288,7 +288,7 @@ void *dlopen(const char *libname, int flag)
- #endif
-
- 	/* A bit of sanity checking... */
--	if (!(flag&  (RTLD_LAZY|RTLD_NOW))) {
-+	if (!(flag&  (RTLD_LAZY|RTLD_NOW|RTLD_NOLOAD))) {
- 		_dl_error_number = LD_BAD_HANDLE;
- 		return NULL;
- 	}
-@@ -358,8 +358,9 @@ void *dlopen(const char *libname, int flag)
- 	/* Try to load the specified library */
- 	_dl_if_debug_print("Trying to dlopen '%s', RTLD_GLOBAL:%d RTLD_NOW:%d\n",
- 			(char*)libname, (flag&  RTLD_GLOBAL ? 1:0), (now_flag&  RTLD_NOW ? 1:0));
--	tpnt = _dl_load_shared_library(0,&rpnt, tfrom, (char*)libname, 0);
-
-+	tpnt = _dl_load_shared_library((flag&  RTLD_NOLOAD) ? DL_RESOLVE_NOLOAD : 0,
-+					&rpnt, tfrom, (char*)libname, 0);
- 	if (tpnt == NULL) {
- 		_dl_unmap_cache();
- 		return NULL;
-diff --git a/libc/sysdeps/linux/common/bits/dlfcn.h b/libc/sysdeps/linux/common/bits/dlfcn.h
-index 4bfbbff..47b42ad 100644
---- a/libc/sysdeps/linux/common/bits/dlfcn.h
-+++ b/libc/sysdeps/linux/common/bits/dlfcn.h
-@@ -24,9 +24,9 @@
- /* The MODE argument to `dlopen' contains one of the following: */
- #define RTLD_LAZY	0x00001	/* Lazy function call binding.  */
- #define RTLD_NOW	0x00002	/* Immediate function call binding.  */
--#if 0 /* uClibc doesnt support these */
--#define	RTLD_BINDING_MASK   0x3	/* Mask of binding time value.  */
-+#define RTLD_BINDING_MASK   0x3	/* Mask of binding time value.  */
- #define RTLD_NOLOAD	0x00004	/* Do not load the object.  */
-+#if 0 /* uClibc doesnt support these */
- #define RTLD_DEEPBIND	0x00008	/* Use deep binding.  */
- #endif
meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -172
deleted file mode 100644
index b19408f..0000000
@@ -1,172 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313301agb;
-        Sat, 8 Jan 2011 16:45:17 -0800 (PST)
-Received: by 10.216.186.82 with SMTP id v60mr20017574wem.56.1294533916559;
-        Sat, 08 Jan 2011 16:45:16 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123])
-        by mx.google.com with ESMTP id o13si33755824wee.56.2011.01.08.16.45.16;
-        Sat, 08 Jan 2011 16:45:16 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])
-	by mwinf5d24 with ME
-	id tClC1f0024v5z3u03ClFDL; Sun, 09 Jan 2011 01:45:16 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-	Bernhard Reutner-Fischer<[email protected]>,
-	Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 2/7] ARM: introduce blind options to select&  force THUMB mode
-Date: Sun,  9 Jan 2011 01:45:05 +0100
-Message-Id:<1294533910-19305-3-git-send-email-yann.morin.1998@anciens.enib.fr>
-X-Mailer: git-send-email 1.7.1
-In-Reply-To:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-References:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-
-Add three new blind options to set use of Thumb mode:
-- COMPILE_IN_THUMB_MODE
-  - if set, CFLAGS will contain -mthumb
-  - if unset, the compiler's default is used
-- HAS_THUMB
-  - CPUS with Thumb instruction set can select this
-  - use of BX depends on this
-- FORCE_THUMB
-  - CPUs that are Thumb-only must select this
-  - this selects: HAS_THUMB, COMPILE_IN_THUMB_MODE and USE_BX
-
-Also, remove leading space in Rules.mak.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- Rules.mak                |    7 ++++---
- extra/Configs/Config.arm |   31 ++++++++++++++++++++++++++++---
- 2 files changed, 32 insertions(+), 6 deletions(-)
-
-diff --git a/Rules.mak b/Rules.mak
-index eecdc64..2a16908 100644
---- a/Rules.mak
-+++ b/Rules.mak
-@@ -348,9 +348,10 @@ ifeq ($(TARGET_ARCH),arm)
- 	CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100 -march=armv4
- 	CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110)
- 	CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale
-- 	CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt
-- 	CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3 -mthumb
-- 	CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1 -mthumb
-+	CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt
-+	CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3
-+	CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1
-+	CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb
- endif
-
- ifeq ($(TARGET_ARCH),mips)
-diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
-index 3b90e67..c9c40d4 100644
---- a/extra/Configs/Config.arm
-+++ b/extra/Configs/Config.arm
-@@ -64,70 +64,95 @@ config CONFIG_ARM710
- config CONFIG_ARM7TDMI
- 	bool "Arm 7TDMI"
- 	select ARCH_HAS_NO_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM720T
- 	bool "Arm 720T"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM920T
- 	bool "Arm 920T"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM922T
- 	bool "Arm 922T"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM926T
- 	bool "Arm 926T"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM10T
- 	bool "Arm 10T"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM1136JF_S
- 	bool "Arm 1136JF-S"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM1176JZ_S
- 	bool "Arm 1176JZ-S"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM1176JZF_S
- 	bool "Arm 1176JZF-S"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM_CORTEX_M3
- 	bool "Arm Cortex-M3"
- 	select ARCH_HAS_NO_MMU
--	select USE_BX
-+	select FORCE_THUMB
-
- config CONFIG_ARM_CORTEX_M1
- 	bool "Arm Cortex-M1"
- 	select ARCH_HAS_NO_MMU
--	select USE_BX
-+	select FORCE_THUMB
-
- config CONFIG_ARM_SA110
- 	bool "Intel StrongArm SA-110"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM_SA1100
- 	bool "Intel StrongArm SA-1100"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM_XSCALE
- 	bool "Intel Xscale"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- config CONFIG_ARM_IWMMXT
- 	bool "Intel Xscale With WMMX PXA27x"
- 	select ARCH_HAS_MMU
-+	select HAS_THUMB
-
- endchoice
-
-+config HAS_THUMB
-+	bool
-+
-+config FORCE_THUMB
-+	bool
-+	select HAS_THUMB
-+	select COMPILE_IN_THUMB_MODE
-+	select USE_BX
-+
-+config COMPILE_IN_THUMB_MODE
-+	bool
-+
- config USE_BX
- 	bool "Use BX in function return"
- 	default y
--	depends on !CONFIG_GENERIC_ARM&&  !CONFIG_ARM610&&  !CONFIG_ARM710
-+	depends on HAS_THUMB
- 	help
- 	  Use BX instruction for THUMB aware architectures.
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -47
deleted file mode 100644
index 4b85a43..0000000
@@ -1,47 +0,0 @@
-Some architectures like ppc, arm use aligned 64 bit inputs so a register is not wasted
-this then uses __NR_sync_file_range2 syscall. Implement is
-
-Singed-off-by: Khem Raj<[email protected]>
-
-Upstream-Status: Pending
-
-Index: git/libc/sysdeps/linux/common/sync_file_range.c
-===================================================================
---- git.orig/libc/sysdeps/linux/common/sync_file_range.c	2011-07-19 14:23:35.000000000 -0700
-+++ git/libc/sysdeps/linux/common/sync_file_range.c	2011-07-19 15:04:38.631808666 -0700
-@@ -11,7 +11,8 @@
- #if defined __USE_GNU
- #include<fcntl.h>
-
--#if defined __NR_sync_file_range&&  defined __UCLIBC_HAS_LFS__
-+#if defined __UCLIBC_HAS_LFS__
-+#if defined __NR_sync_file_range
- #define __NR___syscall_sync_file_range __NR_sync_file_range
- static __inline__ _syscall6(int, __syscall_sync_file_range, int, fd,
- 		off_t, offset_hi, off_t, offset_lo,
-@@ -23,5 +24,23 @@
- 		__LONG_LONG_PAIR((long)(nbytes>>  32), (long)(nbytes&  0xffffffff)),
- 		flags);
- }
--#endif
--#endif
-+#elif defined __NR_sync_file_range2
-+#define __NR___syscall_sync_file_range2 __NR_sync_file_range2
-+static __inline__ _syscall6(int, __syscall_sync_file_range2, int, fd,
-+		unsigned int, flags, off_t, offset_hi, off_t, offset_lo,
-+		off_t, nbytes_hi, off_t, nbytes_lo)
-+int sync_file_range(int fd, off64_t offset, off64_t nbytes, unsigned int flags)
-+{
-+	return __syscall_sync_file_range2(fd, flags,
-+		__LONG_LONG_PAIR((long)(offset>>  32), (long)(offset&  0xffffffff)),
-+		__LONG_LONG_PAIR((long)(nbytes>>  32), (long)(nbytes&  0xffffffff)));
-+}
-+#else
-+int sync_file_range(int fd, off64_t offset, off64_t nbytes, unsigned int flags)
-+{
-+	__set_errno (ENOSYS);
-+	return -1
-+}
-+#endif /* __NR_sync_file_range */
-+#endif /* __UCLIBC_HAS_LFS__ */
-+#endif /* __USE_GNU */
meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch deleted +0 -71
deleted file mode 100644
index 82970ca..0000000
@@ -1,71 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313305agb;
-        Sat, 8 Jan 2011 16:45:19 -0800 (PST)
-Received: by 10.216.153.210 with SMTP id f60mr573848wek.114.1294533918335;
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr [80.12.242.123])
-        by mx.google.com with ESMTP id n4si33737071wej.152.2011.01.08.16.45.17;
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com: 80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])
-	by mwinf5d24 with ME
-	id tClC1f0024v5z3u03ClGDX; Sun, 09 Jan 2011 01:45:17 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-	Bernhard Reutner-Fischer<[email protected]>,
-	Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 4/7] ARM: transform the EABI/OABI choice into a boolean
-Date: Sun,  9 Jan 2011 01:45:07 +0100
-Message-Id:<1294533910-19305-5-git-send-email-yann.morin.1998@anciens.enib.fr>
-X-Mailer: git-send-email 1.7.1
-In-Reply-To:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-References:<1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>
-
-The CONFIG_ARM_OABI option is never used.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- extra/Configs/Config.arm |   23 ++++++++---------------
- 1 files changed, 8 insertions(+), 15 deletions(-)
-
-Index: git/extra/Configs/Config.arm
-===================================================================
---- git.orig/extra/Configs/Config.arm
-+++ git/extra/Configs/Config.arm
-@@ -12,23 +12,16 @@ config FORCE_OPTIONS_FOR_ARCH
- 	default y
- 	select ARCH_ANY_ENDIAN
-
--choice
--	prompt "Target ABI"
--	default CONFIG_ARM_EABI
-+config CONFIG_ARM_EABI
-+	bool "Build for EABI"
- 	help
--	  If you choose "EABI" here, functions and constants required by the
--	  ARM EABI will be built into the library.  You should choose "EABI"
-+	  If you say 'y' here, functions and constants required by the
-+	  ARM EABI will be built into the library.  You should say 'y'
- 	  if your compiler uses the ARM EABI, in which case you will also
--	  need a kernel supporting the EABI system call interface, or "OABI"
--	  for a compiler using the old Linux ABI.
--
--config CONFIG_ARM_OABI
--	bool "OABI"
--
--config CONFIG_ARM_EABI
--	bool "EABI"
-+	  need a kernel supporting the EABI system call interface.
-
--endchoice
-+	  If you say 'n' here, then the library will be built for the
-+	  old Linux ABI.
-
- config COMPILE_IN_THUMB_MODE
- 	bool "Build using Thumb mode"
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -13
deleted file mode 100644
index 504d37b..0000000
@@ -1,13 +0,0 @@
-Index: uclibc-0.9.29/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-===================================================================
---- uclibc-0.9.29.orig/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-+++ uclibc-0.9.29/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-@@ -38,4 +38,8 @@
- /* define if target supports IEEE signed zero floats */
- #define __UCLIBC_HAVE_SIGNED_ZERO__
-
-+#ifdef __ARM_EABI__
-+# define __UCLIBC_TRUNCATE64_HAS_4_ARGS__
-+#endif
-+
- #endif /* _BITS_UCLIBC_ARCH_FEATURES_H */
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch deleted +0 -455
deleted file mode 100644
index 78401bd..0000000
@@ -1,455 +0,0 @@
-From 2becc16ecbef71c496644d9dc6cbd7383d7cdca3 Mon Sep 17 00:00:00 2001
-From: Henning Heinold<[email protected]>
-Date: Sat, 4 Jun 2011 21:21:41 +0200
-Subject: [PATCH 1/2] libc: updates the linux scheduler functions, most stuff
- was taken from the eglibc
-
-
-Signed-off-by: Henning Heinold<[email protected]>
----
- include/sched.h                            |   52 ++++++++++++----
- libc/sysdeps/linux/common/Makefile.in      |    4 +-
- libc/sysdeps/linux/common/bits/sched.h     |   96 +++++++++++++++++++++++-----
- libc/sysdeps/linux/common/sched_cpualloc.c |   27 ++++++++
- libc/sysdeps/linux/common/sched_cpucount.c |   60 +++++++++++++++++
- libc/sysdeps/linux/common/sched_cpufree.c  |   27 ++++++++
- libc/sysdeps/linux/common/sched_getcpu.c   |   37 +++++++++++
- libc/sysdeps/linux/common/unshare.c        |   12 ++++
- 8 files changed, 286 insertions(+), 29 deletions(-)
- create mode 100644 libc/sysdeps/linux/common/sched_cpualloc.c
- create mode 100644 libc/sysdeps/linux/common/sched_cpucount.c
- create mode 100644 libc/sysdeps/linux/common/sched_cpufree.c
- create mode 100644 libc/sysdeps/linux/common/sched_getcpu.c
- create mode 100644 libc/sysdeps/linux/common/unshare.c
-
-diff --git a/include/sched.h b/include/sched.h
-index 0d110c3..e265b84 100644
---- a/include/sched.h
-+++ b/include/sched.h
-@@ -1,5 +1,5 @@
- /* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface.
--   Copyright (C) 1996,1997,1999,2001-2003,2004 Free Software Foundation, Inc.
-+   Copyright (C) 1996,1997,1999,2001-2004,2007 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
-@@ -25,6 +25,9 @@
- /* Get type definitions.  */
- #include<bits/types.h>
-
-+#define __need_size_t
-+#include<stddef.h>
-+
- #define __need_timespec
- #include<time.h>
-
-@@ -65,11 +68,42 @@ extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __THROW;
-
- #if defined __USE_GNU&&  defined __UCLIBC_LINUX_SPECIFIC__
- /* Access macros for `cpu_set'.  */
--#define CPU_SETSIZE __CPU_SETSIZE
--#define CPU_SET(cpu, cpusetp)	__CPU_SET (cpu, cpusetp)
--#define CPU_CLR(cpu, cpusetp)	__CPU_CLR (cpu, cpusetp)
--#define CPU_ISSET(cpu, cpusetp)	__CPU_ISSET (cpu, cpusetp)
--#define CPU_ZERO(cpusetp)	__CPU_ZERO (cpusetp)
-+# define CPU_SETSIZE __CPU_SETSIZE
-+# define CPU_SET(cpu, cpusetp)	 __CPU_SET_S (cpu, sizeof (cpu_set_t), cpusetp)
-+# define CPU_CLR(cpu, cpusetp)	 __CPU_CLR_S (cpu, sizeof (cpu_set_t), cpusetp)
-+# define CPU_ISSET(cpu, cpusetp) __CPU_ISSET_S (cpu, sizeof (cpu_set_t), \
-+						cpusetp)
-+# define CPU_ZERO(cpusetp)	 __CPU_ZERO_S (sizeof (cpu_set_t), cpusetp)
-+# define CPU_COUNT(cpusetp)	 __CPU_COUNT_S (sizeof (cpu_set_t), cpusetp)
-+
-+# define CPU_SET_S(cpu, setsize, cpusetp)   __CPU_SET_S (cpu, setsize, cpusetp)
-+# define CPU_CLR_S(cpu, setsize, cpusetp)   __CPU_CLR_S (cpu, setsize, cpusetp)
-+# define CPU_ISSET_S(cpu, setsize, cpusetp) __CPU_ISSET_S (cpu, setsize, \
-+							   cpusetp)
-+# define CPU_ZERO_S(setsize, cpusetp)	    __CPU_ZERO_S (setsize, cpusetp)
-+# define CPU_COUNT_S(setsize, cpusetp)	    __CPU_COUNT_S (setsize, cpusetp)
-+
-+# define CPU_EQUAL(cpusetp1, cpusetp2) \
-+  __CPU_EQUAL_S (sizeof (cpu_set_t), cpusetp1, cpusetp2)
-+# define CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \
-+  __CPU_EQUAL_S (setsize, cpusetp1, cpusetp2)
-+
-+# define CPU_AND(destset, srcset1, srcset2) \
-+  __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2,&)
-+# define CPU_OR(destset, srcset1, srcset2) \
-+  __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, |)
-+# define CPU_XOR(destset, srcset1, srcset2) \
-+  __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, ^)
-+# define CPU_AND_S(setsize, destset, srcset1, srcset2) \
-+  __CPU_OP_S (setsize, destset, srcset1, srcset2,&)
-+# define CPU_OR_S(setsize, destset, srcset1, srcset2) \
-+  __CPU_OP_S (setsize, destset, srcset1, srcset2, |)
-+# define CPU_XOR_S(setsize, destset, srcset1, srcset2) \
-+  __CPU_OP_S (setsize, destset, srcset1, srcset2, ^)
-+
-+# define CPU_ALLOC_SIZE(count) __CPU_ALLOC_SIZE (count)
-+# define CPU_ALLOC(count) __CPU_ALLOC (count)
-+# define CPU_FREE(cpuset) __CPU_FREE (cpuset)
-
-
- /* Set the CPU affinity for a task */
-@@ -79,12 +113,6 @@ extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize,
- /* Get the CPU affinity for a task */
- extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize,
- 			      cpu_set_t *__cpuset) __THROW;
--
--extern int __clone (int (*__fn) (void *__arg), void *__child_stack,
--		    int __flags, void *__arg, ...);
--extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base,
--		     size_t __child_stack_size, int __flags, void *__arg, ...);
--
- #endif
-
- __END_DECLS
-diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in
-index 8f936ff..cb8c153 100644
---- a/libc/sysdeps/linux/common/Makefile.in
-+++ b/libc/sysdeps/linux/common/Makefile.in
-@@ -22,9 +22,11 @@ CSRC-$(UCLIBC_LINUX_SPECIFIC) += capget.c capset.c inotify.c ioperm.c iopl.c \
- 	modify_ldt.c pipe2.c personality.c ppoll.c prctl.c \
- 	readahead.c reboot.c \
- 	remap_file_pages.c sched_getaffinity.c sched_setaffinity.c \
-+	sched_cpualloc.c sched_cpucount.c sched_cpufree.c \
- 	sendfile64.c sendfile.c setfsgid.c setfsuid.c setresuid.c \
- 	splice.c vmsplice.c tee.c signalfd.c swapoff.c swapon.c \
--	sync_file_range.c sysctl.c sysinfo.c timerfd.c uselib.c vhangup.c
-+	sync_file_range.c sysctl.c sysinfo.c timerfd.c unshare.c \
-+	uselib.c vhangup.c
- # NPTL needs these internally: madvise.c
- CSRC-$(findstring y,$(UCLIBC_LINUX_SPECIFIC)$(UCLIBC_HAS_THREADS_NATIVE)) += madvise.c
- ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
-diff --git a/libc/sysdeps/linux/common/bits/sched.h b/libc/sysdeps/linux/common/bits/sched.h
-index b48a0c8..fea66a8 100644
---- a/libc/sysdeps/linux/common/bits/sched.h
-+++ b/libc/sysdeps/linux/common/bits/sched.h
-@@ -1,6 +1,7 @@
- /* Definitions of constants and data structure for POSIX 1003.1b-1993
-    scheduling interface.
--   Copyright (C) 1996-1999,2001-2003,2005,2006 Free Software Foundation, Inc.
-+   Copyright (C) 1996-1999,2001-2003,2005,2006,2007,2008
-+   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
-@@ -58,7 +59,13 @@
- 				      force CLONE_PTRACE on this clone.  */
- # define CLONE_CHILD_SETTID 0x01000000 /* Store TID in userlevel buffer in
- 					  the child.  */
--# define CLONE_STOPPED	0x02000000 /* Start in stopped state.  */
-+# define CLONE_STOPPED 0x02000000 /* Start in stopped state.  */
-+# define CLONE_NEWUTS	0x04000000	/* New utsname group.  */
-+# define CLONE_NEWIPC	0x08000000	/* New ipcs.  */
-+# define CLONE_NEWUSER	0x10000000	/* New user namespace.  */
-+# define CLONE_NEWPID	0x20000000	/* New pid namespace.  */
-+# define CLONE_NEWNET	0x40000000	/* New network namespace.  */
-+# define CLONE_IO	0x80000000	/* Clone I/O context.  */
- #endif
-
- /* The official definition.  */
-@@ -74,10 +81,11 @@ __BEGIN_DECLS
- extern int clone (int (*__fn) (void *__arg), void *__child_stack,
- 		  int __flags, void *__arg, ...) __THROW;
-
--#if 0
- /* Unshare the specified resources.  */
- extern int unshare (int __flags) __THROW;
--#endif
-+
-+/* Get index of currently used CPU.  */
-+extern int sched_getcpu (void) __THROW;
- #endif
-
- __END_DECLS
-@@ -102,7 +110,7 @@ struct __sched_param
- # define __CPU_SETSIZE	1024
- # define __NCPUBITS	(8 * sizeof (__cpu_mask))
-
--/* Type for array elements in 'cpu_set'.  */
-+/* Type for array elements in 'cpu_set_t'.  */
- typedef unsigned long int __cpu_mask;
-
- /* Basic access functions.  */
-@@ -116,17 +124,73 @@ typedef struct
- } cpu_set_t;
-
- /* Access functions for CPU masks.  */
--# define __CPU_ZERO(cpusetp) \
-+# define __CPU_ZERO_S(setsize, cpusetp) \
-   do {									      \
--    unsigned int __i;							      \
--    cpu_set_t *__arr = (cpusetp);					      \
--    for (__i = 0; __i<  sizeof (cpu_set_t) / sizeof (__cpu_mask); ++__i)      \
--      __arr->__bits[__i] = 0;						      \
-+    size_t __i;								      \
-+    size_t __imax = (setsize) / sizeof (__cpu_mask);			      \
-+    __cpu_mask *__bits = (cpusetp)->__bits;				      \
-+    for (__i = 0; __i<  __imax; ++__i)					      \
-+      __bits[__i] = 0;							      \
-   } while (0)
--# define __CPU_SET(cpu, cpusetp) \
--  ((cpusetp)->__bits[__CPUELT (cpu)] |= __CPUMASK (cpu))
--# define __CPU_CLR(cpu, cpusetp) \
--  ((cpusetp)->__bits[__CPUELT (cpu)]&= ~__CPUMASK (cpu))
--# define __CPU_ISSET(cpu, cpusetp) \
--  (((cpusetp)->__bits[__CPUELT (cpu)]&  __CPUMASK (cpu)) != 0)
-+# define __CPU_SET_S(cpu, setsize, cpusetp) \
-+  (__extension__							      \
-+   ({ size_t __cpu = (cpu);						      \
-+      __cpu<  8 * (setsize)						      \
-+      ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)]		      \
-+	 |= __CPUMASK (__cpu))						      \
-+      : 0; }))
-+# define __CPU_CLR_S(cpu, setsize, cpusetp) \
-+  (__extension__							      \
-+   ({ size_t __cpu = (cpu);						      \
-+      __cpu<  8 * (setsize)						      \
-+      ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)]		      \
-+	&= ~__CPUMASK (__cpu))						      \
-+      : 0; }))
-+# define __CPU_ISSET_S(cpu, setsize, cpusetp) \
-+  (__extension__							      \
-+   ({ size_t __cpu = (cpu);						      \
-+      __cpu<  8 * (setsize)						      \
-+      ? ((((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)]	      \
-+	&  __CPUMASK (__cpu))) != 0					      \
-+      : 0; }))
-+
-+# define __CPU_COUNT_S(setsize, cpusetp) \
-+  __sched_cpucount (setsize, cpusetp)
-+
-+# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \
-+  (__extension__							      \
-+   ({ __cpu_mask *__arr1 = (cpusetp1)->__bits;				      \
-+      __cpu_mask *__arr2 = (cpusetp2)->__bits;				      \
-+      size_t __imax = (setsize) / sizeof (__cpu_mask);			      \
-+      size_t __i;							      \
-+      for (__i = 0; __i<  __imax; ++__i)				      \
-+	if (__arr1[__i] != __arr2[__i])					      \
-+	  break;							      \
-+      __i == __imax; }))
-+
-+# define __CPU_OP_S(setsize, destset, srcset1, srcset2, op) \
-+  (__extension__							      \
-+   ({ cpu_set_t *__dest = (destset);					      \
-+      __cpu_mask *__arr1 = (srcset1)->__bits;				      \
-+      __cpu_mask *__arr2 = (srcset2)->__bits;				      \
-+      size_t __imax = (setsize) / sizeof (__cpu_mask);			      \
-+      size_t __i;							      \
-+      for (__i = 0; __i<  __imax; ++__i)				      \
-+	((__cpu_mask *) __dest->__bits)[__i] = __arr1[__i] op __arr2[__i];    \
-+      __dest; }))
-+
-+# define __CPU_ALLOC_SIZE(count) \
-+  ((((count) + __NCPUBITS - 1) / __NCPUBITS) * sizeof (__cpu_mask))
-+# define __CPU_ALLOC(count) __sched_cpualloc (count)
-+# define __CPU_FREE(cpuset) __sched_cpufree (cpuset)
-+
-+__BEGIN_DECLS
-+
-+extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp)
-+  __THROW;
-+extern cpu_set_t *__sched_cpualloc (size_t __count) __THROW __wur;
-+extern void __sched_cpufree (cpu_set_t *__set) __THROW;
-+
-+__END_DECLS
-+
- #endif
-diff --git a/libc/sysdeps/linux/common/sched_cpualloc.c b/libc/sysdeps/linux/common/sched_cpualloc.c
-new file mode 100644
-index 0000000..2642a80
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_cpualloc.c
-@@ -0,0 +1,27 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<sched.h>
-+#include<stdlib.h>
-+
-+
-+cpu_set_t *
-+__sched_cpualloc (size_t count)
-+{
-+  return malloc (CPU_ALLOC_SIZE (count));
-+}
-diff --git a/libc/sysdeps/linux/common/sched_cpucount.c b/libc/sysdeps/linux/common/sched_cpucount.c
-new file mode 100644
-index 0000000..331c0b8
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_cpucount.c
-@@ -0,0 +1,60 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<limits.h>
-+#include<sched.h>
-+
-+
-+int
-+__sched_cpucount (size_t setsize, const cpu_set_t *setp)
-+{
-+  int s = 0;
-+  const __cpu_mask *p = setp->__bits;
-+  const __cpu_mask *end =&setp->__bits[setsize / sizeof (__cpu_mask)];
-+
-+  while (p<  end)
-+    {
-+      __cpu_mask l = *p++;
-+
-+#ifdef POPCNT
-+      s += POPCNT (l);
-+#else
-+      if (l == 0)
-+	continue;
-+
-+# if LONG_BIT>  32
-+      l = (l&  0x5555555555555555ul) + ((l>>  1)&  0x5555555555555555ul);
-+      l = (l&  0x3333333333333333ul) + ((l>>  2)&  0x3333333333333333ul);
-+      l = (l&  0x0f0f0f0f0f0f0f0ful) + ((l>>  4)&  0x0f0f0f0f0f0f0f0ful);
-+      l = (l&  0x00ff00ff00ff00fful) + ((l>>  8)&  0x00ff00ff00ff00fful);
-+      l = (l&  0x0000ffff0000fffful) + ((l>>  16)&  0x0000ffff0000fffful);
-+      l = (l&  0x00000000fffffffful) + ((l>>  32)&  0x00000000fffffffful);
-+# else
-+      l = (l&  0x55555555ul) + ((l>>  1)&  0x55555555ul);
-+      l = (l&  0x33333333ul) + ((l>>  2)&  0x33333333ul);
-+      l = (l&  0x0f0f0f0ful) + ((l>>  4)&  0x0f0f0f0ful);
-+      l = (l&  0x00ff00fful) + ((l>>  8)&  0x00ff00fful);
-+      l = (l&  0x0000fffful) + ((l>>  16)&  0x0000fffful);
-+# endif
-+
-+      s += l;
-+#endif
-+    }
-+
-+  return s;
-+}
-diff --git a/libc/sysdeps/linux/common/sched_cpufree.c b/libc/sysdeps/linux/common/sched_cpufree.c
-new file mode 100644
-index 0000000..dd4c613
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_cpufree.c
-@@ -0,0 +1,27 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<sched.h>
-+#include<stdlib.h>
-+
-+
-+void
-+__sched_cpufree (cpu_set_t *set)
-+{
-+  free (set);
-+}
-diff --git a/libc/sysdeps/linux/common/sched_getcpu.c b/libc/sysdeps/linux/common/sched_getcpu.c
-new file mode 100644
-index 0000000..b193d65
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_getcpu.c
-@@ -0,0 +1,37 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<stdlib.h>
-+#include<errno.h>
-+#include<sched.h>
-+#include<sysdep.h>
-+
-+
-+int
-+sched_getcpu (void)
-+{
-+#ifdef __NR_getcpu
-+  unsigned int cpu;
-+  int r = INLINE_SYSCALL (getcpu, 3,&cpu, NULL, NULL);
-+
-+  return r == -1 ? r : cpu;
-+#else
-+  __set_errno (ENOSYS);
-+  return -1;
-+#endif
-+}
-diff --git a/libc/sysdeps/linux/common/unshare.c b/libc/sysdeps/linux/common/unshare.c
-new file mode 100644
-index 0000000..485bf88
---- /dev/null
-+++ b/libc/sysdeps/linux/common/unshare.c
-@@ -0,0 +1,12 @@
-+/* vi: set sw=4 ts=4: */
-+/*
-+ * unshare() for uClibc
-+ *
-+ * Copyright (C) 2011 Henning Heinold<[email protected]>
-+ *
-+ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
-+ */
-+
-+#include<sys/syscall.h>
-+#include<sched.h>
-+_syscall1(int, unshare, int, flags)
---
-1.7.5.3
-
meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch new file +32 -0
new file mode 100644
index 0000000..2f0c191
@@ -0,0 +1,32 @@
+From 6c3919a6d4a8686772e2a302bf951548ee24a8c1 Mon Sep 17 00:00:00 2001
+From: Khem Raj<[email protected]>
+Date: Fri, 3 Feb 2012 10:57:44 -0800
+Subject: [PATCH] Declare __err and pass it to INTERNAL_SYSCALL_NCS so
+ subsequent macros can use it
+
+Signed-off-by: Khem Raj<[email protected]>
+---
+ libc/sysdeps/linux/common/bits/syscalls-common.h |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+
+Upstream-Status: Pending
+
+diff --git a/libc/sysdeps/linux/common/bits/syscalls-common.h b/libc/sysdeps/linux/common/bits/syscalls-common.h
+index faebd1b..0f5a929 100644
+--- a/libc/sysdeps/linux/common/bits/syscalls-common.h
++++ b/libc/sysdeps/linux/common/bits/syscalls-common.h
+@@ -59,8 +59,8 @@
+ #ifndef INLINE_SYSCALL_NOERR_NCS
+ # define INLINE_SYSCALL_NOERR_NCS(name, nr, args...)			\
+ ({									\
+-	/*INTERNAL_SYSCALL_DECL(__err);*/					\
+-	long __res = INTERNAL_SYSCALL_NCS(name, /*__err*/, nr, args);	\
++	INTERNAL_SYSCALL_DECL(__err);					\
++	long __res = INTERNAL_SYSCALL_NCS(name, __err, nr, args);	\
+ 	__res;								\
+ })
+ #endif
+--
+1.7.5.4
+
meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch new file +177 -0
new file mode 100644
index 0000000..da4ffef
@@ -0,0 +1,177 @@
+From effbfd8e8a7b883671b24fc9759b135b48dbfaca Mon Sep 17 00:00:00 2001
+From: Khem Raj<[email protected]>
+Date: Fri, 3 Feb 2012 20:06:55 -0800
+Subject: [PATCH] lstat/stat/fstat: Use 64bit version of syscall if available
+
+This is needed for stat'ing loop devices>  255
+since otherwise kernel returns EOVERFLOW becasue
+it needs st_rdev/st_dev to be larger than 16bits but
+in kernel it uses __old_kernel_stat for stat
+syscall which has st_rdev/st_dev as unsigned short
+
+Add a testcase
+
+Signed-off-by: Khem Raj<[email protected]>
+---
+ libc/sysdeps/linux/common/fstat.c |   18 ++++++++++++++----
+ libc/sysdeps/linux/common/lstat.c |   19 ++++++++++++++-----
+ libc/sysdeps/linux/common/stat.c  |   18 ++++++++++++++----
+ test/stat/stat-loop256.c          |   32 ++++++++++++++++++++++++++++++++
+ 4 files changed, 74 insertions(+), 13 deletions(-)
+ create mode 100644 test/stat/stat-loop256.c
+
+diff --git a/libc/sysdeps/linux/common/fstat.c b/libc/sysdeps/linux/common/fstat.c
+index acc639b..4726a68 100644
+--- a/libc/sysdeps/linux/common/fstat.c
++++ b/libc/sysdeps/linux/common/fstat.c
+@@ -12,18 +12,28 @@
+ #include<sys/stat.h>
+ #include "xstatconv.h"
+
+-#define __NR___syscall_fstat __NR_fstat
+-static __inline__ _syscall2(int, __syscall_fstat, int, fd, struct kernel_stat *, buf)
+-
+ int fstat(int fd, struct stat *buf)
+ {
+ 	int result;
++#ifdef __NR_fstat64
++	/* normal stat call has limited values for various stat elements
++	 * e.g. uid device major/minor etc.
++	 * so we use 64 variant if available
++	 * in order to get newer versions of stat elements
++	 */
++	struct kernel_stat64 kbuf;
++	result = INLINE_SYSCALL(fstat64, 2, fd,&kbuf);
++	if (result == 0) {
++		__xstat32_conv(&kbuf, buf);
++	}
++#else
+ 	struct kernel_stat kbuf;
+
+-	result = __syscall_fstat(fd,&kbuf);
++	result = INLINE_SYSCALL(fstat, 2, fd,&kbuf);
+ 	if (result == 0) {
+ 		__xstat_conv(&kbuf, buf);
+ 	}
++#endif
+ 	return result;
+ }
+ libc_hidden_def(fstat)
+diff --git a/libc/sysdeps/linux/common/lstat.c b/libc/sysdeps/linux/common/lstat.c
+index aa77447..db72d1f 100644
+--- a/libc/sysdeps/linux/common/lstat.c
++++ b/libc/sysdeps/linux/common/lstat.c
+@@ -12,19 +12,28 @@
+ #include<sys/stat.h>
+ #include "xstatconv.h"
+
+-#define __NR___syscall_lstat __NR_lstat
+-static __inline__ _syscall2(int, __syscall_lstat,
+-		const char *, file_name, struct kernel_stat *, buf)
+-
+ int lstat(const char *file_name, struct stat *buf)
+ {
+ 	int result;
++#ifdef __NR_lstat64
++	/* normal stat call has limited values for various stat elements
++	 * e.g. uid device major/minor etc.
++	 * so we use 64 variant if available
++	 * in order to get newer versions of stat elements
++	 */
++	struct kernel_stat64 kbuf;
++	result = INLINE_SYSCALL(lstat64, 2, file_name,&kbuf);
++	if (result == 0) {
++		__xstat32_conv(&kbuf, buf);
++	}
++#else
+ 	struct kernel_stat kbuf;
+
+-	result = __syscall_lstat(file_name,&kbuf);
++	result = INLINE_SYSCALL(lstat, 2, file_name,&kbuf);
+ 	if (result == 0) {
+ 		__xstat_conv(&kbuf, buf);
+ 	}
++#endif
+ 	return result;
+ }
+ libc_hidden_def(lstat)
+diff --git a/libc/sysdeps/linux/common/stat.c b/libc/sysdeps/linux/common/stat.c
+index a6ab291..829f35a 100644
+--- a/libc/sysdeps/linux/common/stat.c
++++ b/libc/sysdeps/linux/common/stat.c
+@@ -12,20 +12,30 @@
+ #include<sys/stat.h>
+ #include "xstatconv.h"
+
+-#define __NR___syscall_stat __NR_stat
+ #undef stat
+-static __inline__ _syscall2(int, __syscall_stat,
+-		const char *, file_name, struct kernel_stat *, buf)
+
+ int stat(const char *file_name, struct stat *buf)
+ {
+ 	int result;
++#ifdef __NR_stat64
++	/* normal stat call has limited values for various stat elements
++	 * e.g. uid device major/minor etc.
++	 * so we use 64 variant if available
++	 * in order to get newer versions of stat elements
++	 */
++	struct kernel_stat64 kbuf;
++	result = INLINE_SYSCALL(stat64, 2, file_name,&kbuf);
++	if (result == 0) {
++		__xstat32_conv(&kbuf, buf);
++	}
++#else
+ 	struct kernel_stat kbuf;
+
+-	result = __syscall_stat(file_name,&kbuf);
++	result = INLINE_SYSCALL(stat, 2, file_name,&kbuf);
+ 	if (result == 0) {
+ 		__xstat_conv(&kbuf, buf);
+ 	}
++#endif
+ 	return result;
+ }
+ libc_hidden_def(stat)
+diff --git a/test/stat/stat-loop256.c b/test/stat/stat-loop256.c
+new file mode 100644
+index 0000000..14284c1
+--- /dev/null
++++ b/test/stat/stat-loop256.c
+@@ -0,0 +1,32 @@
++#include<stdio.h>
++#include<unistd.h>
++#include<stdlib.h>
++#include<sys/stat.h>
++int main()
++{
++    struct stat statbuf;
++    int ret = 0;
++    char* loop255 = "/dev/loop255";
++    char* loop256 = "/dev/loop256";
++    mode_t mode = 0660;
++    mknod(loop255, mode, 0x7ff);
++    mknod(loop256, mode, 0x100700);
++    ret = stat(loop255,&statbuf);
++    if(ret<  0) {
++	printf("stat: Cant stat %s\n",loop255);
++	unlink(loop255);
++	exit(1);
++    }
++    ret = stat(loop256,&statbuf);
++    if(ret<  0) {
++        printf("stat: Cant stat %s\n",loop256);
++	unlink(loop255);
++	unlink(loop256);
++        exit(1);
++    }
++
++    unlink(loop255);
++    unlink(loop256);
++    exit(0);
++}
++
+--
+1.7.5.4
+
meta/recipes-core/uclibc/uclibc-0.9.33/argp-headers.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-headers.patch +2 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/argp-headers.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/argp-headers.patch
index 7fd148f..b31b991 100644
@@ -8,6 +8,8 @@ Signed-off-by: Salvatore Cro<salvatore.cro at st.com>
   create mode 100644 include/argp.h
   create mode 100644 libc/argp/argp-fmtstream.h
 
+Upstream-Status: Pending
+
  Index: git/include/argp.h
  ===================================================================
  --- /dev/null
meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch +3 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch
index 04a3c78..3e9680f 100644
@@ -13,6 +13,9 @@ it doesn't need to link libuargp.so explicitely.
  Signed-off-by: Salvatore Cro<salvatore.cro at st.com>
  Signed-off-by: Filippo Arcidiacono<filippo.arcidiacono at st.com>
  Signed-off-by: Carmelo Amoroso<carmelo.amoroso at st.com>
+
+Upstream-Status: Pending
+
  ---
   Makefile.in                                 |    8 +
   Makerules                                   |    8 +-
meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch +1 -1
similarity index 97%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch
index 429f27d..15ee0ca 100644
@@ -1,5 +1,5 @@
  When compiling in thumb mode for arm with -Os gcc gives up since it can not find registers
-to spill. So we use -O2 option for compiling fork.c It may be addressable is gcc.
+to spill. So we use -O2 option for compiling fork.c It may be addressable in gcc.
 
  Signed-off-by: Khem Raj<[email protected]>
 
meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch new file +25 -0
new file mode 100644
index 0000000..4e900f3
@@ -0,0 +1,25 @@
+Add definition of MSG_WAITFORONE and MSG_CMSG_CLOEXEC
+
+Upstream-Status: Pending
+
+Index: git/libc/sysdeps/linux/common/bits/socket.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/common/bits/socket.h	2012-01-26 23:23:21.537456132 -0800
++++ git/libc/sysdeps/linux/common/bits/socket.h	2012-01-26 23:25:10.125461388 -0800
+@@ -235,8 +235,15 @@
+ #define	MSG_ERRQUEUE	MSG_ERRQUEUE
+     MSG_NOSIGNAL	= 0x4000, /* Do not generate SIGPIPE.  */
+ #define	MSG_NOSIGNAL	MSG_NOSIGNAL
+-    MSG_MORE		= 0x8000  /* Sender will send more.  */
++    MSG_MORE		= 0x8000,  /* Sender will send more.  */
+ #define	MSG_MORE	MSG_MORE
++    MSG_WAITFORONE      = 0x10000, /* Wait for at least one packet to return.*/
++#define MSG_WAITFORONE  MSG_WAITFORONE
++
++    MSG_CMSG_CLOEXEC    = 0x40000000    /* Set close_on_exit for file
++                                           descriptor received through
++                                           SCM_RIGHTS.  */
++#define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC
+   };
+
+
meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch new file +37 -0
new file mode 100644
index 0000000..481f23b
@@ -0,0 +1,37 @@
+Implement dup3()
+
+Upstream-Status: Pending
+
+Index: git/libc/sysdeps/linux/common/dup3.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ git/libc/sysdeps/linux/common/dup3.c	2012-01-27 07:40:52.802900849 -0800
+@@ -0,0 +1,15 @@
++/* vi: set sw=4 ts=4: */
++/*
++ * dup3() for uClibc
++ *
++ * Copyright (C) 2000-2006 Erik Andersen<[email protected]>
++ *
++ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
++ */
++
++#include<sys/syscall.h>
++#include<unistd.h>
++
++
++_syscall3(int, dup3, int, oldfd, int, newfd, int, flags)
++libc_hidden_def(dup3)
+Index: git/include/unistd.h
+===================================================================
+--- git.orig/include/unistd.h	2012-01-27 01:19:17.521792781 -0800
++++ git/include/unistd.h	2012-01-27 07:40:03.106898447 -0800
+@@ -512,6 +512,8 @@
+ /* Duplicate FD to FD2, closing FD2 and making it open on the same file.  */
+ extern int dup2 (int __fd, int __fd2) __THROW;
+ libc_hidden_proto(dup2)
++extern int dup3 (int __fd, int __fd2, int __flags) __THROW;
++libc_hidden_proto(dup3)
+
+ /* NULL-terminated array of "NAME=VALUE" environment variables.  */
+ extern char **__environ;
meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch +6 -0
similarity index 86%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch
index cfa68ce..d44acca 100644
@@ -1,3 +1,9 @@
+resolver code should always be in arm mode
+
+Signed-off-by: Khem Raj<[email protected]>
+
+Upstream-Status: Pending
+
  Index: uClibc/ldso/ldso/arm/resolve.S
  ===================================================================
  --- uClibc.orig/ldso/ldso/arm/resolve.S	2009-03-20 12:03:32.000000000 -0700
meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch new file +19 -0
new file mode 100644
index 0000000..8064115
@@ -0,0 +1,19 @@
+Index: git/include/libc-symbols.h
+===================================================================
+--- git.orig/include/libc-symbols.h	2011-07-05 17:04:41.171219323 -0700
++++ git/include/libc-symbols.h	2011-07-05 22:50:36.851661478 -0700
+@@ -48,10 +48,12 @@
+
+    */
+
+-#include<bits/uClibc_arch_features.h>
+-
+ /* Enable declarations of GNU extensions, since we are compiling them.  */
+ #define _GNU_SOURCE	1
++#define __need_uClibc_config_h
++#include<bits/uClibc_config.h>
++#undef __need_uClibc_config_h
++#include<bits/uClibc_arch_features.h>
+
+ /* Prepare for the case that `__builtin_expect' is not available.  */
+ #if defined __GNUC__&&  __GNUC__ == 2&&  __GNUC_MINOR__<  96
meta/recipes-core/uclibc/uclibc-0.9.33/mips/uClibc.machine renamed from meta/recipes-core/uclibc/uclibc-0.9.32/mips/uClibc.machine +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/mips/uClibc.machine
rename to meta/recipes-core/uclibc/uclibc-0.9.33/mips/uClibc.machine
meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +48 -46
similarity index 64%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch
index 631951e..c9c15a3 100644
@@ -3,16 +3,16 @@ http://lists.busybox.net/pipermail/uclibc/2011-March/045003.html
 
  Upstream-Status: Pending
 
-diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
-index 505247e..2b2d429 100644
---- a/ldso/ldso/dl-elf.c
-+++ b/ldso/ldso/dl-elf.c
-@@ -133,53 +133,60 @@ _dl_protect_relro (struct elf_resolve *l)
+Index: git/ldso/ldso/dl-elf.c
+===================================================================
+--- git.orig/ldso/ldso/dl-elf.c	2012-01-23 19:18:58.000000000 -0800
++++ git/ldso/ldso/dl-elf.c	2012-01-23 21:52:06.144646590 -0800
+@@ -133,53 +133,60 @@
    * in uClibc/ldso/util/ldd.c */
   static struct elf_resolve *
- search_for_named_library(const char *name, int secure, const char *path_list,
+ search_for_named_library(const char *name, unsigned rflags, const char *path_list,
  -	struct dyn_elf **rpnt)
-+	struct dyn_elf **rpnt, const char *origin)
++	struct dyn_elf **rpnt, const char* origin)
   {
  -	char *path, *path_n, *mylibname;
  +	char *mylibname;
@@ -47,18 +47,6 @@ index 505247e..2b2d429 100644
  -		if (*path == 0) {
  -			*path = ':';
  -			done = 1;
--		}
--		if (*path == ':') {
--			*path = 0;
--			if (*path_n)
--				_dl_strcpy(mylibname, path_n);
--			else
--				_dl_strcpy(mylibname, "."); /* Assume current dir if empty path */
--			_dl_strcat(mylibname, "/");
--			_dl_strcat(mylibname, name);
--			if ((tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname)) != NULL)
--				return tpnt;
--			path_n = path+1;
  +	for (p = path_list; p != NULL; p = pn) {
  +		pn = _dl_strchr(p + 1, ':');
  +		if (pn != NULL) {
@@ -69,7 +57,7 @@ index 505247e..2b2d429 100644
  +
  +		if (plen>= 7&&  _dl_memcmp(p, "$ORIGIN", 7) == 0) {
  +			int olen;
-+			if (secure&&  plen != 7)
++			if (rflags&&  plen != 7)
  +				continue;
  +			if (origin == NULL)
  +				continue;
@@ -86,12 +74,24 @@ index 505247e..2b2d429 100644
  +		} else {
  +			_dl_strcpy(mylibname, ".");
   		}
+-		if (*path == ':') {
+-			*path = 0;
+-			if (*path_n)
+-				_dl_strcpy(mylibname, path_n);
+-			else
+-				_dl_strcpy(mylibname, "."); /* Assume current dir if empty path */
+-			_dl_strcat(mylibname, "/");
+-			_dl_strcat(mylibname, name);
+-			if ((tpnt = _dl_load_elf_shared_library(rflags, rpnt, mylibname)) != NULL)
+-				return tpnt;
+-			path_n = path+1;
+-		}
  -		path++;
  -	} while (!done);
  +		_dl_strcat(mylibname, "/");
  +		_dl_strcat(mylibname, name);
  +
-+		tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname);
++		tpnt = _dl_load_elf_shared_library(rflags, rpnt, mylibname);
  +		if (tpnt != NULL)
  +			return tpnt;
  +	}
@@ -99,44 +99,46 @@ index 505247e..2b2d429 100644
   	return NULL;
   }
 
-@@ -231,7 +238,8 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+@@ -231,8 +238,10 @@
   	if (pnt) {
   		pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
   		_dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt);
--		if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt)) != NULL)
-+		if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt,
+-		if ((tpnt1 = search_for_named_library(libname, rflags, pnt, rpnt)) != NULL)
++		if ((tpnt1 = search_for_named_library(libname, rflags, pnt, rpnt,
  +						      tpnt->libname)) != NULL)
   			return tpnt1;
++
   	}
   #endif
-@@ -239,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+
+@@ -240,7 +249,7 @@
   	/* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */
   	if (_dl_library_path) {
   		_dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path);
--		if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt)) != NULL)
-+		if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt, NULL)) != NULL)
+-		if ((tpnt1 = search_for_named_library(libname, rflags, _dl_library_path, rpnt)) != NULL)
++		if ((tpnt1 = search_for_named_library(libname, rflags, _dl_library_path, rpnt, NULL)) != NULL)
   		{
   			return tpnt1;
   		}
-@@ -253,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+@@ -254,7 +263,7 @@
   	if (pnt) {
   		pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
   		_dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt);
--		if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt)) != NULL)
-+		if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt, NULL)) != NULL)
+-		if ((tpnt1 = search_for_named_library(libname, rflags, pnt, rpnt)) != NULL)
++		if ((tpnt1 = search_for_named_library(libname, rflags, pnt, rpnt, NULL)) != NULL)
   			return tpnt1;
   	}
   #endif
-@@ -287,7 +295,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+@@ -288,7 +297,7 @@
   	/* Look for libraries wherever the shared library loader
   	 * was installed */
   	_dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath);
--	tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt);
-+	tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt, NULL);
+-	tpnt1 = search_for_named_library(libname, rflags, _dl_ldsopath, rpnt);
++	tpnt1 = search_for_named_library(libname, rflags, _dl_ldsopath, rpnt, NULL);
   	if (tpnt1 != NULL)
   		return tpnt1;
-
-@@ -300,7 +308,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ #endif
+@@ -301,7 +310,7 @@
   #ifndef __LDSO_CACHE_SUPPORT__
   					":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib"
   #endif
@@ -145,12 +147,12 @@ index 505247e..2b2d429 100644
   	if (tpnt1 != NULL)
   		return tpnt1;
 
-diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
-index 7ee9257..9423670 100644
---- a/ldso/ldso/ldso.c
-+++ b/ldso/ldso/ldso.c
-@@ -272,6 +272,20 @@ static void __attribute__ ((destructor)) __attribute_used__ _dl_fini(void)
- 	}
+Index: git/ldso/ldso/ldso.c
+===================================================================
+--- git.orig/ldso/ldso/ldso.c	2012-01-23 19:18:58.000000000 -0800
++++ git/ldso/ldso/ldso.c	2012-01-23 21:34:11.152594621 -0800
+@@ -407,6 +407,20 @@
+ 	return p - list;
   }
 
  +static void _dl_setup_progname(const char *argv0)
@@ -167,10 +169,10 @@ index 7ee9257..9423670 100644
  +	}
  +}
  +
- void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
- 			  ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp,
- 			  char **argv
-@@ -321,9 +335,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
+ void *_dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
+ 			  ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp, char **argv
+ 			  DL_GET_READY_TO_RUN_EXTRA_PARMS)
+@@ -458,9 +472,7 @@
   	 * been fixed up by now.  Still no function calls outside of this
   	 * library, since the dynamic resolver is not yet ready.
   	 */
@@ -179,5 +181,5 @@ index 7ee9257..9423670 100644
  -	}
  +	_dl_setup_progname(argv[0]);
 
+ #ifndef __LDSO_STANDALONE_SUPPORT__
   	if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) {
- 		_dl_dprintf(_dl_debug_file, "Standalone execution is not supported yet\n");
meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +6 -0
similarity index 96%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch
index 339ce7f..3fa10af 100644
@@ -1,3 +1,9 @@
+Add ppc copysignl implementation
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj<[email protected]>
+
  Index: git/libc/sysdeps/linux/powerpc/Makefile.arch
  ===================================================================
  --- git.orig/libc/sysdeps/linux/powerpc/Makefile.arch
meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch +5 -12
similarity index 93%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch
index 1930383..bee251c 100644
@@ -1,15 +1,8 @@
-Index: git/include/features.h
-===================================================================
---- git.orig/include/features.h
-+++ git/include/features.h
-@@ -186,7 +186,6 @@
- # define __need_uClibc_config_h
- # include<bits/uClibc_config.h>
- # undef __need_uClibc_config_h
--
- /* For uClibc, always optimize for size -- this should disable
-  * a lot of expensive inlining...
-  * TODO: this is wrong! __OPTIMIZE_SIZE__ is an indicator of
+Dont support localised optimizations this helps to have a global -O level
+
+Signed-off-by: Khem Raj<[email protected]>
+Upstream-Status: Pending
+
  Index: git/libpthread/nptl/pthread_mutex_timedlock.c
  ===================================================================
  --- git.orig/libpthread/nptl/pthread_mutex_timedlock.c
meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.distro renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.distro +7 -1
similarity index 96%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.distro
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.distro
index 5638d47..c33bf8e 100644
@@ -181,4 +181,10 @@ UCLIBC_HAS_FLOATS=y
 
  # needed by systemd
  UCLIBC_HAS_UTMPX=y
-
+UCLIBC_LINUX_MODULE_26=y
+UCLIBC_HAS_RESOLVER_SUPPORT=y
+# needed for LTP
+UCLIBC_SUSV4_LEGACY=y
+UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y
+DO_XSI_MATH=y
+UCLIBC_SV4_DEPRECATED=y
meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.machine renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.machine +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.machine
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.machine
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch +3 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch
index cd90a09..fe191fc 100644
@@ -12,6 +12,9 @@ Signed-off-by: Henning Heinold<[email protected]>
   3 files changed, 46 insertions(+), 5 deletions(-)
   create mode 100644 libc/unistd/execvpe.c
 
+
+Upstream-Status: Pending
+
  diff --git a/include/unistd.h b/include/unistd.h
  index 9568790..070e4f2 100644
  --- a/include/unistd.h
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch +5 -0
similarity index 81%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch
index f8f3a7d..37a5988 100644
@@ -1,3 +1,8 @@
+uclibc now has log2 so enable the tests
+
+Signed-off-by: Khem Raj<[email protected]>
+Upstream-Status: Pending
+
  Index: uClibc/test/math/libm-test.inc
  ===================================================================
  --- uClibc/test/math/libm-test.inc	(revision 23784)
meta/recipes-core/uclibc/uclibc-initial_0.9.33.bb renamed from meta/recipes-core/uclibc/uclibc-initial_0.9.32.bb +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-initial_0.9.32.bb
rename to meta/recipes-core/uclibc/uclibc-initial_0.9.33.bb
meta/recipes-core/uclibc/uclibc_0.9.33.bb renamed from meta/recipes-core/uclibc/uclibc_0.9.32.bb +9 -17
similarity index 45%
rename from meta/recipes-core/uclibc/uclibc_0.9.32.bb
rename to meta/recipes-core/uclibc/uclibc_0.9.33.bb
index 235b436..b559fd4 100644
@@ -1,34 +1,26 @@
-SRCREV="9152c4d67c763fde5712e2d181d92c0d7e1e2ab9"
+SRCREV="1548ee3ca582f3732136e71613c87c16230f71cc"
 
  require uclibc.inc
-PR = "${INC_PR}.3"
+
+PR = "${INC_PR}.0"
  PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
  SRC_URI = "git://uclibc.org/uClibc.git;branch=${PV};protocol=git \
  	file://uClibc.machine \
  	file://uClibc.distro \
-	file://uclibc-arm-ftruncate64.patch \
  	file://uclibc_enable_log2_test.patch \
  	file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch \
-	file://select-force-thumb.patch \
-	file://remove-sub-arch-variants.patch \
-	file://transform-eabi-oabi-choice.patch \
-	file://include-arm-asm.h.patch \
-	file://detect-bx-availibility.patch \
-	file://remove-eabi-oabi-selection.patch \
  	file://powerpc_copysignl.patch \
  	file://argp-support.patch \
  	file://argp-headers.patch \
  	file://remove_attribute_optimize_Os.patch \
  	file://compile-arm-fork-with-O2.patch \
-	file://epoll-asm-fix.patch \
-	file://orign_path.patch \
-	file://rtld_no.patch \
-	file://0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch \
-	file://0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch \
  	file://uclibc-execvpe.patch \
-	file://uclibc_scheduler_update.patch \
-	file://sync_file_range2.patch \
-	file://mount.h-update.patch \
+	file://orign_path.patch \
+	file://dup3.patch \
+	file://define-MSG_CMSG_CLOEXEC.patch \
+	file://0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch \
+	file://0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch \
  	"
+
  S = "${WORKDIR}/git"
author
#25 lore raw

Re: [PATCH 11/20] uclibc: Upgrade recipes from 0.9.32 -> 0.9.33

updated

Quoted 37 lines · Saul Wold
Quoted 36 lines · Khem Raj

Prefer 0.9.33 by default
Delete recipes for 0.9.32

---
 meta/conf/distro/include/tcmode-default.inc        |    2 +-
 ...rch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch |   29 --
 ...fd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch |   33 --
 .../uclibc-0.9.32/detect-bx-availibility.patch     |   75 ----
 .../uclibc/uclibc-0.9.32/epoll-asm-fix.patch       |   25 --
 .../uclibc/uclibc-0.9.32/include-arm-asm.h.patch   |   65 ---
 .../uclibc/uclibc-0.9.32/mount.h-update.patch      |   85 ----
 .../uclibc-0.9.32/remove-eabi-oabi-selection.patch |   91 ----
 .../uclibc-0.9.32/remove-sub-arch-variants.patch   |  215 ---------
 .../uclibc/uclibc-0.9.32/rtld_no.patch             |  215 ---------
 .../uclibc/uclibc-0.9.32/select-force-thumb.patch  |  172 --------
 .../uclibc/uclibc-0.9.32/sync_file_range2.patch    |   47 --
 .../uclibc-0.9.32/transform-eabi-oabi-choice.patch |   71 ---
 .../uclibc-0.9.32/uclibc-arm-ftruncate64.patch     |   13 -
 .../uclibc-0.9.32/uclibc_scheduler_update.patch    |  455
--------------------
 ...rr-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch |   32 ++
 ...fstat-Use-64bit-version-of-syscall-if-ava.patch |  177 ++++++++
 .../argp-headers.patch                             |    2 +
 .../argp-support.patch                             |    3 +
 .../compile-arm-fork-with-O2.patch                 |    2 +-
 .../uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch    |   25 ++
 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch  |   37 ++
 ...so_use_arm_dl_linux_resolve_in_thumb_mode.patch |    6 +
 .../libc_symbols_include_bits_uclibc_config.patch  |   19 +
 .../mips/uClibc.machine                            |    0
 .../orign_path.patch                               |   94 ++--
 .../powerpc_copysignl.patch                        |    6 +
 .../remove_attribute_optimize_Os.patch             |   17 +-
 .../{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.distro |    8 +-
Quoted 8 lines
Quoted 8 lines
 .../uClibc.machine                                 |    0
 .../uclibc-execvpe.patch                           |    3 +
 .../uclibc_enable_log2_test.patch                  |    5 +
 ...-initial_0.9.32.bb =>  uclibc-initial_0.9.33.bb} |    0
 .../uclibc/{uclibc_0.9.32.bb =>  uclibc_0.9.33.bb}  |   26 +-
 34 files changed, 386 insertions(+), 1669 deletions(-)
 delete mode 100644

meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch

Quoted 2 lines
Quoted 2 lines
 delete mode 100644

meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch

Quoted 17 lines
Quoted 17 lines
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch
 delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch
 delete mode 100644

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch

Quoted 8 lines
Quoted 8 lines
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch
 delete mode 100644
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch
 create mode 100644

meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch

Quoted 2 lines
Quoted 2 lines
 create mode 100644

meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch

Quoted 19 lines

Missing Upstream-Status in this patch

Quoted 1 line

rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>

uclibc-0.9.33}/argp-headers.patch (99%)

Quoted 12 lines
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/argp-support.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/compile-arm-fork-with-O2.patch (97%)
 create mode 100644
meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch
 create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch (86%)
 create mode 100644

meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch

Quoted 39 lines

Also missing Upstream-Status.

Quoted 34 lines
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/mips/uClibc.machine (100%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/orign_path.patch (64%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/powerpc_copysignl.patch (96%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/remove_attribute_optimize_Os.patch (93%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/uClibc.distro (96%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/uClibc.machine (100%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/uclibc-execvpe.patch (99%)
 rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>
 uclibc-0.9.33}/uclibc_enable_log2_test.patch (81%)
 rename meta/recipes-core/uclibc/{uclibc-initial_0.9.32.bb =>
 uclibc-initial_0.9.33.bb} (100%)
 rename meta/recipes-core/uclibc/{uclibc_0.9.32.bb =>  uclibc_0.9.33.bb}

(45%)

meta/conf/distro/include/tcmode-default.inc +1 -1
index 5bb253e..b7c2160 100644
@@ -20,7 +20,7 @@ GCCVERSION ?= "4.6%"
 SDKGCCVERSION ?= "4.6%"
 BINUVERSION ?= "2.22"
 EGLIBCVERSION ?= "2.13"
-UCLIBCVERSION ?= "0.9.32"
+UCLIBCVERSION ?= "0.9.33"
 LINUXLIBCVERSION ?= "3.1"
 
Quoted 3 lines
Quoted 3 lines
meta/conf/distro/include/tcmode-default.inc +0 -0
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"

diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch

Quoted 4 lines
Quoted 4 lines

deleted file mode 100644
index da97d38..0000000
---

a/meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch

Quoted 27 lines
Quoted 27 lines

+++ /dev/null

meta/conf/distro/include/tcmode-default.inc +0 -4
@@ -1,29 +0,0 @@
-From 06cdcd2a9dd6b46b7fbb5b3ae0a62bdb7ee6c402 Mon Sep 17 00:00:00 2001
-From: Khem Raj<[email protected]>
-Date: Mon, 27 Jun 2011 17:48:18 -0700
-Subject: [PATCH] Config.in.arch: Free UCLIBC_HAS_FPU setting from

depending on UCLIBC_HAS_FLOATS

meta/conf/distro/include/tcmode-default.inc +0 -20
-
-UCLIBC_HAS_FLOATS and UCLIBC_HAS_FPU are denoting two different aspects.
-UCLIBC_HAS_FLOATS covers the floating point operations which has nothing
-to do if you have FPU or not.
-
-Signed-off-by: Khem Raj<[email protected]>
----
- extra/Configs/Config.in.arch |    1 -
- 1 files changed, 0 insertions(+), 1 deletions(-)
-
-diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch
-index 5f7a2b0..c1ca390 100644
---- a/extra/Configs/Config.in.arch
-+++ b/extra/Configs/Config.in.arch
-@@ -133,7 +133,6 @@ config UCLIBC_HAS_FLOATS
-
- config UCLIBC_HAS_FPU
-       bool "Target CPU has a floating point unit (FPU)"
--      depends on UCLIBC_HAS_FLOATS
-       default y
Quoted 8 lines
Quoted 8 lines
meta/conf/distro/include/tcmode-default.inc +0 -2
-       help
-         If your target CPU does not have a Floating Point Unit (FPU) or

a
---
-1.7.0.4
-
diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch

Quoted 4 lines
Quoted 4 lines

deleted file mode 100644
index 6892ceb..0000000
---

a/meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch

Quoted 49 lines
Quoted 49 lines

+++ /dev/null

meta/conf/distro/include/tcmode-default.inc +0 -4
@@ -1,33 +0,0 @@
-From ecc7d34cbbaf83aae87b091555650ed33e27ed2e Mon Sep 17 00:00:00 2001
-From: Khem Raj<[email protected]>
-Date: Thu, 30 Jun 2011 00:32:11 -0700
-Subject: [PATCH] mips/signalfd.h: SFD_NONBLOCK for mips is 0200 unlike

04000 commonly

meta/conf/distro/include/tcmode-default.inc +0 -29
-
-Signed-off-by: Khem Raj<[email protected]>
----
- include/sys/signalfd.h |    9 +++++++++
- 1 files changed, 9 insertions(+), 0 deletions(-)
-
-diff --git a/include/sys/signalfd.h b/include/sys/signalfd.h
-index 8cee17c..f1cb63a 100644
---- a/include/sys/signalfd.h
-+++ b/include/sys/signalfd.h
-@@ -64,6 +64,15 @@ enum
- # define SFD_NONBLOCK SFD_NONBLOCK
-   };
-
-+#elif defined __mips__
-+enum
-+  {
-+    SFD_CLOEXEC = 02000000,
-+# define SFD_CLOEXEC SFD_CLOEXEC
-+    SFD_NONBLOCK = 0200
-+# define SFD_NONBLOCK SFD_NONBLOCK
-+  };
-+
- #else
- enum
-   {
---
-1.7.0.4
-

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted file mode 100644
index 43d19fc..0000000

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -4
@@ -1,75 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313307agb;
-        Sat, 8 Jan 2011 16:45:20 -0800 (PST)
-Received: by 10.227.141.78 with SMTP id

l14mr16920947wbu.128.1294533919168;

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -3
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr

[80.12.242.123])
- by mx.google.com with ESMTP id
w30si33755908wbd.17.2011.01.08.16.45.18;

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -2
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted

nor

Quoted 1 line
Quoted 1 line

denied by best guess record for domain of [email protected]

)

Quoted 16 lines
Quoted 16 lines

client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com:
80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -10
-Received: from roazhon.bzh.lan ([90.32.245.227])
-       by mwinf5d24 with ME
-       id tClC1f0024v5z3u03ClHDo; Sun, 09 Jan 2011 01:45:18 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-       Bernhard Reutner-Fischer<[email protected]>,
-       Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 6/7] ARM: detect BX availibility at build time
-Date: Sun,  9 Jan 2011 01:45:09 +0100
Quoted 1 line
Quoted 1 line

-Message-Id:<

1294533910-19305-7-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 3 lines

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch

Quoted 3 lines
meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -2
-X-Mailer: git-send-email 1.7.1
 
-In-Reply-To:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 2 lines
Quoted 2 lines

-References:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 97 lines
Quoted 97 lines
meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -28
-
-The "use BX" option is now a suggestion that BX be used if available.
-Use a macro to detect if BX is available at build time. If so, and
-the user requested it be used, then use it. Otherwise, error out.
-
-Macro courtesy Khem RAJ:
-  http://lists.uclibc.org/pipermail/uclibc/2009-April/042301.html
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- extra/Configs/Config.arm              |    4 +++-
- libc/sysdeps/linux/arm/bits/arm_asm.h |    9 ++++++++-
- 2 files changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
-index 227b90c..9aa9e56 100644
---- a/extra/Configs/Config.arm
-+++ b/extra/Configs/Config.arm
-@@ -33,4 +33,6 @@ config COMPILE_IN_THUMB_MODE
- config USE_BX
-       bool "Use BX in function return"
-       help
--        Use BX instruction for THUMB aware architectures.
-+        Say 'y' to use BX to return from functions on your thumb-aware
-+        processor. Say 'y' if you need to use interworking. Say 'n' if

not.
-+ It is safe to say 'y' even if you're not doing interworking.
-diff --git a/libc/sysdeps/linux/arm/bits/arm_asm.h b/libc/sysdeps/linux/arm/bits/arm_asm.h

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -13
-index 1d87df6..921c9a3 100644
---- a/libc/sysdeps/linux/arm/bits/arm_asm.h
-+++ b/libc/sysdeps/linux/arm/bits/arm_asm.h
-@@ -24,5 +24,12 @@
- #define THUMB1_ONLY 1
- #endif
-
--#endif /* _ARM_ASM_H */
-+#if defined(__USE_BX__)
-+# if (   defined (__ARM_ARCH_2__)  || defined (__ARM_ARCH_3__) \
-+      || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \
-+     )
-+#  error Use of BX was requested, but is not available on the target

processor.
-+# endif /* ARCH level */
-+#endif /* __USE_BX__ */

meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch deleted +0 -5
-
-+#endif /* _ARM_ASM_H */
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch deleted +0 -1
deleted file mode 100644
index bcd834d..0000000
@@ -1,25 +0,0 @@
-Fix a compile error due to last argument to syscall() not being memory

addressable.

meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch deleted +0 -5
-
-Upstream-Status: Pending
-Signed-off-by: Phil Blundell<[email protected]>
-
-diff --git a/libc/sysdeps/linux/common/epoll.c

b/libc/sysdeps/linux/common/epoll.c
-index 85b0cfd..c034b2c 100644
---- a/libc/sysdeps/linux/common/epoll.c
-+++ b/libc/sysdeps/linux/common/epoll.c
-@@ -67,12 +67,13 @@ extern __typeof(epoll_pwait) __libc_epoll_pwait;
- int __libc_epoll_pwait(int epfd, struct epoll_event *events, int maxevents,
- int timeout, const
sigset_t *set)
- {
-+ int nsig = _NSIG / 8;
- if (SINGLE_THREAD_P)
-- return INLINE_SYSCALL(epoll_pwait, 6, epfd, events,
maxevents, timeout, set, _NSIG / 8);
-+ return INLINE_SYSCALL(epoll_pwait, 6, epfd, events,
maxevents, timeout, set, nsig);
- # ifdef __UCLIBC_HAS_THREADS_NATIVE__

meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch deleted +0 -3
-       else {
-               int oldtype = LIBC_CANCEL_ASYNC ();
--              int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events,

maxevents, timeout, set, _NSIG / 8);
-+ int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events,
maxevents, timeout, set, nsig);

meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch deleted +0 -3
-               LIBC_CANCEL_RESET (oldtype);
-               return result;
-       }

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted file mode 100644

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch line 4

Quoted 8 lines

index 55c312e..0000000

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -4
@@ -1,65 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313304agb;
-        Sat, 8 Jan 2011 16:45:19 -0800 (PST)
-Received: by 10.227.155.75 with SMTP id

r11mr17188266wbw.3.1294533918432;

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -3
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr

[80.12.242.123])
- by mx.google.com with ESMTP id
k3si33753340wbx.29.2011.01.08.16.45.17;

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -2
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted

nor

Quoted 1 line
Quoted 1 line

denied by best guess record for domain of [email protected]

)

Quoted 17 lines
Quoted 17 lines

client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com:
80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -9
-Received: from roazhon.bzh.lan ([90.32.245.227])
-       by mwinf5d24 with ME
-       id tClC1f0024v5z3u03ClHDf; Sun, 09 Jan 2011 01:45:17 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-       Bernhard Reutner-Fischer<[email protected]>,
-       Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 5/7] ARM: #include<bits/arm_asm.h>  where __USE_BX__ is

used
-Date: Sun, 9 Jan 2011 01:45:08 +0100

Quoted 1 line
Quoted 1 line

-Message-Id:<

1294533910-19305-6-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 3 lines

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch

Quoted 3 lines
meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -2
-X-Mailer: git-send-email 1.7.1
 
-In-Reply-To:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 2 lines
Quoted 2 lines

-References:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 55 lines
Quoted 55 lines
meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -26
-
-The check for __USE_BX__ will be available in bits/arm_asm.h,
-so the latter must be included wherever the former is used.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- ldso/ldso/arm/dl-startup.h      |    1 +
- libc/sysdeps/linux/arm/sysdep.h |    1 +
- 2 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/ldso/ldso/arm/dl-startup.h b/ldso/ldso/arm/dl-startup.h
-index a95389d..2dfdaff 100644
---- a/ldso/ldso/arm/dl-startup.h
-+++ b/ldso/ldso/arm/dl-startup.h
-@@ -7,6 +7,7 @@
-  */
-
- #include<features.h>
-+#include<bits/arm_asm.h>
-
- #if !defined(__thumb__)
- __asm__(
-diff --git a/libc/sysdeps/linux/arm/sysdep.h

b/libc/sysdeps/linux/arm/sysdep.h

meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch deleted +0 -14
-index 013f88c..e498695 100644
---- a/libc/sysdeps/linux/arm/sysdep.h
-+++ b/libc/sysdeps/linux/arm/sysdep.h
-@@ -21,6 +21,7 @@
- #define _LINUX_ARM_SYSDEP_H 1
-
- #include<common/sysdep.h>
-+#include<bits/arm_asm.h>
-
- #include<sys/syscall.h>
- /* For Linux we can use the system call table in the header file
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -7
deleted file mode 100644
index 3508e0e..0000000
@@ -1,85 +0,0 @@
-Sync mount.h from glibc this is needed to get missing defines
-that some apps e.g. systemd are depending on
-
-Signed-off-by: Khem Raj<[email protected]>
-
-Upstream-Status: Pending
-
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -8
-Index: git/include/sys/mount.h
-===================================================================
---- git.orig/include/sys/mount.h       2011-07-21 14:37:27.134255747
-0700
-+++ git/include/sys/mount.h    2011-07-21 14:39:53.844470932 -0700
-@@ -1,5 +1,5 @@
- /* Header file for mounting/unmount Linux filesystems.
--   Copyright (C) 1996,1997,1998,1999,2000,2004 Free Software

Foundation,

Quoted 88 lines
Quoted 88 lines

Inc.
-+ Copyright (C) 1996-2000, 2004, 2010 Free Software Foundation, Inc.

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -14
-    This file is part of the GNU C Library.
-
-    The GNU C Library is free software; you can redistribute it and/or
-@@ -47,23 +47,46 @@
- #define MS_REMOUNT    MS_REMOUNT
-   MS_MANDLOCK = 64,           /* Allow mandatory locks on an FS.  */
- #define MS_MANDLOCK   MS_MANDLOCK
--  S_WRITE = 128,              /* Write on file/directory/symlink.  */
--#define S_WRITE               S_WRITE
--  S_APPEND = 256,             /* Append-only file.  */
--#define S_APPEND      S_APPEND
--  S_IMMUTABLE = 512,          /* Immutable file.  */
--#define S_IMMUTABLE   S_IMMUTABLE
-+  MS_DIRSYNC = 128,           /* Directory modifications are

synchronous. */
-+#define MS_DIRSYNC MS_DIRSYNC

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -3
-   MS_NOATIME = 1024,          /* Do not update access times.  */
- #define MS_NOATIME    MS_NOATIME
-   MS_NODIRATIME = 2048,               /* Do not update directory access

times. */
- #define MS_NODIRATIME MS_NODIRATIME

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -51
-   MS_BIND = 4096,             /* Bind directory at different place.  */
- #define MS_BIND               MS_BIND
-+  MS_MOVE = 8192,
-+#define MS_MOVE               MS_MOVE
-+  MS_REC = 16384,
-+#define MS_REC                MS_REC
-+  MS_SILENT = 32768,
-+#define MS_SILENT     MS_SILENT
-+  MS_POSIXACL = 1<<  16,      /* VFS does not apply the umask.  */
-+#define MS_POSIXACL   MS_POSIXACL
-+  MS_UNBINDABLE = 1<<  17,    /* Change to unbindable.  */
-+#define MS_UNBINDABLE MS_UNBINDABLE
-+  MS_PRIVATE = 1<<  18,               /* Change to private.  */
-+#define MS_PRIVATE    MS_PRIVATE
-+  MS_SLAVE = 1<<  19,         /* Change to slave.  */
-+#define MS_SLAVE      MS_SLAVE
-+  MS_SHARED = 1<<  20,                /* Change to shared.  */
-+#define MS_SHARED     MS_SHARED
-+  MS_RELATIME = 1<<  21,      /* Update atime relative to mtime/ctime.
 */
-+#define MS_RELATIME   MS_RELATIME
-+  MS_KERNMOUNT = 1<<  22,     /* This is a kern_mount call.  */
-+#define MS_KERNMOUNT  MS_KERNMOUNT
-+  MS_I_VERSION =  1<<  23,    /* Update inode I_version field.  */
-+#define MS_I_VERSION  MS_I_VERSION
-+  MS_STRICTATIME = 1<<  24,   /* Always perform atime updates.  */
-+#define MS_STRICTATIME        MS_STRICTATIME
-+  MS_ACTIVE = 1<<  30,
-+#define MS_ACTIVE     MS_ACTIVE
-+  MS_NOUSER = 1<<  31
-+#define MS_NOUSER     MS_NOUSER
- };
-
- /* Flags that can be altered by MS_REMOUNT  */
--#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_NOATIME \
--                   |MS_NODIRATIME)
-+#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION)
-
-
- /* Magic mount flag number. Has to be or-ed to the flag values.  */
-@@ -100,8 +123,10 @@
- #define MNT_FORCE MNT_FORCE
-   MNT_DETACH = 2,             /* Just detach from the tree.  */
- #define MNT_DETACH MNT_DETACH
--  MNT_EXPIRE = 4              /* Mark for expiry.  */
-+  MNT_EXPIRE = 4,             /* Mark for expiry.  */
- #define MNT_EXPIRE MNT_EXPIRE
-+  UMOUNT_NOFOLLOW = 8         /* Don't follow symlink on umount.  */
-+#define UMOUNT_NOFOLLOW UMOUNT_NOFOLLOW
- };
-
-

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch deleted file mode 100644
index 8f3464e..0000000
---
a/meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch +++ /dev/null

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -4
@@ -1,91 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313309agb;
-        Sat, 8 Jan 2011 16:45:20 -0800 (PST)
-Received: by 10.216.173.7 with SMTP id u7mr612034wel.50.1294533919433;
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -3
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr

[80.12.242.123])
- by mx.google.com with ESMTP id
e10si33752027wer.68.2011.01.08.16.45.19;

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -2
-        Sat, 08 Jan 2011 16:45:19 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted

nor

Quoted 1 line
Quoted 1 line

denied by best guess record for domain of [email protected]

)

Quoted 16 lines
Quoted 16 lines

client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com:
80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -10
-Received: from roazhon.bzh.lan ([90.32.245.227])
-       by mwinf5d24 with ME
-       id tClC1f0024v5z3u03ClJDu; Sun, 09 Jan 2011 01:45:18 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-       Bernhard Reutner-Fischer<[email protected]>,
-       Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 7/7] ARM: remove EABI/OABI selection
-Date: Sun,  9 Jan 2011 01:45:10 +0100
Quoted 1 line
Quoted 1 line

-Message-Id:<

1294533910-19305-8-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 3 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 3 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -2
-X-Mailer: git-send-email 1.7.1
 
-In-Reply-To:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 2 lines
Quoted 2 lines

-References:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 38 lines
Quoted 38 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -29
-
-Rely on the compiler to be properly setup for the default ABI.
-
-When installing-headers, there are two cases:
-- NPTL: no issue, a cross-compiler is already expected
-- LinuxThreads: no issue, EABI/OABI has no impact on installed headers.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- extra/Configs/Config.arm               |   11 -----------
- libc/sysdeps/linux/arm/Makefile.arch   |    9 +++++++--
- libc/sysdeps/linux/arm/bits/huge_val.h |    4 ++--
- 3 files changed, 9 insertions(+), 15 deletions(-)
-
-Index: git/libc/sysdeps/linux/arm/Makefile.arch
-===================================================================
---- git.orig/libc/sysdeps/linux/arm/Makefile.arch
-+++ git/libc/sysdeps/linux/arm/Makefile.arch
-@@ -24,7 +24,12 @@ ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),y)
- CSRC += posix_fadvise.c posix_fadvise64.c
- endif
-
--ifeq ($(CONFIG_ARM_EABI),y)
-+# Is our compiler set up for EABI ?
-+IS_EABI:=$(shell $(CC) $(CFLAGS) -x c - -E -dM</dev/null 2>/dev/null \
-+                 |sed -r -e

'/^\#[[:space:]]*define[[:space:]]+__ARM_EABI__([[:space:]]+1)?$$/!d; s/.+/y/;' \
-+ )
-+
-+ifeq ($(IS_EABI),y)
- CSRC += aeabi_assert.c aeabi_atexit.c aeabi_errno_addr.c \

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -3
-       aeabi_localeconv.c aeabi_memclr.c aeabi_memcpy.c \
-       aeabi_memmove.c aeabi_memset.c find_exidx.c
-@@ -37,7 +42,7 @@ else
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 8 lines

- CSRC += syscall.c
- endif

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -6
-
--ifeq ($(CONFIG_ARM_EABI),y)
-+ifeq ($(IS_EABI),y)
- libc-static-y += $(ARCH_OUT)/aeabi_lcsts.o $(ARCH_OUT)/aeabi_math.o \
-       $(ARCH_OUT)/aeabi_sighandlers.o
- libc-nonshared-y += $(ARCH_OUT)/aeabi_lcsts.os

$(ARCH_OUT)/aeabi_math.os

Quoted 14 lines
Quoted 13 lines

\

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -12
-Index: git/libc/sysdeps/linux/arm/bits/huge_val.h
-===================================================================
---- git.orig/libc/sysdeps/linux/arm/bits/huge_val.h
-+++ git/libc/sysdeps/linux/arm/bits/huge_val.h
-@@ -32,7 +32,7 @@
- # define HUGE_VAL (__extension__ 0x1.0p2047)
- #elif defined __GNUC__
-
--#ifndef __CONFIG_ARM_EABI__
-+#ifndef __ARM_EABI__
- # define HUGE_VAL \
-   (__extension__
Quoted 2 lines
Quoted 2 lines
   \

- ((union { unsigned __l __attribute__((__mode__(__DI__))); double

__d;

Quoted 24 lines
Quoted 24 lines

}) \
-@@ -50,7 +50,7 @@

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -8
-
- typedef union { unsigned char __c[8]; double __d; } __huge_val_t;
-
--#ifndef __CONFIG_ARM_EABI__
-+#ifndef __ARM_EABI__
- # if __BYTE_ORDER == __BIG_ENDIAN
- #  define __HUGE_VAL_bytes    { 0, 0, 0, 0, 0x7f, 0xf0, 0, 0 }
- # endif

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch deleted file mode 100644
index 920a669..0000000
---
a/meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch +++ /dev/null

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -4
@@ -1,215 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313303agb;
-        Sat, 8 Jan 2011 16:45:18 -0800 (PST)
-Received: by 10.227.98.158 with SMTP id

q30mr1255804wbn.151.1294533917314;

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -3
-        Sat, 08 Jan 2011 16:45:17 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr

[80.12.242.123])
- by mx.google.com with ESMTP id
r3si33749838wbr.54.2011.01.08.16.45.16;

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -2
-        Sat, 08 Jan 2011 16:45:17 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted

nor

Quoted 1 line
Quoted 1 line

denied by best guess record for domain of [email protected]

)

Quoted 17 lines
Quoted 17 lines

client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com:
80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -9
-Received: from roazhon.bzh.lan ([90.32.245.227])
-       by mwinf5d24 with ME
-       id tClC1f0024v5z3u03ClGDS; Sun, 09 Jan 2011 01:45:16 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-       Bernhard Reutner-Fischer<[email protected]>,
-       Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 3/7] ARM: remove sub-arch/variants selection from

menuconfig
-Date: Sun, 9 Jan 2011 01:45:06 +0100

Quoted 1 line
Quoted 1 line

-Message-Id:<

1294533910-19305-4-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 3 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 3 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -2
-X-Mailer: git-send-email 1.7.1
 
-In-Reply-To:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 2 lines
Quoted 2 lines

-References:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 34 lines
Quoted 34 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +1 -33
-
-Rely on the compiler to be correctly set up to generate
-appropriate code for the target variant.
-
-This exposes the Thumb option, as it is no longer auto-selected.
-The "Use BX" no longer depends on supported CPU to be selected,
-so it now defaults to 'n' as it shall work by default on CPUs
-that do not have BX.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- Rules.mak                |   19 -------
- extra/Configs/Config.arm |  125
++--------------------------------------------
- 2 files changed, 5 insertions(+), 139 deletions(-)
-
-diff --git a/Rules.mak b/Rules.mak
-index 2a16908..09741a6 100644
---- a/Rules.mak
-+++ b/Rules.mak
-@@ -332,25 +332,6 @@ ifeq ($(TARGET_ARCH),arm)
-       OPTIMIZATION+=-fstrict-aliasing
-       CPU_CFLAGS-$(ARCH_LITTLE_ENDIAN)+=-mlittle-endian
-       CPU_CFLAGS-$(ARCH_BIG_ENDIAN)+=-mbig-endian
--      CPU_CFLAGS-$(CONFIG_GENERIC_ARM)+=
--      CPU_CFLAGS-$(CONFIG_ARM610)+=-mtune=arm610 -march=armv3
--      CPU_CFLAGS-$(CONFIG_ARM710)+=-mtune=arm710 -march=armv3
--      CPU_CFLAGS-$(CONFIG_ARM7TDMI)+=-mtune=arm7tdmi -march=armv4t
--      CPU_CFLAGS-$(CONFIG_ARM720T)+=-mtune=arm7tdmi -march=armv4t
--      CPU_CFLAGS-$(CONFIG_ARM920T)+=-mtune=arm9tdmi -march=armv4t
--      CPU_CFLAGS-$(CONFIG_ARM922T)+=-mtune=arm9tdmi -march=armv4t
Quoted 8 lines
Quoted 8 lines
--      CPU_CFLAGS-$(CONFIG_ARM926T)+=-mtune=arm9e -march=armv5te
--      CPU_CFLAGS-$(CONFIG_ARM10T)+=-mtune=arm10tdmi -march=armv5t
--      CPU_CFLAGS-$(CONFIG_ARM1136JF_S)+=-mtune=arm1136jf-s -march=armv6
--      CPU_CFLAGS-$(CONFIG_ARM1176JZ_S)+=-mtune=arm1176jz-s -march=armv6
--      CPU_CFLAGS-$(CONFIG_ARM1176JZF_S)+=-mtune=arm1176jzf-s

-march=armv6
-- CPU_CFLAGS-$(CONFIG_ARM_SA110)+=-mtune=strongarm110 -march=armv4
-- CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100

-march=armv4

Quoted 15 lines
Quoted 15 lines

-- CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call
check_gcc,-mtune=xscale,-mtune=strongarm110)
-- CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale
-- CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -11
-mabi=iwmmxt
--      CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3
--      CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1
-       CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb
- endif
-
-diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
-index c9c40d4..6c75a00 100644
---- a/extra/Configs/Config.arm
-+++ b/extra/Configs/Config.arm
-@@ -30,129 +30,14 @@ config CONFIG_ARM_EABI
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -8
-
- endchoice
-
--choice
--      prompt "Target Processor Type"
--      default CONFIG_GENERIC_ARM
--      help
--        This is the processor type of your CPU. This information is

used

Quoted 4 lines
Quoted 4 lines

for
-- optimizing purposes. To build a library that will run on all
ARMCPU
-- types (albeit not optimally fast), you can specify "Generic

Arm"

Quoted 8 lines
Quoted 8 lines

here.
-- If you pick anything other than "Generic Arm", there is no
guarantee
-- that uClibc will even run on anything other than the selected
-- processor type.
--
-- Here are the settings recommended for greatest speed:
-- - "Generic Arm" select this if your compiler is already setup

to

Quoted 1 line
Quoted 1 line

-- optimize things properly, or if you want to run on pretty

much

Quoted 164 lines
Quoted 164 lines

-- everything, or you just don't much care.
-- - For anything else, pick the ARM core type that best matches
the
-- cpu you will be using on your device.
--
-- If you don't know what to do, choose "Generic Arm".
--
--config CONFIG_GENERIC_ARM
-- bool "Generic Arm"
--
--config CONFIG_ARM610
-- bool "Arm 610"
-- select ARCH_HAS_MMU
--
--config CONFIG_ARM710
-- bool "Arm 710"
-- select ARCH_HAS_MMU
--
--config CONFIG_ARM7TDMI

--      bool "Arm 7TDMI"
--      select ARCH_HAS_NO_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM720T
--      bool "Arm 720T"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM920T
--      bool "Arm 920T"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM922T
--      bool "Arm 922T"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM926T
--      bool "Arm 926T"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM10T
--      bool "Arm 10T"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM1136JF_S
--      bool "Arm 1136JF-S"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM1176JZ_S
--      bool "Arm 1176JZ-S"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM1176JZF_S
--      bool "Arm 1176JZF-S"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM_CORTEX_M3
--      bool "Arm Cortex-M3"
--      select ARCH_HAS_NO_MMU
--      select FORCE_THUMB
--
--config CONFIG_ARM_CORTEX_M1
--      bool "Arm Cortex-M1"
--      select ARCH_HAS_NO_MMU
--      select FORCE_THUMB
--
--config CONFIG_ARM_SA110
--      bool "Intel StrongArm SA-110"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM_SA1100
--      bool "Intel StrongArm SA-1100"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM_XSCALE
--      bool "Intel Xscale"
--      select ARCH_HAS_MMU
--      select HAS_THUMB
--
--config CONFIG_ARM_IWMMXT
--      bool "Intel Xscale With WMMX PXA27x"
--      select ARCH_HAS_MMU
--      select HAS_THUMB

--
--endchoice
--
--config HAS_THUMB
-- bool
--
--config FORCE_THUMB

--      bool
--      select HAS_THUMB
--      select COMPILE_IN_THUMB_MODE
--      select USE_BX
--
- config COMPILE_IN_THUMB_MODE
--      bool
-+      bool "Build using Thumb mode"
-+      select USE_BX
-+      help

-+ Say 'y' here to force building uClibc in thumb mode.
-+ Say 'n' to use your compiler's default mode.

meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch deleted +0 -10
-
- config USE_BX
-       bool "Use BX in function return"
--      default y
--      depends on HAS_THUMB
-       help
-         Use BX instruction for THUMB aware architectures.
---
-1.7.1
-
meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -24
deleted file mode 100644
index 30cb7f6..0000000
@@ -1,215 +0,0 @@
-Patch is backported from
-http://lists.busybox.net/pipermail/uclibc/2011-March/045004.html
-
-Upstream-Status: Pending
-
-diff --git a/ldso/include/dl-elf.h b/ldso/include/dl-elf.h
-index 7fbb373..7102351 100644
---- a/ldso/include/dl-elf.h
-+++ b/ldso/include/dl-elf.h
-@@ -25,16 +25,18 @@ static __inline__ void _dl_map_cache(void) { }
- static __inline__ void _dl_unmap_cache(void) { }
- #endif
-
-+#define DL_RESOLVE_SECURE             0x0001
-+#define DL_RESOLVE_NOLOAD             0x0002
-
- /* Function prototypes for non-static stuff in readelflib1.c */
- extern void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-       unsigned long rel_addr, unsigned long rel_size);
- extern int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-       unsigned long rel_addr, unsigned long rel_size);
--extern struct elf_resolve * _dl_load_shared_library(int secure,
-+extern struct elf_resolve * _dl_load_shared_library(int resolve_flags,
-       struct dyn_elf **rpnt, struct elf_resolve *tpnt, char

*full_libname,
- int trace_loaded_objects);
--extern struct elf_resolve * _dl_load_elf_shared_library(int secure, -+extern struct elf_resolve * _dl_load_elf_shared_library(int resolve_flags,
- struct dyn_elf **rpnt, char *libname);
- extern struct elf_resolve *_dl_check_if_named_library_is_loaded(const char *full_libname,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       int trace_loaded_objects);
-diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
-index 2b2d429..6d35bf2 100644
---- a/ldso/ldso/dl-elf.c
Quoted 8 lines
Quoted 8 lines

-+++ b/ldso/ldso/dl-elf.c
-@@ -132,7 +132,7 @@ _dl_protect_relro (struct elf_resolve *l)
- /* This function's behavior must exactly match that
- * in uClibc/ldso/util/ldd.c */
- static struct elf_resolve * --search_for_named_library(const char *name, int secure, const char *path_list,
-+search_for_named_library(const char *name, int resolve_flags, const

char

Quoted 11 lines

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch

Quoted 11 lines

*path_list,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       struct dyn_elf **rpnt, const char *origin)
- {
-       char *mylibname;
-@@ -162,7 +162,7 @@ search_for_named_library(const char *name, int

secure, const char *path_list,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -5
-
-               if (plen>= 7&&  _dl_memcmp(p, "$ORIGIN", 7) == 0) {
-                       int olen;
--                      if (secure&&  plen != 7)
-+                      if ((resolve_flags&  DL_RESOLVE_SECURE)&&  plen

!=

Quoted 18 lines
Quoted 18 lines

7)

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-                               continue;
-                       if (origin == NULL)
-                               continue;
-@@ -182,7 +182,7 @@ search_for_named_library(const char *name, int

secure, const char *path_list,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-               _dl_strcat(mylibname, "/");
-               _dl_strcat(mylibname, name);
-
--              tpnt = _dl_load_elf_shared_library(secure, rpnt,

mylibname);
-+ tpnt = _dl_load_elf_shared_library(resolve_flags, rpnt,
mylibname);

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-               if (tpnt != NULL)
-                       return tpnt;
-       }
-@@ -194,7 +194,7 @@ search_for_named_library(const char *name, int

secure, const char *path_list,

Quoted 8 lines
Quoted 8 lines

- unsigned long _dl_error_number;
- unsigned long _dl_internal_error_number;
-
--struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
-+struct elf_resolve *_dl_load_shared_library(int resolve_flags, struct dyn_elf **rpnt,
- struct elf_resolve *tpnt, char *full_libname, int

attribute_unused

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch

Quoted 8 lines

trace_loaded_objects)
- {
- char *pnt;
-@@ -223,7 +223,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -3
-
-       if (libname != full_libname) {
-               _dl_if_debug_dprint("\ttrying file='%s'\n",

full_libname);

Quoted 42 lines
Quoted 42 lines

-- tpnt1 = _dl_load_elf_shared_library(secure, rpnt,
full_libname);
-+ tpnt1 = _dl_load_elf_shared_library(resolve_flags, rpnt,
full_libname);

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-               if (tpnt1) {
-                       return tpnt1;
-               }
-@@ -238,7 +238,7 @@ struct elf_resolve *_dl_load_shared_library(int

secure, struct dyn_elf **rpnt,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       if (pnt) {
-               pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
-               _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt);
--              if ((tpnt1 = search_for_named_library(libname, secure,

pnt, rpnt,
-+ if ((tpnt1 = search_for_named_library(libname,
resolve_flags, pnt, rpnt,
- tpnt->libname)) !=
NULL)

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -3
-                       return tpnt1;
-       }
-@@ -247,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int

secure, struct dyn_elf **rpnt,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -3
-       /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */
-       if (_dl_library_path) {
-               _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n",

_dl_library_path);
-- if ((tpnt1 = search_for_named_library(libname, secure,
_dl_library_path, rpnt, NULL)) != NULL)
-+ if ((tpnt1 = search_for_named_library(libname,
resolve_flags, _dl_library_path, rpnt, NULL)) != NULL)

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-               {
-                       return tpnt1;
-               }
-@@ -261,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int

secure, struct dyn_elf **rpnt,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       if (pnt) {
-               pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
-               _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt);
--              if ((tpnt1 = search_for_named_library(libname, secure,

pnt, rpnt, NULL)) != NULL)
-+ if ((tpnt1 = search_for_named_library(libname,
resolve_flags, pnt, rpnt, NULL)) != NULL)

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-                       return tpnt1;
-       }
- #endif
-@@ -284,7 +284,7 @@ struct elf_resolve *_dl_load_shared_library(int

secure, struct dyn_elf **rpnt,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -3
-                            || libent[i].flags == LIB_ELF_LIBC0
-                            || libent[i].flags == LIB_ELF_LIBC5)
-                       &&  _dl_strcmp(libname, strs +

libent[i].sooffset)

Quoted 15 lines
Quoted 15 lines

== 0
-- && (tpnt1 = _dl_load_elf_shared_library(secure,
rpnt, strs + libent[i].liboffset))
-+ && (tpnt1 =
_dl_load_elf_shared_library(resolve_flags, rpnt, strs + libent[i].liboffset))

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-                       ) {
-                               return tpnt1;
-                       }
-@@ -295,14 +295,14 @@ struct elf_resolve *_dl_load_shared_library(int

secure, struct dyn_elf **rpnt,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       /* Look for libraries wherever the shared library loader
-        * was installed */
-       _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath);
--      tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath,
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch

Quoted 8 lines

rpnt, NULL);
-+ tpnt1 = search_for_named_library(libname, resolve_flags,
_dl_ldsopath, rpnt, NULL);

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -5
-       if (tpnt1 != NULL)
-               return tpnt1;
-
-       /* Lastly, search the standard list of paths for the library.
-          This list must exactly match the list in

uClibc/ldso/util/ldd.c

Quoted 40 lines
Quoted 40 lines

*/

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -16
-       _dl_if_debug_dprint("\tsearching full lib path list\n");
--      tpnt1 = search_for_named_library(libname, secure,
-+      tpnt1 = search_for_named_library(libname, resolve_flags,
-                                       UCLIBC_RUNTIME_PREFIX "lib:"
-                                       UCLIBC_RUNTIME_PREFIX "usr/lib"
- #ifndef __LDSO_CACHE_SUPPORT__
-@@ -329,7 +329,7 @@ goof:
-  * are required.
-  */
-
--struct elf_resolve *_dl_load_elf_shared_library(int secure,
-+struct elf_resolve *_dl_load_elf_shared_library(int resolve_flags,
-       struct dyn_elf **rpnt, char *libname)
- {
-       ElfW(Ehdr) *epnt;
-@@ -368,7 +368,7 @@ struct elf_resolve *_dl_load_elf_shared_library(int

secure,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -2
-       }
-       /* If we are in secure mode (i.e. a setu/gid binary using

LD_PRELOAD),

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -7
-          we don't load the library if it isn't setuid. */
--      if (secure) {
-+      if (resolve_flags&  DL_RESOLVE_SECURE) {
-               if (!(st.st_mode&  S_ISUID)) {
-                       _dl_close(infile);
-                       return NULL;
-@@ -384,6 +384,10 @@ struct elf_resolve *_dl_load_elf_shared_library(int

secure,

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -8
-                       return tpnt;
-               }
-       }
-+      if (resolve_flags&  DL_RESOLVE_NOLOAD) {
-+              _dl_close(infile);
-+              return NULL;
-+      }
-       header = _dl_mmap((void *) 0, _dl_pagesize, PROT_READ |

PROT_WRITE,
- MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE,
-1, 0);

Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -6
-       if (_dl_mmap_check_error(header)) {
-diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
-index 9423670..b71af34 100644
---- a/ldso/ldso/ldso.c
-+++ b/ldso/ldso/ldso.c
-@@ -646,7 +646,9 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt,

DL_LOADADDR_TYPE load_addr,
- if (!_dl_secure || _dl_strchr(str, '/') == NULL)

{

Quoted 5 lines
Quoted 5 lines

- _dl_if_debug_dprint("\tfile='%s'; needed
by '%s'\n", str, _dl_progname);
-
-- tpnt1 =
_dl_load_shared_library(_dl_secure,&rpnt, NULL, str,

trace_loaded_objects);

Quoted 20 lines
Quoted 20 lines

-+ tpnt1 = _dl_load_shared_library(
-+ _dl_secure ? DL_RESOLVE_SECURE :
0,
-+ &rpnt, NULL, str,
trace_loaded_objects);

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -15
-                               if (!tpnt1) {
- #ifdef __LDSO_LDD_SUPPORT__
-                                       if (trace_loaded_objects)
-diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c
-index 68cd579..edf38d2 100644
---- a/ldso/libdl/libdl.c
-+++ b/ldso/libdl/libdl.c
-@@ -288,7 +288,7 @@ void *dlopen(const char *libname, int flag)
- #endif
-
-       /* A bit of sanity checking... */
--      if (!(flag&  (RTLD_LAZY|RTLD_NOW))) {
-+      if (!(flag&  (RTLD_LAZY|RTLD_NOW|RTLD_NOLOAD))) {
-               _dl_error_number = LD_BAD_HANDLE;
-               return NULL;
Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       }
-@@ -358,8 +358,9 @@ void *dlopen(const char *libname, int flag)
-       /* Try to load the specified library */
-       _dl_if_debug_print("Trying to dlopen '%s', RTLD_GLOBAL:%d

RTLD_NOW:%d\n",
- (char*)libname, (flag& RTLD_GLOBAL ? 1:0),
(now_flag& RTLD_NOW ? 1:0));
-- tpnt = _dl_load_shared_library(0,&rpnt, tfrom, (char*)libname,

0);

Quoted 10 lines
Quoted 10 lines

-
-+ tpnt = _dl_load_shared_library((flag& RTLD_NOLOAD) ?
DL_RESOLVE_NOLOAD : 0,
-+ &rpnt, tfrom, (char*)libname, 0);

meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch deleted +0 -4
-       if (tpnt == NULL) {
-               _dl_unmap_cache();
-               return NULL;
-diff --git a/libc/sysdeps/linux/common/bits/dlfcn.h

b/libc/sysdeps/linux/common/bits/dlfcn.h
-index 4bfbbff..47b42ad 100644

Quoted 8 lines
Quoted 8 lines

---- a/libc/sysdeps/linux/common/bits/dlfcn.h
-+++ b/libc/sysdeps/linux/common/bits/dlfcn.h
-@@ -24,9 +24,9 @@
- /* The MODE argument to `dlopen' contains one of the following: */
- #define RTLD_LAZY 0x00001 /* Lazy function call binding. */
- #define RTLD_NOW 0x00002 /* Immediate function call binding. */
--#if 0 /* uClibc doesnt support these */
--#define RTLD_BINDING_MASK 0x3 /* Mask of binding time value.

*/

Quoted 1 line
Quoted 1 line

-+#define RTLD_BINDING_MASK 0x3 /* Mask of binding time value.

*/

Quoted 17 lines
Quoted 17 lines

- #define RTLD_NOLOAD 0x00004 /* Do not load the object. */
-+#if 0 /* uClibc doesnt support these */
- #define RTLD_DEEPBIND 0x00008 /* Use deep binding. */
- #endif
diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted file mode 100644
index b19408f..0000000

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -4
@@ -1,172 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313301agb;
-        Sat, 8 Jan 2011 16:45:17 -0800 (PST)
-Received: by 10.216.186.82 with SMTP id

v60mr20017574wem.56.1294533916559;

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -3
-        Sat, 08 Jan 2011 16:45:16 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr

[80.12.242.123])
- by mx.google.com with ESMTP id
o13si33755824wee.56.2011.01.08.16.45.16;

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -2
-        Sat, 08 Jan 2011 16:45:16 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted

nor

Quoted 1 line
Quoted 1 line

denied by best guess record for domain of [email protected]

)

Quoted 6 lines
Quoted 6 lines

client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com:
80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]
-Received: from roazhon.bzh.lan ([90.32.245.227])

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -8
-       by mwinf5d24 with ME
-       id tClC1f0024v5z3u03ClFDL; Sun, 09 Jan 2011 01:45:16 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-       Bernhard Reutner-Fischer<[email protected]>,
-       Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 2/7] ARM: introduce blind options to select&  force

THUMB

Quoted 4 lines

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch

Quoted 4 lines

mode

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -2
-Date: Sun,  9 Jan 2011 01:45:05 +0100
 
-Message-Id:<

1294533910-19305-3-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 3 lines

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch

Quoted 3 lines
meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -2
-X-Mailer: git-send-email 1.7.1
 
-In-Reply-To:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 2 lines
Quoted 2 lines

-References:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 21 lines
Quoted 21 lines
meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -21
-
-Add three new blind options to set use of Thumb mode:
-- COMPILE_IN_THUMB_MODE
-  - if set, CFLAGS will contain -mthumb
-  - if unset, the compiler's default is used
-- HAS_THUMB
-  - CPUS with Thumb instruction set can select this
-  - use of BX depends on this
-- FORCE_THUMB
-  - CPUs that are Thumb-only must select this
-  - this selects: HAS_THUMB, COMPILE_IN_THUMB_MODE and USE_BX
-
-Also, remove leading space in Rules.mak.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- Rules.mak                |    7 ++++---
- extra/Configs/Config.arm |   31 ++++++++++++++++++++++++++++---
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch

Quoted 8 lines

- 2 files changed, 32 insertions(+), 6 deletions(-)

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -7
-
-diff --git a/Rules.mak b/Rules.mak
-index eecdc64..2a16908 100644
---- a/Rules.mak
-+++ b/Rules.mak
-@@ -348,9 +348,10 @@ ifeq ($(TARGET_ARCH),arm)
-       CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100

-march=armv4

Quoted 107 lines
Quoted 107 lines

- CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call
check_gcc,-mtune=xscale,-mtune=strongarm110)

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -105
-       CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale
--      CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt
-mabi=iwmmxt
--      CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3 -mthumb
--      CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1 -mthumb
-+      CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt
-mabi=iwmmxt
-+      CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3
-+      CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1
-+      CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb
- endif
-
- ifeq ($(TARGET_ARCH),mips)
-diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm
-index 3b90e67..c9c40d4 100644
---- a/extra/Configs/Config.arm
-+++ b/extra/Configs/Config.arm
-@@ -64,70 +64,95 @@ config CONFIG_ARM710
- config CONFIG_ARM7TDMI
-       bool "Arm 7TDMI"
-       select ARCH_HAS_NO_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM720T
-       bool "Arm 720T"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM920T
-       bool "Arm 920T"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM922T
-       bool "Arm 922T"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM926T
-       bool "Arm 926T"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM10T
-       bool "Arm 10T"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM1136JF_S
-       bool "Arm 1136JF-S"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM1176JZ_S
-       bool "Arm 1176JZ-S"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM1176JZF_S
-       bool "Arm 1176JZF-S"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM_CORTEX_M3
-       bool "Arm Cortex-M3"
-       select ARCH_HAS_NO_MMU
--      select USE_BX
-+      select FORCE_THUMB
-
- config CONFIG_ARM_CORTEX_M1
-       bool "Arm Cortex-M1"
-       select ARCH_HAS_NO_MMU
--      select USE_BX
-+      select FORCE_THUMB
-
- config CONFIG_ARM_SA110
-       bool "Intel StrongArm SA-110"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM_SA1100
-       bool "Intel StrongArm SA-1100"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM_XSCALE
-       bool "Intel Xscale"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- config CONFIG_ARM_IWMMXT
-       bool "Intel Xscale With WMMX PXA27x"
-       select ARCH_HAS_MMU
-+      select HAS_THUMB
-
- endchoice
-
-+config HAS_THUMB
-+      bool
-+
-+config FORCE_THUMB
-+      bool
-+      select HAS_THUMB
-+      select COMPILE_IN_THUMB_MODE
-+      select USE_BX
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch

Quoted 8 lines

-+
-+config COMPILE_IN_THUMB_MODE
-+ bool
-+
- config USE_BX

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -3
-       bool "Use BX in function return"
-       default y
--      depends on !CONFIG_GENERIC_ARM&&  !CONFIG_ARM610&&

!CONFIG_ARM710

Quoted 7 lines
Quoted 7 lines

-+ depends on HAS_THUMB

meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch deleted +0 -5
-       help
-         Use BX instruction for THUMB aware architectures.
---
-1.7.1
-

diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch

Quoted 9 lines
Quoted 9 lines

b/meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted file mode 100644
index 4b85a43..0000000

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -1
@@ -1,47 +0,0 @@
-Some architectures like ppc, arm use aligned 64 bit inputs so a register

is not wasted
-this then uses __NR_sync_file_range2 syscall. Implement is

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -8
-
-Singed-off-by: Khem Raj<[email protected]>
-
-Upstream-Status: Pending
-
-Index: git/libc/sysdeps/linux/common/sync_file_range.c
-===================================================================
---- git.orig/libc/sysdeps/linux/common/sync_file_range.c

2011-07-19

Quoted 18 lines
Quoted 18 lines

14:23:35.000000000 -0700
-+++ git/libc/sysdeps/linux/common/sync_file_range.c 2011-07-19
15:04:38.631808666 -0700
-@@ -11,7 +11,8 @@
- #if defined __USE_GNU
- #include<fcntl.h>

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -11
-
--#if defined __NR_sync_file_range&&  defined __UCLIBC_HAS_LFS__
-+#if defined __UCLIBC_HAS_LFS__
-+#if defined __NR_sync_file_range
- #define __NR___syscall_sync_file_range __NR_sync_file_range
- static __inline__ _syscall6(int, __syscall_sync_file_range, int, fd,
-               off_t, offset_hi, off_t, offset_lo,
-@@ -23,5 +24,23 @@
-               __LONG_LONG_PAIR((long)(nbytes>>  32), (long)(nbytes&
 0xffffffff)),
-               flags);
- }
Quoted 8 lines
Quoted 8 lines

--#endif
--#endif
-+#elif defined __NR_sync_file_range2
-+#define __NR___syscall_sync_file_range2 __NR_sync_file_range2 -+static __inline__ _syscall6(int, __syscall_sync_file_range2, int, fd,
-+ unsigned int, flags, off_t, offset_hi, off_t, offset_lo,
-+ off_t, nbytes_hi, off_t, nbytes_lo)
-+int sync_file_range(int fd, off64_t offset, off64_t nbytes, unsigned

int

Quoted 10 lines
Quoted 10 lines

flags)
-+{
-+ return __syscall_sync_file_range2(fd, flags,
-+ __LONG_LONG_PAIR((long)(offset>> 32), (long)(offset&
0xffffffff)),
-+ __LONG_LONG_PAIR((long)(nbytes>> 32), (long)(nbytes&
0xffffffff)));
-+}
-+#else
-+int sync_file_range(int fd, off64_t offset, off64_t nbytes, unsigned

int

Quoted 22 lines
Quoted 22 lines

flags)
-+{
-+ __set_errno (ENOSYS);
-+ return -1
-+}
-+#endif /* __NR_sync_file_range */
-+#endif /* __UCLIBC_HAS_LFS__ */
-+#endif /* __USE_GNU */
diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch deleted file mode 100644
index 82970ca..0000000
---
a/meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch +++ /dev/null

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -4
@@ -1,71 +0,0 @@
-Delivered-To: [email protected]
-Received: by 10.90.86.4 with SMTP id j4cs313305agb;
-        Sat, 8 Jan 2011 16:45:19 -0800 (PST)
-Received: by 10.216.153.210 with SMTP id

f60mr573848wek.114.1294533918335;

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -3
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Return-Path:<[email protected]>
-Received: from smtp.smtpout.orange.fr (smtp01.smtpout.orange.fr

[80.12.242.123])
- by mx.google.com with ESMTP id
n4si33737071wej.152.2011.01.08.16.45.17;

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -2
-        Sat, 08 Jan 2011 16:45:18 -0800 (PST)
-Received-SPF: neutral (google.com: 80.12.242.123 is neither permitted

nor

Quoted 1 line
Quoted 1 line

denied by best guess record for domain of [email protected]

)

Quoted 16 lines
Quoted 16 lines

client-ip=80.12.242.123;
-Authentication-Results: mx.google.com; spf=neutral (google.com:
80.12.242.123 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected]

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -10
-Received: from roazhon.bzh.lan ([90.32.245.227])
-       by mwinf5d24 with ME
-       id tClC1f0024v5z3u03ClGDX; Sun, 09 Jan 2011 01:45:17 +0100
-From: "Yann E. MORIN"<[email protected]>
-To: [email protected]
-Cc: Khem Raj<[email protected]>,
-       Bernhard Reutner-Fischer<[email protected]>,
-       Carmelo AMOROSO<[email protected]>
-Subject: [PATCH 4/7] ARM: transform the EABI/OABI choice into a boolean
-Date: Sun,  9 Jan 2011 01:45:07 +0100
Quoted 1 line
Quoted 1 line

-Message-Id:<

1294533910-19305-5-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 3 lines

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch

Quoted 3 lines
meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -2
-X-Mailer: git-send-email 1.7.1
 
-In-Reply-To:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 2 lines
Quoted 2 lines

-References:<

1294533910-19305-1-git-send-email-yann.morin.1998@anciens.enib.fr>

Quoted 52 lines
Quoted 52 lines
meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -26
-
-The CONFIG_ARM_OABI option is never used.
-
-Signed-off-by: "Yann E. MORIN"<[email protected]>
-Cc: Khem Raj<[email protected]>
-Cc: Bernhard Reutner-Fischer<[email protected]>
-Cc: Carmelo AMOROSO<[email protected]>
----
- extra/Configs/Config.arm |   23 ++++++++---------------
- 1 files changed, 8 insertions(+), 15 deletions(-)
-
-Index: git/extra/Configs/Config.arm
-===================================================================
---- git.orig/extra/Configs/Config.arm
-+++ git/extra/Configs/Config.arm
-@@ -12,23 +12,16 @@ config FORCE_OPTIONS_FOR_ARCH
-       default y
-       select ARCH_ANY_ENDIAN
-
--choice
--      prompt "Target ABI"
--      default CONFIG_ARM_EABI
-+config CONFIG_ARM_EABI
-+      bool "Build for EABI"
-       help
--        If you choose "EABI" here, functions and constants required by

the
-- ARM EABI will be built into the library. You should choose
"EABI"

-+        If you say 'y' here, functions and constants required by the
-+        ARM EABI will be built into the library.  You should say 'y'
-         if your compiler uses the ARM EABI, in which case you will also
--        need a kernel supporting the EABI system call interface, or

"OABI"
-- for a compiler using the old Linux ABI.
--
--config CONFIG_ARM_OABI
-- bool "OABI"
--
--config CONFIG_ARM_EABI
-- bool "EABI"
-+ need a kernel supporting the EABI system call interface.

meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch deleted +0 -7
-
--endchoice
-+        If you say 'n' here, then the library will be built for the
-+        old Linux ABI.
-
- config COMPILE_IN_THUMB_MODE
-       bool "Build using Thumb mode"

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch line 3

Quoted 8 lines

deleted file mode 100644
index 504d37b..0000000

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -3
@@ -1,13 +0,0 @@
-Index: uclibc-0.9.29/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-===================================================================
----

uclibc-0.9.29.orig/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h

Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -8
-+++ uclibc-0.9.29/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
-@@ -38,4 +38,8 @@
- /* define if target supports IEEE signed zero floats */
- #define __UCLIBC_HAVE_SIGNED_ZERO__
-
-+#ifdef __ARM_EABI__
-+# define __UCLIBC_TRUNCATE64_HAS_4_ARGS__
-+#endif
Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -2
-+
- #endif /* _BITS_UCLIBC_ARCH_FEATURES_H */

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch b/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch deleted file mode 100644
index 78401bd..0000000
---

a/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch

Quoted 28 lines
Quoted 28 lines

+++ /dev/null

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -4
@@ -1,455 +0,0 @@
-From 2becc16ecbef71c496644d9dc6cbd7383d7cdca3 Mon Sep 17 00:00:00 2001
-From: Henning Heinold<[email protected]>
-Date: Sat, 4 Jun 2011 21:21:41 +0200
-Subject: [PATCH 1/2] libc: updates the linux scheduler functions, most

stuff
- was taken from the eglibc

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +1 -19
-
-
-Signed-off-by: Henning Heinold<[email protected]>
----
- include/sched.h                            |   52 ++++++++++++----
- libc/sysdeps/linux/common/Makefile.in      |    4 +-
- libc/sysdeps/linux/common/bits/sched.h     |   96
+++++++++++++++++++++++-----
- libc/sysdeps/linux/common/sched_cpualloc.c |   27 ++++++++
- libc/sysdeps/linux/common/sched_cpucount.c |   60 +++++++++++++++++
- libc/sysdeps/linux/common/sched_cpufree.c  |   27 ++++++++
- libc/sysdeps/linux/common/sched_getcpu.c   |   37 +++++++++++
- libc/sysdeps/linux/common/unshare.c        |   12 ++++
- 8 files changed, 286 insertions(+), 29 deletions(-)
- create mode 100644 libc/sysdeps/linux/common/sched_cpualloc.c
- create mode 100644 libc/sysdeps/linux/common/sched_cpucount.c
- create mode 100644 libc/sysdeps/linux/common/sched_cpufree.c
- create mode 100644 libc/sysdeps/linux/common/sched_getcpu.c
- create mode 100644 libc/sysdeps/linux/common/unshare.c
-
Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -6
-diff --git a/include/sched.h b/include/sched.h
-index 0d110c3..e265b84 100644
---- a/include/sched.h
-+++ b/include/sched.h
-@@ -1,5 +1,5 @@
- /* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling

interface.
-- Copyright (C) 1996,1997,1999,2001-2003,2004 Free Software

Foundation,

Quoted 2 lines
Quoted 2 lines

Inc.
-+ Copyright (C) 1996,1997,1999,2001-2004,2007 Free Software

Foundation,

Quoted 22 lines
Quoted 22 lines

Inc.

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -14
-    This file is part of the GNU C Library.
-
-    The GNU C Library is free software; you can redistribute it and/or
-@@ -25,6 +25,9 @@
- /* Get type definitions.  */
- #include<bits/types.h>
-
-+#define __need_size_t
-+#include<stddef.h>
-+
- #define __need_timespec
- #include<time.h>
-
-@@ -65,11 +68,42 @@ extern int sched_rr_get_interval (__pid_t __pid,

struct timespec *__t) __THROW;
-
- #if defined __USE_GNU&& defined __UCLIBC_LINUX_SPECIFIC__
- /* Access macros for `cpu_set'. */
--#define CPU_SETSIZE __CPU_SETSIZE
--#define CPU_SET(cpu, cpusetp) __CPU_SET (cpu, cpusetp) --#define CPU_CLR(cpu, cpusetp) __CPU_CLR (cpu, cpusetp)

Quoted 8 lines
Quoted 8 lines

--#define CPU_ISSET(cpu, cpusetp) __CPU_ISSET (cpu, cpusetp)
--#define CPU_ZERO(cpusetp) __CPU_ZERO (cpusetp)
-+# define CPU_SETSIZE __CPU_SETSIZE
-+# define CPU_SET(cpu, cpusetp) __CPU_SET_S (cpu, sizeof
(cpu_set_t), cpusetp)
-+# define CPU_CLR(cpu, cpusetp) __CPU_CLR_S (cpu, sizeof
(cpu_set_t), cpusetp)
-+# define CPU_ISSET(cpu, cpusetp) __CPU_ISSET_S (cpu, sizeof

(cpu_set_t),

Quoted 4 lines
Quoted 4 lines

\
-+ cpusetp)
-+# define CPU_ZERO(cpusetp) __CPU_ZERO_S (sizeof (cpu_set_t),
cpusetp)

Quoted 8 lines
Quoted 8 lines

-+# define CPU_COUNT(cpusetp) __CPU_COUNT_S (sizeof (cpu_set_t),
cpusetp)
-+
-+# define CPU_SET_S(cpu, setsize, cpusetp) __CPU_SET_S (cpu, setsize,
cpusetp)
-+# define CPU_CLR_S(cpu, setsize, cpusetp) __CPU_CLR_S (cpu, setsize,
cpusetp)
-+# define CPU_ISSET_S(cpu, setsize, cpusetp) __CPU_ISSET_S (cpu,

setsize,

Quoted 68 lines
Quoted 68 lines

\
-+ cpusetp)
-+# define CPU_ZERO_S(setsize, cpusetp) __CPU_ZERO_S (setsize,
cpusetp)
-+# define CPU_COUNT_S(setsize, cpusetp) __CPU_COUNT_S
(setsize, cpusetp)
-+
-+# define CPU_EQUAL(cpusetp1, cpusetp2) \
-+ __CPU_EQUAL_S (sizeof (cpu_set_t), cpusetp1, cpusetp2) -+# define CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \
-+ __CPU_EQUAL_S (setsize, cpusetp1, cpusetp2)
-+
-+# define CPU_AND(destset, srcset1, srcset2) \
-+ __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2,&) -+# define CPU_OR(destset, srcset1, srcset2) \
-+ __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, |) -+# define CPU_XOR(destset, srcset1, srcset2) \
-+ __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, ^) -+# define CPU_AND_S(setsize, destset, srcset1, srcset2) \
-+ __CPU_OP_S (setsize, destset, srcset1, srcset2,&) -+# define CPU_OR_S(setsize, destset, srcset1, srcset2) \
-+ __CPU_OP_S (setsize, destset, srcset1, srcset2, |) -+# define CPU_XOR_S(setsize, destset, srcset1, srcset2) \
-+ __CPU_OP_S (setsize, destset, srcset1, srcset2, ^) -+
-+# define CPU_ALLOC_SIZE(count) __CPU_ALLOC_SIZE (count) -+# define CPU_ALLOC(count) __CPU_ALLOC (count)
-+# define CPU_FREE(cpuset) __CPU_FREE (cpuset)

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -4
-
-
- /* Set the CPU affinity for a task */
-@@ -79,12 +113,6 @@ extern int sched_setaffinity (__pid_t __pid, size_t

__cpusetsize,
- /* Get the CPU affinity for a task */
- extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize,
- cpu_set_t *__cpuset) __THROW;
--
--extern int __clone (int (*__fn) (void *__arg), void *__child_stack,
-- int __flags, void *__arg, ...);
--extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base,
-- size_t __child_stack_size, int __flags, void *__arg,
...);
--
- #endif

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -3
-
- __END_DECLS
-diff --git a/libc/sysdeps/linux/common/Makefile.in

b/libc/sysdeps/linux/common/Makefile.in
-index 8f936ff..cb8c153 100644
---- a/libc/sysdeps/linux/common/Makefile.in
-+++ b/libc/sysdeps/linux/common/Makefile.in
-@@ -22,9 +22,11 @@ CSRC-$(UCLIBC_LINUX_SPECIFIC) += capget.c capset.c inotify.c ioperm.c iopl.c \

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -11
-       modify_ldt.c pipe2.c personality.c ppoll.c prctl.c \
-       readahead.c reboot.c \
-       remap_file_pages.c sched_getaffinity.c sched_setaffinity.c \
-+      sched_cpualloc.c sched_cpucount.c sched_cpufree.c \
-       sendfile64.c sendfile.c setfsgid.c setfsuid.c setresuid.c \
-       splice.c vmsplice.c tee.c signalfd.c swapoff.c swapon.c \
--      sync_file_range.c sysctl.c sysinfo.c timerfd.c uselib.c vhangup.c
-+      sync_file_range.c sysctl.c sysinfo.c timerfd.c unshare.c \
-+      uselib.c vhangup.c
- # NPTL needs these internally: madvise.c
- CSRC-$(findstring

y,$(UCLIBC_LINUX_SPECIFIC)$(UCLIBC_HAS_THREADS_NATIVE)) += madvise.c
- ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
-diff --git a/libc/sysdeps/linux/common/bits/sched.h

Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch

Quoted 8 lines

b/libc/sysdeps/linux/common/bits/sched.h

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -7
-index b48a0c8..fea66a8 100644
---- a/libc/sysdeps/linux/common/bits/sched.h
-+++ b/libc/sysdeps/linux/common/bits/sched.h
-@@ -1,6 +1,7 @@
- /* Definitions of constants and data structure for POSIX 1003.1b-1993
-    scheduling interface.
--   Copyright (C) 1996-1999,2001-2003,2005,2006 Free Software

Foundation,

Quoted 9 lines
Quoted 9 lines

Inc.
-+ Copyright (C) 1996-1999,2001-2003,2005,2006,2007,2008
-+ Free Software Foundation, Inc.

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -5
-    This file is part of the GNU C Library.
-
-    The GNU C Library is free software; you can redistribute it and/or
-@@ -58,7 +59,13 @@
-                                     force CLONE_PTRACE on this clone.
 */
Quoted 8 lines
Quoted 8 lines

- # define CLONE_CHILD_SETTID 0x01000000 /* Store TID in userlevel buffer in
- the child. */
--# define CLONE_STOPPED 0x02000000 /* Start in stopped state. */
-+# define CLONE_STOPPED 0x02000000 /* Start in stopped state. */
-+# define CLONE_NEWUTS 0x04000000 /* New utsname group. */
-+# define CLONE_NEWIPC 0x08000000 /* New ipcs. */
-+# define CLONE_NEWUSER 0x10000000 /* New user namespace.

*/

Quoted 37 lines
Quoted 36 lines
-+# define CLONE_NEWPID 0x20000000      /* New pid namespace.  */
-+# define CLONE_NEWNET 0x40000000      /* New network namespace.  */
-+# define CLONE_IO     0x80000000      /* Clone I/O context.  */

- #endif

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -32
-
- /* The official definition.  */
-@@ -74,10 +81,11 @@ __BEGIN_DECLS
- extern int clone (int (*__fn) (void *__arg), void *__child_stack,
-                 int __flags, void *__arg, ...) __THROW;
-
--#if 0
- /* Unshare the specified resources.  */
- extern int unshare (int __flags) __THROW;
--#endif
-+
-+/* Get index of currently used CPU.  */
-+extern int sched_getcpu (void) __THROW;
- #endif
-
- __END_DECLS
-@@ -102,7 +110,7 @@ struct __sched_param
- # define __CPU_SETSIZE        1024
- # define __NCPUBITS   (8 * sizeof (__cpu_mask))
-
--/* Type for array elements in 'cpu_set'.  */
-+/* Type for array elements in 'cpu_set_t'.  */
- typedef unsigned long int __cpu_mask;
-
- /* Basic access functions.  */
-@@ -116,17 +124,73 @@ typedef struct
- } cpu_set_t;
-
- /* Access functions for CPU masks.  */
--# define __CPU_ZERO(cpusetp) \
-+# define __CPU_ZERO_S(setsize, cpusetp) \
-   do {
Quoted 6 lines
Quoted 6 lines
           \
--    unsigned int __i;
    \
--    cpu_set_t *__arr = (cpusetp);
    \

-- for (__i = 0; __i< sizeof (cpu_set_t) / sizeof (__cpu_mask);

++__i)

Quoted 107 lines
Quoted 106 lines
     \
--      __arr->__bits[__i] = 0;
    \
-+    size_t __i;
            \

-+ size_t __imax = (setsize) / sizeof (__cpu_mask);

   \
-+    __cpu_mask *__bits = (cpusetp)->__bits;
    \

-+ for (__i = 0; __i< __imax; ++__i)

           \

-+ __bits[__i] = 0;

           \

- } while (0)
--# define __CPU_SET(cpu, cpusetp) \
-- ((cpusetp)->__bits[__CPUELT (cpu)] |= __CPUMASK (cpu)) --# define __CPU_CLR(cpu, cpusetp) \
-- ((cpusetp)->__bits[__CPUELT (cpu)]&= ~__CPUMASK (cpu)) --# define __CPU_ISSET(cpu, cpusetp) \
-- (((cpusetp)->__bits[__CPUELT (cpu)]& __CPUMASK (cpu)) != 0) -+# define __CPU_SET_S(cpu, setsize, cpusetp) \
-+ (__extension__

   \
-+   ({ size_t __cpu = (cpu);
    \
-+      __cpu<  8 * (setsize)
    \
-+      ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)]
            \

-+ |= __CPUMASK (__cpu))

   \

-+ : 0; }))
-+# define __CPU_CLR_S(cpu, setsize, cpusetp) \
-+ (__extension__

   \
-+   ({ size_t __cpu = (cpu);
    \
-+      __cpu<  8 * (setsize)
    \
-+      ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)]
            \

-+ &= ~__CPUMASK (__cpu))

   \

-+ : 0; }))
-+# define __CPU_ISSET_S(cpu, setsize, cpusetp) \
-+ (__extension__

   \
-+   ({ size_t __cpu = (cpu);
    \
-+      __cpu<  8 * (setsize)
    \

-+ ? ((((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)]

   \
-+      &  __CPUMASK (__cpu))) != 0
    \

-+ : 0; }))
-+
-+# define __CPU_COUNT_S(setsize, cpusetp) \
-+ __sched_cpucount (setsize, cpusetp)
-+
-+# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \
-+ (__extension__

   \

-+ ({ __cpu_mask *__arr1 = (cpusetp1)->__bits;

           \

-+ __cpu_mask *__arr2 = (cpusetp2)->__bits;

           \

-+ size_t __imax = (setsize) / sizeof (__cpu_mask);

           \
-+      size_t __i;
    \

-+ for (__i = 0; __i< __imax; ++__i)

   \
-+      if (__arr1[__i] != __arr2[__i])
    \

-+ break;

   \

-+ __i == __imax; }))
-+
-+# define __CPU_OP_S(setsize, destset, srcset1, srcset2, op) \
-+ (__extension__

   \

-+ ({ cpu_set_t *__dest = (destset);

   \
-+      __cpu_mask *__arr1 = (srcset1)->__bits;
    \
-+      __cpu_mask *__arr2 = (srcset2)->__bits;
    \

-+ size_t __imax = (setsize) / sizeof (__cpu_mask);

Quoted 7 lines
Quoted 7 lines
           \
-+      size_t __i;
    \

-+ for (__i = 0; __i< __imax; ++__i)

   \

-+ ((__cpu_mask *) __dest->__bits)[__i] = __arr1[__i] op

__arr2[__i];

Quoted 220 lines
Quoted 220 lines
   \

-+ __dest; }))
-+
-+# define __CPU_ALLOC_SIZE(count) \
-+ ((((count) + __NCPUBITS - 1) / __NCPUBITS) * sizeof (__cpu_mask)) -+# define __CPU_ALLOC(count) __sched_cpualloc (count)
-+# define __CPU_FREE(cpuset) __sched_cpufree (cpuset)
-+
-+__BEGIN_DECLS
-+
-+extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp) -+ __THROW;
-+extern cpu_set_t *__sched_cpualloc (size_t __count) __THROW __wur; -+extern void __sched_cpufree (cpu_set_t *__set) __THROW;
-+
-+__END_DECLS
-+
- #endif
-diff --git a/libc/sysdeps/linux/common/sched_cpualloc.c b/libc/sysdeps/linux/common/sched_cpualloc.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -33
-new file mode 100644
-index 0000000..2642a80
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_cpualloc.c
-@@ -0,0 +1,27 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<sched.h>
-+#include<stdlib.h>
-+
-+
-+cpu_set_t *
-+__sched_cpualloc (size_t count)
-+{
-+  return malloc (CPU_ALLOC_SIZE (count));
-+}
-diff --git a/libc/sysdeps/linux/common/sched_cpucount.c

b/libc/sysdeps/linux/common/sched_cpucount.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -66
-new file mode 100644
-index 0000000..331c0b8
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_cpucount.c
-@@ -0,0 +1,60 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<limits.h>
-+#include<sched.h>
-+
-+
-+int
-+__sched_cpucount (size_t setsize, const cpu_set_t *setp)
-+{
-+  int s = 0;
-+  const __cpu_mask *p = setp->__bits;
-+  const __cpu_mask *end =&setp->__bits[setsize / sizeof (__cpu_mask)];
-+
-+  while (p<  end)
-+    {
-+      __cpu_mask l = *p++;
-+
-+#ifdef POPCNT
-+      s += POPCNT (l);
-+#else
-+      if (l == 0)
-+      continue;
-+
-+# if LONG_BIT>  32
-+      l = (l&  0x5555555555555555ul) + ((l>>  1)&
 0x5555555555555555ul);
-+      l = (l&  0x3333333333333333ul) + ((l>>  2)&
 0x3333333333333333ul);
-+      l = (l&  0x0f0f0f0f0f0f0f0ful) + ((l>>  4)&
 0x0f0f0f0f0f0f0f0ful);
-+      l = (l&  0x00ff00ff00ff00fful) + ((l>>  8)&
 0x00ff00ff00ff00fful);
-+      l = (l&  0x0000ffff0000fffful) + ((l>>  16)&
 0x0000ffff0000fffful);
-+      l = (l&  0x00000000fffffffful) + ((l>>  32)&
 0x00000000fffffffful);
-+# else
-+      l = (l&  0x55555555ul) + ((l>>  1)&  0x55555555ul);
-+      l = (l&  0x33333333ul) + ((l>>  2)&  0x33333333ul);
-+      l = (l&  0x0f0f0f0ful) + ((l>>  4)&  0x0f0f0f0ful);
-+      l = (l&  0x00ff00fful) + ((l>>  8)&  0x00ff00fful);
-+      l = (l&  0x0000fffful) + ((l>>  16)&  0x0000fffful);
-+# endif
-+
-+      s += l;
-+#endif
-+    }
-+
-+  return s;
-+}
-diff --git a/libc/sysdeps/linux/common/sched_cpufree.c

b/libc/sysdeps/linux/common/sched_cpufree.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -33
-new file mode 100644
-index 0000000..dd4c613
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_cpufree.c
-@@ -0,0 +1,27 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<sched.h>
-+#include<stdlib.h>
-+
-+
-+void
-+__sched_cpufree (cpu_set_t *set)
-+{
-+  free (set);
-+}
-diff --git a/libc/sysdeps/linux/common/sched_getcpu.c

b/libc/sysdeps/linux/common/sched_getcpu.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -43
-new file mode 100644
-index 0000000..b193d65
---- /dev/null
-+++ b/libc/sysdeps/linux/common/sched_getcpu.c
-@@ -0,0 +1,37 @@
-+/* Copyright (C) 2007 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.  */
-+
-+#include<stdlib.h>
-+#include<errno.h>
-+#include<sched.h>
-+#include<sysdep.h>
-+
-+
-+int
-+sched_getcpu (void)
-+{
-+#ifdef __NR_getcpu
-+  unsigned int cpu;
-+  int r = INLINE_SYSCALL (getcpu, 3,&cpu, NULL, NULL);
-+
-+  return r == -1 ? r : cpu;
-+#else
-+  __set_errno (ENOSYS);
-+  return -1;
-+#endif
-+}
-diff --git a/libc/sysdeps/linux/common/unshare.c

b/libc/sysdeps/linux/common/unshare.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +0 -12
-new file mode 100644
-index 0000000..485bf88
---- /dev/null
-+++ b/libc/sysdeps/linux/common/unshare.c
-@@ -0,0 +1,12 @@
-+/* vi: set sw=4 ts=4: */
-+/*
-+ * unshare() for uClibc
-+ *
-+ * Copyright (C) 2011 Henning Heinold<[email protected]>
-+ *
-+ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this

tarball.
-+ */
-+

Quoted 8 lines
Quoted 8 lines

-+#include<sys/syscall.h>
-+#include<sched.h>
-+_syscall1(int, unshare, int, flags)
---
-1.7.5.3
-
diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch

Quoted 5 lines
Quoted 5 lines

new file mode 100644
index 0000000..2f0c191
--- /dev/null
+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch

Quoted 29 lines
Quoted 29 lines
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +15 -0
@@ -0,0 +1,32 @@
+From 6c3919a6d4a8686772e2a302bf951548ee24a8c1 Mon Sep 17 00:00:00 2001
+From: Khem Raj<[email protected]>
+Date: Fri, 3 Feb 2012 10:57:44 -0800
+Subject: [PATCH] Declare __err and pass it to INTERNAL_SYSCALL_NCS so
+ subsequent macros can use it
+
+Signed-off-by: Khem Raj<[email protected]>
+---
+ libc/sysdeps/linux/common/bits/syscalls-common.h |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+
+Upstream-Status: Pending
+
+diff --git a/libc/sysdeps/linux/common/bits/syscalls-common.h

b/libc/sysdeps/linux/common/bits/syscalls-common.h +index faebd1b..0f5a929 100644
+--- a/libc/sysdeps/linux/common/bits/syscalls-common.h ++++ b/libc/sysdeps/linux/common/bits/syscalls-common.h +@@ -59,8 +59,8 @@
+ #ifndef INLINE_SYSCALL_NOERR_NCS
+ # define INLINE_SYSCALL_NOERR_NCS(name, nr, args...) \
+ ({ \
+- /*INTERNAL_SYSCALL_DECL(__err);*/

      \
+-      long __res = INTERNAL_SYSCALL_NCS(name, /*__err*/, nr, args);   \
++      INTERNAL_SYSCALL_DECL(__err);                                   \
++      long __res = INTERNAL_SYSCALL_NCS(name, __err, nr, args);       \
Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +6 -0
+       __res;                                                          \
+ })
+ #endif
+--
+1.7.5.4
+

diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch

Quoted 5 lines
Quoted 5 lines

new file mode 100644
index 0000000..da4ffef
--- /dev/null
+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch

Quoted 228 lines
Quoted 228 lines
meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +4 -0
@@ -0,0 +1,177 @@
+From effbfd8e8a7b883671b24fc9759b135b48dbfaca Mon Sep 17 00:00:00 2001
+From: Khem Raj<[email protected]>
+Date: Fri, 3 Feb 2012 20:06:55 -0800
+Subject: [PATCH] lstat/stat/fstat: Use 64bit version of syscall if

available

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +20 -0
+
+This is needed for stat'ing loop devices>  255
+since otherwise kernel returns EOVERFLOW becasue
+it needs st_rdev/st_dev to be larger than 16bits but
+in kernel it uses __old_kernel_stat for stat
+syscall which has st_rdev/st_dev as unsigned short
+
+Add a testcase
+
+Signed-off-by: Khem Raj<[email protected]>
+---
+ libc/sysdeps/linux/common/fstat.c |   18 ++++++++++++++----
+ libc/sysdeps/linux/common/lstat.c |   19 ++++++++++++++-----
+ libc/sysdeps/linux/common/stat.c  |   18 ++++++++++++++----
+ test/stat/stat-loop256.c          |   32
++++++++++++++++++++++++++++++++
+ 4 files changed, 74 insertions(+), 13 deletions(-)
+ create mode 100644 test/stat/stat-loop256.c
+
+diff --git a/libc/sysdeps/linux/common/fstat.c

b/libc/sysdeps/linux/common/fstat.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +9 -0
+index acc639b..4726a68 100644
+--- a/libc/sysdeps/linux/common/fstat.c
++++ b/libc/sysdeps/linux/common/fstat.c
+@@ -12,18 +12,28 @@
+ #include<sys/stat.h>
+ #include "xstatconv.h"
+
+-#define __NR___syscall_fstat __NR_fstat
+-static __inline__ _syscall2(int, __syscall_fstat, int, fd, struct

kernel_stat *, buf)
+-
+ int fstat(int fd, struct stat *buf)
+ {

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +25 -0
+       int result;
++#ifdef __NR_fstat64
++      /* normal stat call has limited values for various stat elements
++       * e.g. uid device major/minor etc.
++       * so we use 64 variant if available
++       * in order to get newer versions of stat elements
++       */
++      struct kernel_stat64 kbuf;
++      result = INLINE_SYSCALL(fstat64, 2, fd,&kbuf);
++      if (result == 0) {
++              __xstat32_conv(&kbuf, buf);
++      }
++#else
+       struct kernel_stat kbuf;
+
+-      result = __syscall_fstat(fd,&kbuf);
++      result = INLINE_SYSCALL(fstat, 2, fd,&kbuf);
+       if (result == 0) {
+               __xstat_conv(&kbuf, buf);
+       }
++#endif
+       return result;
+ }
+ libc_hidden_def(fstat)
+diff --git a/libc/sysdeps/linux/common/lstat.c

b/libc/sysdeps/linux/common/lstat.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +38 -0
+index aa77447..db72d1f 100644
+--- a/libc/sysdeps/linux/common/lstat.c
++++ b/libc/sysdeps/linux/common/lstat.c
+@@ -12,19 +12,28 @@
+ #include<sys/stat.h>
+ #include "xstatconv.h"
+
+-#define __NR___syscall_lstat __NR_lstat
+-static __inline__ _syscall2(int, __syscall_lstat,
+-              const char *, file_name, struct kernel_stat *, buf)
+-
+ int lstat(const char *file_name, struct stat *buf)
+ {
+       int result;
++#ifdef __NR_lstat64
++      /* normal stat call has limited values for various stat elements
++       * e.g. uid device major/minor etc.
++       * so we use 64 variant if available
++       * in order to get newer versions of stat elements
++       */
++      struct kernel_stat64 kbuf;
++      result = INLINE_SYSCALL(lstat64, 2, file_name,&kbuf);
++      if (result == 0) {
++              __xstat32_conv(&kbuf, buf);
++      }
++#else
+       struct kernel_stat kbuf;
+
+-      result = __syscall_lstat(file_name,&kbuf);
++      result = INLINE_SYSCALL(lstat, 2, file_name,&kbuf);
+       if (result == 0) {
+               __xstat_conv(&kbuf, buf);
+       }
++#endif
+       return result;
+ }
+ libc_hidden_def(lstat)
+diff --git a/libc/sysdeps/linux/common/stat.c

b/libc/sysdeps/linux/common/stat.c

meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch deleted +79 -0
+index a6ab291..829f35a 100644
+--- a/libc/sysdeps/linux/common/stat.c
++++ b/libc/sysdeps/linux/common/stat.c
+@@ -12,20 +12,30 @@
+ #include<sys/stat.h>
+ #include "xstatconv.h"
+
+-#define __NR___syscall_stat __NR_stat
+ #undef stat
+-static __inline__ _syscall2(int, __syscall_stat,
+-              const char *, file_name, struct kernel_stat *, buf)
+
+ int stat(const char *file_name, struct stat *buf)
+ {
+       int result;
++#ifdef __NR_stat64
++      /* normal stat call has limited values for various stat elements
++       * e.g. uid device major/minor etc.
++       * so we use 64 variant if available
++       * in order to get newer versions of stat elements
++       */
++      struct kernel_stat64 kbuf;
++      result = INLINE_SYSCALL(stat64, 2, file_name,&kbuf);
++      if (result == 0) {
++              __xstat32_conv(&kbuf, buf);
++      }
++#else
+       struct kernel_stat kbuf;
+
+-      result = __syscall_stat(file_name,&kbuf);
++      result = INLINE_SYSCALL(stat, 2, file_name,&kbuf);
+       if (result == 0) {
+               __xstat_conv(&kbuf, buf);
+       }
++#endif
+       return result;
+ }
+ libc_hidden_def(stat)
+diff --git a/test/stat/stat-loop256.c b/test/stat/stat-loop256.c
+new file mode 100644
+index 0000000..14284c1
+--- /dev/null
++++ b/test/stat/stat-loop256.c
+@@ -0,0 +1,32 @@
++#include<stdio.h>
++#include<unistd.h>
++#include<stdlib.h>
++#include<sys/stat.h>
++int main()
++{
++    struct stat statbuf;
++    int ret = 0;
++    char* loop255 = "/dev/loop255";
++    char* loop256 = "/dev/loop256";
++    mode_t mode = 0660;
++    mknod(loop255, mode, 0x7ff);
++    mknod(loop256, mode, 0x100700);
++    ret = stat(loop255,&statbuf);
++    if(ret<  0) {
++      printf("stat: Cant stat %s\n",loop255);
++      unlink(loop255);
++      exit(1);
++    }
++    ret = stat(loop256,&statbuf);
++    if(ret<  0) {
++        printf("stat: Cant stat %s\n",loop256);
++      unlink(loop255);
++      unlink(loop256);
++        exit(1);
++    }
++
++    unlink(loop255);
++    unlink(loop256);
++    exit(0);
++}
++
+--
+1.7.5.4
+
meta/recipes-core/uclibc/uclibc-0.9.33/argp-headers.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-headers.patch +2 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/argp-headers.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/argp-headers.patch
index 7fd148f..b31b991 100644
@@ -8,6 +8,8 @@ Signed-off-by: Salvatore Cro<salvatore.cro at st.com>
  create mode 100644 include/argp.h
  create mode 100644 libc/argp/argp-fmtstream.h
 
+Upstream-Status: Pending
+
 Index: git/include/argp.h
 ===================================================================
 --- /dev/null
meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch +3 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch
index 04a3c78..3e9680f 100644
@@ -13,6 +13,9 @@ it doesn't need to link libuargp.so explicitely.
 Signed-off-by: Salvatore Cro<salvatore.cro at st.com>
 Signed-off-by: Filippo Arcidiacono<filippo.arcidiacono at st.com>
 Signed-off-by: Carmelo Amoroso<carmelo.amoroso at st.com>
+
+Upstream-Status: Pending
+
 ---
  Makefile.in                                 |    8 +
  Makerules                                   |    8 +-

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch b/meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch similarity index 97%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch rename to meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch index 429f27d..15ee0ca 100644

Quoted 8 lines
Quoted 8 lines

---
a/meta/recipes-core/uclibc/uclibc-0.9.32/compile-arm-fork-with-O2.patch
+++
b/meta/recipes-core/uclibc/uclibc-0.9.33/compile-arm-fork-with-O2.patch

meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch +0 -0
@@ -1,5 +1,5 @@
 When compiling in thumb mode for arm with -Os gcc gives up since it can

not find registers
-to spill. So we use -O2 option for compiling fork.c It may be

addressable

Quoted 2 lines
Quoted 2 lines

is gcc.
+to spill. So we use -O2 option for compiling fork.c It may be

addressable

Quoted 11 lines
Quoted 11 lines

in gcc.

diff --git a/meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch b/meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch new file mode 100644
index 0000000..4e900f3
--- /dev/null
+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch

Quoted 60 lines
Quoted 60 lines
meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch +7 -0
@@ -0,0 +1,25 @@
+Add definition of MSG_WAITFORONE and MSG_CMSG_CLOEXEC
+
+Upstream-Status: Pending
+
+Index: git/libc/sysdeps/linux/common/bits/socket.h
+===================================================================
+--- git.orig/libc/sysdeps/linux/common/bits/socket.h   2012-01-26

23:23:21.537456132 -0800
++++ git/libc/sysdeps/linux/common/bits/socket.h 2012-01-26
23:25:10.125461388 -0800
+@@ -235,8 +235,15 @@
+ #define MSG_ERRQUEUE MSG_ERRQUEUE
+ MSG_NOSIGNAL = 0x4000, /* Do not generate SIGPIPE. */
+ #define MSG_NOSIGNAL MSG_NOSIGNAL

+-    MSG_MORE          = 0x8000  /* Sender will send more.  */
++    MSG_MORE          = 0x8000,  /* Sender will send more.  */
+ #define       MSG_MORE        MSG_MORE
++    MSG_WAITFORONE      = 0x10000, /* Wait for at least one packet to

return.*/
++#define MSG_WAITFORONE MSG_WAITFORONE
++
++ MSG_CMSG_CLOEXEC = 0x40000000 /* Set close_on_exit for file
++ descriptor received through
++ SCM_RIGHTS. */
++#define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC

meta/recipes-core/uclibc/uclibc-0.9.33/argp-support.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/argp-support.patch +3 -0
+   };
+
+
meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch new file +8 -0
new file mode 100644
index 0000000..481f23b
@@ -0,0 +1,37 @@
+Implement dup3()
+
+Upstream-Status: Pending
+
+Index: git/libc/sysdeps/linux/common/dup3.c
+===================================================================
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ git/libc/sysdeps/linux/common/dup3.c       2012-01-27

07:40:52.802900849 -0800
+@@ -0,0 +1,15 @@
++/* vi: set sw=4 ts=4: */
++/*
++ * dup3() for uClibc
++ *
++ * Copyright (C) 2000-2006 Erik Andersen<[email protected]> ++ *
++ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
++ */
++
++#include<sys/syscall.h>
++#include<unistd.h>
++
++

Quoted 8 lines
Quoted 8 lines

++_syscall3(int, dup3, int, oldfd, int, newfd, int, flags) ++libc_hidden_def(dup3)
+Index: git/include/unistd.h

+===================================================================
+--- git.orig/include/unistd.h  2012-01-27 01:19:17.521792781 -0800
++++ git/include/unistd.h       2012-01-27 07:40:03.106898447 -0800

+@@ -512,6 +512,8 @@
+ /* Duplicate FD to FD2, closing FD2 and making it open on the same

file.

Quoted 10 lines
Quoted 10 lines

*/
+ extern int dup2 (int __fd, int __fd2) __THROW;
+ libc_hidden_proto(dup2)
++extern int dup3 (int __fd, int __fd2, int __flags) __THROW; ++libc_hidden_proto(dup3)
+
+ /* NULL-terminated array of "NAME=VALUE" environment variables. */
+ extern char **__environ;
diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch

Quoted 3 lines
Quoted 3 lines

similarity index 86%
rename from

meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch

Quoted 2 lines
Quoted 2 lines

rename to

meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch

Quoted 3 lines
Quoted 3 lines

index cfa68ce..d44acca 100644
---

a/meta/recipes-core/uclibc/uclibc-0.9.32/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch

Quoted 2 lines
Quoted 2 lines

+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch

Quoted 5 lines
Quoted 5 lines
meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch new file +4 -0
@@ -1,3 +1,9 @@
+resolver code should always be in arm mode
+
+Signed-off-by: Khem Raj<[email protected]>
+
Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch new file +2 -0
+Upstream-Status: Pending
+
 Index: uClibc/ldso/ldso/arm/resolve.S
 ===================================================================
 --- uClibc.orig/ldso/ldso/arm/resolve.S       2009-03-20

12:03:32.000000000 -0700
diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch

Quoted 5 lines
Quoted 5 lines

new file mode 100644
index 0000000..8064115
--- /dev/null
+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch

Quoted 251 lines
Quoted 251 lines
meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch new file +19 -1
@@ -0,0 +1,19 @@
+Index: git/include/libc-symbols.h
+===================================================================
+--- git.orig/include/libc-symbols.h    2011-07-05 17:04:41.171219323
-0700
++++ git/include/libc-symbols.h 2011-07-05 22:50:36.851661478 -0700
+@@ -48,10 +48,12 @@
+
+    */
+
+-#include<bits/uClibc_arch_features.h>
+-
+ /* Enable declarations of GNU extensions, since we are compiling them.
 */
+ #define _GNU_SOURCE   1
++#define __need_uClibc_config_h
++#include<bits/uClibc_config.h>
++#undef __need_uClibc_config_h
++#include<bits/uClibc_arch_features.h>
+
+ /* Prepare for the case that `__builtin_expect' is not available.  */
+ #if defined __GNUC__&&  __GNUC__ == 2&&  __GNUC_MINOR__<  96
meta/recipes-core/uclibc/uclibc-0.9.33/mips/uClibc.machine renamed from meta/recipes-core/uclibc/uclibc-0.9.32/mips/uClibc.machine +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/mips/uClibc.machine
rename to meta/recipes-core/uclibc/uclibc-0.9.33/mips/uClibc.machine
meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +0 -0
similarity index 64%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch
index 631951e..c9c15a3 100644
@@ -3,16 +3,16 @@

http://lists.busybox.net/pipermail/uclibc/2011-March/045003.html

Upstream-Status: Pending

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +5 -7
-diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
-index 505247e..2b2d429 100644
---- a/ldso/ldso/dl-elf.c
-+++ b/ldso/ldso/dl-elf.c
-@@ -133,53 +133,60 @@ _dl_protect_relro (struct elf_resolve *l)
+Index: git/ldso/ldso/dl-elf.c
+===================================================================
+--- git.orig/ldso/ldso/dl-elf.c        2012-01-23 19:18:58.000000000
-0800
++++ git/ldso/ldso/dl-elf.c     2012-01-23 21:52:06.144646590 -0800
+@@ -133,53 +133,60 @@
   * in uClibc/ldso/util/ldd.c */
  static struct elf_resolve *
- search_for_named_library(const char *name, int secure, const char

*path_list,
+ search_for_named_library(const char *name, unsigned rflags, const char *path_list,
- struct dyn_elf **rpnt)
-+ struct dyn_elf **rpnt, const char *origin)
++ struct dyn_elf **rpnt, const char* origin)
{
- char *path, *path_n, *mylibname;
+ char *mylibname;

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +0 -7
@@ -47,18 +47,6 @@ index 505247e..2b2d429 100644
 -             if (*path == 0) {
 -                     *path = ':';
 -                     done = 1;
--              }
--              if (*path == ':') {
--                      *path = 0;
--                      if (*path_n)
--                              _dl_strcpy(mylibname, path_n);
--                      else
--                              _dl_strcpy(mylibname, "."); /* Assume

current dir if empty path */

--                      _dl_strcat(mylibname, "/");
--                      _dl_strcat(mylibname, name);
--                      if ((tpnt = _dl_load_elf_shared_library(secure,

rpnt, mylibname)) != NULL)
-- return tpnt;
-- path_n = path+1;
+ for (p = path_list; p != NULL; p = pn) {
+ pn = _dl_strchr(p + 1, ':');
+ if (pn != NULL) {

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +7 -1
@@ -69,7 +57,7 @@ index 505247e..2b2d429 100644
 +
 +             if (plen>= 7&&  _dl_memcmp(p, "$ORIGIN", 7) == 0) {
 +                     int olen;
-+                      if (secure&&  plen != 7)
++                      if (rflags&&  plen != 7)
 +                             continue;
 +                     if (origin == NULL)
 +                             continue;
@@ -86,12 +74,24 @@ index 505247e..2b2d429 100644
 +             } else {
 +                     _dl_strcpy(mylibname, ".");
               }
+-              if (*path == ':') {
+-                      *path = 0;
+-                      if (*path_n)
+-                              _dl_strcpy(mylibname, path_n);
+-                      else
+-                              _dl_strcpy(mylibname, "."); /* Assume

current dir if empty path */

+-                      _dl_strcat(mylibname, "/");
+-                      _dl_strcat(mylibname, name);
+-                      if ((tpnt = _dl_load_elf_shared_library(rflags,
rpnt, mylibname)) != NULL)
+-                              return tpnt;
+-                      path_n = path+1;
+-              }
 -             path++;
 -     } while (!done);
 +             _dl_strcat(mylibname, "/");
 +             _dl_strcat(mylibname, name);

+
-+ tpnt = _dl_load_elf_shared_library(secure, rpnt,
mylibname);
++ tpnt = _dl_load_elf_shared_library(rflags, rpnt,
mylibname);
+ if (tpnt != NULL)
+ return tpnt;
+ }

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +11 -9
@@ -99,44 +99,46 @@ index 505247e..2b2d429 100644
       return NULL;
  }
 
-@@ -231,7 +238,8 @@ struct elf_resolve *_dl_load_shared_library(int
 secure, struct dyn_elf **rpnt,
+@@ -231,8 +238,10 @@
       if (pnt) {
               pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
               _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt);
--              if ((tpnt1 = search_for_named_library(libname, secure,
 pnt, rpnt)) != NULL)
-+              if ((tpnt1 = search_for_named_library(libname, secure,
 pnt, rpnt,
+-              if ((tpnt1 = search_for_named_library(libname, rflags,
 pnt, rpnt)) != NULL)
++              if ((tpnt1 = search_for_named_library(libname, rflags,
 pnt, rpnt,
 +                                                   tpnt->libname)) !=
 NULL)
                       return tpnt1;
++
       }
  #endif
-@@ -239,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int
 secure, struct dyn_elf **rpnt,
+
+@@ -240,7 +249,7 @@
       /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */
       if (_dl_library_path) {
               _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n",
 _dl_library_path);
--              if ((tpnt1 = search_for_named_library(libname, secure,
 _dl_library_path, rpnt)) != NULL)
-+              if ((tpnt1 = search_for_named_library(libname, secure,
 _dl_library_path, rpnt, NULL)) != NULL)
+-              if ((tpnt1 = search_for_named_library(libname, rflags,
 _dl_library_path, rpnt)) != NULL)
++              if ((tpnt1 = search_for_named_library(libname, rflags,
 _dl_library_path, rpnt, NULL)) != NULL)
               {
                       return tpnt1;
               }
-@@ -253,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int
 secure, struct dyn_elf **rpnt,
+@@ -254,7 +263,7 @@
       if (pnt) {
               pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
               _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt);
--              if ((tpnt1 = search_for_named_library(libname, secure,
 pnt, rpnt)) != NULL)
-+              if ((tpnt1 = search_for_named_library(libname, secure,
 pnt, rpnt, NULL)) != NULL)
+-              if ((tpnt1 = search_for_named_library(libname, rflags,
 pnt, rpnt)) != NULL)
++              if ((tpnt1 = search_for_named_library(libname, rflags,

pnt, rpnt, NULL)) != NULL)

                       return tpnt1;
       }

#endif
-@@ -287,7 +295,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+@@ -288,7 +297,7 @@

       /* Look for libraries wherever the shared library loader
        * was installed */
       _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath);

-- tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath,
rpnt);
-+ tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath,
rpnt, NULL);
+- tpnt1 = search_for_named_library(libname, rflags, _dl_ldsopath,
rpnt);
++ tpnt1 = search_for_named_library(libname, rflags, _dl_ldsopath,

rpnt, NULL);
       if (tpnt1 != NULL)
               return tpnt1;

-
-@@ -300,7 +308,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ #endif
+@@ -301,7 +310,7 @@
#ifndef __LDSO_CACHE_SUPPORT__
":" UCLIBC_RUNTIME_PREFIX
"usr/X11R6/lib"
#endif

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +6 -6
@@ -145,12 +147,12 @@ index 505247e..2b2d429 100644
       if (tpnt1 != NULL)
               return tpnt1;
 
-diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
-index 7ee9257..9423670 100644
---- a/ldso/ldso/ldso.c
-+++ b/ldso/ldso/ldso.c
-@@ -272,6 +272,20 @@ static void __attribute__ ((destructor))
 __attribute_used__ _dl_fini(void)
-       }
+Index: git/ldso/ldso/ldso.c
+===================================================================
+--- git.orig/ldso/ldso/ldso.c  2012-01-23 19:18:58.000000000 -0800
++++ git/ldso/ldso/ldso.c       2012-01-23 21:34:11.152594621 -0800
+@@ -407,6 +407,20 @@
+       return p - list;
  }
 

+static void _dl_setup_progname(const char *argv0)

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +2 -4
@@ -167,10 +169,10 @@ index 7ee9257..9423670 100644
 +     }
 +}
 +
- void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE
 load_addr,
-                         ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp,
-                         char **argv
-@@ -321,9 +335,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt,
 DL_LOADADDR_TYPE load_addr,
+ void *_dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE
 load_addr,
+                         ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp,

char **argv

meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +2 -0
+                         DL_GET_READY_TO_RUN_EXTRA_PARMS)
+@@ -458,9 +472,7 @@
        * been fixed up by now.  Still no function calls outside of this
        * library, since the dynamic resolver is not yet ready.
        */
@@ -179,5 +181,5 @@ index 7ee9257..9423670 100644
 -     }
 +     _dl_setup_progname(argv[0]);
 
Quoted 9 lines
Quoted 9 lines
meta/recipes-core/uclibc/uclibc-0.9.33/orign_path.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/orign_path.patch +1 -1
+ #ifndef __LDSO_STANDALONE_SUPPORT__
       if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) {
-               _dl_dprintf(_dl_debug_file, "Standalone execution is not

supported yet\n");
diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch b/meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch similarity index 96%
rename from

meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch

Quoted 8 lines
Quoted 8 lines

rename to meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch index 339ce7f..3fa10af 100644

meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +3 -0
@@ -1,3 +1,9 @@
+Add ppc copysignl implementation
+
+Upstream-Status: Pending
Quoted 8 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +3 -0
+
+Signed-off-by: Khem Raj<[email protected]>
+
 Index: git/libc/sysdeps/linux/powerpc/Makefile.arch
 ===================================================================
 --- git.orig/libc/sysdeps/linux/powerpc/Makefile.arch

diff --git

a/meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch

Quoted 1 line
Quoted 1 line

b/meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch

Quoted 8 lines
Quoted 8 lines

similarity index 93%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch rename to meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch index 1930383..bee251c 100644
---

a/meta/recipes-core/uclibc/uclibc-0.9.32/remove_attribute_optimize_Os.patch

Quoted 2 lines
Quoted 2 lines

+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/remove_attribute_optimize_Os.patch

Quoted 6 lines
Quoted 6 lines
meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +0 -5
@@ -1,15 +1,8 @@
-Index: git/include/features.h
-===================================================================
---- git.orig/include/features.h
-+++ git/include/features.h
-@@ -186,7 +186,6 @@
Quoted 8 lines

meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch line 1

Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +1 -7
- # define __need_uClibc_config_h
- # include<bits/uClibc_config.h>
- # undef __need_uClibc_config_h
--
- /* For uClibc, always optimize for size -- this should disable
-  * a lot of expensive inlining...
-  * TODO: this is wrong! __OPTIMIZE_SIZE__ is an indicator of
+Dont support localised optimizations this helps to have a global -O

level

Quoted 45 lines
Quoted 45 lines
meta/recipes-core/uclibc/uclibc-0.9.33/powerpc_copysignl.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/powerpc_copysignl.patch +4 -0
+
+Signed-off-by: Khem Raj<[email protected]>
+Upstream-Status: Pending
+
 Index: git/libpthread/nptl/pthread_mutex_timedlock.c
 ===================================================================
 --- git.orig/libpthread/nptl/pthread_mutex_timedlock.c
meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.distro renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.distro +7 -1
similarity index 96%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.distro
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.distro
index 5638d47..c33bf8e 100644
@@ -181,4 +181,10 @@ UCLIBC_HAS_FLOATS=y
 
 # needed by systemd
 UCLIBC_HAS_UTMPX=y
-
+UCLIBC_LINUX_MODULE_26=y
+UCLIBC_HAS_RESOLVER_SUPPORT=y
+# needed for LTP
+UCLIBC_SUSV4_LEGACY=y
+UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y
+DO_XSI_MATH=y
+UCLIBC_SV4_DEPRECATED=y
meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.machine renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.machine +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uClibc.machine
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uClibc.machine
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch +0 -0
similarity index 99%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch
rename to meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch
index cd90a09..fe191fc 100644
@@ -12,6 +12,9 @@ Signed-off-by: Henning Heinold<[email protected]
 
  3 files changed, 46 insertions(+), 5 deletions(-)
  create mode 100644 libc/unistd/execvpe.c
 
Quoted 16 lines
Quoted 8 lines
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch +3 -0
+
+Upstream-Status: Pending
+
 diff --git a/include/unistd.h b/include/unistd.h
 index 9568790..070e4f2 100644

--- a/include/unistd.h
diff --git a/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch

Quoted 8 lines

b/meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch similarity index 81%
rename from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch rename to meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch index f8f3a7d..37a5988 100644
---

a/meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_enable_log2_test.patch

Quoted 1 line
Quoted 1 line

+++

b/meta/recipes-core/uclibc/uclibc-0.9.33/uclibc_enable_log2_test.patch

Quoted 70 lines
Quoted 70 lines
meta/recipes-core/uclibc/uclibc-0.9.33/uclibc-execvpe.patch renamed from meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-execvpe.patch +5 -0
@@ -1,3 +1,8 @@
+uclibc now has log2 so enable the tests
+
+Signed-off-by: Khem Raj<[email protected]>
+Upstream-Status: Pending
+
 Index: uClibc/test/math/libm-test.inc
 ===================================================================
 --- uClibc/test/math/libm-test.inc    (revision 23784)
meta/recipes-core/uclibc/uclibc-initial_0.9.33.bb renamed from meta/recipes-core/uclibc/uclibc-initial_0.9.32.bb +0 -0
similarity index 100%
rename from meta/recipes-core/uclibc/uclibc-initial_0.9.32.bb
rename to meta/recipes-core/uclibc/uclibc-initial_0.9.33.bb
meta/recipes-core/uclibc/uclibc_0.9.33.bb renamed from meta/recipes-core/uclibc/uclibc_0.9.32.bb +7 -17
similarity index 45%
rename from meta/recipes-core/uclibc/uclibc_0.9.32.bb
rename to meta/recipes-core/uclibc/uclibc_0.9.33.bb
index 235b436..b559fd4 100644
@@ -1,34 +1,26 @@
-SRCREV="9152c4d67c763fde5712e2d181d92c0d7e1e2ab9"
+SRCREV="1548ee3ca582f3732136e71613c87c16230f71cc"
 
 require uclibc.inc
-PR = "${INC_PR}.3"
+
+PR = "${INC_PR}.0"
 PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
 SRC_URI = "git://uclibc.org/uClibc.git;branch=${PV};protocol=git<http://uclibc.org/uClibc.git;branch=$%7BPV%7D;protocol=git>\
       file://uClibc.machine \
       file://uClibc.distro \
-       file://uclibc-arm-ftruncate64.patch \
       file://uclibc_enable_log2_test.patch \
       file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch \
-       file://select-force-thumb.patch \
-       file://remove-sub-arch-variants.patch \
-       file://transform-eabi-oabi-choice.patch \
-       file://include-arm-asm.h.patch \
-       file://detect-bx-availibility.patch \
-       file://remove-eabi-oabi-selection.patch \
       file://powerpc_copysignl.patch \
       file://argp-support.patch \
       file://argp-headers.patch \
       file://remove_attribute_optimize_Os.patch \
       file://compile-arm-fork-with-O2.patch \
-       file://epoll-asm-fix.patch \
-       file://orign_path.patch \
-       file://rtld_no.patch \
-
 file://0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch \
-
 file://0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch \
       file://uclibc-execvpe.patch \
-       file://uclibc_scheduler_update.patch \
-       file://sync_file_range2.patch \
-       file://mount.h-update.patch \
+       file://orign_path.patch \
+       file://dup3.patch \
+       file://define-MSG_CMSG_CLOEXEC.patch \
+

file://0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch \
+

file://0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch \
       "

+
S = "${WORKDIR}/git"

author
#26 lore raw

PATCH v2 12/20 zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Khem Raj

Dont use autotools, it really not so autoconf like. the configure script gets updated with every release of zlib and we overwrite that. Instead use the upstream provided configure

copyright year was changed in zlib.h which caused change in LIC_FILE_CHECKSUM

fix.inverted.LFS.logic.patch is already applied upstream so drop it

Drop the configure.ac and Makefile.am scripts since we do not autoreconf anymore and do not inherit autotools anymore

---
 meta/recipes-core/zlib/files/Makefile.am           |    9 ----
 meta/recipes-core/zlib/files/configure.ac          |   48 --------------------
 .../zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch   |   20 --------
 meta/recipes-core/zlib/zlib_1.2.5.bb               |   41 -----------------
 meta/recipes-core/zlib/zlib_1.2.6.bb               |   26 +++++++++++
 5 files changed, 26 insertions(+), 118 deletions(-)
 delete mode 100644 meta/recipes-core/zlib/files/Makefile.am
 delete mode 100644 meta/recipes-core/zlib/files/configure.ac
 delete mode 100644 meta/recipes-core/zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch
 delete mode 100644 meta/recipes-core/zlib/zlib_1.2.5.bb
 create mode 100644 meta/recipes-core/zlib/zlib_1.2.6.bb
meta/recipes-core/zlib/files/Makefile.am deleted +0 -9
deleted file mode 100644
index b66d299..0000000
@@ -1,9 +0,0 @@
-lib_LTLIBRARIES = libz.la
-
-libz_la_SOURCES = adler32.c compress.c crc32.c gzlib.c gzclose.c gzread.c \
-                  gzwrite.c uncompr.c deflate.c trees.c zutil.c inflate.c \
-                  infback.c inftrees.c inffast.c
-
-libz_la_LDFLAGS = -version-number 1:2:5 --version-script zlib.map
-
-include_HEADERS = zconf.h zlib.h zlibdefs.h
meta/recipes-core/zlib/files/configure.ac deleted +0 -48

48 lines not on this page · raw message

meta/recipes-core/zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch deleted +0 -20
deleted file mode 100644
index 038c1a2..0000000
@@ -1,20 +0,0 @@
-Upstream-Status: Pending
-
-see
-https://bugs.gentoo.org/316377?id=316377
-https://bugs.freedesktop.org/show_bug.cgi?id=33710
-http://lists.freedesktop.org/archives/poppler-bugs/2011-January/006014.html
-for details
-
-diff -up zlib-1.2.5/zlib.h.pom zlib-1.2.5/zlib.h
---- zlib-1.2.5/zlib.h.pom	2010-04-20 06:12:48.000000000 +0200
-+++ zlib-1.2.5/zlib.h	2010-06-16 13:08:59.000000000 +0200
-@@ -1578,7 +1578,7 @@ ZEXTERN int ZEXPORT inflateBackInit_ OF(
- #  define gzoffset gzoffset64
- #  define adler32_combine adler32_combine64
- #  define crc32_combine crc32_combine64
--#  ifdef _LARGEFILE64_SOURCE
-+#  ifndef _LARGEFILE64_SOURCE
-      ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
-      ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int));
-      ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile));
meta/recipes-core/zlib/zlib_1.2.5.bb deleted +0 -41

41 lines not on this page · raw message

meta/recipes-core/zlib/zlib_1.2.6.bb new file +26 -0
new file mode 100644
index 0000000..a220773
@@ -0,0 +1,26 @@
+SUMMARY = "Zlib Compression Library"
+DESCRIPTION = "Zlib is a general-purpose, patent-free, lossless data compression \
+library which is used by many different programs."
+HOMEPAGE = "http://zlib.net/"
+SECTION = "libs"
+LICENSE = "Zlib"
+LIC_FILES_CHKSUM = "file://zlib.h;beginline=4;endline=23;md5=94d1b5a40dadd127f3351471727e66a9"
+
+SRC_URI = "http://www.zlib.net/${BPN}-${PV}.tar.bz2 \
+           "
+SRC_URI[md5sum] = "dc2cfa0d2313ca77224b4d932b2911e9"
+SRC_URI[sha256sum] = "fa3e3e4881fa5810b8903f2c7e0dcd5a0a673535f0438021c4bbb5db1b918c8e"
+
+do_configure (){
+	./configure --prefix=${prefix} --shared --libdir=${libdir}
+}
+
+do_compile (){
+	oe_runmake
+}
+
+do_install() {
+	oe_runmake DESTDIR=${D} install
+}
+
+BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
1.7.5.4
#27 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 5 lines · Khem Raj

Dont use autotools, it really not so autoconf like. the configure script gets updated with every release of zlib and we overwrite that. Instead use the upstream provided configure

Quoted 8 lines

copyright year was changed in zlib.h which caused change in LIC_FILE_CHECKSUM

fix.inverted.LFS.logic.patch is already applied upstream so drop it

Drop the configure.ac and Makefile.am scripts since we do not autoreconf anymore and do not inherit autotools anymore

Not sure what's up with this patch, but it is causing failures in other recipes that depend on libz, it seems like the libz.la is not getting installed correctly.

| /bin/grep: /intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la: No such file or directory
| /bin/sed: can't read /intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la: No such file or directory
| i586-poky-linux-libtool: link: `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' is not a valid libtool archive

Sau!

Quoted 188 lines
---
  meta/recipes-core/zlib/files/Makefile.am           |    9 ----
  meta/recipes-core/zlib/files/configure.ac          |   48 --------------------
  .../zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch   |   20 --------
  meta/recipes-core/zlib/zlib_1.2.5.bb               |   41 -----------------
  meta/recipes-core/zlib/zlib_1.2.6.bb               |   26 +++++++++++
  5 files changed, 26 insertions(+), 118 deletions(-)

delete mode 100644 meta/recipes-core/zlib/files/Makefile.am
delete mode 100644 meta/recipes-core/zlib/files/configure.ac
delete mode 100644 meta/recipes-core/zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch delete mode 100644 meta/recipes-core/zlib/zlib_1.2.5.bb
create mode 100644 meta/recipes-core/zlib/zlib_1.2.6.bb

meta/recipes-core/zlib/files/Makefile.am deleted +0 -9
deleted file mode 100644
index b66d299..0000000
@@ -1,9 +0,0 @@
-lib_LTLIBRARIES = libz.la
-
-libz_la_SOURCES = adler32.c compress.c crc32.c gzlib.c gzclose.c gzread.c \
-                  gzwrite.c uncompr.c deflate.c trees.c zutil.c inflate.c \
-                  infback.c inftrees.c inffast.c
-
-libz_la_LDFLAGS = -version-number 1:2:5 --version-script zlib.map
-
-include_HEADERS = zconf.h zlib.h zlibdefs.h
meta/recipes-core/zlib/files/configure.ac deleted +0 -48
deleted file mode 100644
index 4761b7e..0000000
@@ -1,48 +0,0 @@
-AC_INIT(zlib,1.2.5)
-AC_CONFIG_SRCDIR(adler32.c)
-AM_INIT_AUTOMAKE(zlibs,1.2.5)
-
-AC_PREREQ([2.59])
-
-AC_PROG_CC([gcc])
-AC_PROG_LIBTOOL
-
-AC_HEADER_STDC
-
-zlib_save_CPPFLAGS=$CPPFLAGS
-CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE"
-AC_CHECK_TYPES(off64_t)
-CPPFLAGS=$zlib_save_CPPFLAGS
-
-AC_CACHE_CHECK([whether to enable -D_LARGEFILE64_SOURCE], [zlib_cv_use_lfs64], [
-    zlib_cv_use_lfs64=no
-    if test "$ac_cv_type_off64_t" = "yes"; then
-        zlib_cv_use_lfs64=yes
-    fi
-])
-
-if test "$zlib_cv_use_lfs64" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE"
-
-    #APR_ADDTO(CPPFLAGS, [-D_LARGEFILE64_SOURCE])
-fi
-
-cat>  zlibdefs.h<<  EOF
-/* zlibdefs.h -- compile-time definitions for the zlib compression library
- * Copyright (C) 1995-2006 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include<sys/types.h>	/* for off_t */
-#include<unistd.h>	/* for SEEK_* and off_t */
-#ifdef VMS
-#  include<unixio.h>	/* for off_t */
-#endif
-#ifndef z_off_t
-#  define z_off_t off_t
-#endif
-EOF
-
-AC_CONFIG_FILES([Makefile])
-
-AC_OUTPUT
meta/recipes-core/zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch deleted +0 -20
deleted file mode 100644
index 038c1a2..0000000
@@ -1,20 +0,0 @@
-Upstream-Status: Pending
-
-see
-https://bugs.gentoo.org/316377?id=316377
-https://bugs.freedesktop.org/show_bug.cgi?id=33710
-http://lists.freedesktop.org/archives/poppler-bugs/2011-January/006014.html
-for details
-
-diff -up zlib-1.2.5/zlib.h.pom zlib-1.2.5/zlib.h
---- zlib-1.2.5/zlib.h.pom	2010-04-20 06:12:48.000000000 +0200
-+++ zlib-1.2.5/zlib.h	2010-06-16 13:08:59.000000000 +0200
-@@ -1578,7 +1578,7 @@ ZEXTERN int ZEXPORT inflateBackInit_ OF(
- #  define gzoffset gzoffset64
- #  define adler32_combine adler32_combine64
- #  define crc32_combine crc32_combine64
--#  ifdef _LARGEFILE64_SOURCE
-+#  ifndef _LARGEFILE64_SOURCE
-      ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
-      ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int));
-      ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile));
meta/recipes-core/zlib/zlib_1.2.5.bb deleted +0 -41
deleted file mode 100644
index b5756d9..0000000
@@ -1,41 +0,0 @@
-SUMMARY = "Zlib Compression Library"
-DESCRIPTION = "Zlib is a general-purpose, patent-free, lossless data compression \
-library which is used by many different programs."
-HOMEPAGE = "http://zlib.net/"
-SECTION = "libs"
-LICENSE = "Zlib"
-LIC_FILES_CHKSUM = "file://zlib.h;beginline=4;endline=23;md5=084e9c30e4e6272c3b057b13c6467f3d"
-
-DEPENDS = "libtool-cross"
-PR = "r3"
-
-SRC_URI = "http://www.zlib.net/${BPN}-${PV}.tar.bz2 \
-           file://configure.ac \
-           file://Makefile.am \
-           file://fix.inverted.LFS.logic.patch"
-
-SRC_URI[md5sum] = "be1e89810e66150f5b0327984d8625a0"
-SRC_URI[sha256sum] = "239aead2f22f16bfcfa6a6a5150dcbd6d6f2e4d1eaa8727b5769ea014120b307"
-
-inherit autotools
-
-do_configure_prepend () {
-	cp ${WORKDIR}/configure.ac ${S}/
-	cp ${WORKDIR}/Makefile.am ${S}/
-}
-
-do_install_append () {
-	sed \
-		-e 's:@prefix@:${prefix}:' \
-		-e 's:@exec_prefix@:${exec_prefix}:' \
-		-e 's:@libdir@:${libdir}:' \
-		-e 's:@sharedlibdir@:${libdir}:' \
-		-e 's:@includedir@:${includedir}:' \
-		-e 's:@VERSION@:${PV}:' \
-		zlib.pc.in>  zlib.pc
-
-	install -d ${D}${libdir}/pkgconfig
-	install -m 0644 zlib.pc ${D}${libdir}/pkgconfig/
-}
-
-BBCLASSEXTEND = "native nativesdk"
meta/recipes-core/zlib/zlib_1.2.6.bb new file +26 -0
new file mode 100644
index 0000000..a220773
@@ -0,0 +1,26 @@
+SUMMARY = "Zlib Compression Library"
+DESCRIPTION = "Zlib is a general-purpose, patent-free, lossless data compression \
+library which is used by many different programs."
+HOMEPAGE = "http://zlib.net/"
+SECTION = "libs"
+LICENSE = "Zlib"
+LIC_FILES_CHKSUM = "file://zlib.h;beginline=4;endline=23;md5=94d1b5a40dadd127f3351471727e66a9"
+
+SRC_URI = "http://www.zlib.net/${BPN}-${PV}.tar.bz2 \
+           "
+SRC_URI[md5sum] = "dc2cfa0d2313ca77224b4d932b2911e9"
+SRC_URI[sha256sum] = "fa3e3e4881fa5810b8903f2c7e0dcd5a0a673535f0438021c4bbb5db1b918c8e"
+
+do_configure (){
+	./configure --prefix=${prefix} --shared --libdir=${libdir}
+}
+
+do_compile (){
+	oe_runmake
+}
+
+do_install() {
+	oe_runmake DESTDIR=${D} install
+}
+
+BBCLASSEXTEND = "native nativesdk"
author
#28 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 2 lines · Saul Wold

| /bin/grep: /intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la:
No such file or directory

thanks ok I did not catch it with sato image build. which package is failing with this
error.

#29 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 8 lines · Khem Raj
Quoted 2 lines · Saul Wold

| /bin/grep: /intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la:
No such file or directory

thanks ok I did not catch it with sato image build. which package is failing with this
error.

pixman, gconf, polkit are the 3 I saw doing a world build.

Sau!

author
#30 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 10 lines · Saul Wold
Quoted 8 lines · Khem Raj
Quoted 2 lines · Saul Wold

| /bin/grep: /intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la:
No such file or directory

thanks ok I did not catch it with sato image build. which package is failing with this
error.

pixman, gconf, polkit are the 3 I saw doing a world build.

I havent been able to reproduce it with eglibc I tried bitbake gconf pixman polkit it all liked well. Might be my machine is just nice to me but that said when I get to the culprit it mostly will be the package who is using .la in weird way since zlib already ships a .pc file it should have used that one instead

Quoted 2 lines

Sau!

Signature · 1 line
-Khem
#31 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 10 lines · Khem Raj
Quoted 9 lines · Saul Wold
Quoted 8 lines · Khem Raj
Quoted 2 lines · Saul Wold

| /bin/grep: /intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la:
No such file or directory

thanks ok I did not catch it with sato image build. which package is failing with this
error.

Quoted 8 lines
Quoted 1 line

pixman, gconf, polkit are the 3 I saw doing a world build.

I havent been able to reproduce it with eglibc I tried bitbake gconf pixman polkit it all liked well. Might be my machine is just nice to me but that said when I get to the culprit it mostly will be the package who is using .la in weird way since zlib already ships a .pc file it should have used that one instead

Khem,

Can you verify if you have a .la file in you sysroot?

tmp/work/i586-poky-linux/zlib-1.2.5-r3/package/usr/lib:
libz.a libz.la libz.so libz.so.1 libz.so.1.2.5 pkgconfig

tmp/work/i586-poky-linux/zlib-1.2.6-r0/package/usr/lib:
libz.a libz.so libz.so.1 libz.so.1.2.6 pkgconfig

Very reproducible on my machine:

| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [trap-crasher] Error 1
| make[2]: *** Waiting for unfinished jobs....
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [fetch-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [region-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [pdf-op-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhERROR: Function failed: do_compile (see /intel/poky/builds/world/tmp/work/i586-poky-linux/pixman-1_0.24.2-r0/temp/log.do_compile.13548 for further information)
| andled argument `=/usr/lib/libz.la'
| make[2]: *** [oob-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [alpha-loop] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [a1-trap-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [region-translate-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [scaling-helpers-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [scaling-crash-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [gradient-crash-test] Error 1
| i586-poky-linux-libtool: link: cannot find the library `/intel/poky/builds/world/tmp/sysroots/qemux86/usr/lib/libz.la' or unhandled argument `=/usr/lib/libz.la'
| make[2]: *** [region-contains-test] Error 1
| make[2]: Leaving directory `/intel/poky/builds/world/tmp/work/i586-poky-linux/pixman-1_0.24.2-r0/pixman-0.24.2/test'
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory `/intel/poky/builds/world/tmp/work/i586-poky-linux/pixman-1_0.24.2-r0/pixman-0.24.2'
| make: *** [all] Error 2
| ERROR: oe_runmake failed

NOTE: package pixman-1_0.24.2-r0: task do_compile: Failed

Sau!

Quoted 3 lines
Quoted 2 lines

Sau!

author
#32 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 2 lines · Saul Wold

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g. have them and thats wrong since they never use it and there are other packages like that.

#33 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 11 lines · Khem Raj
Quoted 2 lines · Saul Wold

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g.  have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Steve

#34 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g. have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

author
#35 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 30 lines · Koen Kooi

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g.  have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

yeah libtool is very hard to get rid of see how many of files in your sysroot has zlib.la added to other .la files. You need to clean all those

I wrote a small script which grepped oe-core for occurrence of all zlib.la in *.la files in sysroot
and then dumps the ipks content to figure out which package provided that .la then bumped PRs of those recipes which were providing those ipks.
unfortunately this script was in tmdir and got deleted.

Quoted 4 lines

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

author
#36 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 37 lines · Khem Raj
Quoted 30 lines · Koen Kooi

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g.  have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

yeah libtool is very hard to get rid of see how many of files in your sysroot has zlib.la added to other .la files. You need to clean all those

Quoted 6 lines

I wrote a small script which grepped oe-core for occurrence of all zlib.la in *.la files in sysroot
and then dumps the ipks content to figure out which package provided that .la then bumped PRs of those recipes which were providing those ipks.
unfortunately this script was in tmdir and got deleted.

ah screen saved a snapshot here is the script

sysroot=/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-eglibc/sysroots/qemux86 deploy="/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-eglibc/deploy/ipk/i586 /home/kraj/work/angstrom/sources/ openembedded-core/build/tmp-eglibc/deploy/ipk/qemux86"

las=$(find $sysroot -name *.la|xargs grep -Hns libz.la | cut -d':' -f 1) for f in $las
do

    ff=`basename $f`
        for fff in $(find $deploy -name '*.ipk')
        do
            dpkg-deb -c $fff | grep $ff >& /dev/null
            if [ $? = 0 ]
            then
                ls $fff
                break
            fi
        done

done

#37 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Khem Raj

Op 11 feb. 2012 om 09:15 heeft Khem Raj <[email protected]> het volgende geschreven:

Quoted 37 lines · Koen Kooi
Quoted 30 lines

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g. have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

yeah libtool is very hard to get rid of see how many of files in your sysroot has zlib.la added to other .la files. You need to clean all those

Quoted 6 lines

I wrote a small script which grepped oe-core for occurrence of all zlib.la in *.la files in sysroot
and then dumps the ipks content to figure out which package provided that .la then bumped PRs of those recipes which were providing those ipks.
unfortunately this script was in tmdir and got deleted.

rpmdebs Will break during do_rootfs, no time to look into that, ipk works

Quoted 9 lines
Quoted 4 lines

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

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

#38 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Koen Kooi
Quoted 30 lines · Koen Kooi

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g. have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

list for me

evas ecore fsogsmd pidgin elementary fsodeviced fsoaudiod subversion python-evas libsoup-2.4 libeflvala efreet fsotdld poppler fsosystemd fsousaged fsonetworkd gtk+ python-gst emotion mysql5 libfsotransport libfsobasics gd libgsm0710mux gst-plugins-base iksemel fsodatad webkit-gtk fsodatad epdf librsvg curl libsexy libfsosystem orbit2 libfso-glib pango eeze libshr-glib farsight2 id3lib gst-plugins-good gst-plugins-ugly libnice libgpewidget matchbox-panel-2 edbus vte ethumb glib-networking libgisi libfsoresource edje libfsoframework gconf file libglade json-glib ethumb libcroco gnome-keyring libsdl-image neon qt4-x11-free python-pygobject msmcomm-specs gnome-keyring libphone-ui shr-wizard matchbox-keyboard matchbox-panel-2

And this isn't even on fully built feed :/.

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#39 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 47 lines · Martin Jansa
Quoted 30 lines · Koen Kooi

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g.  have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

list for me

evas ecore fsogsmd pidgin elementary fsodeviced fsoaudiod subversion python-evas libsoup-2.4 libeflvala efreet fsotdld poppler fsosystemd fsousaged fsonetworkd gtk+ python-gst emotion mysql5 libfsotransport libfsobasics gd libgsm0710mux gst-plugins-base iksemel fsodatad webkit-gtk fsodatad epdf librsvg curl libsexy libfsosystem orbit2 libfso-glib pango eeze libshr-glib farsight2 id3lib gst-plugins-good gst-plugins-ugly libnice libgpewidget matchbox-panel-2 edbus vte ethumb glib-networking libgisi libfsoresource edje libfsoframework gconf file libglade json-glib ethumb libcroco gnome-keyring libsdl-image neon qt4-x11-free python-pygobject msmcomm-specs gnome-keyring libphone-ui shr-wizard matchbox-keyboard matchbox-panel-2

Quoted 1 line

And this isn't even on fully built feed :/.

Indeed! I gave up on trying to determine an exhaustive list and just blew away tmp and sstate and rebuilt everything -- including package repositories :-(

We need to find a way to prevent or warn of disruptive changes like this zlib patch. For those of us trying to make a living using Yocto, losing a day of productivity to things like this really stings.

Steve

#40 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 50 lines · Steve Sakoman
Quoted 47 lines · Martin Jansa
Quoted 30 lines · Koen Kooi

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g.  have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

list for me

evas ecore fsogsmd pidgin elementary fsodeviced fsoaudiod subversion python-evas libsoup-2.4 libeflvala efreet fsotdld poppler fsosystemd fsousaged fsonetworkd gtk+ python-gst emotion mysql5 libfsotransport libfsobasics gd libgsm0710mux gst-plugins-base iksemel fsodatad webkit-gtk fsodatad epdf librsvg curl libsexy libfsosystem orbit2 libfso-glib pango eeze libshr-glib farsight2 id3lib gst-plugins-good gst-plugins-ugly libnice libgpewidget matchbox-panel-2 edbus vte ethumb glib-networking libgisi libfsoresource edje libfsoframework gconf file libglade json-glib ethumb libcroco gnome-keyring libsdl-image neon qt4-x11-free python-pygobject msmcomm-specs gnome-keyring libphone-ui shr-wizard matchbox-keyboard matchbox-panel-2

Quoted 1 line

And this isn't even on fully built feed :/.

Quoted 7 lines

Indeed! I gave up on trying to determine an exhaustive list and just blew away tmp and sstate and rebuilt everything -- including package repositories :-(

We need to find a way to prevent or warn of disruptive changes like this zlib patch. For those of us trying to make a living using Yocto, losing a day of productivity to things like this really stings.

I have 131 items in my list now, will send PR bumps today.

Quoted 6 lines

Steve

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

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#41 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Steve Sakoman

Op 13 feb. 2012, om 05:23 heeft Steve Sakoman het volgende geschreven:

Quoted 50 lines · Martin Jansa
Quoted 47 lines · Koen Kooi
Quoted 30 lines

Op 11 feb. 2012, om 06:05 heeft Steve Sakoman het volgende geschreven:

Quoted 16 lines · Khem Raj
Quoted 11 lines · Saul Wold
Quoted 2 lines

Can you verify if you have a .la file in you sysroot?

No its not there and thats the point we probably should learn to live with out it
actually one of radical ideas I have is to get rid of all .la files in OE completely
right now python modules e.g. have them and thats wrong since they never use it and there are other packages like that.

FWIW, after a pull of oe-core today that included the zlib update I am getting similar failures on meta/recipes-gnome/gtk+/gtk+_2.24.8.bb:

Quoted 9 lines

| /bin/grep: /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la:
No such file or directory
| /bin/sed: can't read /media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la: No such file or directory
| arm-poky-linux-gnueabi-libtool: link:
`/media/Work/yocto/tmp/sysroots/omap3-multi/usr/lib/libz.la' is not a valid libtool archive
| make[4]: *** [libgdk-x11-2.0.la] Error 1

Quoted 1 line

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

list for me

evas ecore fsogsmd pidgin elementary fsodeviced fsoaudiod subversion python-evas libsoup-2.4 libeflvala efreet fsotdld poppler fsosystemd fsousaged fsonetworkd gtk+ python-gst emotion mysql5 libfsotransport libfsobasics gd libgsm0710mux gst-plugins-base iksemel fsodatad webkit-gtk fsodatad epdf librsvg curl libsexy libfsosystem orbit2 libfso-glib pango eeze libshr-glib farsight2 id3lib gst-plugins-good gst-plugins-ugly libnice libgpewidget matchbox-panel-2 edbus vte ethumb glib-networking libgisi libfsoresource edje libfsoframework gconf file libglade json-glib ethumb libcroco gnome-keyring libsdl-image neon qt4-x11-free python-pygobject msmcomm-specs gnome-keyring libphone-ui shr-wizard matchbox-keyboard matchbox-panel-2

Quoted 1 line

And this isn't even on fully built feed :/.

Quoted 7 lines

Indeed! I gave up on trying to determine an exhaustive list and just blew away tmp and sstate and rebuilt everything -- including package repositories :-(

We need to find a way to prevent or warn of disruptive changes like this zlib patch. For those of us trying to make a living using Yocto, losing a day of productivity to things like this really stings.

A while ago there were 2 weeks with absolutely no breakage which I really liked. Then people can back from their xmas holidays....

#42 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 2 lines

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

I tried rpm-native after "-c cleansstate", but it still asks for libz.la? Anyone has the clue?

Best Regards,
Lianhao

author
#43 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 5 lines · Lianhao
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 2 lines

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

I tried rpm-native after "-c cleansstate", but it still asks for libz.la? Anyone has the clue?

try to find which native .la files have libz,la in deps and rebuild them too

Quoted 10 lines

Best Regards,
Lianhao

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

#44 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 9 lines · Khem Raj
Quoted 5 lines · Lianhao
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 2 lines

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

I tried rpm-native after "-c cleansstate", but it still asks for libz.la? Anyone has the clue?

try to find which native .la files have libz,la in deps and rebuild them too

Can we not just put libz.la back in zlib? Having to spend hours hunting out and rebuilding things, and/or bumping PR on half the .bb files in the repository, seems like an unsatisfactory state of affairs. As far as I know the presence of libz.la wasn't previously causing us any trouble so I'm not entirely clear why heroic measures are justified in trying to get rid of it.

p.

#45 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Lu, Lianhao
Quoted 5 lines · Lianhao
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 2 lines

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

I tried rpm-native after "-c cleansstate", but it still asks for libz.la? Anyone has the clue?

one .la still with libz.la in dependency tree is enough to pollute all .la files even when they get rebuild thanks to PR bump.

That's why I sent another wider round of PR bumps to oe-core and also to all layers (oe-core, meta-openembedded/*, meta-smartphone/*) I'm using at once, because ie libsoup-2.4 from meta-efl wasn't PR bumped and was still pulling libz.la to all .la files depending on libsoup :/.

And even my wider PR bump round isn't 100% complete for everybody, because it's based on sysroot popultated by my builds and you can have different .la files there (from different recipe versions or different layers).

Cheers,

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#46 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Op 13 feb. 2012, om 22:53 heeft Martin Jansa het volgende geschreven:

Quoted 15 lines · Lianhao
Quoted 5 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 2 lines

It works if you -c cleansstate on a bunch of recipes, pango, cairo, fontconfig, gtk+, etc

I tried rpm-native after "-c cleansstate", but it still asks for libz.la? Anyone has the clue?

one .la still with libz.la in dependency tree is enough to pollute all .la files even when they get rebuild thanks to PR bump.

That's why I sent another wider round of PR bumps to oe-core and also to all layers (oe-core, meta-openembedded/*, meta-smartphone/*) I'm using at once, because ie libsoup-2.4 from meta-efl wasn't PR bumped and was still pulling libz.la to all .la files depending on libsoup :/.

Quoted 4 lines

And even my wider PR bump round isn't 100% complete for everybody, because it's based on sysroot popultated by my builds and you can have different .la files there (from different recipe versions or different layers).

Saul and I discussed this yesterday and we also suspect using --as-needed in LDFLAGS limits the impact of this problem. But still, PR bumps are needed to keep the -dev packages in the feeds working.

regards,

Koen

#47 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Steve Sakoman
Quoted 2 lines · Steve Sakoman

We need to find a way to prevent or warn of disruptive changes like this zlib patch.

Aren't these sorts of things meant to get tested on the Yocto autobuilder before being merged? I thought that was how it was supposed to work.

p.

author
#48 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 8 lines · Phil Blundell
Quoted 2 lines · Steve Sakoman

We need to find a way to prevent or warn of disruptive changes like this zlib patch.

Aren't these sorts of things meant to get tested on the Yocto autobuilder before being merged?  I thought that was how it was supposed to work.

The patch takes care of packages in oe-core but essentially relied upon layers to consider the update and I also posted a script that would help in identifying
recipes which need updates.

#49 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Phil Blundell
Quoted 7 lines · Phil Blundell
Quoted 2 lines · Steve Sakoman

We need to find a way to prevent or warn of disruptive changes like this zlib patch.

Aren't these sorts of things meant to get tested on the Yocto autobuilder before being merged? I thought that was how it was supposed to work.

It was tested, there were some issues, it was thought they were relatively easily resolved, that turned out not to be the case.

I get put under immense pressure to merge patches 'yesterday'. Please keep this kind of issue in mind next time you ask me to hurry up and merge something ;-). We've been able to catch a lot of things but its the ones that slip through that people notice :/.

Cheers,

Richard

#50 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

In reply to Steve Sakoman
Quoted 7 lines · Steve Sakoman

Indeed! I gave up on trying to determine an exhaustive list and just blew away tmp and sstate and rebuilt everything -- including package repositories :-(

We need to find a way to prevent or warn of disruptive changes like this zlib patch. For those of us trying to make a living using Yocto, losing a day of productivity to things like this really stings.

I agree this change sucked and showed us we have some real issues. I will point out that if we had been using the basichash signature generator, it would likely have picked up this change and rebuild all the appropriate pieces.

This illustrates why we do really need to switch to the basichash dependency model even if some things are going to rebuild a bit more often as humans make bad judges of what needs rebuilding...

Cheers,

Richard

#51 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Op 22 feb. 2012, om 00:01 heeft Richard Purdie het volgende geschreven:

Quoted 5 lines · Steve Sakoman
Quoted 4 lines

Indeed! I gave up on trying to determine an exhaustive list and just blew away tmp and sstate and rebuilt everything -- including package repositories :-(

Quoted 8 lines
Quoted 3 lines

We need to find a way to prevent or warn of disruptive changes like this zlib patch. For those of us trying to make a living using Yocto, losing a day of productivity to things like this really stings.

I agree this change sucked and showed us we have some real issues. I will point out that if we had been using the basichash signature generator, it would likely have picked up this change and rebuild all the appropriate pieces.

Rebuild yes, but not fix all the -dev packages in the feeds.

regards,

Koen

#52 lore raw

Re: [PATCH 12/20] zlib: Upgrade 1.2.5 -> 1.2.6

Quoted 11 lines · Koen Kooi

Op 22 feb. 2012, om 00:01 heeft Richard Purdie het volgende geschreven:

Quoted 9 lines · Steve Sakoman
Quoted 7 lines

Indeed! I gave up on trying to determine an exhaustive list and just blew away tmp and sstate and rebuilt everything -- including package repositories :-(

We need to find a way to prevent or warn of disruptive changes like this zlib patch. For those of us trying to make a living using Yocto, losing a day of productivity to things like this really stings.

Quoted 6 lines
Quoted 4 lines

I agree this change sucked and showed us we have some real issues. I will point out that if we had been using the basichash signature generator, it would likely have picked up this change and rebuild all the appropriate pieces.

Rebuild yes, but not fix all the -dev packages in the feeds.

The PR service using the hash changes would have allowed that though...

Cheers,

Richard

author
#53 lore raw

PATCH v2 13/20 runqemu-internal: qemuarm can handle 256M

In reply to Khem Raj

Raise the check for max RAM supported for QEMU/arm its 256M since we patched it to be so in OE

---
 scripts/runqemu-internal |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)
scripts/runqemu-internal +7 -6
index 21fbce3..73b8b41 100755
@@ -67,13 +67,14 @@ fi
 # QEMU_MEMORY has 'M' appended to mem_size
 QEMU_MEMORY="$mem_size"M
 
-# Bug 433: qemuarm cannot use > 128 MB RAM
+# Bug 433: qemuarm cannot use > 256 MB RAM
 if [ "$MACHINE" = "qemuarm" ]; then
-    if [[ -z "$mem_size" || $mem_size -gt 128 ]]; then
-        echo "WARNING: qemuarm does not support > 128M of RAM."
-        echo "Changing QEMU_MEMORY to default of 128M."
-        QEMU_MEMORY="128M"
-        SCRIPT_QEMU_EXTRA_OPT=`echo $SCRIPT_QEMU_EXTRA_OPT | sed -e "s/$mem_set/-m 128/" `
+    if [[ -z "$mem_size" || $mem_size -gt 256 ]]; then
+        echo "WARNING: qemuarm does not support > 256M of RAM."
+        echo "Changing QEMU_MEMORY to default of 256M."
+        QEMU_MEMORY="256M"
+	mem_size="256"
+        SCRIPT_QEMU_EXTRA_OPT=`echo $SCRIPT_QEMU_EXTRA_OPT | sed -e "s/$mem_set/-m 256/" `
     fi
 fi
 
Signature · 1 line
1.7.5.4
author
#54 lore raw

PATCH v2 14/20 gconf, consolekit: Avoid polkit when compiling with uclibc

In reply to Khem Raj

polkit uses netdb functionality from glibc which is not available in uclibc therefore we avoid polkit when compiling for uclibc systems.

---
 meta/recipes-gnome/gnome/gconf_3.2.3.bb            |    9 +++++++--
 .../recipes-support/consolekit/consolekit_0.4.5.bb |   11 ++++++++---
 2 files changed, 15 insertions(+), 5 deletions(-)
meta/recipes-gnome/gnome/gconf_3.2.3.bb +7 -2
index 412f01c..a0b8d0c 100644
@@ -3,10 +3,13 @@ SECTION = "x11/gnome"
 LICENSE = "LGPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
 
-DEPENDS = "glib-2.0 gtk+ dbus dbus-glib libxml2 intltool-native polkit"
+POLKIT = "polkit"
+POLKIT_libc-uclibc = ""
+
+DEPENDS = "glib-2.0 gtk+ dbus dbus-glib libxml2 intltool-native ${POLKIT}"
 DEPENDS_virtclass-native = "glib-2.0-native dbus-native dbus-glib-native libxml2-native intltool-native gnome-common-native"
 
-PR = "r5"
+PR = "r6"
 
 inherit gnomebase
 
@@ -21,6 +24,8 @@ S = "${WORKDIR}/GConf-${PV}"
 
 POLKIT_OECONF = "--enable-defaults-service"
 POLKIT_OECONF_virtclass-native = "--disable-defaults-service"
+POLKIT_OECONF_libc-uclibc = "--disable-default-service"
+
 GTKOECONF = "--with-gtk=2.0 --enable-gtk"
 GTKOECONF_virtclass-native = "--disable-gtk"
 EXTRA_OECONF = "--disable-gtk-doc --enable-shared --disable-static --enable-debug=yes \
meta/recipes-support/consolekit/consolekit_0.4.5.bb +8 -3
index 45f6ad3..3ded6df 100644
@@ -2,13 +2,18 @@ DESCRIPTION = "ConsoleKit is a framework for defining and tracking users, login
 HOMEPAGE="http://www.freedesktop.org/wiki/Software/ConsoleKit"
 BUGTRACKER="https://bugs.freedesktop.org/buglist.cgi?query_format=specific&product=ConsoleKit"
 
-PR = "r7"
+PR = "r8"
 
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
                     file://src/main.c;endline=21;md5=0a994e09769780220163255d8f9071c3"
 
-DEPENDS = "glib-2.0 dbus polkit ${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
+POLKIT = "polkit"
+POLKIT_libc-uclibc = ""
+POLKITCONF = ""
+POLKITCONF_libc-uclibc = "--disable-policykit"
+
+DEPENDS = "glib-2.0 dbus ${POLKIT} ${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 RDEPENDS_${PN} += "base-files"
 
 inherit gnome
@@ -20,7 +25,7 @@ SRC_URI[sha256sum] = "43e0780c53078e125efcec3f847e484dc3533e49b408ce6a0ab1b22368
 
 S = "${WORKDIR}/ConsoleKit-${PV}"
 
-EXTRA_OECONF = "--with-systemdsystemunitdir=${base_libdir}/systemd/system/ \
+EXTRA_OECONF = "${POLKITCONF} --with-systemdsystemunitdir=${base_libdir}/systemd/system/ \
                 ${@base_contains('DISTRO_FEATURES', 'pam', '--enable-pam-module --with-pam-module-dir=${base_libdir}/security', '--disable-pam-module', d)} \
                "
 
Signature · 1 line
1.7.5.4
author
#55 lore raw

PATCH v2 15/20 python: Fix build failure of python-elementtree on x86_64

In reply to Khem Raj

The problem is due to mixing of headers from host system thusly corrected in setup.py by checkinng if we are cross compiling

---
 .../python/python/host_include_contamination.patch |   27 ++++++++++++++++++++
 meta/recipes-devtools/python/python_2.7.2.bb       |    3 +-
 2 files changed, 29 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python/host_include_contamination.patch
meta/recipes-devtools/python/python/host_include_contamination.patch new file +27 -0
new file mode 100644
index 0000000..62cb8b1
@@ -0,0 +1,27 @@
+when building python for qemux86-64 on ubuntu 11.10/64bit
+it gropes into host includes and then mixes them with cross
+includes and as a result some modules fail to compile and link
+one of the modules is python-elementtree which is then not
+found during image creation
+
+Proble is that setup.py tries to add native includes that newer
+ubuntu has introduced for multiarch support. But that should
+only happen for native builds and not cross building python
+so we add a check here.
+
+Signed-off-by: Khem Raj <[email protected]>
+Upstream-Status: Pending
+
+Index: Python-2.7.2/setup.py
+===================================================================
+--- Python-2.7.2.orig/setup.py	2012-02-03 12:10:42.307057756 -0800
++++ Python-2.7.2/setup.py	2012-02-03 12:11:12.363059210 -0800
+@@ -360,6 +360,8 @@
+         # https://wiki.ubuntu.com/MultiarchSpec
+         if not find_executable('dpkg-architecture'):
+             return
++	if os.environ.get('CROSS_COMPILE') is not None:
++	    return
+         tmpfile = os.path.join(self.build_temp, 'multiarch')
+         if not os.path.exists(self.build_temp):
+             os.makedirs(self.build_temp)
meta/recipes-devtools/python/python_2.7.2.bb +2 -1
index 654c850..fb5e860 100644
@@ -1,7 +1,7 @@
 require python.inc
 DEPENDS = "python-native db gdbm openssl readline sqlite3 zlib"
 DEPENDS_sharprom = "python-native db readline zlib gdbm openssl"
-PR = "${INC_PR}.5"
+PR = "${INC_PR}.6"
 
 DISTRO_SRC_URI ?= "file://sitecustomize.py"
 DISTRO_SRC_URI_linuxstdbase = ""
@@ -20,6 +20,7 @@ SRC_URI += "\
   file://remove_sqlite_rpath.patch \
   file://setup_py_skip_cross_import_check.patch \
   file://add-md5module-support.patch \
+  file://host_include_contamination.patch \
 "
 
 S = "${WORKDIR}/Python-${PV}"
Signature · 1 line
1.7.5.4
author
#56 lore raw

PATCH v2 16/20 libdrm: Fix build failure unearthed by uclibc

In reply to Khem Raj

uclibc wants to know value of __USE_GNU for certain header prototypes to be enabled. So we move the config.h header up in search list.

---
 .../drm/libdrm/GNU_SOURCE_definition.patch         |   30 ++++++++++++++++++++
 meta/recipes-graphics/drm/libdrm_2.4.30.bb         |    6 ++-
 2 files changed, 34 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/drm/libdrm/GNU_SOURCE_definition.patch
meta/recipes-graphics/drm/libdrm/GNU_SOURCE_definition.patch new file +30 -0
new file mode 100644
index 0000000..8eb1d5e
@@ -0,0 +1,30 @@
+uclibc headers need to know if _GNU_SOURCE is defined or not and its defined
+in config.h so include it first to get the definition if its there fixed build
+problems on uclibc
+
+test_decode.c:107:2: error: implicit declaration of function 'open_memstream' [-Werror=implicit-function-declaration]
+
+Signed-off-by: Khem Raj <[email protected]>
+Upstream-Status: Pending
+
+Index: libdrm-2.4.30/intel/test_decode.c
+===================================================================
+--- libdrm-2.4.30.orig/intel/test_decode.c	2012-02-03 14:28:46.409355918 -0800
++++ libdrm-2.4.30/intel/test_decode.c	2012-02-03 14:29:02.357356689 -0800
+@@ -21,6 +21,8 @@
+  * IN THE SOFTWARE.
+  */
+ 
++#include "config.h"
++
+ #include <string.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+@@ -31,7 +33,6 @@
+ #include <sys/mman.h>
+ #include <err.h>
+ 
+-#include "config.h"
+ #include "intel_bufmgr.h"
+ #include "intel_chipset.h"
+ 
meta/recipes-graphics/drm/libdrm_2.4.30.bb +4 -2
index 4a6052d..5d99916 100644
@@ -2,9 +2,11 @@ require libdrm.inc
 
 LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71"
 
-PR = "r0"
+PR = "r1"
 
-SRC_URI += "file://installtests.patch"
+SRC_URI += "file://installtests.patch \
+            file://GNU_SOURCE_definition.patch \
+           "
 
 SRC_URI[md5sum] = "9f57a68b2c0836b55ebcbc241f6ca175"
 SRC_URI[sha256sum] = "cacea9c157ec824ad278a06f4910659b2f3ae69686518ece8d6967843cddcd56"
Signature · 1 line
1.7.5.4
author
#57 lore raw

PATCH v2 17/20 classes, recipes: Replace POKY_* with CORE_IMAGE_*

In reply to Khem Raj
---
 meta/classes/core-image.bbclass                    |    8 ++++----
 meta/recipes-core/images/core-image-minimal.bb     |    2 +-
 meta/recipes-core/images/self-hosted-image.bb      |    2 +-
 meta/recipes-extended/images/core-image-basic.bb   |    2 +-
 meta/recipes-extended/images/core-image-lsb-dev.bb |    2 +-
 meta/recipes-extended/images/core-image-lsb-sdk.bb |    2 +-
 meta/recipes-extended/images/core-image-lsb.bb     |    2 +-
 meta/recipes-graphics/images/core-image-clutter.bb |    2 +-
 .../images/core-image-gtk-directfb.bb              |    2 +-
 meta/recipes-qt/images/qt4e-demo-image.bb          |    2 +-
 10 files changed, 13 insertions(+), 13 deletions(-)
meta/classes/core-image.bbclass +4 -4
index c08895f..668297b 100644
@@ -47,18 +47,18 @@ PACKAGE_GROUP_ssh-server-openssh = "task-core-ssh-openssh"
 PACKAGE_GROUP_package-management = "${ROOTFS_PKGMANAGE}"
 PACKAGE_GROUP_qt4-pkgs = "task-core-qt-demos"
 
-POKY_BASE_INSTALL = '\
+CORE_IMAGE_BASE_INSTALL = '\
     task-core-boot \
     task-base-extended \
     \
     ${@base_contains("IMAGE_FEATURES", "package-management", "", "${ROOTFS_PKGMANAGE_BOOTSTRAP}",d)} \
     \
-    ${POKY_EXTRA_INSTALL} \
+    ${CORE_IMAGE_EXTRA_INSTALL} \
     '
 
-POKY_EXTRA_INSTALL ?= ""
+CORE_IMAGE_EXTRA_INSTALL ?= ""
 
-IMAGE_INSTALL ?= "${POKY_BASE_INSTALL}"
+IMAGE_INSTALL ?= "${CORE_IMAGE_BASE_INSTALL}"
 
 X11_IMAGE_FEATURES  = "x11-base apps-x11-core package-management"
 ENHANCED_IMAGE_FEATURES = "${X11_IMAGE_FEATURES} apps-x11-games apps-x11-pimlico package-management"
meta/recipes-core/images/core-image-minimal.bb +1 -1
index 687f72a..7953b80 100644
@@ -3,7 +3,7 @@
 #
 DESCRIPTION = "A small image just capable of allowing a device to boot."
 
-IMAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${POKY_EXTRA_INSTALL}"
+IMAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${CORE_IMAGE_EXTRA_INSTALL}"
 
 IMAGE_LINGUAS = " "
 
meta/recipes-core/images/self-hosted-image.bb +1 -1
index 5029ac2..a0a7592 100644
@@ -1,6 +1,6 @@
 IMAGE_INSTALL = "task-core-boot task-core-apps-console task-core-ssh-openssh task-self-hosted"
 
-POKY_EXTRA_INSTALL = "\
+CORE_IMAGE_EXTRA_INSTALL = "\
     task-self-hosted \
     "
 
meta/recipes-extended/images/core-image-basic.bb +1 -1
index 5e58e60..f801346 100644
@@ -8,6 +8,6 @@ IMAGE_INSTALL = "\
     task-core-basic \
     "
 
-#    ${POKY_BASE_INSTALL} 
+#    ${CORE_IMAGE_BASE_INSTALL} 
 
 inherit core-image
meta/recipes-extended/images/core-image-lsb-dev.bb +1 -1
index 2d6f674..e6d7bc9 100644
@@ -5,7 +5,7 @@ standalone SDK."
 IMAGE_FEATURES += "apps-console-core dev-pkgs ssh-server-openssh"
 
 IMAGE_INSTALL = "\
-    ${POKY_BASE_INSTALL} \
+    ${CORE_IMAGE_BASE_INSTALL} \
     task-core-basic \
     task-core-lsb \
     "
meta/recipes-extended/images/core-image-lsb-sdk.bb +1 -1
index 105c8db..0892891 100644
@@ -7,7 +7,7 @@ EXTRA_IMAGE_FEATURES = "tools-debug tools-profile tools-testapps debug-tweaks"
 
 
 IMAGE_INSTALL = "\
-    ${POKY_BASE_INSTALL} \
+    ${CORE_IMAGE_BASE_INSTALL} \
     task-core-basic \
     task-core-lsb \
     "
meta/recipes-extended/images/core-image-lsb.bb +1 -1
index f669618..b0a3a4d 100644
@@ -4,7 +4,7 @@ conform to Linux Standard Base (LSB)."
 IMAGE_FEATURES += "apps-console-core ssh-server-openssh"
 
 IMAGE_INSTALL = "\
-    ${POKY_BASE_INSTALL} \
+    ${CORE_IMAGE_BASE_INSTALL} \
     task-core-basic \
     task-core-lsb \
     "
meta/recipes-graphics/images/core-image-clutter.bb +1 -1
index 636238a..6c49a02 100644
@@ -6,7 +6,7 @@ IMAGE_FEATURES += "apps-console-core ${SATO_IMAGE_FEATURES}"
 LICENSE = "MIT"
 
 IMAGE_INSTALL = "\
-    ${POKY_BASE_INSTALL} \
+    ${CORE_IMAGE_BASE_INSTALL} \
     task-core-clutter-core \
     task-core-clutter-tests \
     task-core-clutter-apps"
meta/recipes-graphics/images/core-image-gtk-directfb.bb +1 -1
index 87b3a86..a5fba17 100644
@@ -15,7 +15,7 @@ RDEPENDS_${PN} += " \
 inherit core-image
 
 IMAGE_INSTALL += "\
-	${POKY_BASE_INSTALL} \
+	${CORE_IMAGE_BASE_INSTALL} \
 	task-core-basic \
 	module-init-tools \
 	task-core-gtk-directfb-base \
meta/recipes-qt/images/qt4e-demo-image.bb +1 -1
index 6523379..2e50bf6 100644
@@ -11,7 +11,7 @@ RDEPENDS_${PN} += " \
 	"
 
 IMAGE_INSTALL += "\
-	${POKY_BASE_INSTALL} \
+	${CORE_IMAGE_BASE_INSTALL} \
 	module-init-tools \
 	task-qt4e-base \
 "
Signature · 1 line
1.7.5.4
author
#58 lore raw

PATCH v2 18/20 libx11: Backport _XGetRequest API

In reply to Khem Raj

This API is relatively new and will be in next release of libX11 this is needed for OE qemu-native which links to libx11-native but uses libGL from build system and herein lies the problem if you have bleeding edge distro e.g. ubuntu 12.04(development) libGL.so expects this API to be present. Backported to 1.4.4 thusly

---
 ...quest-as-substitute-for-GetReq-GetReqExtr.patch |  137 ++++++++++++++++++++
 meta/recipes-graphics/xorg-lib/libx11_1.4.4.bb     |    3 +
 2 files changed, 140 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-graphics/xorg-lib/libx11-1.4.4/0001-Add-_XGetRequest-as-substitute-for-GetReq-GetReqExtr.patch
meta/recipes-graphics/xorg-lib/libx11-1.4.4/0001-Add-_XGetRequest-as-substitute-for-GetReq-GetReqExtr.patch new file +137 -0
new file mode 100644
index 0000000..aedb5c4
@@ -0,0 +1,137 @@
+From 4a060f993bf676cf21ad9784e010f54134da7b40 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <[email protected]>
+Date: Mon, 17 Oct 2011 09:45:15 +1000
+Subject: [PATCH] Add _XGetRequest as substitute for GetReq/GetReqExtra
+
+Signed-off-by: Peter Hutterer <[email protected]>
+Reviewed-by: Jamey Sharp <[email protected]>
+---
+ include/X11/Xlibint.h |   49 ++++++++++++++++---------------------------------
+ src/XlibInt.c         |   31 +++++++++++++++++++++++++++++++
+ 2 files changed, 47 insertions(+), 33 deletions(-)
+
+Upstream-Status: Backport
+
+diff --git a/include/X11/Xlibint.h b/include/X11/Xlibint.h
+index 2ce356d..43d1f2a 100644
+--- a/include/X11/Xlibint.h
++++ b/include/X11/Xlibint.h
+@@ -420,6 +420,18 @@ extern LockInfoPtr _Xglobal_lock;
+ #define WORD64ALIGN
+ #endif /* WORD64 */
+ 
++/**
++ * Return a len-sized request buffer for the request type. This function may
++ * flush the output queue.
++ *
++ * @param dpy The display connection
++ * @param type The request type
++ * @param len Length of the request in bytes
++ *
++ * @returns A pointer to the request buffer with a few default values
++ * initialized.
++ */
++extern void *_XGetRequest(Display *dpy, CARD8 type, size_t len);
+ 
+ /*
+  * GetReq - Get the next available X request packet in the buffer and
+@@ -432,25 +444,10 @@ extern LockInfoPtr _Xglobal_lock;
+ 
+ #if !defined(UNIXCPP) || defined(ANSICPP)
+ #define GetReq(name, req) \
+-        WORD64ALIGN\
+-	if ((dpy->bufptr + SIZEOF(x##name##Req)) > dpy->bufmax)\
+-		_XFlush(dpy);\
+-	req = (x##name##Req *)(dpy->last_req = dpy->bufptr);\
+-	req->reqType = X_##name;\
+-	req->length = (SIZEOF(x##name##Req))>>2;\
+-	dpy->bufptr += SIZEOF(x##name##Req);\
+-	dpy->request++
+-
++	req = (x##name##Req *) _XGetRequest(dpy, X_##name, SIZEOF(x##name##Req))
+ #else  /* non-ANSI C uses empty comment instead of "##" for token concatenation */
+ #define GetReq(name, req) \
+-        WORD64ALIGN\
+-	if ((dpy->bufptr + SIZEOF(x/**/name/**/Req)) > dpy->bufmax)\
+-		_XFlush(dpy);\
+-	req = (x/**/name/**/Req *)(dpy->last_req = dpy->bufptr);\
+-	req->reqType = X_/**/name;\
+-	req->length = (SIZEOF(x/**/name/**/Req))>>2;\
+-	dpy->bufptr += SIZEOF(x/**/name/**/Req);\
+-	dpy->request++
++	req = (x/**/name/**/Req *) _XGetRequest(dpy, X_/**/name, SIZEOF(x/**/name/**/Req))
+ #endif
+ 
+ /* GetReqExtra is the same as GetReq, but allocates "n" additional
+@@ -458,24 +455,10 @@ extern LockInfoPtr _Xglobal_lock;
+ 
+ #if !defined(UNIXCPP) || defined(ANSICPP)
+ #define GetReqExtra(name, n, req) \
+-        WORD64ALIGN\
+-	if ((dpy->bufptr + SIZEOF(x##name##Req) + n) > dpy->bufmax)\
+-		_XFlush(dpy);\
+-	req = (x##name##Req *)(dpy->last_req = dpy->bufptr);\
+-	req->reqType = X_##name;\
+-	req->length = (SIZEOF(x##name##Req) + n)>>2;\
+-	dpy->bufptr += SIZEOF(x##name##Req) + n;\
+-	dpy->request++
++	req = (x##name##Req *) _XGetRequest(dpy, X_##name, SIZEOF(x##name##Req) + n)
+ #else
+ #define GetReqExtra(name, n, req) \
+-        WORD64ALIGN\
+-	if ((dpy->bufptr + SIZEOF(x/**/name/**/Req) + n) > dpy->bufmax)\
+-		_XFlush(dpy);\
+-	req = (x/**/name/**/Req *)(dpy->last_req = dpy->bufptr);\
+-	req->reqType = X_/**/name;\
+-	req->length = (SIZEOF(x/**/name/**/Req) + n)>>2;\
+-	dpy->bufptr += SIZEOF(x/**/name/**/Req) + n;\
+-	dpy->request++
++	req = (x/**/name/**/Req *) _XGetRequest(dpy, X_/**/name, SIZEOF(x/**/name/**/Req) + n)
+ #endif
+ 
+ 
+diff --git a/src/XlibInt.c b/src/XlibInt.c
+index 3db151e..a8f5d08 100644
+--- a/src/XlibInt.c
++++ b/src/XlibInt.c
+@@ -1956,6 +1956,37 @@ Screen *_XScreenOfWindow(Display *dpy, Window w)
+ }
+ 
+ 
++/*
++ * WARNING: This implementation's pre-conditions and post-conditions
++ * must remain compatible with the old macro-based implementations of
++ * GetReq, GetReqExtra, GetResReq, and GetEmptyReq. The portions of the
++ * Display structure affected by those macros are part of libX11's
++ * ABI.
++ */
++void *_XGetRequest(Display *dpy, CARD8 type, size_t len)
++{
++    xReq *req;
++
++    WORD64ALIGN
++
++    if (dpy->bufptr + len > dpy->bufmax)
++	_XFlush(dpy);
++
++    if (len % 4)
++	fprintf(stderr,
++		"Xlib: request %d length %zd not a multiple of 4.\n",
++		type, len);
++
++    dpy->last_req = dpy->bufptr;
++
++    req = (xReq*)dpy->bufptr;
++    req->reqType = type;
++    req->length = len / 4;
++    dpy->bufptr += len;
++    dpy->request++;
++    return req;
++}
++
+ #if defined(WIN32)
+ 
+ /*
+-- 
+1.7.8.3
+
meta/recipes-graphics/xorg-lib/libx11_1.4.4.bb +3 -0
index 823b3dc..ee1d919 100644
@@ -1,6 +1,8 @@
 require libx11.inc
 inherit gettext
 
+PR = "r1"
+
 BBCLASSEXTEND = "native nativesdk"
 
 EXTRA_OECONF += "--with-keysymdefdir=${STAGING_INCDIR}/X11"
@@ -12,6 +14,7 @@ DEPENDS += "util-macros xtrans libxdmcp libxau \
 
 SRC_URI += " file://keysymdef_include.patch \
              file://x11_disable_makekeys.patch \
+             file://0001-Add-_XGetRequest-as-substitute-for-GetReq-GetReqExtr.patch \
              "
 
 SRC_URI[md5sum] = "ed7c382cbf8c13425b6a66bcac0ca5d9"
Signature · 1 line
1.7.5.4
author
#59 lore raw

PATCH v2 19/20 gcc-cross-testing: Fix evaluation of user and target name

In reply to Khem Raj

Dont use -q to grep we pipe to /dev/null anyway all we care is the return status of grep

xxx

---
 meta/recipes-devtools/gcc/gcc-cross.inc |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-devtools/gcc/gcc-cross.inc +3 -3
index 6acf8c5..b16c57d 100644
@@ -65,11 +65,11 @@ then
 	exit 1;
 fi
 
-echo "\$target" | grep −q "@" >& /dev/null
+echo "\$target" | grep "@" >& /dev/null
 if [ "x\$?" = "x0" ]
 then
-   user=echo \$target | cut -d '@' -f 1
-   target=echo \$target | cut -d '@' -f 2
+   user=\$(echo \$target | cut -d '@' -f 1)
+   target=\$(echo \$target | cut -d '@' -f 2)
 else
    user=\$USER
 fi
Signature · 1 line
1.7.5.4
#60 lore raw

Re: [PATCH 19/20] gcc-cross-testing: Fix evaluation of user and target name

Quoted 8 lines · Khem Raj

Dont use -q to grep we pipe to /dev/null anyway all we care is the return status of grep

xxx

The patch seem valid, but the commit message needs to be cleaned up.

Sau!

Quoted 23 lines
---
  meta/recipes-devtools/gcc/gcc-cross.inc |    6 +++---
  1 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-devtools/gcc/gcc-cross.inc +3 -3
index 6acf8c5..b16c57d 100644
@@ -65,11 +65,11 @@ then
  	exit 1;
  fi
 
-echo "\$target" | grep −q "@">&  /dev/null
+echo "\$target" | grep "@">&  /dev/null
  if [ "x\$?" = "x0" ]
  then
-   user=echo \$target | cut -d '@' -f 1
-   target=echo \$target | cut -d '@' -f 2
+   user=\$(echo \$target | cut -d '@' -f 1)
+   target=\$(echo \$target | cut -d '@' -f 2)
  else
     user=\$USER
  fi
author
#61 lore raw

Re: [PATCH 19/20] gcc-cross-testing: Fix evaluation of user and target name

Quoted 5 lines · Saul Wold
Quoted 4 lines · Khem Raj

Dont use -q to grep we pipe to /dev/null anyway all we care is the return status of grep

Quoted 8 lines
Quoted 5 lines

xxx

The patch seem valid, but the commit message needs to be cleaned up.

also updated

Quoted 29 lines

Sau!

Quoted 24 lines

---
 meta/recipes-devtools/gcc/gcc-cross.inc |    6 +++---

 1 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-devtools/gcc/gcc-cross.inc +0 -0
index 6acf8c5..b16c57d 100644
@@ -65,11 +65,11 @@ then
        exit 1;

 fi

meta/recipes-devtools/gcc/gcc-cross.inc +1 -1
-echo "\$target" | grep −q "@">&  /dev/null
+echo "\$target" | grep "@">&  /dev/null

 if [ "x\$?" = "x0" ]
 then
-   user=echo \$target | cut -d '@' -f 1
-   target=echo \$target | cut -d '@' -f 2
+   user=\$(echo \$target | cut -d '@' -f 1)
+   target=\$(echo \$target | cut -d '@' -f 2)
 else
    user=\$USER
 fi

#62 lore raw

Re: [PATCH 19/20] gcc-cross-testing: Fix evaluation of user and target name

In reply to Khem Raj
Quoted 3 lines · Khem Raj

Dont use -q to grep we pipe to /dev/null anyway all we care is the return status of grep

There're any reason to not use grep -q and drop the pipe?

Signature · 3 lines
Otavio Salvador                             O.S. Systems
E-mail: [email protected]  http://www.ossystems.com.br
Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br
author
#63 lore raw

Re: [PATCH 19/20] gcc-cross-testing: Fix evaluation of user and target name

Quoted 2 lines · Otavio Salvador

There're any reason to not use grep -q and drop the pipe?

yes. I dont need to know stderr along with stdio just return value is enough

author
#64 lore raw

PATCH v2 20/20 mirrors.bbclass: Add yp.org and oe.org to fallback mirrors

In reply to Khem Raj

This should improve the fetching errors users see
when upstream src_uri is unavailable

---
 meta/classes/mirrors.bbclass |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 deletions(-)
meta/classes/mirrors.bbclass +20 -1
index 2146087..69f44cd 100644
@@ -52,5 +52,24 @@ ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/  ftp://gd.tuwien.ac.at/utils/adm
 ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/  ftp://sunsite.ualberta.ca/pub/Mirror/lsof/ \n \
 ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/  ftp://the.wiretapped.net/pub/security/host-security/lsof/ \n \
 http://www.apache.org/dist  http://archive.apache.org/dist \n \
+cvs://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+svn://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+git://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+hg://.*/.*      http://autobuilder.yoctoproject.org/pub/sources/ \n \
+bzr://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+svk://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+p4://.*/.*      http://autobuilder.yoctoproject.org/pub/sources/ \n \
+osc://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+https?$://.*/.* http://autobuilder.yoctoproject.org/pub/sources/ \n \
+ftp://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+cvs://.*/.*     http://sources.openembedded.org/ \n \
+svn://.*/.*     http://sources.openembedded.org/ \n \
+git://.*/.*     http://sources.openembedded.org/ \n \
+hg://.*/.*      http://sources.openembedded.org/ \n \
+bzr://.*/.*     http://sources.openembedded.org/ \n \
+svk://.*/.*     http://sources.openembedded.org/ \n \
+p4://.*/.*      http://sources.openembedded.org/ \n \
+osc://.*/.*     http://sources.openembedded.org/ \n \
+https?$://.*/.* http://sources.openembedded.org/ \n \
+ftp://.*/.*     http://sources.openembedded.org/ \n \
 "
-
Signature · 1 line
1.7.5.4
#65 lore raw

Re: [PATCH 20/20] mirrors.bbclass: Add yp.org and oe.org to fallback mirrors

Quoted 16 lines · Khem Raj

This should improve the fetching errors users see
when upstream src_uri is unavailable

---
  meta/classes/mirrors.bbclass |   21 ++++++++++++++++++++-
  1 files changed, 20 insertions(+), 1 deletions(-)
meta/classes/mirrors.bbclass +0 -0
index 2146087..69f44cd 100644
@@ -52,5 +52,24 @@ ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/  ftp://gd.tuwien.ac.at/utils/adm
  ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/  ftp://sunsite.ualberta.ca/pub/Mirror/lsof/ \n \
  ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/  ftp://the.wiretapped.net/pub/security/host-security/lsof/ \n \
  http://www.apache.org/dist  http://archive.apache.org/dist \n \

meta/classes/mirrors.bbclass ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/ ftp://gd.tuwien.ac.at/utils/adm · line 64

Quoted 10 lines
meta/classes/mirrors.bbclass +10 -0
+cvs://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+svn://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+git://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+hg://.*/.*      http://autobuilder.yoctoproject.org/pub/sources/ \n \
+bzr://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+svk://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+p4://.*/.*      http://autobuilder.yoctoproject.org/pub/sources/ \n \
+osc://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+https?$://.*/.* http://autobuilder.yoctoproject.org/pub/sources/ \n \
+ftp://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \

Please use: http://downloads.yoctoproject.org/mirror/sources

That makes it clearer.

Thanks
Sau!

Quoted 12 lines
meta/classes/mirrors.bbclass +10 -1
+cvs://.*/.*     http://sources.openembedded.org/ \n \
+svn://.*/.*     http://sources.openembedded.org/ \n \
+git://.*/.*     http://sources.openembedded.org/ \n \
+hg://.*/.*      http://sources.openembedded.org/ \n \
+bzr://.*/.*     http://sources.openembedded.org/ \n \
+svk://.*/.*     http://sources.openembedded.org/ \n \
+p4://.*/.*      http://sources.openembedded.org/ \n \
+osc://.*/.*     http://sources.openembedded.org/ \n \
+https?$://.*/.* http://sources.openembedded.org/ \n \
+ftp://.*/.*     http://sources.openembedded.org/ \n \
  "
-
author
#66 lore raw

Re: [PATCH 20/20] mirrors.bbclass: Add yp.org and oe.org to fallback mirrors

Quoted 26 lines · Saul Wold
Quoted 25 lines · Khem Raj

This should improve the fetching errors users see
when upstream src_uri is unavailable

---
 meta/classes/mirrors.bbclass |   21 ++++++++++++++++++++-

 1 files changed, 20 insertions(+), 1 deletions(-)
meta/classes/mirrors.bbclass +0 -0
index 2146087..69f44cd 100644
@@ -52,5 +52,24 @@ ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/

 ftp://gd.tuwien.ac.at/utils/adm ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/ ftp://sunsite.ualberta.ca/pub/Mirror/lsof/ \n \
 ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/ ftp://the.wiretapped.net/pub/security/host-security/lsof/ \n \
 http://www.apache.org/dist  http://archive.apache.org/dist \n \

meta/classes/mirrors.bbclass +5 -0
+cvs://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+svn://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+git://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+hg://.*/.*      http://autobuilder.yoctoproject.org/pub/sources/ \n \
+bzr://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
Quoted 8 lines

meta/classes/mirrors.bbclass ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/ ftp://gd.tuwien.ac.at/utils/adm · line 64

Quoted 5 lines
meta/classes/mirrors.bbclass +5 -0
+svk://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+p4://.*/.*      http://autobuilder.yoctoproject.org/pub/sources/ \n \
+osc://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \
+https?$://.*/.* http://autobuilder.yoctoproject.org/pub/sources/ \n \
+ftp://.*/.*     http://autobuilder.yoctoproject.org/pub/sources/ \n \

Please use: http://downloads.yoctoproject.org/mirror/sources

updated

Quoted 19 lines

That makes it clearer.

Thanks
       Sau!

Quoted 12 lines
meta/classes/mirrors.bbclass +10 -0
+cvs://.*/.*     http://sources.openembedded.org/ \n \
+svn://.*/.*     http://sources.openembedded.org/ \n \
+git://.*/.*     http://sources.openembedded.org/ \n \
+hg://.*/.*      http://sources.openembedded.org/ \n \
+bzr://.*/.*     http://sources.openembedded.org/ \n \
+svk://.*/.*     http://sources.openembedded.org/ \n \
+p4://.*/.*      http://sources.openembedded.org/ \n \
+osc://.*/.*     http://sources.openembedded.org/ \n \
+https?$://.*/.* http://sources.openembedded.org/ \n \
+ftp://.*/.*     http://sources.openembedded.org/ \n \

 "
-

Applied
#67 lore raw
In reply to Khem Raj
Quoted 13 lines · Khem Raj

I have added few more patches on top

Renaming POKY to CORE-IMAGE
Adding yp.org as fallback mirror for oe-core
build fixes needed to get going on ubuntu 12.04

All qemu core-image-sato builds (from scratch) and boots on both eglibc/uclibc with this set

The following changes since commit 18d9fcfc4bc4b01f73e89f3b988c9d3d543c7705:

libzypp: add missing runtime dependences on gzip and gnupg (2012-02-03 17:23:28 +0000)

Quoted 7 lines

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/misc
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc

Khem Raj (20):
task-core-tools: Divide it into 3 recipes
Enable options needed for ltp to compile

Merged into OE-core

Quoted 5 lines

arm/tune: Correct the logic which added thumb-interwork to OVERRIDES tunearch/arm: Differentiate between thumb code generation and thumb
capability
tune-thumb.inc: Delete
uclibc: Get the thumb features from tune flags

Further review is needed on these

Quoted 4 lines

kmod: Add recipes
module-init-tools: Delete image.bbclass,kernel.bbclass: Use kmod-native instead of
module-init-tools-cross

Withdrawn for now

Quoted 1 line

pseudo: Wrap renameat and opendir

Merged

Quoted 1 line
   uclibc: Upgrade recipes from 0.9.32 ->  0.9.33

Pending (has patch updates now, in my next pull set)

Quoted 1 line
   zlib: Upgrade 1.2.5 ->  1.2.6

Pending build issue with zlib.la

Quoted 9 lines

runqemu-internal: qemuarm can handle 256M gconf,consolekit: Avoid polkit when compiling with uclibc
python: Fix build failure of python-elementtree on x86_64
libdrm: Fix build failure unearthed by uclibc classes,recipes: Replace POKY_* with CORE_IMAGE_*
libx11: Backport _XGetRequest API
gcc-cross-testing: Fix evaluation of user and target name mirrors.bbclass: Add yp.org and oe.org to fallback mirrors

Mergeed the last set

Thanks
Sau!

Quoted 151 lines
  meta/classes/core-image.bbclass                    |    8 +-
  meta/classes/image.bbclass                         |    2 +-
  meta/classes/kernel.bbclass                        |    9 +-
  meta/classes/mirrors.bbclass                       |   21 +-
  .../conf/distro/include/distro_tracking_fields.inc |   26 +-
  meta/conf/distro/include/tcmode-default.inc        |    2 +-
  .../conf/machine/include/arm/feature-arm-thumb.inc |   20 +-
  meta/conf/machine/include/tune-strongarm1100.inc   |    4 +-
  meta/conf/machine/include/tune-thumb.inc           |   32 --
  meta/conf/multilib.conf                            |    4 +-
  meta/recipes-core/images/core-image-minimal.bb     |    2 +-
  meta/recipes-core/images/self-hosted-image.bb      |    2 +-
  meta/recipes-core/tasks/task-core-tools-debug.bb   |   26 ++
  ...sk-core-tools.bb =>  task-core-tools-profile.bb} |   81 +---
  .../recipes-core/tasks/task-core-tools-testapps.bb |   46 ++
  ...rch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch |   29 --
  ...fd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch |   33 --
  .../uclibc-0.9.32/detect-bx-availibility.patch     |   75 ----
  .../uclibc/uclibc-0.9.32/epoll-asm-fix.patch       |   25 --
  .../uclibc/uclibc-0.9.32/include-arm-asm.h.patch   |   65 ---
  .../uclibc/uclibc-0.9.32/mount.h-update.patch      |   85 ----
  .../uclibc-0.9.32/remove-eabi-oabi-selection.patch |   91 ----
  .../uclibc-0.9.32/remove-sub-arch-variants.patch   |  215 ---------
  .../uclibc/uclibc-0.9.32/rtld_no.patch             |  215 ---------
  .../uclibc/uclibc-0.9.32/select-force-thumb.patch  |  172 --------
  .../uclibc/uclibc-0.9.32/sync_file_range2.patch    |   47 --
  .../uclibc-0.9.32/transform-eabi-oabi-choice.patch |   71 ---
  .../uclibc-0.9.32/uclibc-arm-ftruncate64.patch     |   13 -
  .../uclibc-0.9.32/uclibc_scheduler_update.patch    |  455 --------------------
  ...rr-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch |   32 ++
  ...fstat-Use-64bit-version-of-syscall-if-ava.patch |  177 ++++++++
  .../argp-headers.patch                             |    2 +
  .../argp-support.patch                             |    3 +
  .../compile-arm-fork-with-O2.patch                 |    2 +-
  .../uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch    |   25 ++
  meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch  |   37 ++
  ...so_use_arm_dl_linux_resolve_in_thumb_mode.patch |    6 +
  .../libc_symbols_include_bits_uclibc_config.patch  |   19 +
  .../mips/uClibc.machine                            |    0
  .../orign_path.patch                               |   94 ++--
  .../powerpc_copysignl.patch                        |    6 +
  .../remove_attribute_optimize_Os.patch             |   17 +-
  .../{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.distro |    8 +-
  .../uClibc.machine                                 |    0
  .../uclibc-execvpe.patch                           |    3 +
  .../uclibc_enable_log2_test.patch                  |    5 +
  meta/recipes-core/uclibc/uclibc-config.inc         |    4 +-
  meta/recipes-core/uclibc/uclibc-git/uClibc.distro  |    5 +
  ...-initial_0.9.32.bb =>  uclibc-initial_0.9.33.bb} |    0
  meta/recipes-core/uclibc/uclibc.inc                |    1 -
  .../uclibc/{uclibc_0.9.32.bb =>  uclibc_0.9.33.bb}  |   26 +-
  meta/recipes-core/zlib/files/Makefile.am           |    9 -
  meta/recipes-core/zlib/files/configure.ac          |   48 --
  .../zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch   |   20 -
  meta/recipes-core/zlib/zlib_1.2.5.bb               |   41 --
  meta/recipes-core/zlib/zlib_1.2.6.bb               |   26 ++
  meta/recipes-devtools/gcc/gcc-cross.inc            |    6 +-
  meta/recipes-devtools/pseudo/pseudo/opendir.patch  |   92 ++++
  meta/recipes-devtools/pseudo/pseudo/renameat.patch |  227 ++++++++++
  meta/recipes-devtools/pseudo/pseudo_1.2.bb         |    6 +-
  .../python/python/host_include_contamination.patch |   27 ++
  meta/recipes-devtools/python/python_2.7.2.bb       |    3 +-
  meta/recipes-extended/images/core-image-basic.bb   |    2 +-
  meta/recipes-extended/images/core-image-lsb-dev.bb |    2 +-
  meta/recipes-extended/images/core-image-lsb-sdk.bb |    2 +-
  meta/recipes-extended/images/core-image-lsb.bb     |    2 +-
  meta/recipes-gnome/gnome/gconf_3.2.3.bb            |    9 +-
  .../drm/libdrm/GNU_SOURCE_definition.patch         |   30 ++
  meta/recipes-graphics/drm/libdrm_2.4.30.bb         |    6 +-
  meta/recipes-graphics/images/core-image-clutter.bb |    2 +-
  .../images/core-image-gtk-directfb.bb              |    2 +-
  ...quest-as-substitute-for-GetReq-GetReqExtr.patch |  137 ++++++
  meta/recipes-graphics/xorg-lib/libx11_1.4.4.bb     |    3 +
  meta/recipes-kernel/kmod/kmod-native_git.bb        |   14 +
  meta/recipes-kernel/kmod/kmod.inc                  |   31 ++
  meta/recipes-kernel/kmod/kmod/depmod-search.conf   |    6 +
  meta/recipes-kernel/kmod/kmod_git.bb               |   62 +++
  .../module-init-tools/files/disable_man.patch      |   25 --
  .../files/grab_module_memset.patch                 |   21 -
  .../files/modutils_extension.patch                 |   25 --
  .../module-init-tools-cross_3.16.bb                |   10 -
  .../module-init-tools/module-init-tools.inc        |   24 -
  .../module-init-tools/module-init-tools_3.16.bb    |   42 --
  .../files/PD.patch                                 |    0
  .../files/modutils.sh                              |    0
  .../modutils-initscripts.bb                        |    0
  meta/recipes-qt/images/qt4e-demo-image.bb          |    2 +-
  .../recipes-support/consolekit/consolekit_0.4.5.bb |   11 +-
  scripts/runqemu-internal                           |   13 +-
  89 files changed, 1257 insertions(+), 2079 deletions(-)
  delete mode 100644 meta/conf/machine/include/tune-thumb.inc
  create mode 100644 meta/recipes-core/tasks/task-core-tools-debug.bb
  rename meta/recipes-core/tasks/{task-core-tools.bb =>  task-core-tools-profile.bb} (48%)
  create mode 100644 meta/recipes-core/tasks/task-core-tools-testapps.bb
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/detect-bx-availibility.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/epoll-asm-fix.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/include-arm-asm.h.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/mount.h-update.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-eabi-oabi-selection.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/remove-sub-arch-variants.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/rtld_no.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/select-force-thumb.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/sync_file_range2.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/transform-eabi-oabi-choice.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc-arm-ftruncate64.patch
  delete mode 100644 meta/recipes-core/uclibc/uclibc-0.9.32/uclibc_scheduler_update.patch
  create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-Declare-__err-and-pass-it-to-INTERNAL_SYSCALL_NCS-so.patch
  create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/0001-lstat-stat-fstat-Use-64bit-version-of-syscall-if-ava.patch
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/argp-headers.patch (99%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/argp-support.patch (99%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/compile-arm-fork-with-O2.patch (97%)
  create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/define-MSG_CMSG_CLOEXEC.patch
  create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/dup3.patch
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch (86%)
  create mode 100644 meta/recipes-core/uclibc/uclibc-0.9.33/libc_symbols_include_bits_uclibc_config.patch
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/mips/uClibc.machine (100%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/orign_path.patch (64%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/powerpc_copysignl.patch (96%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/remove_attribute_optimize_Os.patch (93%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.distro (96%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uClibc.machine (100%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uclibc-execvpe.patch (99%)
  rename meta/recipes-core/uclibc/{uclibc-0.9.32 =>  uclibc-0.9.33}/uclibc_enable_log2_test.patch (81%)
  rename meta/recipes-core/uclibc/{uclibc-initial_0.9.32.bb =>  uclibc-initial_0.9.33.bb} (100%)
  rename meta/recipes-core/uclibc/{uclibc_0.9.32.bb =>  uclibc_0.9.33.bb} (45%)
  delete mode 100644 meta/recipes-core/zlib/files/Makefile.am
  delete mode 100644 meta/recipes-core/zlib/files/configure.ac
  delete mode 100644 meta/recipes-core/zlib/zlib-1.2.5/fix.inverted.LFS.logic.patch
  delete mode 100644 meta/recipes-core/zlib/zlib_1.2.5.bb
  create mode 100644 meta/recipes-core/zlib/zlib_1.2.6.bb
  create mode 100644 meta/recipes-devtools/pseudo/pseudo/opendir.patch
  create mode 100644 meta/recipes-devtools/pseudo/pseudo/renameat.patch
  create mode 100644 meta/recipes-devtools/python/python/host_include_contamination.patch
  create mode 100644 meta/recipes-graphics/drm/libdrm/GNU_SOURCE_definition.patch
  create mode 100644 meta/recipes-graphics/xorg-lib/libx11-1.4.4/0001-Add-_XGetRequest-as-substitute-for-GetReq-GetReqExtr.patch
  create mode 100644 meta/recipes-kernel/kmod/kmod-native_git.bb
  create mode 100644 meta/recipes-kernel/kmod/kmod.inc
  create mode 100644 meta/recipes-kernel/kmod/kmod/depmod-search.conf
  create mode 100644 meta/recipes-kernel/kmod/kmod_git.bb
  delete mode 100644 meta/recipes-kernel/module-init-tools/files/disable_man.patch
  delete mode 100644 meta/recipes-kernel/module-init-tools/files/grab_module_memset.patch
  delete mode 100644 meta/recipes-kernel/module-init-tools/files/modutils_extension.patch
  delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools-cross_3.16.bb
  delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools.inc
  delete mode 100644 meta/recipes-kernel/module-init-tools/module-init-tools_3.16.bb
  rename meta/recipes-kernel/{module-init-tools =>  modutils-initscripts}/files/PD.patch (100%)
  rename meta/recipes-kernel/{module-init-tools =>  modutils-initscripts}/files/modutils.sh (100%)
  rename meta/recipes-kernel/{module-init-tools =>  modutils-initscripts}/modutils-initscripts.bb (100%)
#68 lore raw

Op 8 feb. 2012, om 05:12 heeft Saul Wold het volgende geschreven:

Quoted 8 lines · Khem Raj
Quoted 6 lines

kmod: Add recipes
module-init-tools: Delete image.bbclass,kernel.bbclass: Use kmod-native instead of
module-init-tools-cross

Withdrawn for now

Khem, Saul, any news on a new patchset for kmod?

regards,

Koen

author
#69 lore raw
Quoted 6 lines · Koen Kooi

Op 8 feb. 2012, om 05:12 heeft Saul Wold het volgende geschreven:

Quoted 3 lines · Khem Raj
Quoted 1 line
Quoted 7 lines
Quoted 5 lines
Quoted 4 lines

  kmod: Add recipes
  module-init-tools: Delete image.bbclass,kernel.bbclass: Use kmod-native instead of module-init-tools-cross

Withdrawn for now

Khem, Saul, any news on a new patchset for kmod?

The top three patches on
http://git.openembedded.org/openembedded-core-contrib/log/?h=kraj/misc
is what I have latest there is some work left to do. in packaging area e.g. stuff going into / instead of /usr is not perfect since libkmod is going into /usr and rest to / but

Quoted 9 lines

regards,

Koen

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