Remove uClibc version selection: always use uClibc-ng
cover Remove uClibc version selection: always use uClibc-ng
Hello,
Since April 2015, the uClibc-ng has done very regular releases of the uClibc C library, and is the de-facto active replacement of the now defunct uClibc project.
uClibc 0.9.33 is going to be 4 years old in the coming months, and we already need 50+ patches to make it somewhat usable.
It is therefore time to simply offer uClibc-ng as our only supported uClibc version, and remove the options of using uClibc 0.9.33 and uClibc-snapshot. To achieve this, this patch series:
- Removes references to the BR2_UCLIBC_VERSION_SNAPSHOT option from various packages: libunwind, lttng-babeltrace, mongrel2, vlc and samba4. The dependencies of those packages are updated, and will now allow in many cases to build such packages with uClibc-ng, and sometimes with musl when possible.
- Removes the uClibc 0.9.33 and uClibc snapshot options.
- Removes the support for version selection in the uclibc package.
Best regards,
Thomas
Thomas Petazzoni (8):
libunwind: fix C library dependency
lttng-babeltrace: make available for all C libraries
mongrel2: allow using uClibc but only on certain architectures
vlc: remove dependency on C library
samba4: remove dependency on specific C libraries
uclibc: remove 0.9.33 version
uclibc: remove support for the snapshot version
uclibc: remove version selection
package/libunwind/Config.in | 31 +- package/lttng-babeltrace/Config.in | 6 +- package/mongrel2/Config.in | 22 +- package/samba4/Config.in | 7 +- .../0001-bits-time.h-sync-with-glibc-2.16.patch | 37 - .../uclibc/0.9.33.2/0003-Add-dup3-syscall.patch | 54 - ...deps-add-__kernel_long-and-__kernel_ulong.patch | 381 ------ ...estore-stack-pointer-just-after-return-fr.patch | 42 - ...e.S-Add-missing-IT-instruction-for-Thumb2.patch | 29 - ...8-arm-move-check-for-BX-to-its-own-header.patch | 257 ---- .../0.9.33.2/0009-mips64-fix-n64-interp.patch | 51 - ...0010-Rules.mak-fix-breakage-from-603af30d.patch | 31 - ...11-libc-add-non-standard-execvpe-function.patch | 163 --- .../0012-libc-stdlib-add-mkostemp-helpers.patch | 155 --- ...ventfd-Implement-eventfd2-and-fix-eventfd.patch | 64 - .../uclibc/0.9.33.2/0015-add-posix_madvise.c.patch | 61 - ...ptl-sh-fix-race-condition-in-lll_wait_tid.patch | 38 - ...d-SIGCANCEL-to-the-list-of-blocked-signal.patch | 37 - ...18-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch | 52 - ...nclude-elf.h-update-for-ELFOSABI_-changes.patch | 34 - ...0020-update-ptrace.h-to-latest-from-glibc.patch | 113 -- ...x-authnone_marshal-in-multithreading-cont.patch | 128 -- ...t-__syscall_error-callers-to-use-a0-for-a.patch | 57 - ...-instead-of-v0-for-__syscall_error-argume.patch | 63 - ...se-.arm-mode-for-resolver-unconditionally.patch | 29 - ...s-getpid-behave-similar-to-the-common-one.patch | 53 - ...yscalls.h-allow-immediate-values-as-6th-s.patch | 33 - .../0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch | 57 - .../0029-inet-rpc-fix-build-in-NPTL-case.patch | 58 - ...plement-assignment-allocation-m-character.patch | 190 --- ...map-sys_mmap2-do-unsigned-shift-of-offset.patch | 35 - .../0.9.33.2/0033-rpmatch-backport-function.patch | 78 -- .../0.9.33.2/0034-statfs-support-f_frsize.patch | 189 --- ...5-socket.h-pull-socket_type.h-from-eglibc.patch | 1374 -------------------- package/uclibc/0.9.33.2/0036-mount.h-update.patch | 91 -- ...n_bits_syscall_h-do-not-leave-undefined-S.patch | 38 - ...38-libc-sysdeps-sync-bits-in.h-with-glibc.patch | 117 -- ...-reuse-free-slots-at-the-end-of-exit-func.patch | 43 - ...ame-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch | 200 --- .../0.9.33.2/0041-libc-add-posix_fallocate.patch | 337 ----- ...-fix-overflow-checking-in-int_add_no_wrap.patch | 44 - ...Add-missing-SYMBOL_PREFIX-to-symbol-names.patch | 86 -- ...inet-do-not-filter-responses-in-res_query.patch | 46 - ...-Remove-pragma-weak-for-undeclared-symbol.patch | 39 - ...tting-the-nameserver-from-_res-state-afte.patch | 34 - ...-use-fputws_unlocked-S-F-instead-of-fputw.patch | 30 - ...48-Fix-a-problem-with-scanning-wide-chars.patch | 66 - ...agileness-in-dlopen-do_dlopen-wrapper-wor.patch | 66 - ...lopen-implementation-from-statically-link.patch | 60 - ...ce-fix-backtrace-for-statically-linked-ap.patch | 168 --- ...libubacktrace-fix-build-due-to-some-typos.patch | 39 - ...plicitly-include-uClibc_page.h-to-make-PA.patch | 30 - ...se-new-bits-scheme-for-arch-specific-flag.patch | 284 ---- ...5-siginfo_h-add-a-missing-function-member.patch | 66 - ...-_NSIG-to-128-not-129.-This-matches-glibc.patch | 43 - ...EV_PAD_SIZE-takes-__WORDSIZE-into-account.patch | 70 - ...atus.h-correctly-interpret-status-0x007f-.patch | 54 - ...58-test-tls-fix-build-with-newer-binutils.patch | 37 - .../0.9.33.2/0059-test-cater-for-config.patch | 81 -- .../0.9.33.2/0060-test-Fix-math-c-dependency.patch | 30 - .../0.9.33.2/0061-fix-sparc-networking.patch | 39 - ...ibdl-Also-include-dl-tls.h-for-for-SHARED.patch | 58 - ...nptl-remove-duplicate-vfork-in-libpthread.patch | 691 ---------- ...erpc-update-ptrace.h-to-latest-from-glibc.patch | 134 -- ...parc-update-ptrace.h-to-latest-from-glibc.patch | 151 --- ...clude-__iconv_codesets-into-iconv-utility.patch | 79 -- .../0066-mips-rename-siginfo-_timer-members.patch | 157 --- ...-guard-tcb-offsets.h-include-with-RESET_P.patch | 31 - ...t-implementations-conditional-compilation.patch | 58 - .../0069-Add-missing-C99-float-ld-wrappers.patch | 870 ------------- ...-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch | 89 -- .../0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch | 56 - package/uclibc/Config.in | 67 +- package/uclibc/uClibc-0.9.33.config | 277 ---- package/uclibc/uClibc-snapshot.config | 41 - package/uclibc/uclibc.hash | 6 - package/uclibc/uclibc.mk | 17 +- package/vlc/Config.in | 8 +- 78 files changed, 52 insertions(+), 8985 deletions(-) delete mode 100644 package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch delete mode 100644 package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch delete mode 100644 package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch delete mode 100644 package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch delete mode 100644 package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch delete mode 100644 package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch delete mode 100644 package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch delete mode 100644 package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch delete mode 100644 package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch delete mode 100644 package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch delete mode 100644 package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch delete mode 100644 package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch delete mode 100644 package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch delete mode 100644 package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch delete mode 100644 package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch delete mode 100644 package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch delete mode 100644 package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch delete mode 100644 package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch delete mode 100644 package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch delete mode 100644 package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch delete mode 100644 package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch delete mode 100644 package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch delete mode 100644 package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch delete mode 100644 package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch delete mode 100644 package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch delete mode 100644 package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch delete mode 100644 package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch delete mode 100644 package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch delete mode 100644 package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch delete mode 100644 package/uclibc/0.9.33.2/0036-mount.h-update.patch delete mode 100644 package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch delete mode 100644 package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch delete mode 100644 package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch delete mode 100644 package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch delete mode 100644 package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch delete mode 100644 package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch delete mode 100644 package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch delete mode 100644 package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch delete mode 100644 package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch delete mode 100644 package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch delete mode 100644 package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch delete mode 100644 package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch delete mode 100644 package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch delete mode 100644 package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch delete mode 100644 package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch delete mode 100644 package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch delete mode 100644 package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch delete mode 100644 package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch delete mode 100644 package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch delete mode 100644 package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch delete mode 100644 package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch delete mode 100644 package/uclibc/0.9.33.2/0059-test-cater-for-config.patch delete mode 100644 package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch delete mode 100644 package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch delete mode 100644 package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch delete mode 100644 package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch delete mode 100644 package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch delete mode 100644 package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch delete mode 100644 package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch delete mode 100644 package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch delete mode 100644 package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch delete mode 100644 package/uclibc/uClibc-0.9.33.config delete mode 100644 package/uclibc/uClibc-snapshot.config
Signature · 1 line
2.6.4
PATCH 1/8 libunwind: fix C library dependency
The libunwind package currently dependency on glibc *or* uclibc snapshot. However, we are going to remove the support for uclibc snapshot, and uClibc-ng has equivalent functionality as uclibc snapshot. Moreover, musl is also capable of building libunwind for certain architectures.
Therefore, this commit reworks the architecture dependencies of libunwind, to make it available on all architectures for which it is supported, depending on the capabilities of the different C libraries, and the implementation of libunwind on each architecture.
On some architectures, libunwind uses the C library *context() functions, which are not provided by musl at all, and not provided by uClibc on all architectures. But on some other architectures, libunwind does not use the C library *context() functions, which explains why it can be built with musl on such architectures.
--- package/libunwind/Config.in | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-)
package/libunwind/Config.in +24 -7
@@ -1,15 +1,32 @@ +# libunwind is only available for a certain subset of the +# architectures (as visible in the list of architectures supported +# with the glibc C library below). +# +# In addition to this, on some architectures libunwind requires the +# *context() function from the C library, which are only available on +# certain architectures in uClibc, and not available at all on +# musl. But on some other architectures, libunwind works without using +# the *context() functions, which allows it to be built with musl. +config BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC && \ + (BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || \ + BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_MUSL && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64) + config BR2_PACKAGE_LIBUNWIND bool "libunwind" depends on BR2_TOOLCHAIN_HAS_THREADS - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) # {g,s}etcontext - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS help C API to determine the call-chain of a program. http://www.nongnu.org/libunwind/index.html -comment "libunwind needs a uclibc snapshot or (e)glibc toolchain w/ threads" - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_THREADS || !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) +comment "libunwind needs a toolchain w/ threads" + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS
Signature · 1 line
2.6.4
PATCH 1/8 libunwind: fix C library dependency
Hi Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 44 lines
The libunwind package currently dependency on glibc *or* uclibc snapshot. However, we are going to remove the support for uclibc snapshot, and uClibc-ng has equivalent functionality as uclibc snapshot. Moreover, musl is also capable of building libunwind for certain architectures.
Therefore, this commit reworks the architecture dependencies of libunwind, to make it available on all architectures for which it is supported, depending on the capabilities of the different C libraries, and the implementation of libunwind on each architecture.
On some architectures, libunwind uses the C library
*context()functions, which are not provided by musl at all, and not provided by uClibc on all architectures. But on some other architectures, libunwind does not use the C library*context()functions, which explains why it can be built with musl on such architectures.Signed-off-by Thomas Petazzoni <[email protected]>--- package/libunwind/Config.in | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-)package/libunwind/Config.in +17
-0@@ -1,15 +1,32 @@ +# libunwind is only available for a certain subset of the +# architectures (as visible in the list of architectures supported +# with the glibc C library below). +# +# In addition to this, on some architectures libunwind requires the +# *context() function from the C library, which are only available on +# certain architectures in uClibc, and not available at all on +# musl. But on some other architectures, libunwind works without using +# the *context() functions, which allows it to be built with musl. +config BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC && \ + (BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || \ + BR2_x86_64)
package/libunwind/Config.in line 24
Quoted 10 lines
package/libunwind/Config.in +4
-3+ default y if BR2_TOOLCHAIN_USES_MUSL && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64) + config BR2_PACKAGE_LIBUNWIND bool "libunwind" depends on BR2_TOOLCHAIN_HAS_THREADS - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) # {g,s}etcontext - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS
Build tested on musl and x86_64.
Checked that libunwind doesn't build with uClibc-snapshot and uClibc-ng.
Best regards,
Romain
Quoted 13 lines
package/libunwind/Config.in +3
-4help C API to determine the call-chain of a program. http://www.nongnu.org/libunwind/index.html -comment "libunwind needs a uclibc snapshot or (e)glibc toolchain w/ threads" - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_THREADS || !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) +comment "libunwind needs a toolchain w/ threads" + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS
PATCH 1/8 libunwind: fix C library dependency
Romain,
Quoted 24 lines · Romain Naour
Quoted 24 lines
package/libunwind/Config.in +19
-0@@ -1,15 +1,32 @@ +# libunwind is only available for a certain subset of the +# architectures (as visible in the list of architectures supported +# with the glibc C library below). +# +# In addition to this, on some architectures libunwind requires the +# *context() function from the C library, which are only available on +# certain architectures in uClibc, and not available at all on +# musl. But on some other architectures, libunwind works without using +# the *context() functions, which allows it to be built with musl. +config BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC && \ + (BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || \ + BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_MUSL && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64)
Quoted 8 lines
package/libunwind/Config.in line 24
Quoted 8 lines
package/libunwind/Config.in +2
-3+ config BR2_PACKAGE_LIBUNWIND bool "libunwind" depends on BR2_TOOLCHAIN_HAS_THREADS - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) # {g,s}etcontext - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS
Thanks for reviewing!
Quoted 2 lines
Build tested on musl and
x86_64.
Checked that libunwind doesn't build with uClibc-snapshot and uClibc-ng.
I don't get this sentence however. libunwind should build with uClibc-ng on the architectures listed in BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS, no?
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/8 libunwind: fix C library dependency
Thomas,
Le 25/01/2016 23:20, Thomas Petazzoni a ?crit :
Quoted 39 lines
Romain,
Quoted 24 lines · Romain Naour
Quoted 24 lines
package/libunwind/Config.in +19
-0@@ -1,15 +1,32 @@ +# libunwind is only available for a certain subset of the +# architectures (as visible in the list of architectures supported +# with the glibc C library below). +# +# In addition to this, on some architectures libunwind requires the +# *context() function from the C library, which are only available on +# certain architectures in uClibc, and not available at all on +# musl. But on some other architectures, libunwind works without using +# the *context() functions, which allows it to be built with musl. +config BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC && \ + (BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || \ + BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_MUSL && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64)Quoted 8 lines
package/libunwind/Config.in line 24
Quoted 8 lines
package/libunwind/Config.in +2
-3+ config BR2_PACKAGE_LIBUNWIND bool "libunwind" depends on BR2_TOOLCHAIN_HAS_THREADS - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) # {g,s}etcontext - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTSThanks for reviewing!
Quoted 6 lines
Quoted 2 lines
Build tested on musl and
x86_64.
Checked that libunwind doesn't build with uClibc-snapshot and uClibc-ng.I don't get this sentence however. libunwind should build with uClibc-ng on the architectures listed in
BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS, no?
Ha, sorry (missing some context).
I build tested libunwind with uClibc-snapshot on powerpc with the master branch to verify that it doesn't build.
Then, I switched to your series with a small modification to enable powerpc and verify that doesn't build as for uClibc-snapshot on the same architecture.
The build error look like:
In file included from ../include/libunwind.h:15:0,
from ppc32/Lglobal.c:2:
../include/libunwind-ppc32.h:182:9: erreur: unknown type name ?ucontext_t?
typedef ucontext_t unw_tdep_context_t;
So your BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS setting is correct.
Best regards,
Romain
Quoted 5 lines
Thanks,
Thomas
PATCH 1/8 libunwind: fix C library dependency
Romain,
Quoted 10 lines · Romain Naour
Quoted 3 lines
I don't get this sentence however. libunwind should build with uClibc-ng on the architectures listed in
BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS, no?Ha, sorry (missing some context).
I build tested libunwind with uClibc-snapshot on powerpc with the master branch to verify that it doesn't build.
Then, I switched to your series with a small modification to enable powerpc and verify that doesn't build as for uClibc-snapshot on the same architecture.
Quoted 7 lines
The build error look like:
In file included from../include/libunwind.h:15:0,from ppc32/Lglobal.c:2:
../include/libunwind-ppc32.h:182:9: erreur: unknown type name ?ucontext_t?
typedefucontext_tunw_tdep_context_t;So your
BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTSsetting is correct.
Ok, thanks, understood!
In fact my BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS setting for uClibc is simply based on:
$ find . | grep setcontext ./libc/sysdeps/linux/i386/setcontext.S ./libc/sysdeps/linux/arm/setcontext.S ./libc/sysdeps/linux/x86_64/setcontext.S ./libc/sysdeps/linux/mips/setcontext.S
In the uclibc-ng sources. I've done some build testing of course, but clearly not all the combinations of architectures / C libraries.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 2/8 lttng-babeltrace: make available for all C libraries
In reply to Thomas PetazzoniDue to posix_fallocate() being unavailable in uClibc 0.9.33, libunwind was marked as available only for uClibc snapshot in glibc. However:
- lttng-babeltrace builds fine with musl
- lttng-babeltrace builds fine with uClibc-ng
- we're going to get rid of uClibc 0.9.33 support
- the only toolchain left with an old uClibc version is the Blackfin Analog Devices toolchain, and lttng-babeltrace cannot be enabled on non-MMU platforms
Conclusion: we can enable lttng-babeltrace on all C libraries, and no longer require any condition. This commit adjusts the libunwind package accordingly.
--- package/lttng-babeltrace/Config.in | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
package/lttng-babeltrace/Config.in +2 -4
@@ -7,7 +7,6 @@ config BR2_PACKAGE_LTTNG_BABELTRACE depends on BR2_USE_WCHAR # libglib2, util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 - depends on BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC # posix_fallocate help The Babeltrace project provides trace read and write libraries, as well as a trace converter application. Plugins
@@ -28,7 +27,6 @@ config BR2_PACKAGE_LTTNG_BABELTRACE http://www.efficios.com/babeltrace -comment "lttng-babeltrace needs a uclibc snapshot or (e)glib toolchain w/ wchar, threads" +comment "lttng-babeltrace needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \ - || !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
Signature · 1 line
2.6.4
PATCH 2/8 lttng-babeltrace: make available for all C libraries
Hi Thomas,
Quoted 1 line · Thomas Petazzoni
Due to
posix_fallocate()being unavailable in uClibc 0.9.33, libunwind
lttng-babeltrace
Quoted 1 line
was marked as available only for uClibc snapshot in glibc. However:
[...]
baruch
Signature · 3 lines
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -PATCH 2/8 lttng-babeltrace: make available for all C libraries
In reply to Thomas PetazzoniHi Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 10 lines
Due to
posix_fallocate()being unavailable in uClibc 0.9.33, libunwind was marked as available only for uClibc snapshot in glibc. However:- lttng-babeltrace builds fine with musl
- lttng-babeltrace builds fine with uClibc-ng
- we're going to get rid of uClibc 0.9.33 support
- the only toolchain left with an old uClibc version is the Blackfin Analog Devices toolchain, and lttng-babeltrace cannot be enabled on non-MMU platforms
Quoted 2 lines
Conclusion: we can enable lttng-babeltrace on all C libraries, and no longer require any condition. This commit adjusts the libunwind
s/libunwind/lttng-babeltrace/
Quoted 1 line
package accordingly.
Build tested on x86_64 musl toolchain.
Build tested on powerpc uClibc-ng toolchain.
Best regards,
Romain
Quoted 29 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- package/lttng-babeltrace/Config.in | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)package/lttng-babeltrace/Config.in +2
-4@@ -7,7 +7,6 @@ config BR2_PACKAGE_LTTNG_BABELTRACE depends on BR2_USE_WCHAR # libglib2, util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 - depends on BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC # posix_fallocate help The Babeltrace project provides trace read and write libraries, as well as a trace converter application. Plugins@@ -28,7 +27,6 @@ config BR2_PACKAGE_LTTNG_BABELTRACE http://www.efficios.com/babeltrace -comment "lttng-babeltrace needs a uclibc snapshot or (e)glib toolchain w/ wchar, threads" +comment "lttng-babeltrace needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \ - || !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
PATCH 3/8 mongrel2: allow using uClibc but only on certain architectures
In reply to Thomas Petazzonimongrel2 uses the {get,make,swap}context functions:
- With glibc, no problem, they are available on all supported architectures
- With uClibc, they are available only on a subset of the architectures. Until now, only BR2_UCLIBC_VERSION_SNAPSHOT configurations were allowed to select mongrel2, but we are going to get rid of the uClibc snapshot version, and uClibc-ng is as capable as the uClibc snapshot. However, only certain architectures have the *context() functions.
- With musl, there is no *context() support.
Since this dependency is quite complicated, we introduce a BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS hidden boolean to encode which C libraries are supported.
Also, listing the supported uClibc architectures would be too long in the comment, so we simply indicate that the package needs uClibc or glibc.
--- package/mongrel2/Config.in | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-)
package/mongrel2/Config.in +12 -10
@@ -1,10 +1,16 @@ -comment "mongrel2 needs a toolchain w/ C++, threads, wchar, dynamic library" - depends on BR2_UCLIBC_VERSION_SNAPSHOT || \ - BR2_TOOLCHAIN_USES_GLIBC || \ - BR2_arm +# mongrel2 uses {get,make,swap}context() functions, which are +# available in glibc for all architectures and in uClibc only for a +# subset of the architectures +config BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_x86_64) + +comment "mongrel2 needs a uClibc or glibc toolchain w/ C++, threads, wchar, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ - BR2_STATIC_LIBS + BR2_STATIC_LIBS || !BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS config BR2_PACKAGE_MONGREL2 bool "mongrel2"
@@ -14,11 +20,7 @@ config BR2_PACKAGE_MONGREL2 depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq depends on BR2_USE_WCHAR # zeromq -> util-linux depends on !BR2_STATIC_LIBS # uses dlopen() - # {get,make,swap}context functions present in - # {e,}glibc and in uClibc's master branch. Source has arm workaround - depends on BR2_UCLIBC_VERSION_SNAPSHOT || \ - BR2_TOOLCHAIN_USES_GLIBC || \ - BR2_arm + depends on BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS help Mongrel2 is an application, language, and network architecture agnostic web server that focuses on web applications using
Signature · 1 line
2.6.4
PATCH 3/8 mongrel2: allow using uClibc but only on certain architectures
Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 34 lines
mongrel2 uses the {get,make,swap}context functions:
- With glibc, no problem, they are available on all supported architectures
- With uClibc, they are available only on a subset of the architectures. Until now, only
BR2_UCLIBC_VERSION_SNAPSHOTconfigurations were allowed to select mongrel2, but we are going to get rid of the uClibc snapshot version, and uClibc-ng is as capable as the uClibc snapshot. However, only certain architectures have the*context()functions.- With musl, there is no
*context()support.Since this dependency is quite complicated, we introduce a
BR2_PACKAGE_MONGREL2_LIBC_SUPPORTShidden boolean to encode which C libraries are supported.Also, listing the supported uClibc architectures would be too long in the comment, so we simply indicate that the package needs uClibc or glibc.
Signed-off-by Thomas Petazzoni <[email protected]>--- package/mongrel2/Config.in | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-)package/mongrel2/Config.in +0
-2@@ -1,10 +1,16 @@ -comment "mongrel2 needs a toolchain w/ C++, threads, wchar, dynamic library" - depends on BR2_UCLIBC_VERSION_SNAPSHOT || \
package/mongrel2/Config.in line 8
Quoted 10 lines
package/mongrel2/Config.in +8
-2- BR2_TOOLCHAIN_USES_GLIBC || \ - BR2_arm +# mongrel2 uses {get,make,swap}context() functions, which are +# available in glibc for all architectures and in uClibc only for a +# subset of the architectures +config BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_x86_64)
In the libunwind patch BR2_mips64 and BR2_mips64el where dropped from the libunwind's supported architecture. Why they are not here ?
Best regards,
Romain
Quoted 23 lines
package/mongrel2/Config.in +4
-6+ +comment "mongrel2 needs a uClibc or glibc toolchain w/ C++, threads, wchar, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ - BR2_STATIC_LIBS + BR2_STATIC_LIBS || !BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS config BR2_PACKAGE_MONGREL2 bool "mongrel2"@@ -14,11 +20,7 @@ config BR2_PACKAGE_MONGREL2 depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq depends on BR2_USE_WCHAR # zeromq -> util-linux depends on !BR2_STATIC_LIBS # uses dlopen() - # {get,make,swap}context functions present in - # {e,}glibc and in uClibc's master branch. Source has arm workaround - depends on BR2_UCLIBC_VERSION_SNAPSHOT || \ - BR2_TOOLCHAIN_USES_GLIBC || \ - BR2_arm + depends on BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS help Mongrel2 is an application, language, and network architecture agnostic web server that focuses on web applications using
PATCH 3/8 mongrel2: allow using uClibc but only on certain architectures
Romain,
Quoted 11 lines · Romain Naour
package/mongrel2/Config.in line 8
Quoted 8 lines
package/mongrel2/Config.in +8
-0+# mongrel2 uses {get,make,swap}context() functions, which are +# available in glibc for all architectures and in uClibc only for a +# subset of the architectures +config BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_x86_64)In the libunwind patch
BR2_mips64andBR2_mips64elwhere dropped from the libunwind's supported architecture. Why they are not here ?
I just tested, and I was able to build libunwind on mips64el with uClibc, so it seems like my libunwind patch is incorrect in that respect.
I'll fix that up in the v2.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 4/8 vlc: remove dependency on C library
In reply to Thomas Petazzonivlc uses <spawn.h> which was not available in old uClibc versions. However, since we are removing support for uClibc 0.9.33, we can get rid of such dependency. In addition, <spawn.h> is provided by musl, and therefore VLC can be enabled with this C library.
Consequently, this commit completely removes any C library dependency for the vlc package. The only special case that needs to be handled is the Blackfin external toolchain from Analog Devices, which still uses an old uClibc version that doesn't provide <spawn.h>.
--- package/vlc/Config.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
package/vlc/Config.in +4 -4
@@ -5,12 +5,12 @@ endif config BR2_PACKAGE_VLC bool "vlc" - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) # spawn.h depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS select BR2_PACKAGE_VLC_OPENCV_BACKEND if BR2_PACKAGE_OPENCV select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3
@@ -32,7 +32,7 @@ config BR2_PACKAGE_VLC_OPENCV3_BACKEND select BR2_PACKAGE_OPENCV3_LIB_IMGPROC select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT -comment "vlc needs a uclibc snapshot, uclibc-ng or (e)glibc toolchain w/ C++, dynamic library, wchar, threads, headers >= 3.7" - depends on !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) \ - || !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ +comment "vlc needs a toolchain w/ C++, dynamic library, wchar, threads, headers >= 3.7" + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
Signature · 1 line
2.6.4
PATCH 4/8 vlc: remove dependency on C library
Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 11 lines
vlc uses <
spawn.h> which was not available in old uClibc versions. However, since we are removing support for uClibc 0.9.33, we can get rid of such dependency. In addition, <spawn.h> is provided by musl, and therefore VLC can be enabled with this C library.Consequently, this commit completely removes any C library dependency for the vlc package. The only special case that needs to be handled is the Blackfin external toolchain from Analog Devices, which still uses an old uClibc version that doesn't provide <
spawn.h>.Signed-off-by Thomas Petazzoni <[email protected]>
Build tested on a x86_64 musl toolchain.
Best regards,
Romain
Quoted 34 lines
--- package/vlc/Config.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)package/vlc/Config.in +4
-4@@ -5,12 +5,12 @@ endif config BR2_PACKAGE_VLC bool "vlc" - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) # spawn.h depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS select BR2_PACKAGE_VLC_OPENCV_BACKEND if BR2_PACKAGE_OPENCV select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3@@ -32,7 +32,7 @@ config BR2_PACKAGE_VLC_OPENCV3_BACKEND select BR2_PACKAGE_OPENCV3_LIB_IMGPROC select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT -comment "vlc needs a uclibc snapshot, uclibc-ng or (e)glibc toolchain w/ C++, dynamic library, wchar, threads, headers >= 3.7" - depends on !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) \ - || !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ +comment "vlc needs a toolchain w/ C++, dynamic library, wchar, threads, headers >= 3.7" + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
PATCH 5/8 samba4: remove dependency on specific C libraries
In reply to Thomas Petazzonisamba4 relies on the $ORIGIN feature of the dynamic linker, which used to not be implemented in old uClibc versions. However:
- this feature is supported by glibc
- this feature is supported by uClibc-ng, which is the only uClibc version we are going to support
- this feature is supported by musl
Consequently, we can completely remove the dependency of samba4 on certain C libraries. This means that samba4 can now be built against the musl C library.
--- package/samba4/Config.in | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)
package/samba4/Config.in +2 -5
@@ -1,6 +1,5 @@ -comment "samba4 needs an (e)glibc or uClibc-ng toolchain w/ RPC, wchar, dynamic library, threads" - depends on (!BR2_TOOLCHAIN_USES_GLIBC && !BR2_UCLIBC_VERSION_NG) \ - || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ +comment "samba4 needs a toolchain w/ RPC, wchar, dynamic library, threads" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU
@@ -12,8 +11,6 @@ config BR2_PACKAGE_SAMBA4 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_TOOLCHAIN_HAS_THREADS # python -> libffi depends on !BR2_STATIC_LIBS # python - # needs $ORIGIN support - depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_UCLIBC_VERSION_NG depends on !BR2_nios2 # binary too large, relocations don't fit select BR2_PACKAGE_E2FSPROGS select BR2_PACKAGE_POPT
Signature · 1 line
2.6.4
PATCH 5/8 samba4: remove dependency on specific C libraries
Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 11 lines
samba4 relies on the $ORIGIN feature of the dynamic linker, which used to not be implemented in old uClibc versions. However:
- this feature is supported by glibc
- this feature is supported by uClibc-ng, which is the only uClibc version we are going to support
- this feature is supported by muslConsequently, we can completely remove the dependency of samba4 on certain C libraries. This means that samba4 can now be built against the musl C library.
I'm not able to select samba4 with a musl toolchain.
Samba4 needs BR2_TOOLCHAIN_HAS_NATIVE_RPC which is not selected/detected with internal/external toolchains.
So, no samba4 with musl for the moment ;-)
Best regards,
Romain
Quoted 29 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- package/samba4/Config.in | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)package/samba4/Config.in +2
-5@@ -1,6 +1,5 @@ -comment "samba4 needs an (e)glibc or uClibc-ng toolchain w/ RPC, wchar, dynamic library, threads" - depends on (!BR2_TOOLCHAIN_USES_GLIBC && !BR2_UCLIBC_VERSION_NG) \ - || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ +comment "samba4 needs a toolchain w/ RPC, wchar, dynamic library, threads" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU@@ -12,8 +11,6 @@ config BR2_PACKAGE_SAMBA4 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_TOOLCHAIN_HAS_THREADS # python -> libffi depends on !BR2_STATIC_LIBS # python - # needs $ORIGIN support - depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_UCLIBC_VERSION_NG depends on !BR2_nios2 # binary too large, relocations don't fit select BR2_PACKAGE_E2FSPROGS select BR2_PACKAGE_POPT
PATCH 5/8 samba4: remove dependency on specific C libraries
Romain,
Quoted 13 lines · Romain Naour
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 11 lines
samba4 relies on the $ORIGIN feature of the dynamic linker, which used to not be implemented in old uClibc versions. However:
- this feature is supported by glibc
- this feature is supported by uClibc-ng, which is the only uClibc version we are going to support
- this feature is supported by muslConsequently, we can completely remove the dependency of samba4 on certain C libraries. This means that samba4 can now be built against the musl C library.
Quoted 5 lines
I'm not able to select samba4 with a musl toolchain.
Samba4 needsBR2_TOOLCHAIN_HAS_NATIVE_RPCwhich is not selected/detected with internal/external toolchains.So, no samba4 with musl for the moment ;-)
Indeed. Enabling on musl was solely based on the fact that musl has support for $ORIGIN since version 0.9.13:
0.9.13 release notes
new features:
- iconv support for EUC-KR and Big5 (including HKSCS) encodings
- field widths (POSIX 2008 feature) in strftime
- recursive rpath and $ORIGIN support in dynamic linker [...]
What the patch means is that there is a priori no reason to have samba4 depend on uclibc-ng || glibc due to $ORIGIN support: now all of glibc, uclibc and musl have this functionality.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 6/8 uclibc: remove 0.9.33 version
In reply to Thomas PetazzoniThe upstream project is dead, the 0.9.33 version requires tons of patches, and uclibc-ng has now successfully replaced uclibc. It is time to get rid of the 0.9.33 version.
--- .../0001-bits-time.h-sync-with-glibc-2.16.patch | 37 - .../uclibc/0.9.33.2/0003-Add-dup3-syscall.patch | 54 - ...deps-add-__kernel_long-and-__kernel_ulong.patch | 381 ------ ...estore-stack-pointer-just-after-return-fr.patch | 42 - ...e.S-Add-missing-IT-instruction-for-Thumb2.patch | 29 - ...8-arm-move-check-for-BX-to-its-own-header.patch | 257 ---- .../0.9.33.2/0009-mips64-fix-n64-interp.patch | 51 - ...0010-Rules.mak-fix-breakage-from-603af30d.patch | 31 - ...11-libc-add-non-standard-execvpe-function.patch | 163 --- .../0012-libc-stdlib-add-mkostemp-helpers.patch | 155 --- ...ventfd-Implement-eventfd2-and-fix-eventfd.patch | 64 - .../uclibc/0.9.33.2/0015-add-posix_madvise.c.patch | 61 - ...ptl-sh-fix-race-condition-in-lll_wait_tid.patch | 38 - ...d-SIGCANCEL-to-the-list-of-blocked-signal.patch | 37 - ...18-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch | 52 - ...nclude-elf.h-update-for-ELFOSABI_-changes.patch | 34 - ...0020-update-ptrace.h-to-latest-from-glibc.patch | 113 -- ...x-authnone_marshal-in-multithreading-cont.patch | 128 -- ...t-__syscall_error-callers-to-use-a0-for-a.patch | 57 - ...-instead-of-v0-for-__syscall_error-argume.patch | 63 - ...se-.arm-mode-for-resolver-unconditionally.patch | 29 - ...s-getpid-behave-similar-to-the-common-one.patch | 53 - ...yscalls.h-allow-immediate-values-as-6th-s.patch | 33 - .../0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch | 57 - .../0029-inet-rpc-fix-build-in-NPTL-case.patch | 58 - ...plement-assignment-allocation-m-character.patch | 190 --- ...map-sys_mmap2-do-unsigned-shift-of-offset.patch | 35 - .../0.9.33.2/0033-rpmatch-backport-function.patch | 78 -- .../0.9.33.2/0034-statfs-support-f_frsize.patch | 189 --- ...5-socket.h-pull-socket_type.h-from-eglibc.patch | 1374 -------------------- package/uclibc/0.9.33.2/0036-mount.h-update.patch | 91 -- ...n_bits_syscall_h-do-not-leave-undefined-S.patch | 38 - ...38-libc-sysdeps-sync-bits-in.h-with-glibc.patch | 117 -- ...-reuse-free-slots-at-the-end-of-exit-func.patch | 43 - ...ame-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch | 200 --- .../0.9.33.2/0041-libc-add-posix_fallocate.patch | 337 ----- ...-fix-overflow-checking-in-int_add_no_wrap.patch | 44 - ...Add-missing-SYMBOL_PREFIX-to-symbol-names.patch | 86 -- ...inet-do-not-filter-responses-in-res_query.patch | 46 - ...-Remove-pragma-weak-for-undeclared-symbol.patch | 39 - ...tting-the-nameserver-from-_res-state-afte.patch | 34 - ...-use-fputws_unlocked-S-F-instead-of-fputw.patch | 30 - ...48-Fix-a-problem-with-scanning-wide-chars.patch | 66 - ...agileness-in-dlopen-do_dlopen-wrapper-wor.patch | 66 - ...lopen-implementation-from-statically-link.patch | 60 - ...ce-fix-backtrace-for-statically-linked-ap.patch | 168 --- ...libubacktrace-fix-build-due-to-some-typos.patch | 39 - ...plicitly-include-uClibc_page.h-to-make-PA.patch | 30 - ...se-new-bits-scheme-for-arch-specific-flag.patch | 284 ---- ...5-siginfo_h-add-a-missing-function-member.patch | 66 - ...-_NSIG-to-128-not-129.-This-matches-glibc.patch | 43 - ...EV_PAD_SIZE-takes-__WORDSIZE-into-account.patch | 70 - ...atus.h-correctly-interpret-status-0x007f-.patch | 54 - ...58-test-tls-fix-build-with-newer-binutils.patch | 37 - .../0.9.33.2/0059-test-cater-for-config.patch | 81 -- .../0.9.33.2/0060-test-Fix-math-c-dependency.patch | 30 - .../0.9.33.2/0061-fix-sparc-networking.patch | 39 - ...ibdl-Also-include-dl-tls.h-for-for-SHARED.patch | 58 - ...nptl-remove-duplicate-vfork-in-libpthread.patch | 691 ---------- ...erpc-update-ptrace.h-to-latest-from-glibc.patch | 134 -- ...parc-update-ptrace.h-to-latest-from-glibc.patch | 151 --- ...clude-__iconv_codesets-into-iconv-utility.patch | 79 -- .../0066-mips-rename-siginfo-_timer-members.patch | 157 --- ...-guard-tcb-offsets.h-include-with-RESET_P.patch | 31 - ...t-implementations-conditional-compilation.patch | 58 - .../0069-Add-missing-C99-float-ld-wrappers.patch | 870 ------------- ...-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch | 89 -- .../0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch | 56 - package/uclibc/Config.in | 9 - package/uclibc/uClibc-0.9.33.config | 277 ---- package/uclibc/uclibc.hash | 3 - package/uclibc/uclibc.mk | 3 - 72 files changed, 8847 deletions(-) delete mode 100644 package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch delete mode 100644 package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch delete mode 100644 package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch delete mode 100644 package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch delete mode 100644 package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch delete mode 100644 package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch delete mode 100644 package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch delete mode 100644 package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch delete mode 100644 package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch delete mode 100644 package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch delete mode 100644 package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch delete mode 100644 package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch delete mode 100644 package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch delete mode 100644 package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch delete mode 100644 package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch delete mode 100644 package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch delete mode 100644 package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch delete mode 100644 package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch delete mode 100644 package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch delete mode 100644 package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch delete mode 100644 package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch delete mode 100644 package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch delete mode 100644 package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch delete mode 100644 package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch delete mode 100644 package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch delete mode 100644 package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch delete mode 100644 package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch delete mode 100644 package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch delete mode 100644 package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch delete mode 100644 package/uclibc/0.9.33.2/0036-mount.h-update.patch delete mode 100644 package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch delete mode 100644 package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch delete mode 100644 package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch delete mode 100644 package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch delete mode 100644 package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch delete mode 100644 package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch delete mode 100644 package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch delete mode 100644 package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch delete mode 100644 package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch delete mode 100644 package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch delete mode 100644 package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch delete mode 100644 package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch delete mode 100644 package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch delete mode 100644 package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch delete mode 100644 package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch delete mode 100644 package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch delete mode 100644 package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch delete mode 100644 package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch delete mode 100644 package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch delete mode 100644 package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch delete mode 100644 package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch delete mode 100644 package/uclibc/0.9.33.2/0059-test-cater-for-config.patch delete mode 100644 package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch delete mode 100644 package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch delete mode 100644 package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch delete mode 100644 package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch delete mode 100644 package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch delete mode 100644 package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch delete mode 100644 package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch delete mode 100644 package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch delete mode 100644 package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch delete mode 100644 package/uclibc/uClibc-0.9.33.config
package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch deleted +0 -37
@@ -1,37 +0,0 @@ -From bb08cd16cb0353b3d4116ca8959dbecd2e78f545 Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard <[email protected]> -Date: Tue, 3 Jul 2012 15:54:57 +0200 -Subject: [PATCH 1/8] bits/time.h: sync with glibc 2.16 - -CLOCK_MONOTONIC_RAW is available since 2.6.28 -(2d42244ae71d: clocksource: introduce CLOCK_MONOTONIC_RAW), and -CLOCK_*_COARSE since 2.6.32 (da15cfdae033: time: Introduce -CLOCK_REALTIME_COARSE). - -Signed-off-by: Peter Korsgaard <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - libc/sysdeps/linux/common/bits/time.h | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/libc/sysdeps/linux/common/bits/time.h b/libc/sysdeps/linux/common/bits/time.h -index 7ed54bf..c871223 100644 ---- a/libc/sysdeps/linux/common/bits/time.h -+++ b/libc/sysdeps/linux/common/bits/time.h -@@ -54,6 +54,12 @@ - # define CLOCK_PROCESS_CPUTIME_ID 2 - /* Thread-specific CPU-time clock. */ - # define CLOCK_THREAD_CPUTIME_ID 3 -+/* Monotonic system-wide clock, not adjusted for frequency scaling. */ -+# define CLOCK_MONOTONIC_RAW 4 -+/* Identifier for system-wide realtime clock, updated only on ticks. */ -+# define CLOCK_REALTIME_COARSE 5 -+/* Monotonic system-wide clock, updated only on ticks. */ -+# define CLOCK_MONOTONIC_COARSE 6 - - /* Flag to indicate time is absolute. */ - # define TIMER_ABSTIME 1 --- -1.8.1.2 -
package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch deleted +0 -54
54 lines not on this page · raw message
package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch deleted +0 -381
381 lines not on this page · raw message
package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch deleted +0 -42
42 lines not on this page · raw message
package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch deleted +0 -29
@@ -1,29 +0,0 @@ -From c12211a2f1832169e31063512b3e2081e503e856 Mon Sep 17 00:00:00 2001 -From: Will Newton <[email protected]> -Date: Tue, 2 Apr 2013 13:53:35 +0100 -Subject: [PATCH 7/8] arm/clone.S: Add missing IT instruction for Thumb2. - -The conditional load needs to be made part of an IT block on Thumb2 -cores. - -Signed-off-by: Will Newton <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - libc/sysdeps/linux/arm/clone.S | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index e4101ba..1f7f09d 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -111,6 +111,7 @@ __clone: - ldr r4, [sp, #12] - DO_CALL (clone) - movs a1, a1 -+ IT(t, ne) - ldmnefd sp!, {r4} - blt __error - IT(t, ne) --- -1.8.1.2 -
package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch deleted +0 -257
257 lines not on this page · raw message
package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch deleted +0 -51
51 lines not on this page · raw message
package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch deleted +0 -31
@@ -1,31 +0,0 @@ -From f5017653dc63d62c94cc2884ed3a50a4f93001cd Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias <[email protected]> -Date: Wed, 24 Jul 2013 12:28:19 -0300 -Subject: [PATCHv2] Rules.mak: fix breakage from 603af30d - -Removing the whitespace from findstring for 64 bit architectures has -bad consequences since powerpc would be a match in powerpc64 and sparc -would also be a match in sparc64. -That doesn't make them 64 bits in reality causing general breakage. - -Signed-off-by: Gustavo Zacarias <[email protected]> ---- - Rules.mak | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Rules.mak b/Rules.mak -index 889108e..be53d81 100644 ---- a/Rules.mak -+++ b/Rules.mak -@@ -141,7 +141,7 @@ UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION) - - UCLIBC_LDSO_NAME := ld-uClibc - ARCH_NATIVE_BIT := 32 --ifneq ($(findstring $(TARGET_ARCH),hppa64 ia64 powerpc64 s390x sparc64 x86_64),) -+ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 powerpc64 s390x sparc64 x86_64 ),) - UCLIBC_LDSO_NAME := ld64-uClibc - ARCH_NATIVE_BIT := 64 - else --- -1.8.1.5 -
package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch deleted +0 -163
163 lines not on this page · raw message
package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch deleted +0 -155
155 lines not on this page · raw message
package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch deleted +0 -64
64 lines not on this page · raw message
package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch deleted +0 -22
@@ -1,61 +0,0 @@ -From 93b8ce8886e30986be31c1403b606b6367dc258a Mon Sep 17 00:00:00 2001 -From: "Peter S. Mazinger" <[email protected]> -Date: Tue, 26 Apr 2011 23:03:44 +0200 -Subject: [PATCH] add posix_madvise.c - -Signed-off-by: Peter S. Mazinger <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> -Signed-off-by: Mike Frysinger <[email protected]> ---- - libc/sysdeps/linux/common/Makefile.in | 2 +- - libc/sysdeps/linux/common/posix_madvise.c | 25 +++++++++++++++++++++++++ - 2 files changed, 26 insertions(+), 1 deletion(-) - create mode 100644 libc/sysdeps/linux/common/posix_madvise.c - -diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in -index 3b5763c..b39082b 100644 ---- a/libc/sysdeps/linux/common/Makefile.in -+++ b/libc/sysdeps/linux/common/Makefile.in -@@ -81,7 +81,7 @@ CSRC-$(UCLIBC_HAS_REALTIME) += clock_getres.c clock_gettime.c clock_settime.c \ - sched_get_priority_max.c sched_get_priority_min.c sched_getscheduler.c \ - sched_rr_get_interval.c sched_setparam.c sched_setscheduler.c sigqueue.c - # clock_getcpuclockid|clock_nanosleep|mq_timedreceive|mq_timedsend|posix_fadvise|posix_fallocate|posix_madvise|posix_memalign|posix_mem_offset|posix_spawnattr_destroy|posix_spawnattr_init|posix_spawnattr_getflags|posix_spawnattr_setflags|posix_spawnattr_getpgroup|posix_spawnattr_setpgroup|posix_spawnattr_getschedparam|posix_spawnattr_setschedparam|posix_spawnattr_getschedpolicy|posix_spawnattr_setschedpolicy|posix_spawnattr_getsigdefault|posix_spawnattr_setsigdefault|posix_spawnattr_getsigmask|posix_spawnattr_setsigmask|posix_spawnattr_init|posix_spawnattr_setflags|posix_spawnattr_setpgroup|posix_spawnattr_setschedparam|posix_spawnattr_setschedpolicy|posix_spawnattr_setsigdefault|posix_spawnattr_setsigmask|posix_spawn_file_actions_addclose|posix_spawn_file_actions_addopen|posix_spawn_file_actions_adddup2|posix_spawn_file_actions_addopen|posix_spawn_file_actions_destroy|posix_spawn_file_actions_init|posix_spawn_file_actions_init|posix_spawn|posix_spawnp|posix_spawnp|posix_ty
ped_mem_
get_info|pthread_mutex_timedlock|sem_timedwait
--CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c -+CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c
- CSRC-$(UCLIBC_SUSV4_LEGACY) += utime.c
- CSRC-$(UCLIBC_HAS_EPOLL) += epoll.c
- CSRC-$(UCLIBC_HAS_XATTR) += xattr.c
-diff --git a/libc/sysdeps/linux/common/posix_madvise.c b/libc/sysdeps/linux/common/posix_madvise.c -new file mode 100644
-index 0000000..2f95bcb
---- /dev/null
-+++ b/libc/sysdeps/linux/common/posix_madvise.c
-@@ -0,0 +1,25 @@
-+/* vi: set sw=4 ts=4: */
-+/* Licensed under the LGPL v2.1, see the file LICENSE in this tarball. */
-+
-+#include <sys/mman.h>
-+#include <sys/syscall.h>
-+
-+#if defined __NR_madvise && defined __USE_XOPEN2K && defined __UCLIBC_HAS_ADVANCED_REALTIME__ -+int posix_madvise(void *addr, size_t len, int advice)
-+{
-+ int result;
-+ /* We have one problem: the kernel's MADV_DONTNEED does not
-+ * correspond to POSIX's POSIX_MADV_DONTNEED. The former simply
-+ * discards changes made to the memory without writing it back to
-+ * disk, if this would be necessary. The POSIX behaviour does not
-+ * allow this. There is no functionality mapping for the POSIX
-+ * behaviour so far so we ignore that advice for now. */
-+ if (advice == POSIX_MADV_DONTNEED)
-+ return 0;
-+
-+ /* this part might use madvise function */
-+ INTERNAL_SYSCALL_DECL (err);
-+ result = INTERNAL_SYSCALL (madvise, err, 3, addr, len, advice);
-+ return INTERNAL_SYSCALL_ERRNO (result, err);
-+}
-+#endif
---
-1.7.10.4
-
package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch deleted +0 -38
@@ -1,38 +0,0 @@ -From ffd9e147b120e9c2bf30ba4861860f1bc59362c5 Mon Sep 17 00:00:00 2001 -From: Stas Sergeev <[email protected]> -Date: Thu, 14 Jun 2012 01:00:02 +0200 -Subject: [PATCH] nptl: sh: fix race condition in lll_wait_tid - -Make a local copy of the tid value to avoid a race condition, -as the value could have been changed to 0, thus using a pointer -it would have been passed to the lll_futex_wait modified. - -Signed-off-by: Stas Sergeev <[email protected]> -Signed-off-by: Carmelo Amoroso <[email protected]> -(cherry picked from commit 0dcc13bf7a61b1d0708e5dd103d5515e0ffec79a) - -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -index d10cd61..b83d863 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -@@ -396,9 +396,9 @@ extern int __lll_unlock_wake (int *__futex, int private) attribute_hidden; - - #define lll_wait_tid(tid) \ - do { \ -- __typeof (tid) *__tid = &(tid); \ -- while (*__tid != 0) \ -- lll_futex_wait (__tid, *__tid, LLL_SHARED); \ -+ __typeof (tid) __tid; \ -+ while ((__tid = (tid)) != 0) \ -+ lll_futex_wait (&(tid), __tid, LLL_SHARED); \ - } while (0) - - extern int __lll_timedwait_tid (int *tid, const struct timespec *abstime) --- -1.7.10.4 -
package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch deleted +0 -37
@@ -1,37 +0,0 @@ -From fec308fdfaf9f557ef5fb17c308c48259012b825 Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono <[email protected]> -Date: Thu, 12 Jul 2012 09:24:39 +0200 -Subject: [PATCH] librt: re-add SIGCANCEL to the list of blocked signal in - helper thread - -Indeed if the libpthread is before the libc in the library look up -the SIGCANCEL is removed from the list of the blocked signal by -sigfillset func, this can produce the handler not properly called. -This commit revert what Denys modified in commit -162cfaea20d807f0ae329efe39292a9b22593b41. - -Signed-off-by: Filippo Arcidiacono <[email protected]> -Signed-off-by: Carmelo Amoroso <[email protected]> -(cherry picked from commit cb43f2afba0633400387fa7c55dda3396517f58a) - -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -index 4319d8d..2681961 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -@@ -175,7 +175,7 @@ __start_helper_thread (void) - sigset_t ss; - sigset_t oss; - sigfillset (&ss); -- /*__sigaddset (&ss, SIGCANCEL); - already done by sigfillset */ -+ __sigaddset (&ss, SIGCANCEL); - INTERNAL_SYSCALL_DECL (err); - INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &ss, &oss, _NSIG / 8); - --- -1.7.10.4 -
package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch deleted +0 -52
52 lines not on this page · raw message
package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch deleted +0 -34
@@ -1,34 +0,0 @@ -From 788d9ca73b7ed1262c83580ccc62fb3625e603c3 Mon Sep 17 00:00:00 2001 -From: Thomas Schwinge <[email protected]> -Date: Wed, 31 Oct 2012 20:41:50 +0100 -Subject: [PATCH] include/elf.h: update for ELFOSABI_* changes. - -ELFOSABI_GNU replaces ELFOSABI_LINUX, the latter is kept as a compatibility -alias, and ELFOSABI_HURD is removed. See the table on -<http://www.sco.com/developers/gabi/latest/ch4.eheader.html#osabi> for -reference. - -Signed-off-by: Thomas Schwinge <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - include/elf.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/include/elf.h b/include/elf.h -index ba3e804..470046e 100644 ---- a/include/elf.h -+++ b/include/elf.h -@@ -148,8 +148,8 @@ typedef struct - #define ELFOSABI_SYSV 0 /* Alias. */ - #define ELFOSABI_HPUX 1 /* HP-UX */ - #define ELFOSABI_NETBSD 2 /* NetBSD. */ --#define ELFOSABI_LINUX 3 /* Linux. */ --#define ELFOSABI_HURD 4 /* GNU/Hurd */ -+#define ELFOSABI_GNU 3 /* Object uses GNU ELF extensions. */ -+#define ELFOSABI_LINUX ELFOSABI_GNU /* Compatibility alias. */ - #define ELFOSABI_SOLARIS 6 /* Sun Solaris. */ - #define ELFOSABI_AIX 7 /* IBM AIX. */ - #define ELFOSABI_IRIX 8 /* SGI Irix. */ --- -1.7.10.4 -
package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch deleted +0 -113
113 lines not on this page · raw message
package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch deleted +0 -128
128 lines not on this page · raw message
package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch deleted +0 -57
57 lines not on this page · raw message
package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch deleted +0 -63
63 lines not on this page · raw message
package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch deleted +0 -29
@@ -1,29 +0,0 @@ -From 753e4e4cd9177f25981e81f82cd9fe8612a95ba6 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer <[email protected]> -Date: Fri, 15 Jun 2012 13:44:35 +0200 -Subject: [PATCH] ldso: use .arm mode for resolver unconditionally - -as per comment in the file. -Fixes runtime with __THUMB_INTERWORK__ enabled. - -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - ldso/ldso/arm/resolve.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ldso/ldso/arm/resolve.S b/ldso/ldso/arm/resolve.S -index 08889d0..b0907f7 100644 ---- a/ldso/ldso/arm/resolve.S -+++ b/ldso/ldso/arm/resolve.S -@@ -101,7 +101,7 @@ - - .text - .align 4 @ 16 byte boundary and there are 32 bytes below (arm case) -- #if !defined(__thumb__) || defined(__thumb2__) -+#if 1 /*(!defined(__thumb__) || defined __THUMB_INTERWORK__) || defined(__thumb2__)*/ - .arm - .globl _dl_linux_resolve - .type _dl_linux_resolve,%function --- -1.7.10.4 -
package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch deleted +0 -53
53 lines not on this page · raw message
package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch deleted +0 -33
@@ -1,33 +0,0 @@ -From 576983880a0ab5d27a4f530d2cef36239b617e78 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <[email protected]> -Date: Thu, 5 Jul 2012 11:55:19 +0000 -Subject: [PATCH] i386/bits/syscalls.h: allow immediate values as 6th syscall - arg - -Allow use of immedate values as the 6th syscall argument. Otherwise we must -store the arg on memory. This gives gcc more options to optimize better. - -This also works around an issue with posix_fallocate. - -Signed-off-by: Natanael Copa <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libc/sysdeps/linux/i386/bits/syscalls.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/i386/bits/syscalls.h b/libc/sysdeps/linux/i386/bits/syscalls.h -index 9fb4f35..566b5ac 100644 ---- a/libc/sysdeps/linux/i386/bits/syscalls.h -+++ b/libc/sysdeps/linux/i386/bits/syscalls.h -@@ -136,7 +136,7 @@ __asm__ ( - #define ASMFMT_5(arg1, arg2, arg3, arg4, arg5) \ - , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5) - #define ASMFMT_6(arg1, arg2, arg3, arg4, arg5, arg6) \ -- , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5), "m" (arg6) -+ , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5), "g" (arg6) - - #else /* !PIC */ - --- -1.7.10.4 -
package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch deleted +0 -57
57 lines not on this page · raw message
package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch deleted +0 -58
58 lines not on this page · raw message
package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch deleted +0 -190
190 lines not on this page · raw message
package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch deleted +0 -35
@@ -1,35 +0,0 @@ -From 569d1423ac2b585b5cb38bee545b5e0ae2bd7f67 Mon Sep 17 00:00:00 2001 -From: James Hogan <[email protected]> -Date: Thu, 17 May 2012 12:42:54 +0100 -Subject: [PATCH] mmap()->sys_mmap2: do unsigned shift of offset - -Fix the implementation of mmap based on the mmap2 system call, to -construct pgoffset from offset with an unsigned shift rather than a -signed (off_t) shift. The mmap2 test in the testsuite catches this case -by mmap'ing with a large offset (with the sign bit set). The signed -shift repeats the sign bit making the page shift way out of range. This -is already fixed similarly in mmap64(). - -Signed-off-by: James Hogan <[email protected]> -Signed-off-by: Mike Frysinger <[email protected]> ---- - libc/sysdeps/linux/common/mmap.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/common/mmap.c b/libc/sysdeps/linux/common/mmap.c -index 8995898..d53eabb 100644 ---- a/libc/sysdeps/linux/common/mmap.c -+++ b/libc/sysdeps/linux/common/mmap.c -@@ -63,7 +63,8 @@ __ptr_t mmap(__ptr_t addr, size_t len, int prot, int flags, int fd, __off_t offs - __set_errno(EINVAL); - return MAP_FAILED; - } -- return __syscall_mmap2(addr, len, prot, flags, fd, offset >> MMAP2_PAGE_SHIFT); -+ return __syscall_mmap2(addr, len, prot, flags, -+ fd, ((__u_long) offset >> MMAP2_PAGE_SHIFT)); - } - - libc_hidden_def(mmap) --- -1.7.10.4 -
package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch deleted +0 -78
78 lines not on this page · raw message
package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch deleted +0 -189
189 lines not on this page · raw message
package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch deleted +0 -1374
470 lines not on this page · raw message
package/uclibc/0.9.33.2/0036-mount.h-update.patch deleted +0 -91
91 lines not on this page · raw message
package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch deleted +0 -38
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch deleted +0 -117
117 lines not on this page · raw message
package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch deleted +0 -43
43 lines not on this page · raw message
package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch deleted +0 -200
200 lines not on this page · raw message
package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch deleted +0 -45
45 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
ped_mem_
get_info|pthread_mutex_timedlock|sem_timedwait
--CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c -+CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c \
-+ posix_fallocate.c posix_fallocate64.c
- CSRC-$(UCLIBC_SUSV4_LEGACY) += utime.c
- CSRC-$(UCLIBC_HAS_EPOLL) += epoll.c
- CSRC-$(UCLIBC_HAS_XATTR) += xattr.c
-diff --git a/libc/sysdeps/linux/common/bits/kernel-features.h b/libc/sysdeps/linux/common/bits/kernel-features.h -index 5665e24..13c7a63 100644
---- a/libc/sysdeps/linux/common/bits/kernel-features.h
-+++ b/libc/sysdeps/linux/common/bits/kernel-features.h
-@@ -496,6 +496,14 @@
- # define __ASSUME_PRIVATE_FUTEX 1
- #endif
-
-+/* Support for fallocate was added in 2.6.23,
-+ on s390 only after 2.6.23-rc1, on alpha only after 2.6.33-rc1. */
-+#if __LINUX_KERNEL_VERSION >= 0x020617 \
-+ && (!defined __s390__ || __LINUX_KERNEL_VERSION >= 0x020618) \ -+ && (!defined __alpha__ || __LINUX_KERNEL_VERSION >= 0x020621)
-+# define __ASSUME_FALLOCATE 1
-+#endif
-+
- /* getcpu is a syscall for x86-64 since 3.1. */
- #if defined __x86_64__ && __LINUX_KERNEL_VERSION >= 0x030100
- # define __ASSUME_GETCPU_SYSCALL 1
-diff --git a/libc/sysdeps/linux/common/posix_fallocate.c b/libc/sysdeps/linux/common/posix_fallocate.c -new file mode 100644
-index 0000000..9aaa6ce
---- /dev/null
-+++ b/libc/sysdeps/linux/common/posix_fallocate.c
-@@ -0,0 +1,43 @@
-+/* vi: set sw=4 ts=4: */
-+/*
-+ * posix_fallocate() for uClibc
-+ * http://www.opengroup.org/onlinepubs/9699919799/functions/posix_fallocate.html
-+ *
-+ * Copyright (C) 2000-2006 Erik Andersen <[email protected]>
-+ *
-+ * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball.
-+ */
-+
-+#include <sys/syscall.h>
-+#include <fcntl.h>
-+#include <bits/kernel-features.h>
-+#include <stdint.h>
-+
-+#if defined __NR_fallocate
-+int posix_fallocate(int fd, __off_t offset, __off_t len)
-+{
-+ int ret;
-+
-+# if __WORDSIZE == 32
-+ uint32_t off_low = offset;
-+ uint32_t len_low = len;
-+ /* may assert that these >>31 are 0 */
-+ uint32_t zero = 0;
-+ INTERNAL_SYSCALL_DECL(err);
-+ ret = (int) (INTERNAL_SYSCALL(fallocate, err, 6, fd, 0,
-+ __LONG_LONG_PAIR (zero, off_low),
-+ __LONG_LONG_PAIR (zero, len_low)));
-+# elif __WORDSIZE == 64
-+ INTERNAL_SYSCALL_DECL(err);
-+ ret = (int) (INTERNAL_SYSCALL(fallocate, err, 4, fd, 0, offset, len));
-+# else
-+# error your machine is neither 32 bit or 64 bit ... it must be magical
-+#endif
-+ if (unlikely(INTERNAL_SYSCALL_ERROR_P (ret, err)))
-+ return INTERNAL_SYSCALL_ERRNO (ret, err);
-+ return 0;
-+}
-+# if defined __UCLIBC_HAS_LFS__ && __WORDSIZE == 64 -+strong_alias(posix_fallocate,posix_fallocate64)
-+# endif
-+#endif
-diff --git a/libc/sysdeps/linux/common/posix_fallocate64.c b/libc/sysdeps/linux/common/posix_fallocate64.c -new file mode 100644
-index 0000000..818d868
---- /dev/null
-+++ b/libc/sysdeps/linux/common/posix_fallocate64.c
-@@ -0,0 +1,39 @@
-+/* vi: set sw=4 ts=4: */
-+/*
-+ * posix_fallocate() for uClibc
-+ * http://www.opengroup.org/onlinepubs/9699919799/functions/posix_fallocate.html
-+ *
-+ * Copyright (C) 2000-2006 Erik Andersen <[email protected]>
-+ *
-+ * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball.
-+ */
-+
-+#include <sys/syscall.h>
-+#include <fcntl.h>
-+#include <bits/kernel-features.h>
-+#include <stdint.h>
-+
-+#if defined __NR_fallocate
-+
-+# if __WORDSIZE == 64
-+/* Can use normal posix_fallocate() */
-+# elif __WORDSIZE == 32
-+int posix_fallocate64(int fd, __off64_t offset, __off64_t len)
-+{
-+ int ret;
-+ uint32_t off_low = offset & 0xffffffff;
-+ uint32_t off_high = offset >> 32;
-+ uint32_t len_low = len & 0xffffffff;
-+ uint32_t len_high = len >> 32;
-+ INTERNAL_SYSCALL_DECL(err);
-+ ret = (int) (INTERNAL_SYSCALL(fallocate, err, 6, fd, 0,
-+ __LONG_LONG_PAIR (off_high, off_low),
-+ __LONG_LONG_PAIR (len_high, len_low)));
-+ if (unlikely(INTERNAL_SYSCALL_ERROR_P (ret, err)))
-+ return INTERNAL_SYSCALL_ERRNO (ret, err);
-+ return 0;
-+}
-+# else
-+# error your machine is neither 32 bit or 64 bit ... it must be magical
-+# endif
-+#endif
-diff --git a/test/.gitignore b/test/.gitignore
-index 7234c48..ef152e9 100644
---- a/test/.gitignore
-+++ b/test/.gitignore
-@@ -305,6 +305,8 @@ unistd/getcwd
- unistd/getopt
- unistd/getopt_long
- unistd/tstgetopt
-+unistd/tst-posix_fallocate
-+unistd/tst-posix_fallocate64
- unistd/tst-preadwrite
- unistd/tst-preadwrite64
- unistd/vfork
-diff --git a/test/unistd/Makefile.in b/test/unistd/Makefile.in
-index c542f98..24b9a37 100644
---- a/test/unistd/Makefile.in
-+++ b/test/unistd/Makefile.in
-@@ -2,7 +2,10 @@
- # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
-
- ifeq ($(UCLIBC_HAS_LFS),)
--TESTS_DISABLED := tst-preadwrite64
-+TESTS_DISABLED := tst-preadwrite64 tst-posix_fallocate64
-+endif
-+ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),)
-+TESTS_DISABLED := tst-posix_fallocate
- endif
- OPTS_getopt := -abcXXX -9
- OPTS_getopt_long := --add XXX --delete YYY --verbose
-diff --git a/test/unistd/tst-posix_fallocate.c b/test/unistd/tst-posix_fallocate.c
-new file mode 100644
-index 0000000..d41c604
---- /dev/null
-+++ b/test/unistd/tst-posix_fallocate.c
-@@ -0,0 +1,127 @@
-+#include <fcntl.h>
-+#include <sys/stat.h>
-+
-+#ifndef TST_POSIX_FALLOCATE64
-+# define stat64 stat
-+# define fstat64 fstat
-+# else
-+# ifndef O_LARGEFILE
-+# error no O_LARGEFILE but you want to test with LFS enabled
-+# endif
-+#endif
-+
-+static void do_prepare (void);
-+#define PREPARE(argc, argv) do_prepare ()
-+static int do_test (void);
-+#define TEST_FUNCTION do_test ()
-+#include <test-skeleton.c>
-+
-+static int fd;
-+static void
-+do_prepare (void)
-+{
-+ fd = create_temp_file ("tst-posix_fallocate.", NULL);
-+ if (fd == -1)
-+ {
-+ printf ("cannot create temporary file: %m\n");
-+ exit (1);
-+ }
-+}
-+
-+
-+static int
-+do_test (void)
-+{
-+ struct stat64 st;
-+
-+ if (fstat64 (fd, &st) != 0)
-+ {
-+ puts ("1st fstat failed");
-+ return 1;
-+ }
-+
-+ if (st.st_size != 0)
-+ {
-+ puts ("file not created with size 0");
-+ return 1;
-+ }
-+
-+ if (posix_fallocate (fd, 512, 768) != 0)
-+ {
-+ puts ("1st posix_fallocate call failed");
-+ return 1;
-+ }
-+
-+ if (fstat64 (fd, &st) != 0)
-+ {
-+ puts ("2nd fstat failed");
-+ return 1;
-+ }
-+
-+ if (st.st_size != 512 + 768)
-+ {
-+ printf ("file size after 1st posix_fallocate call is %llu, expected %u\n",
-+ (unsigned long long int) st.st_size, 512u + 768u);
-+ return 1;
-+ }
-+
-+ if (posix_fallocate (fd, 0, 1024) != 0)
-+ {
-+ puts ("2nd posix_fallocate call failed");
-+ return 1;
-+ }
-+
-+ if (fstat64 (fd, &st) != 0)
-+ {
-+ puts ("3rd fstat failed");
-+ return 1;
-+ }
-+
-+ if (st.st_size != 512 + 768)
-+ {
-+ puts ("file size changed in 2nd posix_fallocate");
-+ return 1;
-+ }
-+
-+ if (posix_fallocate (fd, 2048, 64) != 0)
-+ {
-+ puts ("3rd posix_fallocate call failed");
-+ return 1;
-+ }
-+
-+ if (fstat64 (fd, &st) != 0)
-+ {
-+ puts ("4th fstat failed");
-+ return 1;
-+ }
-+
-+ if (st.st_size != 2048 + 64)
-+ {
-+ printf ("file size after 3rd posix_fallocate call is %llu, expected %u\n",
-+ (unsigned long long int) st.st_size, 2048u + 64u);
-+ return 1;
-+ }
-+#ifdef TST_POSIX_FALLOCATE64
-+ if (posix_fallocate64 (fd, 4097ULL, 4294967295ULL + 2ULL) != 0)
-+ {
-+ puts ("4th posix_fallocate call failed");
-+ return 1;
-+ }
-+
-+ if (fstat64 (fd, &st) != 0)
-+ {
-+ puts ("5th fstat failed");
-+ return 1;
-+ }
-+
-+ if (st.st_size != 4097ULL + 4294967295ULL + 2ULL)
-+ {
-+ printf ("file size after 4th posix_fallocate call is %llu, expected %llu\n",
-+ (unsigned long long int) st.st_size, 4097ULL + 4294967295ULL + 2ULL);
-+ return 1;
-+ }
-+#endif
-+ close (fd);
-+
-+ return 0;
-+}
-diff --git a/test/unistd/tst-posix_fallocate64.c b/test/unistd/tst-posix_fallocate64.c -new file mode 100644
-index 0000000..b1ee0ff
---- /dev/null
-+++ b/test/unistd/tst-posix_fallocate64.c
-@@ -0,0 +1,2 @@
-+#define TST_POSIX_FALLOCATE64
-+#include "tst-posix_fallocate.c"
---
-1.7.10.4
-
package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch deleted +0 -44
44 lines not on this page · raw message
package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch deleted +0 -86
86 lines not on this page · raw message
package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch deleted +0 -46
46 lines not on this page · raw message
package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch deleted +0 -39
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch deleted +0 -34
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch deleted +0 -30
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch deleted +0 -66
66 lines not on this page · raw message
package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch deleted +0 -66
66 lines not on this page · raw message
package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch deleted +0 -60
60 lines not on this page · raw message
package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch deleted +0 -168
168 lines not on this page · raw message
package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch deleted +0 -39
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch deleted +0 -30
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch deleted +0 -284
284 lines not on this page · raw message
package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch deleted +0 -66
66 lines not on this page · raw message
package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch deleted +0 -43
43 lines not on this page · raw message
package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch deleted +0 -70
70 lines not on this page · raw message
package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch deleted +0 -54
54 lines not on this page · raw message
package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch deleted +0 -37
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0059-test-cater-for-config.patch deleted +0 -81
81 lines not on this page · raw message
package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch deleted +0 -30
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch deleted +0 -39
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch deleted +0 -58
58 lines not on this page · raw message
package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch deleted +0 -691
691 lines not on this page · raw message
package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch deleted +0 -134
134 lines not on this page · raw message
package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch deleted +0 -151
151 lines not on this page · raw message
package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch deleted +0 -79
79 lines not on this page · raw message
package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch deleted +0 -157
157 lines not on this page · raw message
package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch deleted +0 -31
Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch deleted +0 -58
58 lines not on this page · raw message
package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch deleted +0 -870
870 lines not on this page · raw message
package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch deleted +0 -89
89 lines not on this page · raw message
package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch deleted +0 -56
56 lines not on this page · raw message
package/uclibc/uClibc-0.9.33.config deleted +0 -277
277 lines not on this page · raw message
The rest of this diff is not shown. View the raw message.
Signature · 1 line
2.6.4
Part of the diff is not shown here. View the raw message.
PATCH 6/8 uclibc: remove 0.9.33 version
Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 3 lines
The upstream project is dead, the 0.9.33 version requires tons of patches, and uclibc-ng has now successfully replaced uclibc. It is time to get rid of the 0.9.33 version.
For some reason I had some issue to apply the patch with pwclient (too many lines removed at once ? :p )
There is no legacy handling for BR2_UCLIBC_VERSION_0_9_33.
Best regards,
Romain
Quoted 1,494 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- .../0001-bits-time.h-sync-with-glibc-2.16.patch | 37 - .../uclibc/0.9.33.2/0003-Add-dup3-syscall.patch | 54 - ...deps-add-__kernel_long-and-__kernel_ulong.patch | 381 ------ ...estore-stack-pointer-just-after-return-fr.patch | 42 - ...e.S-Add-missing-IT-instruction-for-Thumb2.patch | 29 - ...8-arm-move-check-for-BX-to-its-own-header.patch | 257 ---- .../0.9.33.2/0009-mips64-fix-n64-interp.patch | 51 - ...0010-Rules.mak-fix-breakage-from-603af30d.patch | 31 - ...11-libc-add-non-standard-execvpe-function.patch | 163 --- .../0012-libc-stdlib-add-mkostemp-helpers.patch | 155 --- ...ventfd-Implement-eventfd2-and-fix-eventfd.patch | 64 - .../uclibc/0.9.33.2/0015-add-posix_madvise.c.patch | 61 - ...ptl-sh-fix-race-condition-in-lll_wait_tid.patch | 38 - ...d-SIGCANCEL-to-the-list-of-blocked-signal.patch | 37 - ...18-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch | 52 - ...nclude-elf.h-update-for-ELFOSABI_-changes.patch | 34 - ...0020-update-ptrace.h-to-latest-from-glibc.patch | 113 -- ...x-authnone_marshal-in-multithreading-cont.patch | 128 -- ...t-__syscall_error-callers-to-use-a0-for-a.patch | 57 - ...-instead-of-v0-for-__syscall_error-argume.patch | 63 - ...se-.arm-mode-for-resolver-unconditionally.patch | 29 - ...s-getpid-behave-similar-to-the-common-one.patch | 53 - ...yscalls.h-allow-immediate-values-as-6th-s.patch | 33 - .../0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch | 57 - .../0029-inet-rpc-fix-build-in-NPTL-case.patch | 58 - ...plement-assignment-allocation-m-character.patch | 190 --- ...map-sys_mmap2-do-unsigned-shift-of-offset.patch | 35 - .../0.9.33.2/0033-rpmatch-backport-function.patch | 78 -- .../0.9.33.2/0034-statfs-support-f_frsize.patch | 189 --- ...5-socket.h-pull-socket_type.h-from-eglibc.patch | 1374 -------------------- package/uclibc/0.9.33.2/0036-mount.h-update.patch | 91 -- ...n_bits_syscall_h-do-not-leave-undefined-S.patch | 38 - ...38-libc-sysdeps-sync-bits-in.h-with-glibc.patch | 117 -- ...-reuse-free-slots-at-the-end-of-exit-func.patch | 43 - ...ame-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch | 200 --- .../0.9.33.2/0041-libc-add-posix_fallocate.patch | 337 ----- ...-fix-overflow-checking-in-int_add_no_wrap.patch | 44 - ...Add-missing-SYMBOL_PREFIX-to-symbol-names.patch | 86 -- ...inet-do-not-filter-responses-in-res_query.patch | 46 - ...-Remove-pragma-weak-for-undeclared-symbol.patch | 39 - ...tting-the-nameserver-from-_res-state-afte.patch | 34 - ...-use-fputws_unlocked-S-F-instead-of-fputw.patch | 30 - ...48-Fix-a-problem-with-scanning-wide-chars.patch | 66 - ...agileness-in-dlopen-do_dlopen-wrapper-wor.patch | 66 - ...lopen-implementation-from-statically-link.patch | 60 - ...ce-fix-backtrace-for-statically-linked-ap.patch | 168 --- ...libubacktrace-fix-build-due-to-some-typos.patch | 39 - ...plicitly-include-uClibc_page.h-to-make-PA.patch | 30 - ...se-new-bits-scheme-for-arch-specific-flag.patch | 284 ---- ...5-siginfo_h-add-a-missing-function-member.patch | 66 - ...-_NSIG-to-128-not-129.-This-matches-glibc.patch | 43 - ...EV_PAD_SIZE-takes-__WORDSIZE-into-account.patch | 70 - ...atus.h-correctly-interpret-status-0x007f-.patch | 54 - ...58-test-tls-fix-build-with-newer-binutils.patch | 37 - .../0.9.33.2/0059-test-cater-for-config.patch | 81 -- .../0.9.33.2/0060-test-Fix-math-c-dependency.patch | 30 - .../0.9.33.2/0061-fix-sparc-networking.patch | 39 - ...ibdl-Also-include-dl-tls.h-for-for-SHARED.patch | 58 - ...nptl-remove-duplicate-vfork-in-libpthread.patch | 691 ---------- ...erpc-update-ptrace.h-to-latest-from-glibc.patch | 134 -- ...parc-update-ptrace.h-to-latest-from-glibc.patch | 151 --- ...clude-__iconv_codesets-into-iconv-utility.patch | 79 -- .../0066-mips-rename-siginfo-_timer-members.patch | 157 --- ...-guard-tcb-offsets.h-include-with-RESET_P.patch | 31 - ...t-implementations-conditional-compilation.patch | 58 - .../0069-Add-missing-C99-float-ld-wrappers.patch | 870 ------------- ...-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch | 89 -- .../0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch | 56 - package/uclibc/Config.in | 9 - package/uclibc/uClibc-0.9.33.config | 277 ---- package/uclibc/uclibc.hash | 3 - package/uclibc/uclibc.mk | 3 - 72 files changed, 8847 deletions(-) delete mode 100644 package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch delete mode 100644 package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch delete mode 100644 package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch delete mode 100644 package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch delete mode 100644 package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch delete mode 100644 package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch delete mode 100644 package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch delete mode 100644 package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch delete mode 100644 package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch delete mode 100644 package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch delete mode 100644 package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch delete mode 100644 package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch delete mode 100644 package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch delete mode 100644 package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch delete mode 100644 package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch delete mode 100644 package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch delete mode 100644 package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch delete mode 100644 package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch delete mode 100644 package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch delete mode 100644 package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch delete mode 100644 package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch delete mode 100644 package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch delete mode 100644 package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch delete mode 100644 package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch delete mode 100644 package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch delete mode 100644 package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch delete mode 100644 package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch delete mode 100644 package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch delete mode 100644 package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch delete mode 100644 package/uclibc/0.9.33.2/0036-mount.h-update.patch delete mode 100644 package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch delete mode 100644 package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch delete mode 100644 package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch delete mode 100644 package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch delete mode 100644 package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch delete mode 100644 package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch delete mode 100644 package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch delete mode 100644 package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch delete mode 100644 package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch delete mode 100644 package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch delete mode 100644 package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch delete mode 100644 package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch delete mode 100644 package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch delete mode 100644 package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch delete mode 100644 package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch delete mode 100644 package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch delete mode 100644 package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch delete mode 100644 package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch delete mode 100644 package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch delete mode 100644 package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch delete mode 100644 package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch delete mode 100644 package/uclibc/0.9.33.2/0059-test-cater-for-config.patch delete mode 100644 package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch delete mode 100644 package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch delete mode 100644 package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch delete mode 100644 package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch delete mode 100644 package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch delete mode 100644 package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch delete mode 100644 package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch delete mode 100644 package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch delete mode 100644 package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch delete mode 100644 package/uclibc/uClibc-0.9.33.configpackage/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch deleted +0
-37@@ -1,37 +0,0 @@ -From bb08cd16cb0353b3d4116ca8959dbecd2e78f545 Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard <[email protected]> -Date: Tue, 3 Jul 2012 15:54:57 +0200 -Subject: [PATCH 1/8] bits/time.h: sync with glibc 2.16 - -CLOCK_MONOTONIC_RAW is available since 2.6.28 -(2d42244ae71d: clocksource: introduce CLOCK_MONOTONIC_RAW), and -CLOCK_*_COARSE since 2.6.32 (da15cfdae033: time: Introduce -CLOCK_REALTIME_COARSE). - -Signed-off-by: Peter Korsgaard <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - libc/sysdeps/linux/common/bits/time.h | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/libc/sysdeps/linux/common/bits/time.h b/libc/sysdeps/linux/common/bits/time.h -index 7ed54bf..c871223 100644 ---- a/libc/sysdeps/linux/common/bits/time.h -+++ b/libc/sysdeps/linux/common/bits/time.h -@@ -54,6 +54,12 @@ - # define CLOCK_PROCESS_CPUTIME_ID 2 - /* Thread-specific CPU-time clock. */ - # define CLOCK_THREAD_CPUTIME_ID 3 -+/* Monotonic system-wide clock, not adjusted for frequency scaling. */ -+# define CLOCK_MONOTONIC_RAW 4 -+/* Identifier for system-wide realtime clock, updated only on ticks. */ -+# define CLOCK_REALTIME_COARSE 5 -+/* Monotonic system-wide clock, updated only on ticks. */ -+# define CLOCK_MONOTONIC_COARSE 6 - - /* Flag to indicate time is absolute. */ - # define TIMER_ABSTIME 1 --- -1.8.1.2 -package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch deleted +0
-54@@ -1,54 +0,0 @@ -From 518bc50ae42540574bba360225c8a65b56b79148 Mon Sep 17 00:00:00 2001 -From: Jonas Bonn <[email protected]> -Date: Tue, 6 Sep 2011 10:30:40 +0200 -Subject: [PATCH 3/8] Add dup3 syscall - -Signed-off-by: Jonas Bonn <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - include/unistd.h | 4 ++++ - libc/sysdeps/linux/common/dup3.c | 17 +++++++++++++++++ - 2 files changed, 21 insertions(+) - create mode 100644 libc/sysdeps/linux/common/dup3.c - -diff --git a/include/unistd.h b/include/unistd.h -index 1b2fd4d..f7d070b 100644 ---- a/include/unistd.h -+++ b/include/unistd.h -@@ -513,6 +513,10 @@ extern int dup (int __fd) __THROW __wur; - extern int dup2 (int __fd, int __fd2) __THROW; - libc_hidden_proto(dup2) - -+/* Duplicate FD to FD2, closing FD2 and making it open on the same file. */ -+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; - #ifdef __USE_GNU -diff --git a/libc/sysdeps/linux/common/dup3.c b/libc/sysdeps/linux/common/dup3.c -new file mode 100644 -index 0000000..7b57438 ---- /dev/null -+++ b/libc/sysdeps/linux/common/dup3.c -@@ -0,0 +1,17 @@ -+/* 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> -+ -+ -+#ifdef __NR_dup3 -+_syscall3(int, dup3, int, oldfd, int, newfd, int, flags) -+libc_hidden_def(dup3) -+#endif --- -1.8.1.2 -package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch deleted +0
-381@@ -1,381 +0,0 @@ -From 7fef6b983456e4c529a5239ea90715050e6f4452 Mon Sep 17 00:00:00 2001 -From: Chris Packham <[email protected]> -Date: Mon, 1 Oct 2012 18:12:54 +1300 -Subject: [PATCH 4/8] libc/sysdeps: add __kernel_long and __kernel_ulong - -Linux 3.4 added __kernel_long_t and __kernel_ulong_t and various -exported header files were updated to use these new types. Add the -definitions for __kernel_long_t and __kernel_ulong_t to the relevant -kernel_types.h headers. - -This change was automated with the following scriptlet - - git grep --name-only 'typedef.*__kernel_old_dev_t' \ - | xargs sed -i '/typedef.*__kernel_old_dev_t/ a\ - typedef long\t\t__kernel_long_t;\ - typedef unsigned long\t__kernel_ulong_t;' - -Whitespace in arm, hppa, sparc was then manually fixed up. - -Signed-off-by: Chris Packham <[email protected]> -[yann.morin.1998 at free.fr: remove avr32 bits, now Buildroot no longer - supports it] -Signed-off-by: "Yann E. MORIN" <[email protected]> --- -Here's a cleaned up patch which should get the whitespace right. I'm a -bit iffy about the sparc changes they make sense to me but it's not a -platform I have access to. - -I can break this up per arch or per maintainer if requested. - - libc/sysdeps/linux/alpha/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/arm/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/bfin/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/c6x/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/cris/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/e1/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/h8300/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/hppa/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/i386/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/ia64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/m68k/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/microblaze/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/mips/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/nios2/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/powerpc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/sh/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sh64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sparc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/v850/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/x86_64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/xtensa/bits/kernel_types.h | 2 ++ - 22 files changed, 50 insertions(+) -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> -Signed-off-by: Gustavo Zacarias <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - libc/sysdeps/linux/alpha/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/arm/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/bfin/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/c6x/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/cris/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/e1/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/h8300/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/hppa/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/i386/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/ia64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/m68k/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/microblaze/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/mips/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/nios2/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/powerpc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/sh/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sh64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sparc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/v850/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/x86_64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/xtensa/bits/kernel_types.h | 2 ++ - 22 files changed, 50 insertions(+) - -diff --git a/libc/sysdeps/linux/alpha/bits/kernel_types.h b/libc/sysdeps/linux/alpha/bits/kernel_types.h -index d5574c9..cd59b9d 100644 ---- a/libc/sysdeps/linux/alpha/bits/kernel_types.h -+++ b/libc/sysdeps/linux/alpha/bits/kernel_types.h -@@ -33,6 +33,8 @@ typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_uid_t __kernel_uid32_t; - typedef __kernel_gid_t __kernel_gid32_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - int val[2]; -diff --git a/libc/sysdeps/linux/arm/bits/kernel_types.h b/libc/sysdeps/linux/arm/bits/kernel_types.h -index 766a306..6b36f32 100644 ---- a/libc/sysdeps/linux/arm/bits/kernel_types.h -+++ b/libc/sysdeps/linux/arm/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/bfin/bits/kernel_types.h b/libc/sysdeps/linux/bfin/bits/kernel_types.h -index d69a875..9fec595 100644 ---- a/libc/sysdeps/linux/bfin/bits/kernel_types.h -+++ b/libc/sysdeps/linux/bfin/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/c6x/bits/kernel_types.h b/libc/sysdeps/linux/c6x/bits/kernel_types.h -index 7557309..2c363a8 100644 ---- a/libc/sysdeps/linux/c6x/bits/kernel_types.h -+++ b/libc/sysdeps/linux/c6x/bits/kernel_types.h -@@ -22,6 +22,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef unsigned int __kernel_size_t; - typedef int __kernel_ssize_t; - typedef int __kernel_ptrdiff_t; -diff --git a/libc/sysdeps/linux/cris/bits/kernel_types.h b/libc/sysdeps/linux/cris/bits/kernel_types.h -index f122c7f..5d31f7b 100644 ---- a/libc/sysdeps/linux/cris/bits/kernel_types.h -+++ b/libc/sysdeps/linux/cris/bits/kernel_types.h -@@ -28,6 +28,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - #ifdef __GNUC__ - typedef long long __kernel_loff_t; -diff --git a/libc/sysdeps/linux/e1/bits/kernel_types.h b/libc/sysdeps/linux/e1/bits/kernel_types.h -index 8017d85..f55a129 100644 ---- a/libc/sysdeps/linux/e1/bits/kernel_types.h -+++ b/libc/sysdeps/linux/e1/bits/kernel_types.h -@@ -31,6 +31,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - /* -diff --git a/libc/sysdeps/linux/h8300/bits/kernel_types.h b/libc/sysdeps/linux/h8300/bits/kernel_types.h -index 0570675..4cfd1bf 100644 ---- a/libc/sysdeps/linux/h8300/bits/kernel_types.h -+++ b/libc/sysdeps/linux/h8300/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/hppa/bits/kernel_types.h b/libc/sysdeps/linux/hppa/bits/kernel_types.h -index 4441f9b..6b2e794 100644 ---- a/libc/sysdeps/linux/hppa/bits/kernel_types.h -+++ b/libc/sysdeps/linux/hppa/bits/kernel_types.h -@@ -45,6 +45,8 @@ typedef long long __kernel_off64_t; - typedef unsigned long long __kernel_ino64_t; - - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/i386/bits/kernel_types.h b/libc/sysdeps/linux/i386/bits/kernel_types.h -index 9c07c72..59044b8 100644 ---- a/libc/sysdeps/linux/i386/bits/kernel_types.h -+++ b/libc/sysdeps/linux/i386/bits/kernel_types.h -@@ -40,6 +40,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/ia64/bits/kernel_types.h b/libc/sysdeps/linux/ia64/bits/kernel_types.h -index c8ef86d..e31dc65 100644 ---- a/libc/sysdeps/linux/ia64/bits/kernel_types.h -+++ b/libc/sysdeps/linux/ia64/bits/kernel_types.h -@@ -52,5 +52,7 @@ typedef __kernel_gid_t __kernel_gid32_t; - - typedef unsigned int __kernel_dev_t; - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - #endif /* _ASM_IA64_POSIX_TYPES_H */ -diff --git a/libc/sysdeps/linux/m68k/bits/kernel_types.h b/libc/sysdeps/linux/m68k/bits/kernel_types.h -index 0a77a8f..176b968 100644 ---- a/libc/sysdeps/linux/m68k/bits/kernel_types.h -+++ b/libc/sysdeps/linux/m68k/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/microblaze/bits/kernel_types.h b/libc/sysdeps/linux/microblaze/bits/kernel_types.h -index 2a70575..a9f736b 100644 ---- a/libc/sysdeps/linux/microblaze/bits/kernel_types.h -+++ b/libc/sysdeps/linux/microblaze/bits/kernel_types.h -@@ -44,6 +44,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - #ifdef __GNUC__ - typedef long long __kernel_loff_t; -diff --git a/libc/sysdeps/linux/mips/bits/kernel_types.h b/libc/sysdeps/linux/mips/bits/kernel_types.h -index 9fc3b96..97faeac 100644 ---- a/libc/sysdeps/linux/mips/bits/kernel_types.h -+++ b/libc/sysdeps/linux/mips/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef int __kernel_gid32_t; - typedef __kernel_uid_t __kernel_old_uid_t; - typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #else - typedef unsigned int __kernel_dev_t; -@@ -68,6 +70,8 @@ typedef int __kernel_gid32_t; - typedef __kernel_uid_t __kernel_old_uid_t; - typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #endif - -diff --git a/libc/sysdeps/linux/nios2/bits/kernel_types.h b/libc/sysdeps/linux/nios2/bits/kernel_types.h -index 8b86d79..3c030e7 100644 ---- a/libc/sysdeps/linux/nios2/bits/kernel_types.h -+++ b/libc/sysdeps/linux/nios2/bits/kernel_types.h -@@ -31,6 +31,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef unsigned short __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/powerpc/bits/kernel_types.h b/libc/sysdeps/linux/powerpc/bits/kernel_types.h -index 3f3b933..1167de2 100644 ---- a/libc/sysdeps/linux/powerpc/bits/kernel_types.h -+++ b/libc/sysdeps/linux/powerpc/bits/kernel_types.h -@@ -36,6 +36,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - #else - typedef unsigned int __kernel_dev_t; - typedef unsigned int __kernel_ino_t; -@@ -61,6 +63,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #endif - -diff --git a/libc/sysdeps/linux/sh/bits/kernel_types.h b/libc/sysdeps/linux/sh/bits/kernel_types.h -index f96e9fa..ac97261 100644 ---- a/libc/sysdeps/linux/sh/bits/kernel_types.h -+++ b/libc/sysdeps/linux/sh/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/sh64/bits/kernel_types.h b/libc/sysdeps/linux/sh64/bits/kernel_types.h -index 671cc83..8cc6c61 100644 ---- a/libc/sysdeps/linux/sh64/bits/kernel_types.h -+++ b/libc/sysdeps/linux/sh64/bits/kernel_types.h -@@ -43,6 +43,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/sparc/bits/kernel_types.h b/libc/sysdeps/linux/sparc/bits/kernel_types.h -index 0cc4bc2..a10e075 100644 ---- a/libc/sysdeps/linux/sparc/bits/kernel_types.h -+++ b/libc/sysdeps/linux/sparc/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_gid16_t; - typedef __kernel_uid_t __kernel_old_uid_t; - typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef __kernel_uid_t __kernel_uid32_t; - typedef __kernel_gid_t __kernel_gid32_t; - typedef int __kernel_suseconds_t; -@@ -62,6 +64,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #endif - -diff --git a/libc/sysdeps/linux/v850/bits/kernel_types.h b/libc/sysdeps/linux/v850/bits/kernel_types.h -index 3e851ab..780aa8a 100644 ---- a/libc/sysdeps/linux/v850/bits/kernel_types.h -+++ b/libc/sysdeps/linux/v850/bits/kernel_types.h -@@ -41,6 +41,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/x86_64/bits/kernel_types.h b/libc/sysdeps/linux/x86_64/bits/kernel_types.h -index de800d7..0cae08c 100644 ---- a/libc/sysdeps/linux/x86_64/bits/kernel_types.h -+++ b/libc/sysdeps/linux/x86_64/bits/kernel_types.h -@@ -40,6 +40,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/xtensa/bits/kernel_types.h b/libc/sysdeps/linux/xtensa/bits/kernel_types.h -index 44f1075..ed38f2e 100644 ---- a/libc/sysdeps/linux/xtensa/bits/kernel_types.h -+++ b/libc/sysdeps/linux/xtensa/bits/kernel_types.h -@@ -33,6 +33,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef unsigned short __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - /* Beginning in 2.6 kernels, which is the first version that includes the --- -1.8.1.2 -package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch deleted +0
-42@@ -1,42 +0,0 @@ -From 963671276c0ef14458e0a7990107bcd2c075f3cd Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono <[email protected]> -Date: Mon, 10 Dec 2012 09:50:52 +0100 -Subject: [PATCH 6/8] arm: clone: restore stack pointer just after return from - syscall - -If the syscall returns with an error the stack pointer and r4 register -are not restored because the instruction 'ldmnefd sp!, {r4}' is executed -after branching to '__error' label. -This bug has been spotted out by running './utstest clone 5' from LTP -built with -fstack-protector-all compiler flag as log below: - -root at cortex-a9:/usr/tests/ltp/testcases/bin# ./utstest clone 5 -stack smashing detected: ./utstest terminated() - -Regression introduced by commit e58798e107d652644629a1daaa95d76430808d53 - -Signed-off-by: Filippo Arcidiacono <[email protected]> -Signed-off-by: Giuseppe Di Giore <[email protected]> -Signed-off-by: Carmelo Amoroso <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - libc/sysdeps/linux/arm/clone.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index fdc05b8..e4101ba 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -111,8 +111,8 @@ __clone: - ldr r4, [sp, #12] - DO_CALL (clone) - movs a1, a1 -- blt __error - ldmnefd sp!, {r4} -+ blt __error - IT(t, ne) - #if defined(__USE_BX__) - bxne lr --- -1.8.1.2 -package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch deleted +0
-29@@ -1,29 +0,0 @@ -From c12211a2f1832169e31063512b3e2081e503e856 Mon Sep 17 00:00:00 2001 -From: Will Newton <[email protected]> -Date: Tue, 2 Apr 2013 13:53:35 +0100 -Subject: [PATCH 7/8] arm/clone.S: Add missing IT instruction for Thumb2. - -The conditional load needs to be made part of an IT block on Thumb2 -cores. - -Signed-off-by: Will Newton <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - libc/sysdeps/linux/arm/clone.S | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index e4101ba..1f7f09d 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -111,6 +111,7 @@ __clone: - ldr r4, [sp, #12] - DO_CALL (clone) - movs a1, a1 -+ IT(t, ne) - ldmnefd sp!, {r4} - blt __error - IT(t, ne) --- -1.8.1.2 -package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch deleted +0
-257@@ -1,257 +0,0 @@ -From 06827e81c976d16aa5861a40ac0d780b63a4d470 Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" <[email protected]> -Date: Thu, 11 Apr 2013 23:02:03 +0200 -Subject: [PATCH 8/8] arm: move check for BX to its own header - -As Will noticed, the header this check is currently done in -is asm-only, and is not meant to be included from C code. -This breaks compilation when compiled for a Thumb2-aware CPU. - -Move the BX check to its own header, and revert 7a246fd. - -Reported-by: Will Newton <[email protected]> -Signed-off-by: "Yann E. MORIN" <[email protected]> -Cc: Will Newton <[email protected]> -Signed-off-by: Thomas Petazzoni <[email protected]> ---- - ldso/ldso/arm/dl-startup.h | 2 +- - ldso/ldso/arm/resolve.S | 1 + - libc/string/arm/_memcpy.S | 1 + - libc/string/arm/memcmp.S | 1 + - libc/string/arm/memset.S | 1 + - libc/string/arm/strcmp.S | 1 + - libc/string/arm/strlen.S | 1 + - libc/sysdeps/linux/arm/__longjmp.S | 2 +- - libc/sysdeps/linux/arm/bits/arm_asm.h | 8 -------- - libc/sysdeps/linux/arm/bits/arm_bx.h | 34 ++++++++++++++++++++++++++++++++++ - libc/sysdeps/linux/arm/clone.S | 1 + - libc/sysdeps/linux/arm/mmap64.S | 1 + - libc/sysdeps/linux/arm/syscall-eabi.S | 1 + - libc/sysdeps/linux/arm/sysdep.h | 2 +- - libc/sysdeps/linux/arm/vfork.S | 1 + - 15 files changed, 47 insertions(+), 11 deletions(-) - create mode 100644 libc/sysdeps/linux/arm/bits/arm_bx.h - -diff --git a/ldso/ldso/arm/dl-startup.h b/ldso/ldso/arm/dl-startup.h -index f7d6052..8d6122b 100644 ---- a/ldso/ldso/arm/dl-startup.h -+++ b/ldso/ldso/arm/dl-startup.h -@@ -7,7 +7,7 @@ - */ - - #include <features.h> --#include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #if !defined(__thumb__) - __asm__( -diff --git a/ldso/ldso/arm/resolve.S b/ldso/ldso/arm/resolve.S -index 08889d0..600d3af 100644 ---- a/ldso/ldso/arm/resolve.S -+++ b/ldso/ldso/arm/resolve.S -@@ -92,6 +92,7 @@ - - #include <sys/syscall.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #include <features.h> - -diff --git a/libc/string/arm/_memcpy.S b/libc/string/arm/_memcpy.S -index b26080d..c59f5b8 100644 ---- a/libc/string/arm/_memcpy.S -+++ b/libc/string/arm/_memcpy.S -@@ -40,6 +40,7 @@ - #include <features.h> - #include <endian.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #if !defined(THUMB1_ONLY) - /* -diff --git a/libc/string/arm/memcmp.S b/libc/string/arm/memcmp.S -index 65409f4..9f78415 100644 ---- a/libc/string/arm/memcmp.S -+++ b/libc/string/arm/memcmp.S -@@ -31,6 +31,7 @@ - - #include <features.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - .text - .global memcmp -diff --git a/libc/string/arm/memset.S b/libc/string/arm/memset.S -index 66aa603..6f78128 100644 ---- a/libc/string/arm/memset.S -+++ b/libc/string/arm/memset.S -@@ -20,6 +20,7 @@ - #include <features.h> - #include <sys/syscall.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - .text - .global memset -diff --git a/libc/string/arm/strcmp.S b/libc/string/arm/strcmp.S -index 97363c1..8b77ab0 100644 ---- a/libc/string/arm/strcmp.S -+++ b/libc/string/arm/strcmp.S -@@ -31,6 +31,7 @@ - - #include <features.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - .text - .global strcmp -diff --git a/libc/string/arm/strlen.S b/libc/string/arm/strlen.S -index 949e918..141f849 100644 ---- a/libc/string/arm/strlen.S -+++ b/libc/string/arm/strlen.S -@@ -21,6 +21,7 @@ - #include <endian.h> - #include <sys/syscall.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - /* size_t strlen(const char *S) - * entry: r0 -> string -diff --git a/libc/sysdeps/linux/arm/__longjmp.S b/libc/sysdeps/linux/arm/__longjmp.S -index 5faf4ec..7418dc2 100644 ---- a/libc/sysdeps/linux/arm/__longjmp.S -+++ b/libc/sysdeps/linux/arm/__longjmp.S -@@ -19,11 +19,11 @@ - - #include <features.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - #define _SETJMP_H - #define _ASM - #include <bits/setjmp.h> - -- - .global __longjmp - .type __longjmp,%function - .align 2 -diff --git a/libc/sysdeps/linux/arm/bits/arm_asm.h b/libc/sysdeps/linux/arm/bits/arm_asm.h -index 921c9a3..ff8ea92 100644 ---- a/libc/sysdeps/linux/arm/bits/arm_asm.h -+++ b/libc/sysdeps/linux/arm/bits/arm_asm.h -@@ -24,12 +24,4 @@ - #define THUMB1_ONLY 1 - #endif - --#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 */ -diff --git a/libc/sysdeps/linux/arm/bits/arm_bx.h b/libc/sysdeps/linux/arm/bits/arm_bx.h -new file mode 100644 -index 0000000..321490e ---- /dev/null -+++ b/libc/sysdeps/linux/arm/bits/arm_bx.h -@@ -0,0 +1,34 @@ -+/* Copyright (C) 2013 Yann E. MORIN <[email protected]> -+ * -+ * This file 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. -+ * -+ * This file 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, see -+ * <http://www.gnu.org/licenses/>. -+ */ -+ -+#ifndef _ARM_BX_H -+#define _ARM_BX_H -+ -+/* We need features.h first */ -+#if !defined _FEATURES_H -+#error Please include features.h first -+#endif /* features.h not yet included */ -+ -+#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_BX_H */ -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index 1f7f09d..4d646be 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -25,6 +25,7 @@ - #include <bits/errno.h> - #include <sys/syscall.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #if defined(__NR_clone) - /* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg); */ -diff --git a/libc/sysdeps/linux/arm/mmap64.S b/libc/sysdeps/linux/arm/mmap64.S -index 7071541..bd2cfb8 100644 ---- a/libc/sysdeps/linux/arm/mmap64.S -+++ b/libc/sysdeps/linux/arm/mmap64.S -@@ -21,6 +21,7 @@ - #include <bits/errno.h> - #include <sys/syscall.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #if defined __UCLIBC_HAS_LFS__ && defined __NR_mmap2 - -diff --git a/libc/sysdeps/linux/arm/syscall-eabi.S b/libc/sysdeps/linux/arm/syscall-eabi.S -index b931882..019f701 100644 ---- a/libc/sysdeps/linux/arm/syscall-eabi.S -+++ b/libc/sysdeps/linux/arm/syscall-eabi.S -@@ -18,6 +18,7 @@ - - #include <sys/syscall.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - /* In the EABI syscall interface, we don't need a special syscall to - implement syscall(). It won't work reliably with 64-bit arguments -diff --git a/libc/sysdeps/linux/arm/sysdep.h b/libc/sysdeps/linux/arm/sysdep.h -index e498695..9c1dbca 100644 ---- a/libc/sysdeps/linux/arm/sysdep.h -+++ b/libc/sysdeps/linux/arm/sysdep.h -@@ -21,7 +21,7 @@ - #define _LINUX_ARM_SYSDEP_H 1 - - #include <common/sysdep.h> --#include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #include <sys/syscall.h> - /* For Linux we can use the system call table in the header file -diff --git a/libc/sysdeps/linux/arm/vfork.S b/libc/sysdeps/linux/arm/vfork.S -index 17d6a4d..6c55d71 100644 ---- a/libc/sysdeps/linux/arm/vfork.S -+++ b/libc/sysdeps/linux/arm/vfork.S -@@ -7,6 +7,7 @@ - - #include <features.h> - #include <bits/arm_asm.h> -+#include <bits/arm_bx.h> - - #define _ERRNO_H - #include <bits/errno.h> --- -1.8.1.2 -package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch deleted +0
-51@@ -1,51 +0,0 @@ -From 603af30d6992e94ac30a66b953264076f4f2fd71 Mon Sep 17 00:00:00 2001 -From: Markos Chandras <[email protected]> -Date: Thu, 11 Jul 2013 16:59:16 +0000 -Subject: Rules.mak: MIPS64: Select correct interpreter - -gcc (eg 4.7.3) hardcodes the MIPS64 interpreters like this: -(see gcc/config/linux.h and gcc/config/mips/linux64.h) - -o32: UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -n32: UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" -n64: UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" - -The existing check for MIPS64 in uClibc is wrong because it does -not respect the selected ABI - -We fix this by explicitely checking the selected ABI instead of the -selected MIPS variant. - -Signed-off-by: Markos Chandras <[email protected]> -Cc: Anthony G. Basile <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- -diff --git a/Rules.mak b/Rules.mak -index 792b794..889108e 100644 ---- a/Rules.mak -+++ b/Rules.mak -@@ -138,13 +138,19 @@ export MAJOR_VERSION MINOR_VERSION SUBLEVEL VERSION ABI_VERSION LC_ALL - LIBC := libc - SHARED_LIBNAME := $(LIBC).so.$(ABI_VERSION) - UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION) --ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 mips64 powerpc64 s390x sparc64 x86_64 ),) -+ -+UCLIBC_LDSO_NAME := ld-uClibc -+ARCH_NATIVE_BIT := 32 -+ifneq ($(findstring $(TARGET_ARCH),hppa64 ia64 powerpc64 s390x sparc64 x86_64),) - UCLIBC_LDSO_NAME := ld64-uClibc - ARCH_NATIVE_BIT := 64 - else --UCLIBC_LDSO_NAME := ld-uClibc --ARCH_NATIVE_BIT := 32 -+ifeq ($(CONFIG_MIPS_N64_ABI),y) -+UCLIBC_LDSO_NAME := ld64-uClibc -+ARCH_NATIVE_BIT := 64 - endif -+endif -+ - UCLIBC_LDSO := $(UCLIBC_LDSO_NAME).so.$(ABI_VERSION) - NONSHARED_LIBNAME := uclibc_nonshared.a - libc := $(top_builddir)lib/$(SHARED_LIBNAME) --- -cgit v0.9.1package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch deleted +0
-31@@ -1,31 +0,0 @@ -From f5017653dc63d62c94cc2884ed3a50a4f93001cd Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias <[email protected]> -Date: Wed, 24 Jul 2013 12:28:19 -0300 -Subject: [PATCHv2] Rules.mak: fix breakage from 603af30d - -Removing the whitespace from findstring for 64 bit architectures has -bad consequences since powerpc would be a match in powerpc64 and sparc -would also be a match in sparc64. -That doesn't make them 64 bits in reality causing general breakage. - -Signed-off-by: Gustavo Zacarias <[email protected]> ---- - Rules.mak | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Rules.mak b/Rules.mak -index 889108e..be53d81 100644 ---- a/Rules.mak -+++ b/Rules.mak -@@ -141,7 +141,7 @@ UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION) - - UCLIBC_LDSO_NAME := ld-uClibc - ARCH_NATIVE_BIT := 32 --ifneq ($(findstring $(TARGET_ARCH),hppa64 ia64 powerpc64 s390x sparc64 x86_64),) -+ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 powerpc64 s390x sparc64 x86_64 ),) - UCLIBC_LDSO_NAME := ld64-uClibc - ARCH_NATIVE_BIT := 64 - else --- -1.8.1.5 -package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch deleted +0
-163@@ -1,163 +0,0 @@ -From 0eb30761a26c46aaf555464114851202ae9c27bd Mon Sep 17 00:00:00 2001 -From: Henning Heinold <[email protected]> -Date: Sat, 4 Jun 2011 21:23:15 +0200 -Subject: [PATCH] libc: add non standard execvpe function - -[Gustavo]: Drop TODO modification to make it compatible -Signed-off-by: Henning Heinold <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - include/unistd.h | 8 ++++++++ - libc/unistd/exec.c | 38 +++++++++++++++++++++++++++++++++----- - libc/unistd/execvpe.c | 7 +++++++ - 4 files changed, 52 insertions(+), 5 deletions(-) - create mode 100644 libc/unistd/execvpe.c - -diff --git a/include/unistd.h b/include/unistd.h -index feadf93..9479554 100644 ---- a/include/unistd.h -+++ b/include/unistd.h -@@ -619,6 +619,14 @@ extern int execlp (const char *__file, const char *__arg, ...) - __THROW __nonnull ((1)); - libc_hidden_proto(execlp) - -+#ifdef __USE_GNU -+/* Execute FILE, searching in the `PATH' environment variable if it contains -+ no slashes, with arguments ARGV and environment from a pointer */ -+extern int execvpe (__const char *__file, char *__const __argv[], char *__const __envp[]) -+ __THROW __nonnull ((1)); -+libc_hidden_proto(execvpe) -+#endif -+ - - #if defined __USE_MISC || defined __USE_XOPEN - /* Add INC to priority of the current process. */ -diff --git a/libc/unistd/exec.c b/libc/unistd/exec.c -index ba92989..8fa42e5 100644 ---- a/libc/unistd/exec.c -+++ b/libc/unistd/exec.c -@@ -32,6 +32,8 @@ - /**********************************************************************/ - #define EXEC_FUNC_COMMON 0 - #define EXEC_FUNC_EXECVP 1 -+#define EXEC_FUNC_EXECVPE 2 -+ - #if defined(__ARCH_USE_MMU__) - - /* We have an MMU, so use alloca() to grab space for buffers and arg lists. */ -@@ -58,6 +60,7 @@ - * execle(a) -> execve(-) - * execv(-) -> execve(-) - * execvp(a) -> execve(-) -+ * execvpe(a) -> execve(-) - */ - - # define EXEC_ALLOC_SIZE(VAR) /* nothing to do */ -@@ -219,15 +222,18 @@ libc_hidden_def(execlp) - - #endif - /**********************************************************************/ --#ifdef L_execvp -+#if defined (L_execvp) || defined(L_execvpe) - - - /* Use a default path that matches glibc behavior, since SUSv3 says - * this is implementation-defined. The default is current working dir, - * /bin, and then /usr/bin. */ - static const char default_path[] = ":/bin:/usr/bin"; -- -+#if defined (L_execvp) - int execvp(const char *path, char *const argv[]) -+#elif defined (L_execvpe) -+int execvpe(const char *path, char *const argv[], char *const envp[]) -+#endif - { - char *buf = NULL; - char *p; -@@ -245,7 +251,11 @@ int execvp(const char *path, char *const argv[]) - } - - if (strchr(path, '/')) { -+#if defined (L_execvp) - execve(path, argv, __environ); -+#elif defined (L_execvpe) -+ execve(path, argv, envp); -+#endif - if (errno == ENOEXEC) { - char **nargv; - EXEC_ALLOC_SIZE(size2) /* Do NOT add a semicolon! */ -@@ -254,11 +264,19 @@ int execvp(const char *path, char *const argv[]) - /* Need the dimension - 1. We omit counting the trailing - * NULL but we actually omit the first entry. */ - for (n=0 ; argv[n] ; n++) {} -+#if defined (L_execvp) - nargv = (char **) EXEC_ALLOC((n+2) * sizeof(char *), size2, EXEC_FUNC_EXECVP); -+#elif defined (L_execvpe) -+ nargv = (char **) EXEC_ALLOC((n+2) * sizeof(char *), size2, EXEC_FUNC_EXECVPE); -+#endif - nargv[0] = argv[0]; - nargv[1] = (char *)path; - memcpy(nargv+2, argv+1, n*sizeof(char *)); -+#if defined (L_execvp) - execve("/bin/sh", nargv, __environ); -+#elif defined (L_execvpe) -+ execve("/bin/sh", nargv, envp); -+#endif - EXEC_FREE(nargv, size2); - } - } else { -@@ -277,8 +295,11 @@ int execvp(const char *path, char *const argv[]) - return -1; - } - len = (FILENAME_MAX - 1) - plen; -- -+#if defined (L_execvp) - buf = EXEC_ALLOC(FILENAME_MAX, size, EXEC_FUNC_EXECVP); -+#elif defined (L_execvpe) -+ buf = EXEC_ALLOC(FILENAME_MAX, size, EXEC_FUNC_EXECVPE); -+#endif - { - int seen_small = 0; - s0 = buf + len; -@@ -300,8 +321,11 @@ int execvp(const char *path, char *const argv[]) - s[plen-1] = '/'; - } - -+#if defined (L_execvp) - execve(s, argv, __environ); -- -+#elif defined (L_execvpe) -+ execve(s, argv, envp); -+#endif - seen_small = 1; - - if (errno == ENOEXEC) { -@@ -325,7 +349,11 @@ int execvp(const char *path, char *const argv[]) - - return -1; - } -+#if defined (L_execvp) - libc_hidden_def(execvp) -- -+#elif defined (L_execvpe) -+libc_hidden_def(execvpe) - #endif -+ -+#endif /* #if defined (L_execvp) || defined(L_execvpe) */ - /**********************************************************************/ -diff --git a/libc/unistd/execvpe.c b/libc/unistd/execvpe.c -new file mode 100644 -index 0000000..c3c1e43 ---- /dev/null -+++ b/libc/unistd/execvpe.c -@@ -0,0 +1,7 @@ -+/* Copyright (C) 2011-2013 Hennning Heinold <[email protected]> -+ * -+ * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. -+ */ -+ -+#define L_execvpe -+#include "exec.c" --- -1.8.1.5 -package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch deleted +0
-155@@ -1,155 +0,0 @@ -From 42d1b23fc0f3748b8bf474e456d6c44aa7e563fd Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <[email protected]> -Date: Wed, 14 Nov 2012 00:30:54 -0500 -Subject: [PATCH] libc/stdlib: add mkostemp helpers - -Some projects (like udev) are starting to use this. - -Imported from glibc. - -Signed-off-by: Mike Frysinger <[email protected]> ---- - include/stdlib.h | 23 +++++++++++++++++++++++ - libc/stdlib/Makefile.in | 4 ++-- - libc/stdlib/mkostemp.c | 32 ++++++++++++++++++++++++++++++++ - libc/stdlib/mkostemp64.c | 33 +++++++++++++++++++++++++++++++++ - 4 files changed, 90 insertions(+), 2 deletions(-) - create mode 100644 libc/stdlib/mkostemp.c - create mode 100644 libc/stdlib/mkostemp64.c - -diff --git a/include/stdlib.h b/include/stdlib.h -index 354fc66..79ccc55 100644 ---- a/include/stdlib.h -+++ b/include/stdlib.h -@@ -652,6 +652,29 @@ extern int mkstemp64 (char *__template) __nonnull ((1)) __wur; - extern char *mkdtemp (char *__template) __THROW __nonnull ((1)) __wur; - #endif - -+#ifdef __USE_GNU -+/* Generate a unique temporary file name from TEMPLATE similar to -+ mkstemp. But allow the caller to pass additional flags which are -+ used in the open call to create the file.. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+# ifndef __USE_FILE_OFFSET64 -+extern int mkostemp (char *__template, int __flags) __nonnull ((1)) __wur; -+# else -+# ifdef __REDIRECT -+extern int __REDIRECT (mkostemp, (char *__template, int __flags), mkostemp64) -+ __nonnull ((1)) __wur; -+# else -+# define mkostemp mkostemp64 -+# endif -+# endif -+# ifdef __USE_LARGEFILE64 -+extern int mkostemp64 (char *__template, int __flags) __nonnull ((1)) __wur; -+# endif -+ -+#endif -+ - - __BEGIN_NAMESPACE_STD - /* Execute the given line as a shell command. -diff --git a/libc/stdlib/Makefile.in b/libc/stdlib/Makefile.in -index 3166b8e..b92f7ce 100644 ---- a/libc/stdlib/Makefile.in -+++ b/libc/stdlib/Makefile.in -@@ -12,7 +12,7 @@ include $(top_srcdir)libc/stdlib/malloc-simple/Makefile.in - include $(top_srcdir)libc/stdlib/malloc-standard/Makefile.in - - CSRC-y := \ -- abort.c getenv.c mkdtemp.c realpath.c canonicalize.c mkstemp.c \ -+ abort.c getenv.c mkdtemp.c realpath.c canonicalize.c mkstemp.c mkostemp.c \ - rand.c random.c random_r.c setenv.c div.c ldiv.c lldiv.c \ - getpt.c drand48-iter.c jrand48.c \ - jrand48_r.c lcong48.c lrand48.c lrand48_r.c mrand48.c mrand48_r.c nrand48.c \ -@@ -21,7 +21,7 @@ CSRC-y := \ - CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_memalign.c - CSRC-$(UCLIBC_HAS_PTY) += grantpt.c unlockpt.c ptsname.c - CSRC-$(UCLIBC_HAS_ARC4RANDOM) += arc4random.c --CSRC-$(UCLIBC_HAS_LFS) += mkstemp64.c -+CSRC-$(UCLIBC_HAS_LFS) += mkstemp64.c mkostemp64.c - CSRC-$(UCLIBC_HAS_FLOATS) += drand48.c drand48_r.c erand48.c erand48_r.c - CSRC-$(if $(findstring yy,$(UCLIBC_HAS_FLOATS)$(UCLIBC_SUSV3_LEGACY)),y) += \ - gcvt.c -diff --git a/libc/stdlib/mkostemp.c b/libc/stdlib/mkostemp.c -new file mode 100644 -index 0000000..93b50fc ---- /dev/null -+++ b/libc/stdlib/mkostemp.c -@@ -0,0 +1,32 @@ -+/* Copyright (C) 1998-2012 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, see -+ <http://www.gnu.org/licenses/>. */ -+ -+#include <stdio.h> -+#include <stdlib.h> -+#include "../misc/internals/tempname.h" -+ -+/* Generate a unique temporary file name from TEMPLATE. -+ The last six characters of TEMPLATE must be "XXXXXX"; -+ they are replaced with a string that makes the filename unique. -+ Then open the file and return a fd. */ -+int -+mkostemp (template, flags) -+ char *template; -+ int flags; -+{ -+ return __gen_tempname (template, __GT_FILE, flags); -+} -diff --git a/libc/stdlib/mkostemp64.c b/libc/stdlib/mkostemp64.c -new file mode 100644 -index 0000000..5509d8c ---- /dev/null -+++ b/libc/stdlib/mkostemp64.c -@@ -0,0 +1,33 @@ -+/* Copyright (C) 2000-2012 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, see -+ <http://www.gnu.org/licenses/>. */ -+ -+#include <fcntl.h> -+#include <stdio.h> -+#include <stdlib.h> -+#include "../misc/internals/tempname.h" -+ -+/* Generate a unique temporary file name from TEMPLATE. -+ The last six characters of TEMPLATE must be "XXXXXX"; -+ they are replaced with a string that makes the filename unique. -+ Then open the file and return a fd. */ -+int -+mkostemp64 (template, flags) -+ char *template; -+ int flags; -+{ -+ return __gen_tempname (template, __GT_BIGFILE, flags | O_LARGEFILE); -+} --- -1.8.1.5 -package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch deleted +0
-64@@ -1,64 +0,0 @@ -From 7810e4f8027b5c4c8ceec6fefec4eb779362ebb5 Mon Sep 17 00:00:00 2001 -From: Khem Raj <[email protected]> -Date: Sun, 10 Jun 2012 09:36:23 -0700 -Subject: [PATCH] eventfd: Implement eventfd2 and fix eventfd - -eventfd: evntfd assumes to take two arguments instead it -should be one evntfd expects two therefore implement both syscalls with -correct parameters - -Thanks Eugene Rudoy for reporting it and also providing the patch - -Signed-off-by: Khem Raj <[email protected]> ---- - libc/sysdeps/linux/common/eventfd.c | 16 ++++++++++++++-- - libc/sysdeps/linux/common/stubs.c | 2 +- - 2 files changed, 15 insertions(+), 3 deletions(-) - -diff --git a/libc/sysdeps/linux/common/eventfd.c b/libc/sysdeps/linux/common/eventfd.c -index cc3f3f0..96597ab 100644 ---- a/libc/sysdeps/linux/common/eventfd.c -+++ b/libc/sysdeps/linux/common/eventfd.c -@@ -7,12 +7,24 @@ - * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - */ - -+#include <errno.h> - #include <sys/syscall.h> - #include <sys/eventfd.h> - - /* - * eventfd() - */ --#ifdef __NR_eventfd --_syscall2(int, eventfd, int, count, int, flags) -+#if defined __NR_eventfd || defined __NR_eventfd2 -+int eventfd (int count, int flags) -+{ -+#if defined __NR_eventfd2 -+ return INLINE_SYSCALL (eventfd2, 2, count, flags); -+#elif defined __NR_eventfd -+ if (flags != 0) { -+ __set_errno (EINVAL); -+ return -1; -+ } -+ return INLINE_SYSCALL (eventfd, 1, count); -+#endif -+} - #endif -diff --git a/libc/sysdeps/linux/common/stubs.c b/libc/sysdeps/linux/common/stubs.c -index 4d1e26c..7af14c1 100644 ---- a/libc/sysdeps/linux/common/stubs.c -+++ b/libc/sysdeps/linux/common/stubs.c -@@ -93,7 +93,7 @@ make_stub(epoll_ctl) - make_stub(epoll_wait) - #endif - --#if !defined __NR_eventfd && defined __UCLIBC_LINUX_SPECIFIC__ -+#if !defined __NR_eventfd && !defined __NR_eventfd2 && defined __UCLIBC_LINUX_SPECIFIC__ - make_stub(eventfd) - #endif - --- -1.7.10.4 -package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch deleted +0
-12@@ -1,61 +0,0 @@ -From 93b8ce8886e30986be31c1403b606b6367dc258a Mon Sep 17 00:00:00 2001 -From: "Peter S. Mazinger" <[email protected]> -Date: Tue, 26 Apr 2011 23:03:44 +0200 -Subject: [PATCH] add posix_madvise.c - -Signed-off-by: Peter S. Mazinger <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> -Signed-off-by: Mike Frysinger <[email protected]> ---- - libc/sysdeps/linux/common/Makefile.in | 2 +- - libc/sysdeps/linux/common/posix_madvise.c | 25 +++++++++++++++++++++++++ - 2 files changed, 26 insertions(+), 1 deletion(-)
package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch line 22
Quoted 10 lines
package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch deleted +0
-10- create mode 100644 libc/sysdeps/linux/common/posix_madvise.c - -diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in -index 3b5763c..b39082b 100644 ---- a/libc/sysdeps/linux/common/Makefile.in -+++ b/libc/sysdeps/linux/common/Makefile.in -@@ -81,7 +81,7 @@ CSRC-$(UCLIBC_HAS_REALTIME) += clock_getres.c clock_gettime.c clock_settime.c \ - sched_get_priority_max.c sched_get_priority_min.c sched_getscheduler.c \ - sched_rr_get_interval.c sched_setparam.c sched_setscheduler.c sigqueue.c - # clock_getcpuclockid|clock_nanosleep|mq_timedreceive|mq_timedsend|posix_fadvise|posix_fallocate|posix_madvise|posix_memalign|posix_mem_offset|posix_spawnattr_destroy|posix_spawnattr_init|posix_spawnattr_getflags|posix_spawnattr_setflags|posix_spawnattr_getpgroup|posix_spawnattr_setpgroup|posix_spawnattr_getschedparam|posix_spawnattr_setschedparam|posix_spawnattr_getschedpolicy|posix_spawnattr_setschedpolicy|posix_spawnattr_getsigdefault|posix_spawnattr_setsigdefault|posix_spawnattr_getsigmask|posix_spawnattr_setsigmask|posix_spawnattr_init|posix_spawnattr_setflags|posix_spawnattr_setpgroup|posix_spawnattr_setschedparam|posix_spawnattr_setschedpolicy|posix_spawnattr_setsigdefault|posix_spawnattr_setsigmask|posix_spawn_file_actions_addclose|posix_spawn_file_actions_addopen|posix_spawn_file_actions_adddup2|posix_spawn_file_actions_addopen|posix_spawn_file_actions_destroy|posix_spawn_file_actions_init|posix_spawn_file_actions_init|posix_spawn|posix_spawnp|posix_spawnp|posix_
ty
package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch
Quoted 3,337 lines
package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch deleted +0
-39ped_mem_ get_info|pthread_mutex_timedlock|sem_timedwait --CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c -+CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c - CSRC-$(UCLIBC_SUSV4_LEGACY) += utime.c - CSRC-$(UCLIBC_HAS_EPOLL) += epoll.c - CSRC-$(UCLIBC_HAS_XATTR) += xattr.c -diff --git a/libc/sysdeps/linux/common/posix_madvise.c b/libc/sysdeps/linux/common/posix_madvise.c -new file mode 100644 -index 0000000..2f95bcb ---- /dev/null -+++ b/libc/sysdeps/linux/common/posix_madvise.c -@@ -0,0 +1,25 @@ -+/* vi: set sw=4 ts=4: */ -+/* Licensed under the LGPL v2.1, see the file LICENSE in this tarball. */ -+ -+#include <sys/mman.h> -+#include <sys/syscall.h> -+ -+#if defined __NR_madvise && defined __USE_XOPEN2K && defined __UCLIBC_HAS_ADVANCED_REALTIME__ -+int posix_madvise(void *addr, size_t len, int advice) -+{ -+ int result; -+ /* We have one problem: the kernel's MADV_DONTNEED does not -+ * correspond to POSIX's POSIX_MADV_DONTNEED. The former simply -+ * discards changes made to the memory without writing it back to -+ * disk, if this would be necessary. The POSIX behaviour does not -+ * allow this. There is no functionality mapping for the POSIX -+ * behaviour so far so we ignore that advice for now. */ -+ if (advice == POSIX_MADV_DONTNEED) -+ return 0; -+ -+ /* this part might use madvise function */ -+ INTERNAL_SYSCALL_DECL (err); -+ result = INTERNAL_SYSCALL (madvise, err, 3, addr, len, advice); -+ return INTERNAL_SYSCALL_ERRNO (result, err); -+} -+#endif --- -1.7.10.4 -package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch deleted +0
-38@@ -1,38 +0,0 @@ -From ffd9e147b120e9c2bf30ba4861860f1bc59362c5 Mon Sep 17 00:00:00 2001 -From: Stas Sergeev <[email protected]> -Date: Thu, 14 Jun 2012 01:00:02 +0200 -Subject: [PATCH] nptl: sh: fix race condition in lll_wait_tid - -Make a local copy of the tid value to avoid a race condition, -as the value could have been changed to 0, thus using a pointer -it would have been passed to the lll_futex_wait modified. - -Signed-off-by: Stas Sergeev <[email protected]> -Signed-off-by: Carmelo Amoroso <[email protected]> -(cherry picked from commit 0dcc13bf7a61b1d0708e5dd103d5515e0ffec79a) - -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -index d10cd61..b83d863 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -@@ -396,9 +396,9 @@ extern int __lll_unlock_wake (int *__futex, int private) attribute_hidden; - - #define lll_wait_tid(tid) \ - do { \ -- __typeof (tid) *__tid = &(tid); \ -- while (*__tid != 0) \ -- lll_futex_wait (__tid, *__tid, LLL_SHARED); \ -+ __typeof (tid) __tid; \ -+ while ((__tid = (tid)) != 0) \ -+ lll_futex_wait (&(tid), __tid, LLL_SHARED); \ - } while (0) - - extern int __lll_timedwait_tid (int *tid, const struct timespec *abstime) --- -1.7.10.4 -package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch deleted +0
-37@@ -1,37 +0,0 @@ -From fec308fdfaf9f557ef5fb17c308c48259012b825 Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono <[email protected]> -Date: Thu, 12 Jul 2012 09:24:39 +0200 -Subject: [PATCH] librt: re-add SIGCANCEL to the list of blocked signal in - helper thread - -Indeed if the libpthread is before the libc in the library look up -the SIGCANCEL is removed from the list of the blocked signal by -sigfillset func, this can produce the handler not properly called. -This commit revert what Denys modified in commit -162cfaea20d807f0ae329efe39292a9b22593b41. - -Signed-off-by: Filippo Arcidiacono <[email protected]> -Signed-off-by: Carmelo Amoroso <[email protected]> -(cherry picked from commit cb43f2afba0633400387fa7c55dda3396517f58a) - -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -index 4319d8d..2681961 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -@@ -175,7 +175,7 @@ __start_helper_thread (void) - sigset_t ss; - sigset_t oss; - sigfillset (&ss); -- /*__sigaddset (&ss, SIGCANCEL); - already done by sigfillset */ -+ __sigaddset (&ss, SIGCANCEL); - INTERNAL_SYSCALL_DECL (err); - INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &ss, &oss, _NSIG / 8); - --- -1.7.10.4 -package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch deleted +0
-52@@ -1,52 +0,0 @@ -From 2f09c67232cebca62f3afa4fc296c83aa813427c Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <[email protected]> -Date: Sun, 18 Nov 2012 04:41:06 -0500 -Subject: [PATCH] ldso: include dlfcn.h for RTLD_NODELETE - -Building with NPTL enabled and shared library support disabled we hit: -In file included from libpthread/nptl/sysdeps/generic/dl-tls.c:30:0: -./ldso/include/dl-elf.h: In function '__dl_parse_dynamic_info': -./ldso/include/dl-elf.h:173:20: error: 'RTLD_NODELETE' undeclared (first use in this function) -./ldso/include/dl-elf.h:173:20: note: each undeclared identifier is reported only once for each function it appears in -make: *** [libpthread/nptl/sysdeps/generic/dl-tls.os] Error 1 - -A previous commit (f26c5f6952ce9bf8edec9c1571c47addb1bcc442) touched -on a similar issue, but added the include to the incorrect location. - -Reported-by: Christophe Lyon <[email protected]> [arm nommu] -Reported-by: Daniel Beecham <[email protected]> [static x86_64] -Signed-off-by: Mike Frysinger <[email protected]> -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - ldso/include/dl-elf.h | 2 ++ - ldso/include/ldso.h | 1 - - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/ldso/include/dl-elf.h b/ldso/include/dl-elf.h -index 29d1a00..e1185f7 100644 ---- a/ldso/include/dl-elf.h -+++ b/ldso/include/dl-elf.h -@@ -18,6 +18,8 @@ struct elf_resolve; - struct r_scope_elem; - - #include <dl-defs.h> -+#include <dlfcn.h> -+ - #ifdef __LDSO_CACHE_SUPPORT__ - extern int _dl_map_cache(void); - extern int _dl_unmap_cache(void); -diff --git a/ldso/include/ldso.h b/ldso/include/ldso.h -index 6f3b728..e250e30 100644 ---- a/ldso/include/ldso.h -+++ b/ldso/include/ldso.h -@@ -42,7 +42,6 @@ - #ifndef __ARCH_HAS_NO_SHARED__ - #include <dl-syscall.h> - #include <dl-string.h> --#include <dlfcn.h> - /* Now the ldso specific headers */ - #include <dl-elf.h> - #ifdef __UCLIBC_HAS_TLS__ --- -1.7.10.4 -package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch deleted +0
-34@@ -1,34 +0,0 @@ -From 788d9ca73b7ed1262c83580ccc62fb3625e603c3 Mon Sep 17 00:00:00 2001 -From: Thomas Schwinge <[email protected]> -Date: Wed, 31 Oct 2012 20:41:50 +0100 -Subject: [PATCH] include/elf.h: update for ELFOSABI_* changes. - -ELFOSABI_GNU replaces ELFOSABI_LINUX, the latter is kept as a compatibility -alias, and ELFOSABI_HURD is removed. See the table on -<http://www.sco.com/developers/gabi/latest/ch4.eheader.html#osabi> for -reference. - -Signed-off-by: Thomas Schwinge <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - include/elf.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/include/elf.h b/include/elf.h -index ba3e804..470046e 100644 ---- a/include/elf.h -+++ b/include/elf.h -@@ -148,8 +148,8 @@ typedef struct - #define ELFOSABI_SYSV 0 /* Alias. */ - #define ELFOSABI_HPUX 1 /* HP-UX */ - #define ELFOSABI_NETBSD 2 /* NetBSD. */ --#define ELFOSABI_LINUX 3 /* Linux. */ --#define ELFOSABI_HURD 4 /* GNU/Hurd */ -+#define ELFOSABI_GNU 3 /* Object uses GNU ELF extensions. */ -+#define ELFOSABI_LINUX ELFOSABI_GNU /* Compatibility alias. */ - #define ELFOSABI_SOLARIS 6 /* Sun Solaris. */ - #define ELFOSABI_AIX 7 /* IBM AIX. */ - #define ELFOSABI_IRIX 8 /* SGI Irix. */ --- -1.7.10.4 -package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch deleted +0
-113@@ -1,113 +0,0 @@ -From 2d0c3a704afe6bdc7be129e9f9217ec1369c1bc8 Mon Sep 17 00:00:00 2001 -From: James Hogan <[email protected]> -Date: Fri, 30 Nov 2012 10:08:13 +0000 -Subject: [PATCH] update ptrace.h to latest from glibc - -Update libc/sysdeps/linux/common/sys/ptrace.h to latest from glibc's -sysdeps/unix/sysv/linux/sys/ptrace.h. - -This adds definitions for operations: - - PTRACE_GETREGSET - - PTRACE_SETREGSET - - PTRACE_SEIZE - - PTRACE_INTERRUPT - - PTRACE_LISTEN - -And adds flags: - - PTRACE_SEIZE_DEVEL - -And adds event codes: - - PTRACE_EVENT_SECCOMP - -This is to allow access to the generic interface for accessing -architecture specific regsets using the corresponding NT_* types, -required for new Linux kernel architecture ports. - -Signed-off-by: James Hogan <[email protected]> -Signed-off-by: Mike Frysinger <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libc/sysdeps/linux/common/sys/ptrace.h | 42 +++++++++++++++++++++++++++----- - 1 file changed, 36 insertions(+), 6 deletions(-) - -diff --git a/libc/sysdeps/linux/common/sys/ptrace.h b/libc/sysdeps/linux/common/sys/ptrace.h -index 08658f9..95b3fdf 100644 ---- a/libc/sysdeps/linux/common/sys/ptrace.h -+++ b/libc/sysdeps/linux/common/sys/ptrace.h -@@ -1,5 +1,5 @@ - /* `ptrace' debugger support interface. Linux version. -- Copyright (C) 1996-1999,2000,2006,2007 Free Software Foundation, Inc. -+ Copyright (C) 1996-2012 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 -@@ -125,13 +125,40 @@ enum __ptrace_request - #define PT_GETSIGINFO PTRACE_GETSIGINFO - - /* Set new siginfo for process. */ -- PTRACE_SETSIGINFO = 0x4203 -+ PTRACE_SETSIGINFO = 0x4203, - #define PT_SETSIGINFO PTRACE_SETSIGINFO -+ -+ /* Get register content. */ -+ PTRACE_GETREGSET = 0x4204, -+#define PTRACE_GETREGSET PTRACE_GETREGSET -+ -+ /* Set register content. */ -+ PTRACE_SETREGSET = 0x4205, -+#define PTRACE_SETREGSET PTRACE_SETREGSET -+ -+ /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect -+ signal or group stop state. */ -+ PTRACE_SEIZE = 0x4206, -+#define PTRACE_SEIZE PTRACE_SEIZE -+ -+ /* Trap seized tracee. */ -+ PTRACE_INTERRUPT = 0x4207, -+#define PTRACE_INTERRUPT PTRACE_INTERRUPT -+ -+ /* Wait for next group event. */ -+ PTRACE_LISTEN = 0x4208 - }; - - -+/* Flag for PTRACE_LISTEN. */ -+enum __ptrace_flags -+{ -+ PTRACE_SEIZE_DEVEL = 0x80000000 -+}; -+ - /* Options set using PTRACE_SETOPTIONS. */ --enum __ptrace_setoptions { -+enum __ptrace_setoptions -+{ - PTRACE_O_TRACESYSGOOD = 0x00000001, - PTRACE_O_TRACEFORK = 0x00000002, - PTRACE_O_TRACEVFORK = 0x00000004, -@@ -139,17 +166,20 @@ enum __ptrace_setoptions { - PTRACE_O_TRACEEXEC = 0x00000010, - PTRACE_O_TRACEVFORKDONE = 0x00000020, - PTRACE_O_TRACEEXIT = 0x00000040, -- PTRACE_O_MASK = 0x0000007f -+ PTRACE_O_TRACESECCOMP = 0x00000080, -+ PTRACE_O_MASK = 0x000000ff - }; - - /* Wait extended result codes for the above trace options. */ --enum __ptrace_eventcodes { -+enum __ptrace_eventcodes -+{ - PTRACE_EVENT_FORK = 1, - PTRACE_EVENT_VFORK = 2, - PTRACE_EVENT_CLONE = 3, - PTRACE_EVENT_EXEC = 4, - PTRACE_EVENT_VFORK_DONE = 5, -- PTRACE_EVENT_EXIT = 6 -+ PTRACE_EVENT_EXIT = 6, -+ PTRAVE_EVENT_SECCOMP = 7 - }; - - /* Perform process tracing functions. REQUEST is one of the values --- -1.7.10.4 -package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch deleted +0
-128@@ -1,128 +0,0 @@ -From 5c797a24a7d6337b5e654079a8d815199b1e8364 Mon Sep 17 00:00:00 2001 -From: Carmelo Amoroso <[email protected]> -Date: Thu, 2 Feb 2012 18:22:36 +0100 -Subject: [PATCH] inet:rpc: fix authnone_marshal in multithreading context - -This is a port of glibc's fix by Zack Weinberg as reported -in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=142312, -and discussed in http://sourceware.org/ml/libc-alpha/2002-04/msg00069.html -and following. - -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - libc/inet/rpc/auth_none.c | 59 +++++++++++++++++++++---------------------- - libc/inet/rpc/rpc_private.h | 2 -- - libc/inet/rpc/rpc_thread.c | 1 - - 3 files changed, 29 insertions(+), 33 deletions(-) - -diff --git a/libc/inet/rpc/auth_none.c b/libc/inet/rpc/auth_none.c -index c48bbfe..d066f6b 100644 ---- a/libc/inet/rpc/auth_none.c -+++ b/libc/inet/rpc/auth_none.c -@@ -66,49 +66,48 @@ struct authnone_private_s { - char marshalled_client[MAX_MARSHAL_SIZE]; - u_int mcnt; - }; --#ifdef __UCLIBC_HAS_THREADS__ --#define authnone_private (*(struct authnone_private_s **)&RPC_THREAD_VARIABLE(authnone_private_s)) --#else --static struct authnone_private_s *authnone_private; --#endif - --AUTH * --authnone_create (void) -+static struct authnone_private_s authnone_private; -+__libc_once_define(static, authnone_private_guard); -+ -+static void authnone_create_once (void); -+ -+static void -+authnone_create_once (void) - { - struct authnone_private_s *ap; - XDR xdr_stream; - XDR *xdrs; - -- ap = (struct authnone_private_s *) authnone_private; -- if (ap == NULL) -- { -- ap = (struct authnone_private_s *) calloc (1, sizeof (*ap)); -- if (ap == NULL) -- return NULL; -- authnone_private = ap; -- } -- if (!ap->mcnt) -- { -- ap->no_client.ah_cred = ap->no_client.ah_verf = _null_auth; -- ap->no_client.ah_ops = (struct auth_ops *)&ops; -- xdrs = &xdr_stream; -- xdrmem_create (xdrs, ap->marshalled_client, (u_int) MAX_MARSHAL_SIZE, -- XDR_ENCODE); -- (void) xdr_opaque_auth (xdrs, &ap->no_client.ah_cred); -- (void) xdr_opaque_auth (xdrs, &ap->no_client.ah_verf); -- ap->mcnt = XDR_GETPOS (xdrs); -- XDR_DESTROY (xdrs); -- } -- return (&ap->no_client); -+ ap = &authnone_private; -+ -+ ap->no_client.ah_cred = ap->no_client.ah_verf = _null_auth; -+ ap->no_client.ah_ops = (struct auth_ops *) &ops; -+ xdrs = &xdr_stream; -+ xdrmem_create(xdrs, ap->marshalled_client, -+ (u_int) MAX_MARSHAL_SIZE, XDR_ENCODE); -+ (void) xdr_opaque_auth(xdrs, &ap->no_client.ah_cred); -+ (void) xdr_opaque_auth(xdrs, &ap->no_client.ah_verf); -+ ap->mcnt = XDR_GETPOS (xdrs); -+ XDR_DESTROY (xdrs); -+} -+ -+AUTH * -+authnone_create (void) -+{ -+ __libc_once (authnone_private_guard, authnone_create_once); -+ return &authnone_private.no_client; - } - libc_hidden_def(authnone_create) - - static bool_t --authnone_marshal (AUTH *client attribute_unused, XDR *xdrs) -+authnone_marshal (AUTH *client, XDR *xdrs) - { - struct authnone_private_s *ap; - -- ap = authnone_private; -+ /* authnone_create returned authnone_private->no_client, which is -+ the first field of struct authnone_private_s. */ -+ ap = (struct authnone_private_s *) client; - if (ap == NULL) - return FALSE; - return (*xdrs->x_ops->x_putbytes) (xdrs, ap->marshalled_client, ap->mcnt); -diff --git a/libc/inet/rpc/rpc_private.h b/libc/inet/rpc/rpc_private.h -index ede3ddf..e1214d2 100644 ---- a/libc/inet/rpc/rpc_private.h -+++ b/libc/inet/rpc/rpc_private.h -@@ -18,8 +18,6 @@ struct rpc_thread_variables { - struct pollfd *svc_pollfd_s; /* Global, rpc_common.c */ - int svc_max_pollfd_s; /* Global, rpc_common.c */ - -- void *authnone_private_s; /* auth_none.c */ -- - void *clnt_perr_buf_s; /* clnt_perr.c */ - - void *clntraw_private_s; /* clnt_raw.c */ -diff --git a/libc/inet/rpc/rpc_thread.c b/libc/inet/rpc/rpc_thread.c -index 71303b2..3367659 100644 ---- a/libc/inet/rpc/rpc_thread.c -+++ b/libc/inet/rpc/rpc_thread.c -@@ -32,7 +32,6 @@ __rpc_thread_destroy (void) - __rpc_thread_svc_cleanup (); - __rpc_thread_clnt_cleanup (); - /*__rpc_thread_key_cleanup (); */ -- free (tvp->authnone_private_s); - free (tvp->clnt_perr_buf_s); - free (tvp->clntraw_private_s); - free (tvp->svcraw_private_s); --- -1.7.10.4 -package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch deleted +0
-57@@ -1,57 +0,0 @@ -From 6e2dbd7387bc2381e08aa85d6d33bb2d2d140843 Mon Sep 17 00:00:00 2001 -From: Kevin Cernekee <[email protected]> -Date: Tue, 5 Jun 2012 15:05:19 -0700 -Subject: [PATCH] MIPS: Convert __syscall_error() callers to use $a0 for - argument - -Some callers passed the first argument in $v0, while others used $a0. -Change the callers to use $a0 consistently. - -Signed-off-by: Kevin Cernekee <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libc/sysdeps/linux/mips/vfork.S | 1 + - .../linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h | 2 +- - libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S | 1 + - 3 files changed, 3 insertions(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/mips/vfork.S b/libc/sysdeps/linux/mips/vfork.S -index b307447..00cc675 100644 ---- a/libc/sysdeps/linux/mips/vfork.S -+++ b/libc/sysdeps/linux/mips/vfork.S -@@ -84,6 +84,7 @@ NESTED(__vfork,FRAMESZ,sp) - - /* Something bad happened -- no child created. */ - L(error): -+ move a0, v0 - #ifdef __PIC__ - PTR_LA t9, __syscall_error - RESTORE_GP64 -diff --git a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h -index fc51774..4d2c405 100644 ---- a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h -+++ b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h -@@ -31,7 +31,7 @@ - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ - .align 2; \ -- 99: \ -+ 99: move a0, v0; \ - PTR_LA t9,__syscall_error; \ - /* manual cpreturn. */ \ - REG_L gp, STKOFF_GP(sp); \ -diff --git a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S -index 7bbab5c..238d798 100644 ---- a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S -+++ b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S -@@ -80,6 +80,7 @@ NESTED(__vfork,FRAMESZ,sp) - - /* Something bad happened -- no child created. */ - L(error): -+ move a0, v0 - #ifdef __PIC__ - PTR_LA t9, __syscall_error - RESTORE_GP64 --- -1.7.10.4 -package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch deleted +0
-63@@ -1,63 +0,0 @@ -From c8f9e946bc2a0a42e84b5f97f272932de6485b54 Mon Sep 17 00:00:00 2001 -From: Kevin Cernekee <[email protected]> -Date: Tue, 5 Jun 2012 15:05:20 -0700 -Subject: [PATCH] MIPS: Use $a0 instead of $v0 for __syscall_error() argument - -$a0 is saved across _dl_runtime_resolve(); $v0 is not. Unfortunately, -__syscall_error() uses $v0 for its argument, not $a0 as is the MIPS ABI -standard. This means that if lazy binding was used for __syscall_error(), -the errno value in $v0 could get corrupted. - -The problem can be easily seen in testcases where syscalls in librt fail; -when librt tries to call __syscall_error() in libc, the argument gets -lost and errno gets set to a bogus value: - - # ./tst-mqueue1 ; echo $? - mq_receive on O_WRONLY mqd_t did not fail with EBADF: Unknown error 2004684208 - 1 - # ./tst-mqueue2 ; echo $? - mq_timedreceive with too small msg_len did not fail with EMSGSIZE: Unknown error 1997360560 - 1 - # ./tst-mqueue4 ; echo $? - mq_timedsend did not fail with ETIMEDOUT: Unknown error 2008747440 - 1 - -When _dl_runtime_resolve() was taken out of the equation, the same test -cases passed: - - # LD_BIND_NOW=y ./tst-mqueue1 ; echo $? - 0 - # LD_BIND_NOW=y ./tst-mqueue2 ; echo $? - 0 - # LD_BIND_NOW=y ./tst-mqueue4 ; echo $? - 0 - -Changing __syscall_error() to look at $a0 instead of $v0 fixed the -problem. - -(Note that there is also a "__syscall_error.c" file which presumably -uses the standard C calling conventions, but I do not think it is used -on MIPS.) - -Signed-off-by: Kevin Cernekee <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libc/sysdeps/linux/mips/syscall_error.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/mips/syscall_error.S b/libc/sysdeps/linux/mips/syscall_error.S -index 51a8efa..0cc20da 100644 ---- a/libc/sysdeps/linux/mips/syscall_error.S -+++ b/libc/sysdeps/linux/mips/syscall_error.S -@@ -43,7 +43,7 @@ ENTRY(__syscall_error) - #ifdef __PIC__ - SAVE_GP(GPOFF) - #endif -- REG_S v0, V0OFF(sp) -+ REG_S a0, V0OFF(sp) - REG_S ra, RAOFF(sp) - - /* Find our per-thread errno address */ --- -1.7.10.4 -package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch deleted +0
-29@@ -1,29 +0,0 @@ -From 753e4e4cd9177f25981e81f82cd9fe8612a95ba6 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer <[email protected]> -Date: Fri, 15 Jun 2012 13:44:35 +0200 -Subject: [PATCH] ldso: use .arm mode for resolver unconditionally - -as per comment in the file. -Fixes runtime with __THUMB_INTERWORK__ enabled. - -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - ldso/ldso/arm/resolve.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ldso/ldso/arm/resolve.S b/ldso/ldso/arm/resolve.S -index 08889d0..b0907f7 100644 ---- a/ldso/ldso/arm/resolve.S -+++ b/ldso/ldso/arm/resolve.S -@@ -101,7 +101,7 @@ - - .text - .align 4 @ 16 byte boundary and there are 32 bytes below (arm case) -- #if !defined(__thumb__) || defined(__thumb2__) -+#if 1 /*(!defined(__thumb__) || defined __THUMB_INTERWORK__) || defined(__thumb2__)*/ - .arm - .globl _dl_linux_resolve - .type _dl_linux_resolve,%function --- -1.7.10.4 -package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch deleted +0
-53@@ -1,53 +0,0 @@ -From 8a2b550a510cf2a1a0989fc0a665a6a42c83efd4 Mon Sep 17 00:00:00 2001 -From: "Peter S. Mazinger" <[email protected]> -Date: Fri, 22 Apr 2011 00:52:22 +0200 -Subject: [PATCH] make NPTL's getpid behave similar to the common one - -make __getpid static -provide getppid alias if needed -remove unneeded libc_hidden_proto - -Signed-off-by: Peter S. Mazinger <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c -index d4de3cd..d2b3384 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c -@@ -21,6 +21,10 @@ - #include <tls.h> - #include <sysdep.h> - -+#ifdef __NR_getxpid -+# undef __NR_getpid -+# define __NR_getpid __NR_getxpid -+#endif - - #ifndef NOT_IN_libc - static inline __attribute__((always_inline)) pid_t really_getpid (pid_t oldval); -@@ -46,8 +50,7 @@ really_getpid (pid_t oldval) - } - #endif - --extern __typeof(getpid) __getpid; --pid_t -+static pid_t - __getpid (void) - { - #ifdef NOT_IN_libc -@@ -60,6 +63,8 @@ __getpid (void) - #endif - return result; - } --libc_hidden_proto(getpid) - weak_alias(__getpid, getpid) - libc_hidden_weak(getpid) -+#if !defined NOT_IN_libc && !defined __NR_getppid -+strong_alias(getpid,getppid) -+#endif --- -1.7.10.4 -package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch deleted +0
-33@@ -1,33 +0,0 @@ -From 576983880a0ab5d27a4f530d2cef36239b617e78 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <[email protected]> -Date: Thu, 5 Jul 2012 11:55:19 +0000 -Subject: [PATCH] i386/bits/syscalls.h: allow immediate values as 6th syscall - arg - -Allow use of immedate values as the 6th syscall argument. Otherwise we must -store the arg on memory. This gives gcc more options to optimize better. - -This also works around an issue with posix_fallocate. - -Signed-off-by: Natanael Copa <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libc/sysdeps/linux/i386/bits/syscalls.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/i386/bits/syscalls.h b/libc/sysdeps/linux/i386/bits/syscalls.h -index 9fb4f35..566b5ac 100644 ---- a/libc/sysdeps/linux/i386/bits/syscalls.h -+++ b/libc/sysdeps/linux/i386/bits/syscalls.h -@@ -136,7 +136,7 @@ __asm__ ( - #define ASMFMT_5(arg1, arg2, arg3, arg4, arg5) \ - , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5) - #define ASMFMT_6(arg1, arg2, arg3, arg4, arg5, arg6) \ -- , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5), "m" (arg6) -+ , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5), "g" (arg6) - - #else /* !PIC */ - --- -1.7.10.4 -package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch deleted +0
-57@@ -1,57 +0,0 @@ -From f5108ce0c0f72a285e4cb198426e477295c84517 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <[email protected]> -Date: Tue, 8 Jan 2013 11:55:26 +0200 -Subject: [PATCH] dl: fix dlsym lookups with RTLD_NEXT -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The current code for dlsym() when invoked with RTLD_NEXT lookup -searches for the module where it's being called from, and executes the -_dl_find_hash only for the next module in the chain. However, if the -looked symbol is not there, the rest of the modules are not checked. - -Generally this is not a problem as symbols are merged for the parent -modules; so this affects only RTLD_NEXT. - -This patch adds a loop iterating through all the following modules. - -Signed-off-by: Timo Ter?s <[email protected]> -Reviewed-by: Filippo ARCIDIACONO <[email protected]> -Tested-by: Florian Fainelli <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - ldso/libdl/libdl.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c -index 51bcf7d..71ade1f 100644 ---- a/ldso/libdl/libdl.c -+++ b/ldso/libdl/libdl.c -@@ -671,7 +671,7 @@ static void *do_dlsym(void *vhandle, const char *name, void *caller_address) - { - struct elf_resolve *tpnt, *tfrom; - struct dyn_elf *handle; -- ElfW(Addr) from; -+ ElfW(Addr) from = 0; - struct dyn_elf *rpnt; - void *ret; - struct symbol_ref sym_ref = { NULL, NULL }; -@@ -729,7 +729,13 @@ static void *do_dlsym(void *vhandle, const char *name, void *caller_address) - tpnt = NULL; - if (handle == _dl_symbol_tables) - tpnt = handle->dyn; /* Only search RTLD_GLOBAL objs if global object */ -- ret = _dl_find_hash(name2, &handle->dyn->symbol_scope, tpnt, ELF_RTYPE_CLASS_DLSYM, &sym_ref); -+ -+ do { -+ ret = _dl_find_hash(name2, &handle->dyn->symbol_scope, tpnt, ELF_RTYPE_CLASS_DLSYM, &sym_ref); -+ if (ret != NULL) -+ break; -+ handle = handle->next; -+ } while (from && handle); - - #if defined(USE_TLS) && USE_TLS && defined SHARED - if (sym_ref.sym && (ELF_ST_TYPE(sym_ref.sym->st_info) == STT_TLS) && (sym_ref.tpnt)) { --- -1.7.10.4 -package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch deleted +0
-58@@ -1,58 +0,0 @@ -From 3a732cacd650bd39d86ac13ba0f57eee0df82d5a Mon Sep 17 00:00:00 2001 -From: Carmelo Amoroso <[email protected]> -Date: Wed, 14 Mar 2012 15:21:36 +0100 -Subject: [PATCH] inet:rpc: fix build in !NPTL case - -__libc_once is not available / needed when multithreading support -is not enabled, so authnone_create() calls authnone_create_once() -directly. -When LT.{old,new} is used instead of NPTL, it needs to explicitly -include <bits/libc-lock.h> to get __libc_once to be visible. - -Signed-off-by: Carmelo Amoroso <[email protected]> ---- - libc/inet/rpc/auth_none.c | 6 ++++++ - libc/inet/rpc/rpc_private.h | 1 + - 2 files changed, 7 insertions(+) - -diff --git a/libc/inet/rpc/auth_none.c b/libc/inet/rpc/auth_none.c -index d066f6b..70bee5b 100644 ---- a/libc/inet/rpc/auth_none.c -+++ b/libc/inet/rpc/auth_none.c -@@ -68,7 +68,9 @@ struct authnone_private_s { - }; - - static struct authnone_private_s authnone_private; -+#ifdef __UCLIBC_HAS_THREADS__ - __libc_once_define(static, authnone_private_guard); -+#endif - - static void authnone_create_once (void); - -@@ -95,7 +97,11 @@ authnone_create_once (void) - AUTH * - authnone_create (void) - { -+#ifdef __UCLIBC_HAS_THREADS__ - __libc_once (authnone_private_guard, authnone_create_once); -+#else -+ authnone_create_once(); -+#endif - return &authnone_private.no_client; - } - libc_hidden_def(authnone_create) -diff --git a/libc/inet/rpc/rpc_private.h b/libc/inet/rpc/rpc_private.h -index e1214d2..38ade1c 100644 ---- a/libc/inet/rpc/rpc_private.h -+++ b/libc/inet/rpc/rpc_private.h -@@ -12,6 +12,7 @@ extern u_long _create_xid (void) attribute_hidden; - */ - #ifdef __UCLIBC_HAS_THREADS__ - #include <pthread.h> -+#include <bits/libc-lock.h> - struct rpc_thread_variables { - fd_set svc_fdset_s; /* Global, rpc_common.c */ - struct rpc_createerr rpc_createerr_s; /* Global, rpc_common.c */ --- -1.7.10.4 -package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch deleted +0
-190@@ -1,190 +0,0 @@ -From 050cd6971f92c2337bc506043dfcf1395dd5d622 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <[email protected]> -Date: Sun, 6 May 2012 03:50:44 -0400 -Subject: [PATCH] stdio: implement assignment-allocation "m" character - -The latest POSIX spec introduces a "m" character to allocate buffers for -the user when using scanf type functions. This is like the old glibc "a" -flag, but now standardized. With packages starting to use these, we need -to implement it. - -for example: - char *s; - sscanf("foo", "%ms", &s); - printf("%s\n", s); - free(s); -This will automatically allocate storage for "s", read in "foo" to it, -and then display it. - -I'm not terribly familiar with the stdio layer, so this could be wrong. -But it seems to work for me. - -Signed-off-by: Mike Frysinger <[email protected]> ---- - extra/Configs/Config.in | 13 --------- - libc/stdio/_scanf.c | 68 +++++++++++++++++++++++++++-------------------- - 2 files changed, 39 insertions(+), 42 deletions(-) - -diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in -index 1060729..c2f2fc7 100644 ---- a/extra/Configs/Config.in -+++ b/extra/Configs/Config.in -@@ -1590,19 +1590,6 @@ config UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS - - Most people will answer 9. - -- --config UCLIBC_HAS_SCANF_GLIBC_A_FLAG -- bool "Support glibc's 'a' flag for scanf string conversions (not implemented)" -- help -- NOTE!!! Currently Not Implemented!!! Just A Place Holder!! NOTE!!! -- NOTE!!! Conflicts with an ANSI/ISO C99 scanf flag!! NOTE!!! -- -- Answer Y to enable support for glibc's 'a' flag for the scanf string -- conversions '%s', '%[', '%ls', '%l[', and '%S'. This is used to -- auto-allocate sufficient memory to hold the data retrieved. -- -- Most people will answer N. -- - choice - prompt "Stdio buffer size" - default UCLIBC_HAS_STDIO_BUFSIZ_4096 -diff --git a/libc/stdio/_scanf.c b/libc/stdio/_scanf.c -index f38e72b..952853c 100644 ---- a/libc/stdio/_scanf.c -+++ b/libc/stdio/_scanf.c -@@ -77,14 +77,6 @@ - #include <bits/uClibc_fpmax.h> - #endif /* __UCLIBC_HAS_FLOATS__ */ - --#ifdef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#ifdef L_vfscanf --/* only emit this once */ --#warning Forcing undef of __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ until implemented! --#endif --#undef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#endif -- - #undef __STDIO_HAS_VSSCANF - #if defined(__STDIO_BUFFERS) || !defined(__UCLIBC_HAS_WCHAR__) || defined(__UCLIBC_HAS_GLIBC_CUSTOM_STREAMS__) - #define __STDIO_HAS_VSSCANF 1 -@@ -433,8 +425,9 @@ libc_hidden_def(vswscanf) - - - /* float layout 0123456789012345678901 repeat n for "l[" */ --#define SPEC_CHARS "npxXoudifFeEgGaACSncs[" --/* npxXoudif eEgG CS cs[ */ -+#define SPEC_CHARS "npxXoudifFeEgGaACSnmcs[" -+/* npxXoudif eEgG CS cs[ */ -+/* NOTE: the 'm' flag must come before any convs that support it */ - - /* NOTE: Ordering is important! In particular, CONV_LEFTBRACKET - * must immediately precede CONV_c. */ -@@ -444,7 +437,7 @@ enum { - CONV_p, - CONV_x, CONV_X, CONV_o, CONV_u, CONV_d, CONV_i, - CONV_f, CONV_F, CONV_e, CONV_E, CONV_g, CONV_G, CONV_a, CONV_A, -- CONV_C, CONV_S, CONV_LEFTBRACKET, CONV_c, CONV_s, CONV_leftbracket, -+ CONV_C, CONV_S, CONV_LEFTBRACKET, CONV_m, CONV_c, CONV_s, CONV_leftbracket, - CONV_percent, CONV_whitespace /* not in SPEC_* and no flags */ - }; - -@@ -474,7 +467,7 @@ enum { - FLAG_SURPRESS = 0x10, /* MUST BE 1ST!! See DO_FLAGS. */ - FLAG_THOUSANDS = 0x20, - FLAG_I18N = 0x40, /* only works for d, i, u */ -- FLAG_MALLOC = 0x80, /* only works for s, S, and [ (and l[)*/ -+ FLAG_MALLOC = 0x80, /* only works for c, s, S, and [ (and l[)*/ - }; - - -@@ -491,7 +484,7 @@ enum { - /* fFeEgGaA */ (0x0c|FLAG_SURPRESS|FLAG_THOUSANDS|FLAG_I18N), \ - /* C */ ( 0|FLAG_SURPRESS), \ - /* S and l[ */ ( 0|FLAG_SURPRESS|FLAG_MALLOC), \ -- /* c */ (0x04|FLAG_SURPRESS), \ -+ /* c */ (0x04|FLAG_SURPRESS|FLAG_MALLOC), \ - /* s and [ */ (0x04|FLAG_SURPRESS|FLAG_MALLOC), \ - } - -@@ -904,17 +897,17 @@ int attribute_hidden __psfs_parse_spec(register psfs_t *psfs) - if (*psfs->fmt == *p) { - int p_m_spec_chars = p - spec_chars; - --#ifdef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#error implement gnu a flag -- if ((*p == 'a') -- && ((psfs->fmt[1] == '[') || ((psfs->fmt[1]|0x20) == 's')) -- ) { /* Assumes ascii for 's' and 'S' test. */ -- psfs->flags |= FLAG_MALLOC; -+ if (*p == 'm' && -+ (psfs->fmt[1] == '[' || psfs->fmt[1] == 'c' || -+ /* Assumes ascii for 's' and 'S' test. */ -+ (psfs->fmt[1] | 0x20) == 's')) -+ { -+ if (psfs->store) -+ psfs->flags |= FLAG_MALLOC; - ++psfs->fmt; - ++p; -- continue; /* The related conversions follow 'a'. */ -+ continue; /* The related conversions follow 'm'. */ - } --#endif /* __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ */ - - for (p = spec_ranges; p_m_spec_chars > *p ; ++p) {} - if (((psfs->dataargtype >> 8) | psfs->flags) -@@ -1265,12 +1258,6 @@ int VFSCANF (FILE *__restrict fp, const Wchar *__restrict format, va_list arg) - while (*wf && __isascii(*wf) && (b < buf + sizeof(buf) - 1)) { - *b++ = *wf++; - } --#ifdef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#error this is wrong... we need to ched in __psfs_parse_spec instead since this checks last char in buffer and conversion my have stopped before it. -- if ((*b == 'a') && ((*wf == '[') || ((*wf|0x20) == 's'))) { -- goto DONE; /* Spec was excessively long. */ -- } --#endif /* __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ */ - *b = 0; - if (b == buf) { /* Bad conversion specifier! */ - goto DONE; -@@ -1390,13 +1377,36 @@ int VFSCANF (FILE *__restrict fp, const Wchar *__restrict format, va_list arg) - } - - if (psfs.conv_num == CONV_s) { -+ /* We might have to handle the allocation ourselves */ -+ int len; -+ /* With 'm', we actually got a pointer to a pointer */ -+ unsigned char **ptr = (void *)b; -+ -+ i = 0; -+ if (psfs.flags & FLAG_MALLOC) { -+ len = 0; -+ b = NULL; -+ } else -+ len = -1; -+ - /* Yes, believe it or not, a %s conversion can store nuls. */ - while ((__scan_getc(&sc) >= 0) && !isspace(sc.cc)) { - zero_conversions = 0; -- *b = sc.cc; -- b += psfs.store; -+ if (i == len) { -+ /* Pick a size that won't trigger a lot of -+ * mallocs early on ... */ -+ len += 256; -+ b = realloc(b, len + 1); -+ } -+ b[i] = sc.cc; -+ i += psfs.store; - fail = 0; - } -+ -+ if (psfs.flags & FLAG_MALLOC) -+ *ptr = b; -+ /* The code below takes care of terminating NUL */ -+ b += i; - } else { - #ifdef __UCLIBC_HAS_WCHAR__ - assert((psfs.conv_num == CONV_LEFTBRACKET) || \ --- -1.7.10.4 -package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch deleted +0
-35@@ -1,35 +0,0 @@ -From 569d1423ac2b585b5cb38bee545b5e0ae2bd7f67 Mon Sep 17 00:00:00 2001 -From: James Hogan <[email protected]> -Date: Thu, 17 May 2012 12:42:54 +0100 -Subject: [PATCH] mmap()->sys_mmap2: do unsigned shift of offset - -Fix the implementation of mmap based on the mmap2 system call, to -construct pgoffset from offset with an unsigned shift rather than a -signed (off_t) shift. The mmap2 test in the testsuite catches this case -by mmap'ing with a large offset (with the sign bit set). The signed -shift repeats the sign bit making the page shift way out of range. This -is already fixed similarly in mmap64(). - -Signed-off-by: James Hogan <[email protected]> -Signed-off-by: Mike Frysinger <[email protected]> ---- - libc/sysdeps/linux/common/mmap.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/common/mmap.c b/libc/sysdeps/linux/common/mmap.c -index 8995898..d53eabb 100644 ---- a/libc/sysdeps/linux/common/mmap.c -+++ b/libc/sysdeps/linux/common/mmap.c -@@ -63,7 +63,8 @@ __ptr_t mmap(__ptr_t addr, size_t len, int prot, int flags, int fd, __off_t offs - __set_errno(EINVAL); - return MAP_FAILED; - } -- return __syscall_mmap2(addr, len, prot, flags, fd, offset >> MMAP2_PAGE_SHIFT); -+ return __syscall_mmap2(addr, len, prot, flags, -+ fd, ((__u_long) offset >> MMAP2_PAGE_SHIFT)); - } - - libc_hidden_def(mmap) --- -1.7.10.4 -package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch deleted +0
-78@@ -1,78 +0,0 @@ -From 929b1a121c5ff0daa33b2107b4c1a68b650d93ee Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <[email protected]> -Date: Mon, 30 Apr 2012 00:40:49 -0400 -Subject: [PATCH] rpmatch: backport function - -rpmatch will match ^[Yy] and ^[Nn] regardless of locale - -Signed-off-by: Mike Frysinger <[email protected]> -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - include/stdlib.h | 2 +- - libc/stdlib/Makefile.in | 2 +- - libc/stdlib/rpmatch.c | 7 +++++++ - libc/stdlib/stdlib.c | 8 ++++++++ - 4 files changed, 17 insertions(+), 2 deletions(-) - create mode 100644 libc/stdlib/rpmatch.c - -diff --git a/include/stdlib.h b/include/stdlib.h -index 4aa1227..42b585c 100644 ---- a/include/stdlib.h -+++ b/include/stdlib.h -@@ -851,7 +851,7 @@ __END_NAMESPACE_STD - #endif /* __UCLIBC_HAS_WCHAR__ */ - - --#if 0 /*def __USE_SVID*/ -+#ifdef __USE_SVID - /* Determine whether the string value of RESPONSE matches the affirmation - or negative response expression as specified by the LC_MESSAGES category - in the program's current locale. Returns 1 if affirmative, 0 if -diff --git a/libc/stdlib/Makefile.in b/libc/stdlib/Makefile.in -index f219d21..e802441 100644 ---- a/libc/stdlib/Makefile.in -+++ b/libc/stdlib/Makefile.in -@@ -33,7 +33,7 @@ endif - - # multi source stdlib.c - CSRC-y += abs.c labs.c atoi.c atol.c strtol.c strtoul.c _stdlib_strto_l.c \ -- qsort.c qsort_r.c bsearch.c \ -+ qsort.c qsort_r.c bsearch.c rpmatch.c \ - llabs.c atoll.c strtoll.c strtoull.c _stdlib_strto_ll.c - # (aliases) strtoq.o strtouq.o - CSRC-$(UCLIBC_HAS_FLOATS) += atof.c -diff --git a/libc/stdlib/rpmatch.c b/libc/stdlib/rpmatch.c -new file mode 100644 -index 0000000..dce06b6 ---- /dev/null -+++ b/libc/stdlib/rpmatch.c -@@ -0,0 +1,7 @@ -+/* Copyright (C) 2012 Bernhard Reutner-Fischer <[email protected]> -+ * -+ * Licensed under the LGPL v2.1+, see the file COPYING.LIB in this tarball. -+ */ -+ -+#define L_rpmatch -+#include "stdlib.c" -diff --git a/libc/stdlib/stdlib.c b/libc/stdlib/stdlib.c -index 9e8c347..de8f084 100644 ---- a/libc/stdlib/stdlib.c -+++ b/libc/stdlib/stdlib.c -@@ -318,6 +318,14 @@ long long atoll(const char *nptr) - - #endif - /**********************************************************************/ -+#ifdef L_rpmatch -+int rpmatch (__const char *__response) -+{ -+ return (__response[0] == 'y' || __response[0] == 'Y') ? 1 : -+ (__response[0] == 'n' || __response[0] == 'N') ? 0 : -1; -+} -+#endif -+/**********************************************************************/ - #if defined(L_strtol) || defined(L_strtol_l) - - libc_hidden_proto(__XL_NPP(strtol)) --- -1.7.10.4 -package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch deleted +0
-189@@ -1,189 +0,0 @@ -From 479f8407c4822d2b872afb8bb14e5ab596714744 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer <[email protected]> -Date: Thu, 17 Jan 2013 22:44:00 +0100 -Subject: [PATCH] statfs: support f_frsize - -closes bugzilla #5834 - -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - libc/misc/statfs/fstatfs64.c | 3 +++ - libc/misc/statfs/internal_statvfs.c | 8 ++++++-- - libc/misc/statfs/statfs64.c | 3 +++ - test/.gitignore | 3 +++ - test/misc/Makefile.in | 6 ++++++ - test/misc/tst-statfs.c | 33 +++++++++++++++++++++++++++++++++ - test/misc/tst-statvfs.c | 28 ++++++++++++++++++++++++++++ - 7 files changed, 82 insertions(+), 2 deletions(-) - create mode 100644 test/misc/tst-statfs.c - create mode 100644 test/misc/tst-statvfs.c - -diff --git a/libc/misc/statfs/fstatfs64.c b/libc/misc/statfs/fstatfs64.c -index 27bb8d6..42df1ae 100644 ---- a/libc/misc/statfs/fstatfs64.c -+++ b/libc/misc/statfs/fstatfs64.c -@@ -43,6 +43,9 @@ int fstatfs64 (int fd, struct statfs64 *buf) - buf->f_files = buf32.f_files; - buf->f_ffree = buf32.f_ffree; - buf->f_fsid = buf32.f_fsid; -+#ifdef _STATFS_F_FRSIZE -+ buf->f_frsize = buf32.f_frsize; -+#endif - buf->f_namelen = buf32.f_namelen; - memcpy (buf->f_spare, buf32.f_spare, sizeof (buf32.f_spare)); - -diff --git a/libc/misc/statfs/internal_statvfs.c b/libc/misc/statfs/internal_statvfs.c -index 6075e9c..c1862b5 100644 ---- a/libc/misc/statfs/internal_statvfs.c -+++ b/libc/misc/statfs/internal_statvfs.c -@@ -19,8 +19,12 @@ - - /* Now fill in the fields we have information for. */ - buf->f_bsize = fsbuf.f_bsize; -- /* Linux does not support f_frsize, so set it to the full block size. */ -+#ifdef _STATFS_F_FRSIZE -+ buf->f_frsize = fsbuf.f_frsize; -+#else -+ /* No support for f_frsize so set it to the full block size. */ - buf->f_frsize = fsbuf.f_bsize; -+#endif - buf->f_blocks = fsbuf.f_blocks; - buf->f_bfree = fsbuf.f_bfree; - buf->f_bavail = fsbuf.f_bavail; -@@ -39,7 +43,7 @@ - buf->__f_unused = 0; - #endif - buf->f_namemax = fsbuf.f_namelen; -- memset (buf->__f_spare, '\0', 6 * sizeof (int)); -+ memset (buf->__f_spare, '\0', sizeof(buf->__f_spare)); - - /* What remains to do is to fill the fields f_favail and f_flag. */ - -diff --git a/libc/misc/statfs/statfs64.c b/libc/misc/statfs/statfs64.c -index 0cc8595..35329bd 100644 ---- a/libc/misc/statfs/statfs64.c -+++ b/libc/misc/statfs/statfs64.c -@@ -42,6 +42,9 @@ int statfs64 (const char *file, struct statfs64 *buf) - buf->f_ffree = buf32.f_ffree; - buf->f_fsid = buf32.f_fsid; - buf->f_namelen = buf32.f_namelen; -+#ifdef _STATFS_F_FRSIZE -+ buf->f_frsize = buf32.f_frsize; -+#endif - memcpy (buf->f_spare, buf32.f_spare, sizeof (buf32.f_spare)); - - return 0; -diff --git a/test/.gitignore b/test/.gitignore -index c892816..7234c48 100644 ---- a/test/.gitignore -+++ b/test/.gitignore -@@ -148,6 +148,8 @@ misc/sem - misc/stdarg - misc/tst-scandir - misc/tst-seekdir -+misc/tst-statfs -+misc/tst-statvfs - misc/tst-utmp - mmap/mmap - mmap/mmap2 -@@ -254,6 +256,7 @@ stdio/64bit - stdio/fclose-loop - stdlib/ptytest - stdlib/qsort -+stdlib/testarc4random - stdlib/testatexit - stdlib/test-canon - stdlib/test-canon2 -diff --git a/test/misc/Makefile.in b/test/misc/Makefile.in -index 2263211..9b74d22 100644 ---- a/test/misc/Makefile.in -+++ b/test/misc/Makefile.in -@@ -9,6 +9,12 @@ CFLAGS_dirent64 := -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS - - DODIFF_dirent := 1 - DODIFF_dirent64 := 1 -+DODIFF_tst-statfs := 1 -+DODIFF_tst-statvfs := 1 - - OPTS_bug-glob1 := $(PWD) - OPTS_tst-fnmatch := < tst-fnmatch.input -+ -+MNTENTS = $(shell mount | while read dev on mp rest; do echo $$mp; done) -+OPTS_tst-statfs := $(MNTENTS) -+OPTS_tst-statvfs := $(MNTENTS) -diff --git a/test/misc/tst-statfs.c b/test/misc/tst-statfs.c -new file mode 100644 -index 0000000..44ab3aa ---- /dev/null -+++ b/test/misc/tst-statfs.c -@@ -0,0 +1,33 @@ -+#define _FILE_OFFSET_BITS 64 -+ -+#include <sys/vfs.h> -+#include <errno.h> -+#include <stdio.h> -+#include <stdlib.h> -+#include <string.h> -+ -+int -+main(int argc, char* argv[]) -+{ -+ struct statfs s; -+ int ret = 0, i; -+ -+ for (i = 1; i < argc; i++) { -+ if (statfs(argv[i], &s) != 0) { -+ fprintf(stderr, "%s: %s: statfs failed. %s\n", -+ *argv, argv[i], strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ ++ret; -+ printf("statfs %s:\n\tblocks=%lld\n\tblkfree=%lld\n\tbsize=%d\n", -+ argv[i], s.f_blocks, s.f_bfree, s.f_bsize); -+#ifdef _STATFS_F_FRSIZE -+ printf("\tfrsize=%lld\n", s.f_frsize); -+#elif defined __mips__ -+ printf("\tfrsize=mips, unsupported?\n"); -+#else -+# error no _STATFS_F_FRSIZE -+#endif -+ } -+ exit(ret ? EXIT_SUCCESS : EXIT_FAILURE); -+} -diff --git a/test/misc/tst-statvfs.c b/test/misc/tst-statvfs.c -new file mode 100644 -index 0000000..c1e8fde ---- /dev/null -+++ b/test/misc/tst-statvfs.c -@@ -0,0 +1,28 @@ -+#define _FILE_OFFSET_BITS 64 -+ -+#include <sys/statvfs.h> -+#include <errno.h> -+#include <stdio.h> -+#include <stdlib.h> -+#include <string.h> -+ -+int -+main(int argc, char* argv[]) -+{ -+ struct statvfs s; -+ int i; -+ -+ for (i = 1; i < argc; i++) { -+ if (statvfs(argv[i], &s) != 0) { -+ fprintf(stderr, "%s: %s: statvfs failed. %s\n", -+ *argv, argv[i], strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ printf("statvfs %s:\n\tblocks=%lld\n\tblkfree=%lld\n\tbsize=%d\n", -+ argv[i], s.f_blocks, s.f_bfree, s.f_bsize); -+#if 1 // def _STATFS_F_FRSIZE -+ printf("\tfrsize=%lld\n", s.f_frsize); -+#endif -+ } -+ exit(EXIT_SUCCESS); -+} --- -1.7.10.4 -package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch deleted +0
-1374@@ -1,1374 +0,0 @@ -From 8eccce991d08960d135b97066621c8d3248a79b7 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer <[email protected]> -Date: Thu, 17 Jan 2013 19:29:22 +0100 -Subject: [PATCH] socket.h: pull socket_type.h from eglibc - -Signed-off-by: Bernhard Reutner-Fischer <[email protected]> ---- - Makefile.in | 2 +- - libc/inet/opensock.c | 9 +- - libc/sysdeps/linux/alpha/bits/socket_type.h | 54 ++++ - libc/sysdeps/linux/common/bits/kernel-features.h | 10 +- - libc/sysdeps/linux/common/bits/socket.h | 104 +++--- - libc/sysdeps/linux/common/bits/socket_type.h | 54 ++++ - libc/sysdeps/linux/common/cmsg_nxthdr.c | 1 + - libc/sysdeps/linux/hppa/bits/socket_type.h | 54 ++++ - libc/sysdeps/linux/mips/bits/socket.h | 369 --------------------- - libc/sysdeps/linux/mips/bits/socket_type.h | 55 ++++ - libc/sysdeps/linux/sparc/bits/socket.h | 376 ---------------------- - libc/sysdeps/linux/sparc/bits/socket_type.h | 54 ++++ - 12 files changed, 325 insertions(+), 817 deletions(-) - create mode 100644 libc/sysdeps/linux/alpha/bits/socket_type.h - create mode 100644 libc/sysdeps/linux/common/bits/socket_type.h - create mode 100644 libc/sysdeps/linux/hppa/bits/socket_type.h - delete mode 100644 libc/sysdeps/linux/mips/bits/socket.h - create mode 100644 libc/sysdeps/linux/mips/bits/socket_type.h - delete mode 100644 libc/sysdeps/linux/sparc/bits/socket.h - create mode 100644 libc/sysdeps/linux/sparc/bits/socket_type.h - -diff --git a/Makefile.in b/Makefile.in -index 87b8e4b..69abfaf 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -255,7 +255,7 @@ HEADERS_RM-$(UCLIBC_HAS_REALTIME) += mqueue.h bits/mqueue.h sched.h \ - HEADERS_RM-$(UCLIBC_HAS_REGEX) += regex.h regexp.h - HEADERS_RM-$(UCLIBC_HAS_RPC) += rpc - HEADERS_RM-$(UCLIBC_HAS_SHADOW) += shadow.h --HEADERS_RM-$(UCLIBC_HAS_SOCKET) += sys/socket.h bits/socket.h sys/socketvar.h -+HEADERS_RM-$(UCLIBC_HAS_SOCKET) += sys/socket.h bits/socket.h sys/socketvar.h bits/socket_type.h - HEADERS_RM-$(UCLIBC_HAS_SYSLOG) += syslog.h sys/syslog.h bits/syslog*.h - HEADERS_RM-$(UCLIBC_HAS_THREADS) += *thread*.h semaphore.h \ - bits/*thread*.h \ -diff --git a/libc/inet/opensock.c b/libc/inet/opensock.c -index 86f8c59..da5858f 100644 ---- a/libc/inet/opensock.c -+++ b/libc/inet/opensock.c -@@ -16,14 +16,11 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include <assert.h> --#include <errno.h> --#include <stdio.h> --#include <string.h> --#include <unistd.h> --#include <sys/socket.h> -+ - #include <features.h> - #include <libc-internal.h> -+#include <sys/socket.h> -+#include <bits/kernel-features.h> - - /* Return a socket of any type. The socket can be used in subsequent - ioctl calls to talk to the kernel. */ -diff --git a/libc/sysdeps/linux/alpha/bits/socket_type.h b/libc/sysdeps/linux/alpha/bits/socket_type.h -new file mode 100644 -index 0000000..ee55d66 ---- /dev/null -+++ b/libc/sysdeps/linux/alpha/bits/socket_type.h -@@ -0,0 +1,54 @@ -+/* Define enum __socket_type for Linux/Alpha. -+ Copyright (C) 1991-2012 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, see -+ <http://www.gnu.org/licenses/>. */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -+#define SOCK_DCCP SOCK_DCCP -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 010000000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 0x40000000 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; -diff --git a/libc/sysdeps/linux/common/bits/kernel-features.h b/libc/sysdeps/linux/common/bits/kernel-features.h -index 5ea85d2..5665e24 100644 ---- a/libc/sysdeps/linux/common/bits/kernel-features.h -+++ b/libc/sysdeps/linux/common/bits/kernel-features.h -@@ -311,17 +311,19 @@ - - /* Support for various CLOEXEC and NONBLOCK flags was added for x86, - * x86-64, PPC, IA-64, and SPARC in 2.6.27. */ --#if __LINUX_KERNEL_VERSION >= 0x02061b \ -- && (defined __i386__ || defined __x86_64__ || defined __powerpc__ \ -- || defined __ia64__ || defined __sparc__ || defined __s390__) -+#if (__LINUX_KERNEL_VERSION >= 0x02061b \ -+ && (defined __i386__ || defined __x86_64__ || defined __powerpc__ \ -+ || defined __ia64__ || defined __sparc__ || defined __s390__) \ -+ ) || (__LINUX_KERNEL_VERSION >= 0x020621 && defined __alpha__) \ -+ || defined __aarch64__ || defined __tile__ - /* # define __ASSUME_SOCK_CLOEXEC 1 */ - /* # define __ASSUME_IN_NONBLOCK 1 */ - # define __ASSUME_PIPE2 1 - /* # define __ASSUME_EVENTFD2 1 */ - /* # define __ASSUME_SIGNALFD4 1 */ -+/* # define __ASSUME_DUP3 1 */ - #endif - -- - /* These features were surely available with 2.4.12. */ - #if __LINUX_KERNEL_VERSION >= 132108 && defined __mc68000__ - # define __ASSUME_MMAP2_SYSCALL 1 -diff --git a/libc/sysdeps/linux/common/bits/socket.h b/libc/sysdeps/linux/common/bits/socket.h -index 7e12733..6a89340 100644 ---- a/libc/sysdeps/linux/common/bits/socket.h -+++ b/libc/sysdeps/linux/common/bits/socket.h -@@ -1,5 +1,6 @@ - /* System-specific socket constants and types. Linux version. -- Copyright (C) 1991,1992,1994-2001,2004,2006 Free Software Foundation, Inc. -+ Copyright (C) 1991,1992,1994-2001,2004,2006-2012 -+ 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 -@@ -20,12 +21,11 @@ - #ifndef __BITS_SOCKET_H - #define __BITS_SOCKET_H - --#if !defined _SYS_SOCKET_H && !defined _NETINET_IN_H -+#ifndef _SYS_SOCKET_H - # error "Never include <bits/socket.h> directly; use <sys/socket.h> instead." - #endif - - #define __need_size_t --#define __need_NULL - #include <stddef.h> - - #include <limits.h> -@@ -37,37 +37,8 @@ typedef __socklen_t socklen_t; - # define __socklen_t_defined - #endif - --/* Types of sockets. */ --enum __socket_type --{ -- SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM -- SOCK_RAW = 3, /* Raw protocol interface. */ --#define SOCK_RAW SOCK_RAW -- SOCK_RDM = 4, /* Reliably-delivered messages. */ --#define SOCK_RDM SOCK_RDM -- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -- datagrams of fixed maximum length. */ --#define SOCK_SEQPACKET SOCK_SEQPACKET -- SOCK_PACKET = 10, /* Linux specific way of getting packets -- at the dev level. For writing rarp and -- other similar things on the user level. */ --#define SOCK_PACKET SOCK_PACKET -- -- /* Flags to be ORed into the type parameter of socket and socketpair and -- used for the flags parameter of paccept. */ -- -- SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the -- new descriptor(s). */ --#define SOCK_CLOEXEC SOCK_CLOEXEC -- SOCK_NONBLOCK = 04000 /* Atomically mark descriptor(s) as -- non-blocking. */ --#define SOCK_NONBLOCK SOCK_NONBLOCK --}; -+/* Get the architecture-dependent definition of enum __socket_type. */ -+#include <bits/socket_type.h> - - /* Protocol families. */ - #define PF_UNSPEC 0 /* Unspecified. */ -@@ -94,22 +65,24 @@ enum __socket_type - #define PF_ASH 18 /* Ash. */ - #define PF_ECONET 19 /* Acorn Econet. */ - #define PF_ATMSVC 20 /* ATM SVCs. */ -+#define PF_RDS 21 /* RDS sockets. */ - #define PF_SNA 22 /* Linux SNA Project */ - #define PF_IRDA 23 /* IRDA sockets. */ - #define PF_PPPOX 24 /* PPPoX sockets. */ - #define PF_WANPIPE 25 /* Wanpipe API sockets. */ --#define PF_LLC 26 /* Linux LLC. */ --#define PF_CAN 29 /* Controller Area Network. */ --#define PF_TIPC 30 /* TIPC sockets. */ -+#define PF_LLC 26 /* Linux LLC. */ -+#define PF_CAN 29 /* Controller Area Network. */ -+#define PF_TIPC 30 /* TIPC sockets. */ - #define PF_BLUETOOTH 31 /* Bluetooth sockets. */ - #define PF_IUCV 32 /* IUCV sockets. */ --#define PF_RXRPC 33 /* RxRPC sockets. */ --#define PF_ISDN 34 /* mISDN sockets. */ --#define PF_PHONET 35 /* Phonet sockets. */ --#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ --#define PF_CAIF 37 /* CAIF sockets. */ --#define PF_ALG 38 /* Algorithm sockets. */ --#define PF_MAX 39 /* For now.. */ -+#define PF_RXRPC 33 /* RxRPC sockets. */ -+#define PF_ISDN 34 /* mISDN sockets. */ -+#define PF_PHONET 35 /* Phonet sockets. */ -+#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ -+#define PF_CAIF 37 /* CAIF sockets. */ -+#define PF_ALG 38 /* Algorithm sockets. */ -+#define PF_NFC 39 /* NFC sockets. */ -+#define PF_MAX 40 /* For now.. */ - - /* Address families. */ - #define AF_UNSPEC PF_UNSPEC -@@ -136,21 +109,23 @@ enum __socket_type - #define AF_ASH PF_ASH - #define AF_ECONET PF_ECONET - #define AF_ATMSVC PF_ATMSVC -+#define AF_RDS PF_RDS - #define AF_SNA PF_SNA - #define AF_IRDA PF_IRDA - #define AF_PPPOX PF_PPPOX - #define AF_WANPIPE PF_WANPIPE --#define AF_LLC PF_LLC --#define AF_CAN PF_CAN --#define AF_TIPC PF_TIPC -+#define AF_LLC PF_LLC -+#define AF_CAN PF_CAN -+#define AF_TIPC PF_TIPC - #define AF_BLUETOOTH PF_BLUETOOTH --#define AF_IUCV PF_IUCV --#define AF_RXRPC PF_RXRPC --#define AF_ISDN PF_ISDN --#define AF_PHONET PF_PHONET --#define AF_IEEE802154 PF_IEEE802154 --#define AF_CAIF PF_CAIF --#define AF_ALG PF_ALG -+#define AF_IUCV PF_IUCV -+#define AF_RXRPC PF_RXRPC -+#define AF_ISDN PF_ISDN -+#define AF_PHONET PF_PHONET -+#define AF_IEEE802154 PF_IEEE802154 -+#define AF_CAIF PF_CAIF -+#define AF_ALG PF_ALG -+#define AF_NFC PF_NFC - #define AF_MAX PF_MAX - - /* Socket level values. Others are defined in the appropriate headers. -@@ -235,8 +210,14 @@ enum - #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 - }; - - -@@ -290,7 +271,7 @@ struct cmsghdr - #define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) - #define CMSG_FIRSTHDR(mhdr) \ - ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ -- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL) -+ ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0) - #define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) \ - & (size_t) ~(sizeof (size_t) - 1)) - #define CMSG_SPACE(len) (CMSG_ALIGN (len) \ -@@ -302,14 +283,14 @@ extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, - libc_hidden_proto(__cmsg_nxthdr) - #ifdef __USE_EXTERN_INLINES - # ifndef _EXTERN_INLINE --# define _EXTERN_INLINE extern __inline -+# define _EXTERN_INLINE __extern_inline - # endif - _EXTERN_INLINE struct cmsghdr * - __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) - { - if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) - /* The kernel header does this so there may be a reason. */ -- return 0; -+ return (struct cmsghdr *) 0; - - __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg - + CMSG_ALIGN (__cmsg->cmsg_len)); -@@ -318,7 +299,7 @@ __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) - || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len) - > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen))) - /* No more entries. */ -- return 0; -+ return (struct cmsghdr *) 0; - return __cmsg; - } - #endif /* Use `extern inline'. */ -@@ -329,20 +310,21 @@ enum - { - SCM_RIGHTS = 0x01 /* Transfer file descriptors. */ - #define SCM_RIGHTS SCM_RIGHTS --#ifdef __USE_BSD -+#ifdef __USE_GNU - , SCM_CREDENTIALS = 0x02 /* Credentials passing. */ - # define SCM_CREDENTIALS SCM_CREDENTIALS - #endif - }; - -+#ifdef __USE_GNU - /* User visible structure for SCM_CREDENTIALS message */ -- - struct ucred - { - pid_t pid; /* PID of sending process. */ - uid_t uid; /* UID of sending process. */ - gid_t gid; /* GID of sending process. */ - }; -+#endif - - /* Get socket manipulation related informations from kernel headers. */ - #ifndef __GLIBC__ -diff --git a/libc/sysdeps/linux/common/bits/socket_type.h b/libc/sysdeps/linux/common/bits/socket_type.h -new file mode 100644 -index 0000000..65436b0 ---- /dev/null -+++ b/libc/sysdeps/linux/common/bits/socket_type.h -@@ -0,0 +1,54 @@ -+/* Define enum __socket_type for generic Linux. -+ Copyright (C) 1991-2012 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, see -+ <http://www.gnu.org/licenses/>. */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -+#define SOCK_DCCP SOCK_DCCP -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 00004000 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; -diff --git a/libc/sysdeps/linux/common/cmsg_nxthdr.c b/libc/sysdeps/linux/common/cmsg_nxthdr.c -index 0360b47..9c21190 100644 ---- a/libc/sysdeps/linux/common/cmsg_nxthdr.c -+++ b/libc/sysdeps/linux/common/cmsg_nxthdr.c -@@ -19,6 +19,7 @@ - - #define __FORCE_GLIBC - #include <features.h>Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0036-mount.h-update.patch deleted +0
-91Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch deleted +0
-38Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch deleted +0
-117Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch deleted +0
-43Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch deleted +0
-200Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch deleted +0
-45Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
ty
Quoted 4,613 lines
package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch deleted +0
-292Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch deleted +0
-44Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch deleted +0
-86Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch deleted +0
-46Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch deleted +0
-39Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch deleted +0
-34Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch deleted +0
-30Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch deleted +0
-66Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch deleted +0
-66Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch deleted +0
-60Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch deleted +0
-168Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch deleted +0
-39Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch deleted +0
-30Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch deleted +0
-284Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch deleted +0
-66Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch deleted +0
-43Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch deleted +0
-70Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch deleted +0
-54Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch deleted +0
-37Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0059-test-cater-for-config.patch deleted +0
-81Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch deleted +0
-30Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch deleted +0
-39Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch deleted +0
-58Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch deleted +0
-691Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch deleted +0
-134Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch deleted +0
-151Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch deleted +0
-79Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch deleted +0
-157Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch deleted +0
-31Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch deleted +0
-58Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch deleted +0
-870Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch deleted +0
-89Lines of this file are not shown. View the raw message.
package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch deleted +0
-56Lines of this file are not shown. View the raw message.
package/uclibc/uClibc-0.9.33.config deleted +0
-277Lines of this file are not shown. View the raw message.
The rest of this diff is not shown. View the raw message.
Part of the diff is not shown here. View the raw message.
PATCH 6/8 uclibc: remove 0.9.33 version
Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 3 lines
The upstream project is dead, the 0.9.33 version requires tons of patches, and uclibc-ng has now successfully replaced uclibc. It is time to get rid of the 0.9.33 version.
For some reason I had some issue to apply the patch with pwclient (too many lines removed at once ? :p )
There is no legacy handling for BR2_UCLIBC_VERSION_0_9_33.
Best regards,
Romain
PATCH 6/8 uclibc: remove 0.9.33 version
Quoted 11 lines · Romain Naour
Thomas, All,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 3 lines
The upstream project is dead, the 0.9.33 version requires tons of patches, and uclibc-ng has now successfully replaced uclibc. It is time to get rid of the 0.9.33 version.
For some reason I had some issue to apply the patch with pwclient (too many lines removed at once ? :p )
There is no legacy handling for
BR2_UCLIBC_VERSION_0_9_33.
I don't think legacy handling is needed. Bumping to uClibc-ng is like bumping
to uClibc-0.9.33.3, so it's OK if it happens without blocking the config.
What is a bit more annoying is that the old BR2_UCLIBC_CONFIG will no longer
work. But not much can be done about that.
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
PATCH 7/8 uclibc: remove support for the snapshot version
In reply to Thomas PetazzoniThe snapshot version points to the original uClibc project, which is dead. Moreover, we no longer support "snapshot" versions for any other Buildroot component, so there is no reason to keep it for uClibc.
--- package/uclibc/Config.in | 17 --------------- package/uclibc/uClibc-snapshot.config | 41 ----------------------------------- package/uclibc/uclibc.hash | 3 --- package/uclibc/uclibc.mk | 5 +---- 4 files changed, 1 insertion(+), 65 deletions(-) delete mode 100644 package/uclibc/uClibc-snapshot.config
package/uclibc/Config.in +0 -17
@@ -30,32 +30,15 @@ choice select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ if !BR2_m68k && !BR2_x86_i386 - config BR2_UCLIBC_VERSION_SNAPSHOT - bool "daily snapshot" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS if !BR2_xtensa - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ - if !BR2_x86_i386 && !BR2_xtensa - depends on !(BR2_arc || BR2_mips64 || BR2_mips64el) - endchoice -config BR2_USE_UCLIBC_SNAPSHOT - string "Date (yyyymmdd) of snapshot or 'snapshot' for latest" - default "snapshot" - depends on BR2_UCLIBC_VERSION_SNAPSHOT - help - Use latest snapshot or one from a specific date? - config BR2_UCLIBC_VERSION_STRING string default "1.0.11" if BR2_UCLIBC_VERSION_NG - default BR2_USE_UCLIBC_SNAPSHOT if BR2_UCLIBC_VERSION_SNAPSHOT config BR2_UCLIBC_CONFIG string "uClibc configuration file to use?" default "package/uclibc/uClibc-ng.config" if BR2_UCLIBC_VERSION_NG - default "package/uclibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_SNAPSHOT help Some people may wish to use their own modified uClibc configuration file and will specify their config file location with this option.
package/uclibc/uClibc-snapshot.config deleted +0 -41
41 lines not on this page · raw message
package/uclibc/uclibc.hash +0 -3
@@ -1,5 +1,2 @@ # From http://www.uclibc-ng.org/ sha256 2fdc6b9015f8049be0eb12a5e3e446de471fb80061115afd8d72ea582cb22b74 uClibc-ng-1.0.11.tar.xz - -# No hash for this git snapshot -none xxx uClibc-7bf35c8b7d4a1f97174eb49f47f33946b282114c.tar.gz
package/uclibc/uclibc.mk +1 -4
@@ -9,10 +9,7 @@ UCLIBC_SOURCE ?= uClibc-$(UCLIBC_VERSION).tar.bz2 UCLIBC_LICENSE = LGPLv2.1+ UCLIBC_LICENSE_FILES = COPYING.LIB -ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y) -UCLIBC_SITE = http://www.uclibc.org/downloads/snapshots -BR_NO_CHECK_HASH_FOR += $(UCLIBC_SOURCE) -else ifeq ($(BR2_UCLIBC_VERSION_NG),y) +ifeq ($(BR2_UCLIBC_VERSION_NG),y) UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz endif
Signature · 1 line
2.6.4
PATCH 7/8 uclibc: remove support for the snapshot version
Thomas, All,
Le 18/01/2016 21:25, Thomas Petazzoni a ?crit :
Quoted 4 lines
The snapshot version points to the original uClibc project, which is dead. Moreover, we no longer support "snapshot" versions for any other Buildroot component, so there is no reason to keep it for uClibc.
Same here, no legacy handling for BR2_UCLIBC_VERSION_SNAPSHOT
Best regards,
Romain
Quoted 120 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- package/uclibc/Config.in | 17 --------------- package/uclibc/uClibc-snapshot.config | 41 ----------------------------------- package/uclibc/uclibc.hash | 3 --- package/uclibc/uclibc.mk | 5 +---- 4 files changed, 1 insertion(+), 65 deletions(-) delete mode 100644 package/uclibc/uClibc-snapshot.configpackage/uclibc/Config.in +0
-17@@ -30,32 +30,15 @@ choice select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ if !BR2_m68k && !BR2_x86_i386 - config BR2_UCLIBC_VERSION_SNAPSHOT - bool "daily snapshot" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS if !BR2_xtensa - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ - if !BR2_x86_i386 && !BR2_xtensa - depends on !(BR2_arc || BR2_mips64 || BR2_mips64el) - endchoice -config BR2_USE_UCLIBC_SNAPSHOT - string "Date (yyyymmdd) of snapshot or 'snapshot' for latest" - default "snapshot" - depends on BR2_UCLIBC_VERSION_SNAPSHOT - help - Use latest snapshot or one from a specific date? - config BR2_UCLIBC_VERSION_STRING string default "1.0.11" if BR2_UCLIBC_VERSION_NG - default BR2_USE_UCLIBC_SNAPSHOT if BR2_UCLIBC_VERSION_SNAPSHOT config BR2_UCLIBC_CONFIG string "uClibc configuration file to use?" default "package/uclibc/uClibc-ng.config" if BR2_UCLIBC_VERSION_NG - default "package/uclibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_SNAPSHOT help Some people may wish to use their own modified uClibc configuration file and will specify their config file location with this option.package/uclibc/uClibc-snapshot.config deleted +0
-41@@ -1,41 +0,0 @@ -DO_C99_MATH=y -KERNEL_HEADERS="/usr/src/linux/include" -# LDSO_CACHE_SUPPORT is not set -# UCLIBC_STATIC_LDCONFIG is not set -LDSO_RUNPATH=y -LINUXTHREADS_OLD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_HAS_OBSTACK=y -UCLIBC_HAS_UTMPX=y -UCLIBC_HAS_UTMP=y -UCLIBC_SUSV2_LEGACY=y -UCLIBC_SUSV3_LEGACY=y -UCLIBC_HAS_CONTEXT_FUNCS=y -UCLIBC_SUSV4_LEGACY=y -UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y -UCLIBC_HAS_GETPT=y -UCLIBC_HAS_LIBUTIL=y -UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y -UCLIBC_USE_NETLINK=y -UCLIBC_SUPPORT_AI_ADDRCONFIG=y -UCLIBC_HAS_RESOLVER_SUPPORT=y -UCLIBC_HAS_LIBRESOLV_STUB=y -UCLIBC_HAS_LIBNSL_STUB=y -UCLIBC_HAS_CTYPE_CHECKED=y -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -# UCLIBC_HAS_REGEX_OLD is not set -# UCLIBC_HAS_FNMATCH_OLD is not set -UCLIBC_HAS_NFTW=y -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GNU_GLOB=y -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" -UCLIBC_HAS_SSP=y -UCLIBC_BUILD_NOW=y -# DOSTRIP is not setpackage/uclibc/uclibc.hash +0
-3@@ -1,5 +1,2 @@ # From http://www.uclibc-ng.org/ sha256 2fdc6b9015f8049be0eb12a5e3e446de471fb80061115afd8d72ea582cb22b74 uClibc-ng-1.0.11.tar.xz - -# No hash for this git snapshot -none xxx uClibc-7bf35c8b7d4a1f97174eb49f47f33946b282114c.tar.gzpackage/uclibc/uclibc.mk +1
-4@@ -9,10 +9,7 @@ UCLIBC_SOURCE ?= uClibc-$(UCLIBC_VERSION).tar.bz2 UCLIBC_LICENSE = LGPLv2.1+ UCLIBC_LICENSE_FILES = COPYING.LIB -ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y) -UCLIBC_SITE = http://www.uclibc.org/downloads/snapshots -BR_NO_CHECK_HASH_FOR += $(UCLIBC_SOURCE) -else ifeq ($(BR2_UCLIBC_VERSION_NG),y) +ifeq ($(BR2_UCLIBC_VERSION_NG),y) UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz endif
PATCH 8/8 uclibc: remove version selection
In reply to Thomas PetazzoniSince we now only support uClibc-ng, remove the version selection from the uclibc package.
Note that the BR2_UCLIBC_VERSION_SUPPORTS_* hidden booleans, which were only used to allow each uClibc version to specify which thread implementation they support and on which architecture are removed. Now such architecture dependencies are directly encoded in the "Thread library implementation" choice.
--- package/uclibc/Config.in | 41 +++++------------------------------------ package/uclibc/uclibc.mk | 11 +++-------- 2 files changed, 8 insertions(+), 44 deletions(-)
package/uclibc/Config.in +5 -36
@@ -7,38 +7,9 @@ config BR2_PACKAGE_UCLIBC comment "uClibc Options" -config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS - bool - -config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - bool - -config BR2_UCLIBC_VERSION_SUPPORTS_NPTL - bool - -choice - prompt "uClibc C library Version" - default BR2_UCLIBC_VERSION_NG - help - Select the version of uClibc you wish to use. - - config BR2_UCLIBC_VERSION_NG - bool "uClibc-ng" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS if BR2_m68k - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD \ - if BR2_m68k || BR2_arm || BR2_armeb - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ - if !BR2_m68k && !BR2_x86_i386 - -endchoice - -config BR2_UCLIBC_VERSION_STRING - string - default "1.0.11" if BR2_UCLIBC_VERSION_NG - config BR2_UCLIBC_CONFIG string "uClibc configuration file to use?" - default "package/uclibc/uClibc-ng.config" if BR2_UCLIBC_VERSION_NG + default "package/uclibc/uClibc-ng.config" help Some people may wish to use their own modified uClibc configuration file and will specify their config file location with this option.
@@ -76,9 +47,7 @@ config BR2_TOOLCHAIN_BUILDROOT_LOCALE choice prompt "Thread library implementation" - default BR2_PTHREADS_NATIVE if BR2_UCLIBC_VERSION_SUPPORTS_NPTL - default BR2_PTHREADS_OLD if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - default BR2_PTHREADS if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS + default BR2_PTHREADS_NATIVE help Use this option to select the thread library implementation that should be used in your toolchain.
@@ -89,18 +58,18 @@ choice config BR2_PTHREADS bool "linuxthreads" select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS + depends on BR2_m68k config BR2_PTHREADS_OLD bool "linuxthreads (stable/old)" select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD + depends on BR2_m68k || BR2_arm || BR2_armeb config BR2_PTHREADS_NATIVE bool "Native POSIX Threading (NPTL)" select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on BR2_UCLIBC_VERSION_SUPPORTS_NPTL + depends on !BR2_m68k && !BR2_x86_i386 endchoice config BR2_PTHREAD_DEBUG
package/uclibc/uclibc.mk +3 -8
@@ -4,16 +4,11 @@ # ################################################################################ -UCLIBC_VERSION = $(call qstrip,$(BR2_UCLIBC_VERSION_STRING)) -UCLIBC_SOURCE ?= uClibc-$(UCLIBC_VERSION).tar.bz2 +UCLIBC_VERSION = 1.0.11 +UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz +UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_LICENSE = LGPLv2.1+ UCLIBC_LICENSE_FILES = COPYING.LIB - -ifeq ($(BR2_UCLIBC_VERSION_NG),y) -UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) -UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz -endif - UCLIBC_INSTALL_STAGING = YES # uclibc is part of the toolchain so disable the toolchain dependency
Signature · 1 line
2.6.4
PATCH 8/8 uclibc: remove version selection
Thomas, All,
Le 18/01/2016 21:25, Thomas Petazzoni a ?crit :
Quoted 8 lines
Since we now only support uClibc-ng, remove the version selection from the uclibc package.
Note that the BR2_UCLIBC_VERSION_SUPPORTS_* hidden booleans, which were only used to allow each uClibc version to specify which thread implementation they support and on which architecture are removed. Now such architecture dependencies are directly encoded in the "Thread library implementation" choice.
The legacy handling for BR2_UCLIBC_VERSION_NG is missing. Otherwise the patch is ok.
Thanks !
Best regards,
Romain
Quoted 109 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- package/uclibc/Config.in | 41 +++++------------------------------------ package/uclibc/uclibc.mk | 11 +++-------- 2 files changed, 8 insertions(+), 44 deletions(-)package/uclibc/Config.in +5
-36@@ -7,38 +7,9 @@ config BR2_PACKAGE_UCLIBC comment "uClibc Options" -config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS - bool - -config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - bool - -config BR2_UCLIBC_VERSION_SUPPORTS_NPTL - bool - -choice - prompt "uClibc C library Version" - default BR2_UCLIBC_VERSION_NG - help - Select the version of uClibc you wish to use. - - config BR2_UCLIBC_VERSION_NG - bool "uClibc-ng" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS if BR2_m68k - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD \ - if BR2_m68k || BR2_arm || BR2_armeb - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ - if !BR2_m68k && !BR2_x86_i386 - -endchoice - -config BR2_UCLIBC_VERSION_STRING - string - default "1.0.11" if BR2_UCLIBC_VERSION_NG - config BR2_UCLIBC_CONFIG string "uClibc configuration file to use?" - default "package/uclibc/uClibc-ng.config" if BR2_UCLIBC_VERSION_NG + default "package/uclibc/uClibc-ng.config" help Some people may wish to use their own modified uClibc configuration file and will specify their config file location with this option.@@ -76,9 +47,7 @@ config BR2_TOOLCHAIN_BUILDROOT_LOCALE choice prompt "Thread library implementation" - default BR2_PTHREADS_NATIVE if BR2_UCLIBC_VERSION_SUPPORTS_NPTL - default BR2_PTHREADS_OLD if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - default BR2_PTHREADS if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS + default BR2_PTHREADS_NATIVE help Use this option to select the thread library implementation that should be used in your toolchain.@@ -89,18 +58,18 @@ choice config BR2_PTHREADS bool "linuxthreads" select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS + depends on BR2_m68k config BR2_PTHREADS_OLD bool "linuxthreads (stable/old)" select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD + depends on BR2_m68k || BR2_arm || BR2_armeb config BR2_PTHREADS_NATIVE bool "Native POSIX Threading (NPTL)" select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on BR2_UCLIBC_VERSION_SUPPORTS_NPTL + depends on !BR2_m68k && !BR2_x86_i386 endchoice config BR2_PTHREAD_DEBUGpackage/uclibc/uclibc.mk +3
-8@@ -4,16 +4,11 @@ # ################################################################################ -UCLIBC_VERSION = $(call qstrip,$(BR2_UCLIBC_VERSION_STRING)) -UCLIBC_SOURCE ?= uClibc-$(UCLIBC_VERSION).tar.bz2 +UCLIBC_VERSION = 1.0.11 +UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz +UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_LICENSE = LGPLv2.1+ UCLIBC_LICENSE_FILES = COPYING.LIB - -ifeq ($(BR2_UCLIBC_VERSION_NG),y) -UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) -UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz -endif - UCLIBC_INSTALL_STAGING = YES # uclibc is part of the toolchain so disable the toolchain dependency
cover Remove uClibc version selection: always use uClibc-ng
In reply to Thomas PetazzoniHi Thomas,
Le 18/01/2016 21:24, Thomas Petazzoni a ?crit :
Quoted 19 lines
Hello,
Since April 2015, the uClibc-ng has done very regular releases of the uClibc C library, and is the de-facto active replacement of the now defunct uClibc project.
uClibc 0.9.33 is going to be 4 years old in the coming months, and we already need 50+ patches to make it somewhat usable.
It is therefore time to simply offer uClibc-ng as our only supported uClibc version, and remove the options of using uClibc 0.9.33 and uClibc-snapshot. To achieve this, this patch series:
- Removes references to the
BR2_UCLIBC_VERSION_SNAPSHOToption from various packages: libunwind, lttng-babeltrace, mongrel2, vlc and samba4. The dependencies of those packages are updated, and will now allow in many cases to build such packages with uClibc-ng, and sometimes with musl when possible.
Quoted 3 lines
- Removes the uClibc 0.9.33 and uClibc snapshot options.
- Removes the support for version selection in the uclibc package.
You can also remove package/util-linux/0003-c.h-define-mkostemp-for-older-version-of-uClibc.patch which was added for uClibc 0.9.33.
https://git.busybox.net/buildroot/commit/?id=a5a4b38c6a43d9da46cdd0244b1aae07d7bcce5c
Best regards,
Romain
Quoted 4 lines
Best regards,
Thomas
cover Remove uClibc version selection: always use uClibc-ng
Romain,
Quoted 5 lines · Romain Naour
You can also remove
package/util-linux/0003-c.h-define-mkostemp-for-older-version-of-uClibc.patchwhich was added for uClibc 0.9.33.https://git.busybox.net/buildroot/commit/?id=a5a4b38c6a43d9da46cdd0244b1aae07d7bcce5c
Good point. I'll add this patch to the series if I send a v2 following other comments. Otherwise, I'll send a separate patch to do this, once this series gets merged.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com