uclibc and related fixes
cover uclibc and related fixes
Fix uclibc build for x86_64
gettext compile failed on uclibc so fix it and additionally remove unused patches
Add required support for systemd to function with uclibc Quash a parse warning where uclibc-initial and uclibc both provided libsegfault
The following changes since commit 78de64f58b98101f5be5778e9ecbdaae5ba32997:
binutils_2.21.bb: Fix ld segfault exposed by eglibc 2.14 on x86_64 (2011-06-21 17:58:06 -0700)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/uclibc
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibc
Khem Raj (4):
uclibc.inc: libsegfault is only RPROVIDED by uclibc gettext-0.18.1.1: Remove unused patches uclibc/x86_64/uClibc.machine: Enable ARCH_USE_MMU
uclibc: Add support for $ORIGIN
.../gettext/gettext-0.18.1.1/autotools.patch | 64 ------ .../gettext-error_print_progname.patch | 15 -- .../gettext/gettext-0.18.1.1/m4fix.patch | 52 ----- .../gettext-0.18.1.1/use_open_properly.patch | 17 -- meta/recipes-core/gettext/gettext_0.18.1.1.bb | 1 - .../uclibc/uclibc-git/orign_path.patch | 183 +++++++++++++++++ meta/recipes-core/uclibc/uclibc-git/rtld_no.patch | 215 ++++++++++++++++++++ .../uclibc/uclibc-git/x86_64/uClibc.machine | 3 +- meta/recipes-core/uclibc/uclibc.inc | 2 +- meta/recipes-core/uclibc/uclibc_git.bb | 4 +- 10 files changed, 403 insertions(+), 153 deletions(-) delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/autotools.patch delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/gettext-error_print_progname.patch delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/m4fix.patch delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/use_open_properly.patch create mode 100644 meta/recipes-core/uclibc/uclibc-git/orign_path.patch create mode 100644 meta/recipes-core/uclibc/uclibc-git/rtld_no.patch
Signature · 1 line
1.7.5.1
PATCH 1/4 uclibc.inc: libsegfault is only RPROVIDED by uclibc
Using ${PN} also means that uclibc-initial gets to provide it which we do not want
--- meta/recipes-core/uclibc/uclibc.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
meta/recipes-core/uclibc/uclibc.inc +1 -1
@@ -89,7 +89,7 @@ RPROVIDES_uclibc-dev += "libc-dev virtual-libc-dev" # uclibc does not really have libsegfault but then using the one from glibc is also not # going to work. So we pretend that we have it to make bitbake not pull other recipes # to satisfy this dependency for the images/tasks -RPROVIDES_${PN} += "libsegfault" +RPROVIDES_uclibc += "libsegfault" SRC_URI = "\ http://www.uclibc.org/downloads/uClibc-${PV}.tar.bz2;name=uClibc-${PV} \
Signature · 1 line
1.7.5.1
PATCH 2/4 gettext-0.18.1.1: Remove unused patches
gettext-error_print_progname.patch is already applied upstream others are unapplied.
--- .../gettext/gettext-0.18.1.1/autotools.patch | 64 -------------------- .../gettext-error_print_progname.patch | 15 ----- .../gettext/gettext-0.18.1.1/m4fix.patch | 52 ---------------- .../gettext-0.18.1.1/use_open_properly.patch | 17 ----- meta/recipes-core/gettext/gettext_0.18.1.1.bb | 1 - 5 files changed, 0 insertions(+), 149 deletions(-) delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/autotools.patch delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/gettext-error_print_progname.patch delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/m4fix.patch delete mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/use_open_properly.patch
meta/recipes-core/gettext/gettext-0.18.1.1/autotools.patch deleted +0 -64
@@ -1,64 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -Index: gettext-0.17/gettext-runtime/man/Makefile.am -=================================================================== ---- gettext-0.17.orig/gettext-runtime/man/Makefile.am 2007-10-07 21:37:36.000000000 +0200 -+++ gettext-0.17/gettext-runtime/man/Makefile.am 2008-05-09 22:46:37.000000000 +0200 -@@ -158,8 +158,7 @@ - $(MAN2HTML) $(srcdir)/bind_textdomain_codeset.3.in | sed -e '/CreationDate:/d' > t-$@ - mv t-$@ $@ - --install-html-local: -- $(mkdir_p) $(DESTDIR)$(htmldir) -+install-html: installdirs-html - for file in $(man_HTML); do \ - if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ - $(INSTALL_DATA) $$dir/$$file $(DESTDIR)$(htmldir)/$$file; \ -Index: gettext-0.17/gettext-tools/man/Makefile.am -=================================================================== ---- gettext-0.17.orig/gettext-tools/man/Makefile.am 2007-10-28 00:18:37.000000000 +0200 -+++ gettext-0.17/gettext-tools/man/Makefile.am 2008-05-09 22:46:37.000000000 +0200 -@@ -186,8 +186,7 @@ - $(MAN2HTML) `if test -f autopoint.1; then echo .; else echo $(srcdir); fi`/autopoint.1 | sed -e '/CreationDate:/d' > t-$@ - mv t-$@ $@ - --install-html-local: -- $(mkdir_p) $(DESTDIR)$(htmldir) -+install-html: installdirs-html - for file in $(man_HTML); do \ - if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ - $(INSTALL_DATA) $$dir/$$file $(DESTDIR)$(htmldir)/$$file; \ -Index: gettext-0.17/gettext-runtime/libasprintf/configure.ac -=================================================================== ---- gettext-0.17.orig/gettext-runtime/libasprintf/configure.ac 2008-05-09 22:53:42.000000000 +0200 -+++ gettext-0.17/gettext-runtime/libasprintf/configure.ac 2008-05-09 22:53:54.000000000 +0200 -@@ -1,5 +1,5 @@ - dnl Configuration for the GNU libasprintf library --dnl Copyright (C) 2002-2006 Free Software Foundation, Inc. -+dnl Copyright (C) 2002-2007 Free Software Foundation, Inc. - dnl - dnl This program is free software: you can redistribute it and/or modify - dnl it under the terms of the GNU General Public License as published by -@@ -54,8 +54,7 @@ - dnl Checks for typedefs, structures, and compiler characteristics. - AC_C_INLINE - AC_TYPE_SIZE_T --gl_AC_TYPE_LONG_LONG --gt_TYPE_LONGDOUBLE -+AC_TYPE_LONG_LONG_INT - gt_TYPE_WCHAR_T - gt_TYPE_WINT_T - AC_CHECK_TYPE([ptrdiff_t], , -@@ -79,8 +78,11 @@ - AC_SUBST([ALLOCA_H]) - - AC_CHECK_FUNCS([snprintf vasprintf wcslen]) --AC_CHECK_DECLS([_snprintf]) -+dnl Use the _snprintf function only if it is declared (because on NetBSD it -+dnl is defined as a weak alias of snprintf; we prefer to use the latter). -+AC_CHECK_DECLS([_snprintf], , , [#include <stdio.h>]) - gt_PRINTF_POSIX -+gl_EOVERFLOW - - dnl Check for tools needed for formatting the documentation. - ac_aux_dir_abs=`cd $ac_aux_dir && pwd`
meta/recipes-core/gettext/gettext-0.18.1.1/gettext-error_print_progname.patch deleted +0 -15
@@ -1,15 +0,0 @@ -Upstream-Status: Pending - -Index: gettext-0.17/gettext-tools/libgettextpo/error.h -=================================================================== ---- gettext-0.17.orig/gettext-tools/libgettextpo/error.h 2008-07-27 21:16:25.561115527 +0200 -+++ gettext-0.17/gettext-tools/libgettextpo/error.h 2008-07-27 21:16:52.454440505 +0200 -@@ -49,7 +49,7 @@ - /* If NULL, error will flush stdout, then print on stderr the program - name, a colon and a space. Otherwise, error will call this - function without parameters instead. */ --extern DLL_VARIABLE void (*error_print_progname) (void); -+void (*error_print_progname) (void); - - /* This variable is incremented each time `error' is called. */ - extern DLL_VARIABLE unsigned int error_message_count;
meta/recipes-core/gettext/gettext-0.18.1.1/m4fix.patch deleted +0 -52
52 lines not on this page · raw message
meta/recipes-core/gettext/gettext-0.18.1.1/use_open_properly.patch deleted +0 -17
@@ -1,17 +0,0 @@ -Upstream-Status: Pending - -Index: gettext-0.17/gettext-tools/src/write-catalog.c -=================================================================== ---- gettext-0.17.orig/gettext-tools/src/write-catalog.c 2008-10-16 15:18:16.000000000 +0200 -+++ gettext-0.17/gettext-tools/src/write-catalog.c 2008-10-16 18:17:13.000000000 +0200 -@@ -220,7 +220,9 @@ - /* Open the output file. */ - if (!to_stdout) - { -- fd = open (filename, O_WRONLY | O_CREAT); -+ fd = open (filename, O_WRONLY | O_CREAT, -+ /* 0666 in portable POSIX notation: */ -+ S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH); - if (fd < 0) - { - const char *errno_description = strerror (errno);
meta/recipes-core/gettext/gettext_0.18.1.1.bb +0 -1
@@ -15,7 +15,6 @@ SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \ " SRC_URI_append_libc-uclibc = " file://wchar-uclibc.patch \ - file://gettext-error_print_progname.patch \ file://gnulib-uclibc-sched_param-def.patch \ "
Signature · 1 line
1.7.5.1
PATCH 3/4 uclibc/x86_64/uClibc.machine: Enable ARCH_USE_MMU
In reply to Khem Raj--- .../uclibc/uclibc-git/x86_64/uClibc.machine | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)
meta/recipes-core/uclibc/uclibc-git/x86_64/uClibc.machine +1 -2
@@ -32,11 +32,10 @@ ARCH_SUPPORTS_LITTLE_ENDIAN=y FORCE_OPTIONS_FOR_ARCH=y ARCH_LITTLE_ENDIAN=y # ARCH_BIG_ENDIAN is not set -# ARCH_HAS_NO_MMU is not set ARCH_HAS_MMU=y +ARCH_USE_MMU=y UCLIBC_HAS_FLOATS=y UCLIBC_HAS_FPU=y DO_C99_MATH=y -# UCLIBC_HAS_FENV is not set KERNEL_HEADERS="<path/to/kernel/headers>" HAVE_DOT_CONFIG=y
Signature · 1 line
1.7.5.1
PATCH 4/4 uclibc: Add support for $ORIGIN
In reply to Khem RajThis is required by systemd
--- .../uclibc/uclibc-git/orign_path.patch | 183 +++++++++++++++++ meta/recipes-core/uclibc/uclibc-git/rtld_no.patch | 215 ++++++++++++++++++++ meta/recipes-core/uclibc/uclibc_git.bb | 4 +- 3 files changed, 401 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-core/uclibc/uclibc-git/orign_path.patch create mode 100644 meta/recipes-core/uclibc/uclibc-git/rtld_no.patch
meta/recipes-core/uclibc/uclibc-git/orign_path.patch new file +183 -0
@@ -0,0 +1,183 @@ +Patch is backported from +http://lists.busybox.net/pipermail/uclibc/2011-March/045003.html + +Upstream-Status: Pending + +diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c +index 505247e..2b2d429 100644 +--- a/ldso/ldso/dl-elf.c ++++ b/ldso/ldso/dl-elf.c +@@ -133,53 +133,60 @@ _dl_protect_relro (struct elf_resolve *l) + * in uClibc/ldso/util/ldd.c */ + static struct elf_resolve * + search_for_named_library(const char *name, int secure, const char *path_list, +- struct dyn_elf **rpnt) ++ struct dyn_elf **rpnt, const char *origin) + { +- char *path, *path_n, *mylibname; ++ char *mylibname; ++ const char *p, *pn; + struct elf_resolve *tpnt; +- int done; ++ int plen; + + if (path_list==NULL) + return NULL; + +- /* We need a writable copy of this string, but we don't +- * need this allocated permanently since we don't want +- * to leak memory, so use alloca to put path on the stack */ +- done = _dl_strlen(path_list); +- path = alloca(done + 1); +- + /* another bit of local storage */ + mylibname = alloca(2050); + +- _dl_memcpy(path, path_list, done+1); +- + /* Unlike ldd.c, don't bother to eliminate double //s */ + + /* Replace colons with zeros in path_list */ + /* : at the beginning or end of path maps to CWD */ + /* :: anywhere maps CWD */ + /* "" maps to CWD */ +- done = 0; +- path_n = path; +- do { +- if (*path == 0) { +- *path = ':'; +- done = 1; +- } +- if (*path == ':') { +- *path = 0; +- if (*path_n) +- _dl_strcpy(mylibname, path_n); +- else +- _dl_strcpy(mylibname, "."); /* Assume current dir if empty path */ +- _dl_strcat(mylibname, "/"); +- _dl_strcat(mylibname, name); +- if ((tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname)) != NULL) +- return tpnt; +- path_n = path+1; ++ for (p = path_list; p != NULL; p = pn) { ++ pn = _dl_strchr(p + 1, ':'); ++ if (pn != NULL) { ++ plen = pn - p; ++ pn++; ++ } else ++ plen = _dl_strlen(p); ++ ++ if (plen >= 7 && _dl_memcmp(p, "$ORIGIN", 7) == 0) { ++ int olen; ++ if (secure && plen != 7) ++ continue; ++ if (origin == NULL) ++ continue; ++ for (olen = _dl_strlen(origin) - 1; olen >= 0 && origin[olen] != '/'; olen--) ++ ; ++ if (olen <= 0) ++ continue; ++ _dl_memcpy(&mylibname[0], origin, olen); ++ _dl_memcpy(&mylibname[olen], p + 7, plen - 7); ++ mylibname[olen + plen - 7] = 0; ++ } else if (plen != 0) { ++ _dl_memcpy(mylibname, p, plen); ++ mylibname[plen] = 0; ++ } else { ++ _dl_strcpy(mylibname, "."); + } +- path++; +- } while (!done); ++ _dl_strcat(mylibname, "/"); ++ _dl_strcat(mylibname, name); ++ ++ tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname); ++ if (tpnt != NULL) ++ return tpnt; ++ } ++ + return NULL; + } + +@@ -231,7 +238,8 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, + if (pnt) { + pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; + _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); +- if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt)) != NULL) ++ if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt, ++ tpnt->libname)) != NULL) + return tpnt1; + } + #endif +@@ -239,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, + /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ + if (_dl_library_path) { + _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); +- if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt)) != NULL) ++ if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt, NULL)) != NULL) + { + return tpnt1; + } +@@ -253,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, + if (pnt) { + pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; + _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); +- if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt)) != NULL) ++ if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt, NULL)) != NULL) + return tpnt1; + } + #endif +@@ -287,7 +295,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, + /* Look for libraries wherever the shared library loader + * was installed */ + _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); +- tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt); ++ tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt, NULL); + if (tpnt1 != NULL) + return tpnt1; + +@@ -300,7 +308,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt, + #ifndef __LDSO_CACHE_SUPPORT__ + ":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib" + #endif +- , rpnt); ++ , rpnt, NULL); + if (tpnt1 != NULL) + return tpnt1; + +diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c +index 7ee9257..9423670 100644 +--- a/ldso/ldso/ldso.c ++++ b/ldso/ldso/ldso.c +@@ -272,6 +272,20 @@ static void __attribute__ ((destructor)) __attribute_used__ _dl_fini(void) + } + } + ++static void _dl_setup_progname(const char *argv0) ++{ ++ char image[PATH_MAX]; ++ ssize_t s; ++ ++ s = _dl_readlink("/proc/self/exe", image, sizeof(image)); ++ if (s > 0 && image[0] == '/') { ++ image[s] = 0; ++ _dl_progname = _dl_strdup(image); ++ } else if (argv0) { ++ _dl_progname = argv0; ++ } ++} ++ + void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, + ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp, + char **argv +@@ -321,9 +335,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, + * been fixed up by now. Still no function calls outside of this + * library, since the dynamic resolver is not yet ready. + */ +- if (argv[0]) { +- _dl_progname = argv[0]; +- } ++ _dl_setup_progname(argv[0]); + + if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) { + _dl_dprintf(_dl_debug_file, "Standalone execution is not supported yet\n");
meta/recipes-core/uclibc/uclibc-git/rtld_no.patch new file +215 -0
215 lines not on this page · raw message
meta/recipes-core/uclibc/uclibc_git.bb +3 -1
@@ -2,7 +2,7 @@ SRCREV="71d63ed75648da9b0b71afabb9c60aaad792c55c" require uclibc.inc PV = "0.9.31+0.9.32rc3" -PR = "${INC_PR}.3" +PR = "${INC_PR}.4" PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc" FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}"
@@ -27,5 +27,7 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \ file://append_UCLIBC_EXTRA_CFLAGS.patch \ file://compile-arm-fork-with-O2.patch \ file://epoll-asm-fix.patch \ + file://orign_path.patch \ + file://rtld_no.patch \ " S = "${WORKDIR}/git"
Signature · 1 line
1.7.5.1
Richard Purdie
AppliedQuoted 15 lines · Khem Raj
Fix uclibc build for
x86_64
gettext compile failed on uclibc so fix it and additionally remove unused patches
Add required support for systemd to function with uclibc Quash a parse warning where uclibc-initial and uclibc both provided libsegfaultThe following changes since commit
78de64f58b98101f5be5778e9ecbdaae5ba32997:binutils_2.21.bb: Fix ld segfault exposed by eglibc 2.14 on
x86_64(2011-06-21 17:58:06 -0700)are available in the git repository at:
git://git.openembedded.org/openembedded-core-contribkraj/uclibc
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibc
Quoted 5 lines
Khem Raj (4):
uclibc.inc: libsegfault is only RPROVIDED by uclibc gettext-0.18.1.1: Remove unused patches uclibc/x86_64/uClibc.machine: EnableARCH_USE_MMU
uclibc: Add support for $ORIGIN
Merged to master, thanks.
I had reservations about the first one as hardcoding PN can have issues with BBCLASSEXTEND but looking at the recipe, there are bigger issues if we were ever to do that :/
Cheers,
Richard
Quoted 22 lines · Richard Purdie
Quoted 15 lines · Khem Raj
Fix uclibc build for
x86_64
gettext compile failed on uclibc so fix it and additionally remove unused patches
Add required support for systemd to function with uclibc Quash a parse warning where uclibc-initial and uclibc both provided libsegfaultThe following changes since commit
78de64f58b98101f5be5778e9ecbdaae5ba32997:binutils_2.21.bb: Fix ld segfault exposed by eglibc 2.14 on x86_64 (2011-06-21 17:58:06 -0700)are available in the git repository at:
git://git.openembedded.org/openembedded-core-contribkraj/uclibc
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibcQuoted 5 lines
Khem Raj (4):
uclibc.inc: libsegfault is only RPROVIDED by uclibc gettext-0.18.1.1: Remove unused patches uclibc/x86_64/uClibc.machine: EnableARCH_USE_MMU
uclibc: Add support for $ORIGIN
Quoted 6 lines
Merged to master, thanks.
I had reservations about the first one as hardcoding PN can have issues with BBCLASSEXTEND but looking at the recipe, there are bigger issues if we were ever to do that :/
in attached patch I moved it to uclibc recipe is that better ?
Quoted 11 lines
Cheers,
Richard
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
From 28232ad0c9bea3133493e056e7d828958e74da66 Mon Sep 17 00:00:00 2001
From: Khem Raj <[email protected]>
Date: Sat, 11 Jun 2011 01:47:33 -0700
Subject: [PATCH] uclibc.inc: libsegfault is only RPROVIDED by uclibc
Using ${PN} also means that uclibc-initial gets to provide it which we do not want so move this to uclibc recipe
--- meta/recipes-core/uclibc/uclibc.inc | 1 - meta/recipes-core/uclibc/uclibc_git.bb | 5 +++++ 2 files changed, 5 insertions(+), 1 deletions(-)
meta/recipes-core/uclibc/uclibc.inc +0 -1
@@ -89,7 +89,6 @@ RPROVIDES_uclibc-dev += "libc-dev virtual-libc-dev" # uclibc does not really have libsegfault but then using the one from glibc is also not # going to work. So we pretend that we have it to make bitbake not pull other recipes # to satisfy this dependency for the images/tasks -RPROVIDES_${PN} += "libsegfault" SRC_URI = "\ http://www.uclibc.org/downloads/uClibc-${PV}.tar.bz2;name=uClibc-${PV} \
meta/recipes-core/uclibc/uclibc_git.bb +5 -0
@@ -5,6 +5,11 @@ PV = "0.9.31+0.9.32rc3" PR = "${INC_PR}.4" PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc" +# uclibc does not really have libsegfault but then using the one from glibc is also not +# going to work. So we pretend that we have it to make bitbake not pull other recipes +# to satisfy this dependency for the images/tasks + +RPROVIDES_${PN} += "libsegfault" FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}" SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \
Signature · 1 line
1.7.4.1
Quoted 23 lines · Khem Raj
Quoted 22 lines · Richard Purdie
Quoted 20 lines · Khem Raj
Fix uclibc build for
x86_64
gettext compile failed on uclibc so fix it and additionally remove unused patches
Add required support for systemd to function with uclibc Quash a parse warning where uclibc-initial and uclibc both provided libsegfaultThe following changes since commit
78de64f58b98101f5be5778e9ecbdaae5ba32997:binutils_2.21.bb: Fix ld segfault exposed by eglibc 2.14 on x86_64 (2011-06-21 17:58:06 -0700)are available in the git repository at:
git://git.openembedded.org/openembedded-core-contribkraj/uclibc
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibcKhem Raj (4):
uclibc.inc: libsegfault is only RPROVIDED by uclibc gettext-0.18.1.1: Remove unused patches uclibc/x86_64/uClibc.machine: EnableARCH_USE_MMU
uclibc: Add support for $ORIGIN
Quoted 8 lines
Quoted 6 lines
Merged to master, thanks.
I had reservations about the first one as hardcoding PN can have issues with BBCLASSEXTEND but looking at the recipe, there are bigger issues if we were ever to do that :/
in attached patch I moved it to uclibc recipe is that better ?
Its better, yes and its what I was going to suggest until I realised there were other issues that BBCLASSEXTEND would have with the recipe. Its certainly something to keep in mind in the future...
Cheers,
Richard