Prelink/ld bug and rpm compilation on uclibc
v2 cover Prelink/ld bug and rpm compilation on uclibc
This patch now can compile a uclibc sato image using rpm as packaging backend Introduces variables into cmake class to control linker flags which was not available
Adds npth recipe. npth is next gen pth soon gnupg 2.1 will drop pth and move on to use npth, right now its only used in uclibc case conditionalize use of pth using libc overrides since pth is not compatible with uclibc
The following changes since commit 75a973328d50ef3c007edb7a471ea77fb97911ea:
kern-tools: anchor KMACHINE test (2012-06-08 11:56:21 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/misc-updates
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc-updates
Khem Raj (16):
binutils_2.22: Backport to fix bogus textrels
rpm: Fix compilation on uclibc
pth: Mark incompatible with uclibc
libtool: Let -fstack-protector passed to link step
rpm: Use link time check for libssp
sat-solver: Fix build on uclibc
libzypp: Fix build with uclibc
augeas: Fix compilation failure
rpm: pass lrt and lpthread to link step explicitly for uclibc
zypper: Fix build on uclibc
cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS
variables
libzypp: Define OECMAKE_CXX_LINK_FLAGS when compiling for uclibc task-self-hosted.bb,task-core-lsb.bb: Conditionalize pth inclusion
npth: Add recipe
gpgme: Depend on npth for uclibc
gnupg-2.0.19: Depend on npth for uclibc
meta/classes/cmake.bbclass | 4 + meta/recipes-core/tasks/task-self-hosted.bb | 4 +- .../binutils/binutils/0001-PR-ld-13470.patch | 82 ++++++++++++++++++++ meta/recipes-devtools/binutils/binutils_2.22.bb | 3 +- meta/recipes-devtools/libtool/libtool-2.4.2.inc | 3 +- .../libtool/libtool/respect-fstack-protector.patch | 53 +++++++++++++ .../rpm/rpm/fstack-protector-configure-check.patch | 13 +++ meta/recipes-devtools/rpm/rpm/rpmatch.patch | 42 ++++++++++ meta/recipes-devtools/rpm/rpm/uclibc-support.patch | 69 ++++++++++++++++ meta/recipes-devtools/rpm/rpm_5.4.0.bb | 7 ++- meta/recipes-extended/augeas/augeas.inc | 4 +- .../0001-Add-missing-argument-to-escape.patch | 29 +++++++ meta/recipes-extended/augeas/augeas_0.10.0.bb | 2 +- meta/recipes-extended/libzypp/libzypp/cstdio.patch | 49 ++++++++++++ meta/recipes-extended/libzypp/libzypp_git.bb | 9 ++- .../sat-solver/sat-solver/futimes.patch | 32 ++++++++ meta/recipes-extended/sat-solver/sat-solver_git.bb | 7 +- meta/recipes-extended/tasks/task-core-lsb.bb | 6 +- meta/recipes-extended/zypper/zypper/rpmatch.patch | 23 ++++++ meta/recipes-extended/zypper/zypper_git.bb | 4 +- meta/recipes-support/gnupg/gnupg_2.0.19.bb | 6 +- meta/recipes-support/gpgme/gpgme_1.3.1.bb | 7 +- meta/recipes-support/npth/npth_0.90.bb | 17 ++++ meta/recipes-support/pth/pth_2.0.7.bb | 12 +++- 24 files changed, 469 insertions(+), 18 deletions(-) create mode 100644 meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patch create mode 100644 meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patch create mode 100644 meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patch create mode 100644 meta/recipes-devtools/rpm/rpm/rpmatch.patch create mode 100644 meta/recipes-devtools/rpm/rpm/uclibc-support.patch create mode 100644 meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patch create mode 100644 meta/recipes-extended/libzypp/libzypp/cstdio.patch create mode 100644 meta/recipes-extended/sat-solver/sat-solver/futimes.patch create mode 100644 meta/recipes-extended/zypper/zypper/rpmatch.patch create mode 100644 meta/recipes-support/npth/npth_0.90.bb
Signature · 1 line
1.7.5.4
PATCH v2 1/16 binutils_2.22: Backport to fix bogus textrels
This is reported by prelinker which does not
go well with textrels.
--- .../binutils/binutils/0001-PR-ld-13470.patch | 82 ++++++++++++++++++++ meta/recipes-devtools/binutils/binutils_2.22.bb | 3 +- 2 files changed, 84 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patch
meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patch new file +82 -0
@@ -0,0 +1,82 @@ +From 82fdddd1c4e37881db9b4c6a944261521c6f10ac Mon Sep 17 00:00:00 2001 +From: Alan Modra <[email protected]> +Date: Sat, 3 Dec 2011 00:57:59 +0000 +Subject: [PATCH] PR ld/13470 * elf32-ppc.c + (ppc_elf_copy_indirect_symbol): Revert substantive + change in 2011-07-01 commit. Comment. * + elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. + +--- + bfd/ChangeLog | 7 +++++++ + bfd/elf32-ppc.c | 14 ++++++++++---- + bfd/elf64-ppc.c | 14 ++++++++++---- + 3 files changed, 27 insertions(+), 8 deletions(-) + + +Upstream-Status: Backport + +Signed-off-by: Khem Raj <[email protected]> +Index: binutils-2.22/bfd/elf32-ppc.c +=================================================================== +--- binutils-2.22.orig/bfd/elf32-ppc.c 2011-11-21 01:29:21.000000000 -0800 ++++ binutils-2.22/bfd/elf32-ppc.c 2012-05-31 14:28:48.273784929 -0700 +@@ -2987,10 +2987,6 @@ + edir->elf.needs_plt |= eind->elf.needs_plt; + edir->elf.pointer_equality_needed |= eind->elf.pointer_equality_needed; + +- /* If we were called to copy over info for a weak sym, that's all. */ +- if (eind->elf.root.type != bfd_link_hash_indirect) +- return; +- + if (eind->dyn_relocs != NULL) + { + if (edir->dyn_relocs != NULL) +@@ -3022,6 +3018,16 @@ + eind->dyn_relocs = NULL; + } + ++ /* If we were called to copy over info for a weak sym, that's all. ++ You might think dyn_relocs need not be copied over; After all, ++ both syms will be dynamic or both non-dynamic so we're just ++ moving reloc accounting around. However, ELIMINATE_COPY_RELOCS ++ code in ppc_elf_adjust_dynamic_symbol needs to check for ++ dyn_relocs in read-only sections, and it does so on what is the ++ DIR sym here. */ ++ if (eind->elf.root.type != bfd_link_hash_indirect) ++ return; ++ + /* Copy over the GOT refcount entries that we may have already seen to + the symbol which just became indirect. */ + edir->elf.got.refcount += eind->elf.got.refcount; +Index: binutils-2.22/bfd/elf64-ppc.c +=================================================================== +--- binutils-2.22.orig/bfd/elf64-ppc.c 2011-11-21 01:29:24.000000000 -0800 ++++ binutils-2.22/bfd/elf64-ppc.c 2012-05-31 14:28:48.285784951 -0700 +@@ -4435,10 +4435,6 @@ + edir->elf.ref_regular_nonweak |= eind->elf.ref_regular_nonweak; + edir->elf.needs_plt |= eind->elf.needs_plt; + +- /* If we were called to copy over info for a weak sym, that's all. */ +- if (eind->elf.root.type != bfd_link_hash_indirect) +- return; +- + /* Copy over any dynamic relocs we may have on the indirect sym. */ + if (eind->dyn_relocs != NULL) + { +@@ -4471,6 +4467,16 @@ + eind->dyn_relocs = NULL; + } + ++ /* If we were called to copy over info for a weak sym, that's all. ++ You might think dyn_relocs need not be copied over; After all, ++ both syms will be dynamic or both non-dynamic so we're just ++ moving reloc accounting around. However, ELIMINATE_COPY_RELOCS ++ code in ppc64_elf_adjust_dynamic_symbol needs to check for ++ dyn_relocs in read-only sections, and it does so on what is the ++ DIR sym here. */ ++ if (eind->elf.root.type != bfd_link_hash_indirect) ++ return; ++ + /* Copy over got entries that we may have already seen to the + symbol which just became indirect. */ + if (eind->elf.got.glist != NULL)
meta/recipes-devtools/binutils/binutils_2.22.bb +2 -1
@@ -1,6 +1,6 @@ require binutils.inc -PR = "r8" +PR = "r9" LIC_FILES_CHKSUM="\ file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
@@ -32,6 +32,7 @@ SRC_URI = "\ file://binutils-powerpc-e5500.patch \ file://binutils-armv5e.patch \ file://mips64-default-ld-emulation.patch \ + file://0001-PR-ld-13470.patch \ " SRC_URI[md5sum] = "ee0f10756c84979622b992a4a61ea3f5"
Signature · 1 line
1.7.5.4
PATCH v2 2/16 rpm: Fix compilation on uclibc
rpmatch is not there in uclibc therefore add logic to configure to detect it.
x* wrappers need to be defined for uclibc as well.
--- meta/recipes-devtools/rpm/rpm/rpmatch.patch | 42 ++++++++++++ meta/recipes-devtools/rpm/rpm/uclibc-support.patch | 69 ++++++++++++++++++++ meta/recipes-devtools/rpm/rpm_5.4.0.bb | 4 +- 3 files changed, 114 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/rpm/rpm/rpmatch.patch create mode 100644 meta/recipes-devtools/rpm/rpm/uclibc-support.patch
meta/recipes-devtools/rpm/rpm/rpmatch.patch new file +42 -0
@@ -0,0 +1,42 @@ +Add configure check for rpmatch() and +creates a compatable macro if it is not provided by the C library. + +This is needed for uclibc since it does not have the above function +implemented. + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <[email protected]> + +Index: rpm-5.4.0/configure.ac +=================================================================== +--- rpm-5.4.0.orig/configure.ac 2012-05-31 15:40:05.985990822 -0700 ++++ rpm-5.4.0/configure.ac 2012-05-31 15:41:15.601995311 -0700 +@@ -800,7 +800,7 @@ + ftok getaddrinfo getattrlist getcwd getdelim getline getmode getnameinfo dnl + getpassphrase getxattr getwd iconv inet_aton lchflags lchmod lchown dnl + lgetxattr lsetxattr lutimes madvise mempcpy mkdtemp mkstemp mtrace dnl +- posix_fadvise posix_fallocate putenv realpath regcomp __secure_getenv dnl ++ posix_fadvise posix_fallocate putenv realpath regcomp rpmatch __secure_getenv dnl + setattrlist setenv setlocale setmode setxattr dnl + sigaddset sigdelset sigemptyset sighold sigrelse sigpause dnl + sigprocmask sigsuspend sigaction dnl +Index: rpm-5.4.0/system.h +=================================================================== +--- rpm-5.4.0.orig/system.h 2012-05-31 15:40:05.997991504 -0700 ++++ rpm-5.4.0/system.h 2012-05-31 15:42:04.941997731 -0700 +@@ -410,6 +410,14 @@ + #endif /* defined(__GNUC__) */ + #endif /* HAVE_MCHECK_H */ + ++#ifndef HAVE_RPMATCH ++#define rpmatch(line) \ ++ ( (line == NULL)? -1 : \ ++ (*line == 'y' || *line == 'Y')? 1 : \ ++ (*line == 'n' || *line == 'N')? 0 : \ ++ -1 ) ++#endif ++ + /* Retrofit glibc __progname */ + #if defined __GLIBC__ && __GLIBC__ >= 2 + #if __GLIBC_MINOR__ >= 1
meta/recipes-devtools/rpm/rpm/uclibc-support.patch new file +69 -0
69 lines not on this page · raw message
meta/recipes-devtools/rpm/rpm_5.4.0.bb +3 -1
@@ -45,7 +45,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1" DEPENDS = "bzip2 zlib db openssl elfutils expat libpcre attr acl popt ${extrarpmdeps}" extrarpmdeps = "python perl file" extrarpmdeps_virtclass-native = "python-native file-native" -PR = "r38" +PR = "r39" # rpm2cpio is a shell script, which is part of the rpm src.rpm. It is needed # in order to extract the distribution SRPM into a format we can extract...
@@ -72,6 +72,8 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.0-0.20101229.src.rpm;ex file://rpm-resolvedep.patch \ file://rpm-respect-arch.patch \ file://rpm_fix_for_automake-1.12.patch \ + file://uclibc-support.patch \ + file://rpmatch.patch \ " # file://rpm-autoconf.patch \
Signature · 1 line
1.7.5.4
PATCH v2 3/16 pth: Mark incompatible with uclibc
In reply to Khem Rajpth does not work with uclibc
--- meta/recipes-support/pth/pth_2.0.7.bb | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-)
meta/recipes-support/pth/pth_2.0.7.bb +10 -2
@@ -3,9 +3,17 @@ HOMEPAGE = "http://www.gnu.org/software/pth/" SECTION = "libs" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;beginline=12;endline=15;md5=a48af114a80c222cafd37f24370a77b1" -PR = "r1" +PR = "r2" -SRC_URI = "${GNU_MIRROR}/pth/pth-${PV}.tar.gz" +python __anonymous () { + import bb, re + uc_os = (re.match('.*uclibc*', d.getVar('TARGET_OS', True)) != None) + if uc_os: + raise bb.parse.SkipPackage("incompatible with uClibc") +} + +SRC_URI = "${GNU_MIRROR}/pth/pth-${PV}.tar.gz \ + " SRC_URI[md5sum] = "9cb4a25331a4c4db866a31cbe507c793" SRC_URI[sha256sum] = "72353660c5a2caafd601b20e12e75d865fd88f6cf1a088b306a3963f0bc77232"
Signature · 1 line
1.7.5.4
PATCH v2 4/16 libtool: Let -fstack-protector passed to link step
In reply to Khem Rajlinker should add -lssp to linker cmdline when -fstack-protector therefore add this knowledge to libtool otherwise packages will fail to link
--- meta/recipes-devtools/libtool/libtool-2.4.2.inc | 3 +- .../libtool/libtool/respect-fstack-protector.patch | 53 ++++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patch
meta/recipes-devtools/libtool/libtool-2.4.2.inc +2 -1
@@ -8,7 +8,7 @@ LICENSE = "GPLv2 & LGPLv2.1" LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ file://libltdl/COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06" -INC_PR = "r3" +INC_PR = "r4" SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \ file://trailingslash.patch \
@@ -18,6 +18,7 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \ file://fix-final-rpath.patch \ file://avoid_absolute_paths_for_general_utils.patch \ file://fix-rpath.patch \ + file://respect-fstack-protector.patch \ " SRC_URI[md5sum] = "d2f3b7d4627e69e13514a40e72a24d50"
meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patch new file +53 -0
53 lines not on this page · raw message
Signature · 1 line
1.7.5.4
PATCH v2 5/16 rpm: Use link time check for libssp
In reply to Khem Raj-fstack-protector needs libssp to link with
so when checking for this option support we
need to find if libssp is staged in root file
system
--- .../rpm/rpm/fstack-protector-configure-check.patch | 13 +++++++++++++ meta/recipes-devtools/rpm/rpm_5.4.0.bb | 1 + 2 files changed, 14 insertions(+), 0 deletions(-) create mode 100644 meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patch
meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patch new file +13 -0
@@ -0,0 +1,13 @@ +Index: rpm-5.4.0/configure.ac +=================================================================== +--- rpm-5.4.0.orig/configure.ac 2012-06-01 11:41:19.741480143 -0700 ++++ rpm-5.4.0/configure.ac 2012-06-01 11:41:51.773481676 -0700 +@@ -193,7 +193,7 @@ + my_save_cflags="$CFLAGS" + CFLAGS=$c + AC_MSG_CHECKING([whether GCC supports $c]) +- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])], ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([])], + [AC_MSG_RESULT([yes])] + [my_cflags=$c], + [AC_MSG_RESULT([no])]
meta/recipes-devtools/rpm/rpm_5.4.0.bb +1 -0
@@ -74,6 +74,7 @@ SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.4/rpm-5.4.0-0.20101229.src.rpm;ex file://rpm_fix_for_automake-1.12.patch \ file://uclibc-support.patch \ file://rpmatch.patch \ + file://fstack-protector-configure-check.patch \ " # file://rpm-autoconf.patch \
Signature · 1 line
1.7.5.4
PATCH v2 6/16 sat-solver: Fix build on uclibc
In reply to Khem Rajfutimes is not available on uclibc so use utimes
--- .../sat-solver/sat-solver/futimes.patch | 32 ++++++++++++++++++++ meta/recipes-extended/sat-solver/sat-solver_git.bb | 7 +++- 2 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-extended/sat-solver/sat-solver/futimes.patch
meta/recipes-extended/sat-solver/sat-solver/futimes.patch new file +32 -0
@@ -0,0 +1,32 @@ +This patch uses utimes instead of futimes for uclibc +since futimes is not available + +Upstream-Status: Pending +Signed-off-by: Khem Raj <[email protected]> + +Index: git/examples/solv.c +=================================================================== +--- git.orig/examples/solv.c 2012-06-01 12:06:22.041552848 -0700 ++++ git/examples/solv.c 2012-06-01 12:49:17.417677449 -0700 +@@ -1027,7 +1027,8 @@ + int flags; + + cinfo = repo->appdata; +- if (!(fp = fopen(calccachepath(repo, repoext), "r"))) ++ const char* fname = calccachepath(repo, repoext); ++ if (!(fp = fopen(fname, "r"))) + return 0; + if (fseek(fp, -sizeof(mycookie), SEEK_END) || fread(mycookie, sizeof(mycookie), 1, fp) != 1) + { +@@ -1068,7 +1069,11 @@ + memcpy(cinfo->extcookie, myextcookie, sizeof(myextcookie)); + } + if (mark) ++#ifdef __UCLIBC__ ++ utimes(fname, 0); /* try to set modification time */ ++#else + futimes(fileno(fp), 0); /* try to set modification time */ ++#endif + fclose(fp); + return 1; + }
meta/recipes-extended/sat-solver/sat-solver_git.bb +5 -2
@@ -8,7 +8,7 @@ DEPENDS = "libcheck rpm zlib expat db" SRCREV = "0a7378d5f482f477a01cf1690d76871ab8bdcc32" PV = "0.0-git${SRCPV}" -PR = "r13" +PR = "r14" PARALLEL_MAKE=""
@@ -20,14 +20,17 @@ SRC_URI = "git://github.com/openSUSE/sat-solver.git;protocol=git \ file://sat-solver_core.patch \ file://fix_gcc-4.6.0_compile_issue.patch \ file://0001-sat_xfopen.c-Forward-port-to-zlib-1.2.6-gzFile.patch \ + file://futimes.patch \ " S = "${WORKDIR}/git" -EXTRA_OECMAKE += "-DRPM5=RPM5 -DOE_CORE=OE_CORE" +EXTRA_OECMAKE += "-DRPM5=RPM5 -DOE_CORE=OE_CORE -DUSE_OWN_QSORT=1" EXTRA_OECMAKE += " -DLIB=${@os.path.basename('${libdir}')}" +TUNE_CCARGS += "-DUSE_OWN_QSORT=1" + inherit cmake pkgconfig RDEPENDS_${PN} = "rpm-libs"
Signature · 1 line
1.7.5.4
PATCH v2 7/16 libzypp: Fix build with uclibc
In reply to Khem Rajcstdio is included indrectly with eglibc based systems but not with uclibc based systems and use of functions like ::eof are then reported as warnings. Therefore we include cstdio explicitly.
--- meta/recipes-extended/libzypp/libzypp/cstdio.patch | 49 ++++++++++++++++++++ meta/recipes-extended/libzypp/libzypp_git.bb | 10 +++- 2 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-extended/libzypp/libzypp/cstdio.patch
meta/recipes-extended/libzypp/libzypp/cstdio.patch new file +49 -0
@@ -0,0 +1,49 @@ +include cstdio to get definitions of ::xxx functions which +are now reported by gcc-4.7 as wanrings and warnings are treated +as errors + +Signed-off-by: Khem Raj <[email protected]> +Upstream-Status: Pending + +Index: git/zypp/ExternalProgram.cc +=================================================================== +--- git.orig/zypp/ExternalProgram.cc 2012-06-01 16:25:17.098304709 -0700 ++++ git/zypp/ExternalProgram.cc 2012-06-01 16:25:37.254305681 -0700 +@@ -22,6 +22,7 @@ + #include <cstring> // strsignal + #include <iostream> + #include <sstream> ++#include <cstdio> + + #include "zypp/base/Logger.h" + #include "zypp/base/String.h" +Index: git/zypp/PluginScript.cc +=================================================================== +--- git.orig/zypp/PluginScript.cc 2012-06-01 16:21:37.814294089 -0700 ++++ git/zypp/PluginScript.cc 2012-06-01 16:24:41.002302961 -0700 +@@ -14,6 +14,7 @@ + + #include <iostream> + #include <sstream> ++#include <cstdio> + + #include "zypp/base/LogTools.h" + #include "zypp/base/DefaultIntegral.h" +@@ -336,7 +337,7 @@ + if ( fd == -1 ) + ZYPP_THROW( PluginScriptException( "Bad file descriptor" ) ); + +- ::clearerr( filep ); ++ std::clearerr( filep ); + std::string data; + { + PluginDebugBuffer _debug( data ); // dump receive buffer if PLUGIN_DEBUG +@@ -370,7 +371,7 @@ + int retval = select( fd+1, &rfds, NULL, NULL, &tv ); + if ( retval > 0 ) // FD_ISSET( fd, &rfds ) will be true. + { +- ::clearerr( filep ); ++ std::clearerr( filep ); + } + else if ( retval == 0 ) + {
meta/recipes-extended/libzypp/libzypp_git.bb +8 -2
@@ -11,7 +11,7 @@ DEPENDS = "rpm boost curl libxml2 zlib sat-solver expat openssl udev libproxy" S = "${WORKDIR}/git" SRCREV = "15b6c52260bbc52b3d8e585e271b67e10cc7c433" PV = "0.0-git${SRCPV}" -PR = "r20" +PR = "r21" SRC_URI = "git://github.com/openSUSE/libzypp.git;protocol=git \ file://no-doc.patch \
@@ -23,6 +23,7 @@ SRC_URI = "git://github.com/openSUSE/libzypp.git;protocol=git \ file://fix_for_compile_wth_gcc-4.6.0.patch \ file://hardcode-lib-fix.patch \ file://close.patch \ + file://cstdio.patch \ " SRC_URI_append_mips = " file://mips-workaround-gcc-tribool-error.patch"
@@ -31,7 +32,10 @@ SRC_URI_append_mips = " file://mips-workaround-gcc-tribool-error.patch" SRC_URI_append_arm = " file://arm-workaround-global-constructor.patch" # rpmdb2solv from sat-solver is run from libzypp -RDEPENDS_${PN} = "sat-solver rpm-libs gzip gnupg" +RDEPENDS_${PN} = "sat-solver rpm-libs gzip ${RDEPGNUPG}" + +RDEPGNUPG = "gnupg" +RDEPGNUPG_libc-uclibc = "" PACKAGES =+ "${PN}-pkgmgt"
@@ -45,6 +49,8 @@ FILES_${PN}-pkgmgt = "${bindir}/package-manager \ EXTRA_OECMAKE += " -DLIB=${@os.path.basename('${libdir}')}" +LDFLAGS += "-lpthread" + PACKAGE_ARCH = "${MACHINE_ARCH}" AVOID_CONSTRUCTOR = ""
Signature · 1 line
1.7.5.4
PATCH v2 8/16 augeas: Fix compilation failure
In reply to Khem Rajon uclibc we see this failure
too few arguments to function 'escape'
--- meta/recipes-extended/augeas/augeas.inc | 4 ++- .../0001-Add-missing-argument-to-escape.patch | 29 ++++++++++++++++++++ meta/recipes-extended/augeas/augeas_0.10.0.bb | 2 +- 3 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patch
meta/recipes-extended/augeas/augeas.inc +3 -1
@@ -5,7 +5,9 @@ BUGTRACKER = "https://fedorahosted.org/augeas/report/1" LICENSE = "LGPLv2.1+" LIC_FILES_CHKSUM = "file://COPYING;md5=bbb461211a33b134d42ed5ee802b37ff" -SRC_URI = "http://augeas.net/download/${BP}.tar.gz" +SRC_URI = "http://augeas.net/download/${BP}.tar.gz \ + file://0001-Add-missing-argument-to-escape.patch \ + " DEPENDS = "readline libxml2"
meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patch new file +29 -0
@@ -0,0 +1,29 @@ +Upstream-Status: Backport +Signed-off-by: Khem Raj <[email protected]> + +From 021ea39f8e400225e2d01b4c62eb9d56404f2ecd Mon Sep 17 00:00:00 2001 +From: Michael Chapman <[email protected]> +Date: Fri, 16 Dec 2011 21:30:07 +1100 +Subject: [PATCH] Add missing argument to escape() + +Fixes ticket #242. +--- + src/regexp.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/regexp.c b/src/regexp.c +index cf0ea5d..811087d 100644 +--- a/src/regexp.c ++++ b/src/regexp.c +@@ -50,7 +50,7 @@ char *regexp_escape(const struct regexp *r) { + ret = fa_restrict_alphabet(r->pattern->str, strlen(r->pattern->str), + &nre, &nre_len, 2, 1); + if (ret == 0) { +- pat = escape(nre, nre_len); ++ pat = escape(nre, nre_len, RX_ESCAPES); + free(nre); + } + #endif +-- +1.7.5.4 +
meta/recipes-extended/augeas/augeas_0.10.0.bb +1 -1
@@ -1,6 +1,6 @@ require augeas.inc -PR = "r1" +PR = "r2" SRC_URI[md5sum] = "fe1834e90a066c3208ac0214622c7352" SRC_URI[sha256sum] = "ec111af06186216930176ebe5ecccdf7bf528528aee9acde1d5d70088484afca"
Signature · 1 line
1.7.5.4
PATCH v2 9/16 rpm: pass lrt and lpthread to link step explicitly for uclibc
In reply to Khem RajThese need to appear in DT_NEEDED for librpmio.so
for uclibc somehow it does not get added to link
cmdline so we do it explicitly.
--- meta/recipes-devtools/rpm/rpm_5.4.0.bb | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
meta/recipes-devtools/rpm/rpm_5.4.0.bb +2 -0
@@ -178,6 +178,8 @@ EXTRA_OECONF = "--verbose \ CFLAGS_append = " -DRPM_VENDOR_WINDRIVER -DRPM_VENDOR_POKY" +LDFLAGS_append_libc-uclibc = "-lrt -lpthread" + PACKAGES = "${PN}-dbg ${PN} ${PN}-doc ${PN}-libs ${PN}-dev ${PN}-staticdev ${PN}-common ${PN}-build python-rpm-dbg python-rpm-staticdev python-rpm perl-module-rpm perl-module-rpm-dev ${PN}-locale" SOLIBS = "5.4.so"
Signature · 1 line
1.7.5.4
PATCH v2 10/16 zypper: Fix build on uclibc
In reply to Khem Rajuclibc does not have rpmatch() so we define
it if zypper is being compiled for uclibc
--- meta/recipes-extended/zypper/zypper/rpmatch.patch | 23 +++++++++++++++++++++ meta/recipes-extended/zypper/zypper_git.bb | 4 ++- 2 files changed, 26 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-extended/zypper/zypper/rpmatch.patch
meta/recipes-extended/zypper/zypper/rpmatch.patch new file +23 -0
@@ -0,0 +1,23 @@ +rpmatch() is missing in uclibc so we provide a local definition +in form of a macro + +Signed-off-by: Khem Raj <[email protected]> +Upstream-Status: Pending + +Index: git/src/utils/prompt.h +=================================================================== +--- git.orig/src/utils/prompt.h 2012-06-06 15:51:00.899112775 -0700 ++++ git/src/utils/prompt.h 2012-06-06 15:52:17.003116762 -0700 +@@ -172,4 +172,12 @@ + return errstr; + } + ++#ifdef __UCLIBC__ ++#define rpmatch(line) \ ++ ( (line == NULL)? -1 : \ ++ (*line == 'y' || *line == 'Y')? 1 : \ ++ (*line == 'n' || *line == 'N')? 0 : \ ++ -1 ) ++#endif /* __UCLIBC__ */ ++ + #endif /*ZYPPERPROMPT_H_*/
meta/recipes-extended/zypper/zypper_git.bb +3 -1
@@ -5,7 +5,7 @@ LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=3201406e350b39e05a82e28b5020f413" DEPENDS = "libzypp augeas" -PR = "r2" +PR = "r3" SRCREV = "2c5bb6ceb99ecd950ef993e43d77bf0569ea0582" inherit cmake
@@ -16,6 +16,7 @@ SRC_URI = "git://github.com/openSUSE/zypper.git;protocol=git \ file://dso_linking_change_build_fix.patch \ file://rpm5-flag.patch \ file://gcc-scope.patch \ + file://rpmatch.patch \ " S = "${WORKDIR}/git"
@@ -25,3 +26,4 @@ RDEPENDS_${PN} = "rpm-libs" RRECOMMENDS_${PN} = "procps util-linux-uuidgen" PACKAGE_ARCH = "${MACHINE_ARCH}" +OECMAKE_CXX_LINK_FLAGS_libc-uclibc += "-lintl"
Signature · 1 line
1.7.5.4
PATCH v2 11/16 cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS variables
In reply to Khem RajIn some cases we need to specify linker flags and right
now we do not have a way to communicate that to cmake
based systems. cmake defines CMAKE_C_LINK_FLAGS and CMAKE_CXX_LINK_FLAGS for these needs. This patch therefore defines two local variables namely OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS which can be altered by recipes to tweak linker flags
--- meta/classes/cmake.bbclass | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
meta/classes/cmake.bbclass +4 -0
@@ -23,6 +23,8 @@ OECMAKE_C_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CPPFLAGS}" OECMAKE_CXX_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CXXFLAGS} -fpermissive" OECMAKE_C_FLAGS_RELEASE ?= "${SELECTED_OPTIMIZATION} ${CPPFLAGS} -DNDEBUG" OECMAKE_CXX_FLAGS_RELEASE ?= "${SELECTED_OPTIMIZATION} ${CXXFLAGS} -DNDEBUG" +OECMAKE_C_LINK_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CPPFLAGS} ${LDFLAGS}" +OECMAKE_CXX_LINK_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CXXFLAGS} ${LDFLAGS}" OECMAKE_RPATH ?= "" OECMAKE_PERLNATIVE_DIR ??= ""
@@ -40,6 +42,8 @@ set( CMAKE_C_FLAGS "${OECMAKE_C_FLAGS}" CACHE STRING "CFLAGS" ) set( CMAKE_CXX_FLAGS "${OECMAKE_CXX_FLAGS}" CACHE STRING "CXXFLAGS" ) set( CMAKE_C_FLAGS_RELEASE "${OECMAKE_C_FLAGS_RELEASE}" CACHE STRING "CFLAGS for release" ) set( CMAKE_CXX_FLAGS_RELEASE "${OECMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "CXXFLAGS for release" ) +set( CMAKE_C_LINK_FLAGS "${OECMAKE_C_LINK_FLAGS}" CACHE STRING "LDFLAGS" ) +set( CMAKE_CXX_LINK_FLAGS "${OECMAKE_CXX_LINK_FLAGS}" CACHE STRING "LDFLAGS" ) # only search in the paths provided so cmake doesnt pick # up libraries and tools from the native build machine
Signature · 1 line
1.7.5.4
PATCH v2 12/16 libzypp: Define OECMAKE_CXX_LINK_FLAGS when compiling for uclibc
In reply to Khem Raj--- meta/recipes-extended/libzypp/libzypp_git.bb | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)
meta/recipes-extended/libzypp/libzypp_git.bb +1 -2
@@ -48,8 +48,7 @@ FILES_${PN}-pkgmgt = "${bindir}/package-manager \ " EXTRA_OECMAKE += " -DLIB=${@os.path.basename('${libdir}')}" - -LDFLAGS += "-lpthread" +OECMAKE_CXX_LINK_FLAGS_libc-uclibc += "-pthread" PACKAGE_ARCH = "${MACHINE_ARCH}"
Signature · 1 line
1.7.5.4
PATCH v2 13/16 task-self-hosted.bb, task-core-lsb.bb: Conditionalize pth inclusion
In reply to Khem Rajpth is not portable to uclibc therefore we need to exclude it for uclibc based systems.
--- meta/recipes-core/tasks/task-self-hosted.bb | 4 +++- meta/recipes-extended/tasks/task-core-lsb.bb | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-)
meta/recipes-core/tasks/task-self-hosted.bb +3 -1
@@ -137,7 +137,7 @@ RDEPENDS_task-self-hosted-extended = "\ perl-dev \ perl-modules \ perl-pod \ - pth \ + ${PTH} \ python \ python-compile \ python-compiler \
@@ -199,3 +199,5 @@ RDEPENDS_task-self-hosted-graphics = "\ python-pygtk \ gtk-theme-clearlooks \ " +PTH = "pth" +PTH_libc-uclibc = ""
meta/recipes-extended/tasks/task-core-lsb.bb +5 -1
@@ -70,7 +70,7 @@ RDEPENDS_task-core-sys-extended = "\ minicom \ neon \ parted \ - pth \ + ${PTH} \ quota \ screen \ setserial \
@@ -197,3 +197,7 @@ RDEPENDS_task-core-lsb-runtime-add = "\ eglibc-pic \ eglibc-utils \ " + +PTH = "pth" +PTH_libc-uclibc = "" +
Signature · 1 line
1.7.5.4
PATCH v2 14/16 npth: Add recipe
In reply to Khem Rajnpth is modern version of pth
gnugp 2.1 will drop pth in favor of npth
npth works with uclibc too whereas pth does not
--- meta/recipes-support/npth/npth_0.90.bb | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) create mode 100644 meta/recipes-support/npth/npth_0.90.bb
meta/recipes-support/npth/npth_0.90.bb new file +17 -0
@@ -0,0 +1,17 @@ +DESCRIPTION = "New GNU Portable Threads" +HOMEPAGE = "http://www.gnupg.org/software/pth/" +SECTION = "libs" +LICENSE = "LGPLv3+ & GPLv2+" +LIC_FILES_CHKSUM = "\ + file://COPYING;md5=751419260aa954499f7abaabaa882bbe\ + file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6\ + " +SRC_URI = "ftp://ftp.gnupg.org/gcrypt/npth/npth-${PV}.tar.bz2 \ + " +SRC_URI[md5sum] = "701665669b371385a92817ff1f9215ca" +SRC_URI[sha256sum] = "e24e99c9e90e7c2c2272fed3a939647fdcd3a7ee0c9efb2983eed553ab2b4568" + +inherit autotools binconfig + +FILES_${PN} = "${libdir}/libnpth.so.*" +FILES_${PN}-dev += "${bindir}/npth-config"
Signature · 1 line
1.7.5.4
PATCH v2 15/16 gpgme: Depend on npth for uclibc
In reply to Khem Raj--- meta/recipes-support/gpgme/gpgme_1.3.1.bb | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-)
meta/recipes-support/gpgme/gpgme_1.3.1.bb +5 -2
@@ -13,8 +13,11 @@ SRC_URI = "ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-${PV}.tar.bz2 \ SRC_URI[md5sum] = "90afa8436ce2b2683c001c824bd22601" SRC_URI[sha256sum] = "15ef27a875ae0d79d7446fd931deda11438e724ffbeac74449ed19cba23df4d4" -DEPENDS = "libgpg-error libassuan pth" -PR = "r1" +DEPENDS = "libgpg-error libassuan ${PTH}" +PTH_libc-uclibc = "npth" +PTH = "pth" + +PR = "r2" EXTRA_OECONF = "--with-pth=${STAGING_DIR_HOST} --without-pth-test \ --with-gpg=${bindir}/gpg --without-gpgsm"
Signature · 1 line
1.7.5.4
PATCH v2 16/16 gnupg-2.0.19: Depend on npth for uclibc
In reply to Khem Raj--- meta/recipes-support/gnupg/gnupg_2.0.19.bb | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
meta/recipes-support/gnupg/gnupg_2.0.19.bb +4 -2
@@ -4,8 +4,10 @@ LICENSE = "GPLv3 & LGPLv3" LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \ file://COPYING.LIB;md5=6a6a8e020838b23406c81b19c1d46df6" -DEPENDS = "pth libassuan libksba zlib bzip2 readline libgcrypt" -PR = "r2" +DEPENDS = "${PTH} libassuan libksba zlib bzip2 readline libgcrypt" +PTH = "pth" +PTH_libc-uclibc = "npth" +PR = "r3" inherit autotools gettext
Signature · 1 line
1.7.5.4
Quoted 9 lines · Khem Raj
This patch now can compile a uclibc sato image using rpm as packaging backend Introduces variables into cmake class to control linker flags which was not available
Adds npth recipe. npth is next gen pth soon gnupg 2.1 will drop pth and move on to use npth, right now its only used in uclibc case conditionalize use of pth using libc overrides since pth is not compatible with uclibc
Quoted 7 lines
The following changes since commit
75a973328d50ef3c007edb7a471ea77fb97911ea:kern-tools: anchor KMACHINE test (2012-06-08 11:56:21 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/misc-updates
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc-updates
I have updated this pull request with two additional changes
1. Upgrade uclibc git recipes to latest tip of master this gets the eventfd patches which are needed for glib-2.32.x to function correctly.
2. Include gcc patches to exclude call-convention settings when building native and nativesdk gcc recipes.
3. Use translated target arch instead of target_arch in gcc.
Quoted 59 lines
Khem Raj (16):
binutils_2.22: Backport to fix bogus textrels
rpm: Fix compilation on uclibc
pth: Mark incompatible with uclibc
libtool: Let -fstack-protector passed to link step
rpm: Use link time check for libssp
sat-solver: Fix build on uclibc
libzypp: Fix build with uclibc
augeas: Fix compilation failure
rpm: pass lrt and lpthread to link step explicitly for uclibc
zypper: Fix build on uclibc
cmake.bbclass: AddOECMAKE_C_LINK_FLAGSandOECMAKE_CXX_LINK_FLAGSvariables
libzypp: DefineOECMAKE_CXX_LINK_FLAGSwhen compiling for uclibc task-self-hosted.bb,task-core-lsb.bb: Conditionalize pth inclusion
npth: Add recipe
gpgme: Depend on npth for uclibc
gnupg-2.0.19: Depend on npth for uclibcmeta/classes/cmake.bbclass | 4 + meta/recipes-core/tasks/task-self-hosted.bb | 4 +-
.../binutils/binutils/0001-PR-ld-13470.patch| 82 ++++++++++++++++++++ meta/recipes-devtools/binutils/binutils_2.22.bb | 3 +- meta/recipes-devtools/libtool/libtool-2.4.2.inc | 3 +-.../libtool/libtool/respect-fstack-protector.patch| 53 +++++++++++++.../rpm/rpm/fstack-protector-configure-check.patch| 13 +++meta/recipes-devtools/rpm/rpm/rpmatch.patch| 42 ++++++++++meta/recipes-devtools/rpm/rpm/uclibc-support.patch| 69 ++++++++++++++++ meta/recipes-devtools/rpm/rpm_5.4.0.bb | 7 ++- meta/recipes-extended/augeas/augeas.inc | 4 +-.../0001-Add-missing-argument-to-escape.patch| 29 +++++++ meta/recipes-extended/augeas/augeas_0.10.0.bb | 2 +-meta/recipes-extended/libzypp/libzypp/cstdio.patch| 49 ++++++++++++ meta/recipes-extended/libzypp/libzypp_git.bb | 9 ++-.../sat-solver/sat-solver/futimes.patch| 32 ++++++++ meta/recipes-extended/sat-solver/sat-solver_git.bb | 7 +- meta/recipes-extended/tasks/task-core-lsb.bb | 6 +-meta/recipes-extended/zypper/zypper/rpmatch.patch| 23 ++++++ meta/recipes-extended/zypper/zypper_git.bb | 4 +- meta/recipes-support/gnupg/gnupg_2.0.19.bb | 6 +- meta/recipes-support/gpgme/gpgme_1.3.1.bb | 7 +- meta/recipes-support/npth/npth_0.90.bb | 17 ++++ meta/recipes-support/pth/pth_2.0.7.bb | 12 +++-24 files changed, 469 insertions(+), 18 deletions(-)create mode 100644
meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patchcreate mode 100644meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patchcreate mode 100644meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patchcreate mode 100644meta/recipes-devtools/rpm/rpm/rpmatch.patch
create mode 100644meta/recipes-devtools/rpm/rpm/uclibc-support.patch
create mode 100644meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patchcreate mode 100644meta/recipes-extended/libzypp/libzypp/cstdio.patch
create mode 100644meta/recipes-extended/sat-solver/sat-solver/futimes.patchcreate mode 100644meta/recipes-extended/zypper/zypper/rpmatch.patch
create mode 100644 meta/recipes-support/npth/npth_0.90.bb--
1.7.5.4
Quoted 16 lines · Khem Raj
This patch now can compile a uclibc sato image using rpm as packaging backend Introduces variables into cmake class to control linker flags which was not available
Adds npth recipe. npth is next gen pth soon gnupg 2.1 will drop pth and move on to use npth, right now its only used in uclibc case conditionalize use of pth using libc overrides since pth is not compatible with uclibcThe following changes since commit
75a973328d50ef3c007edb7a471ea77fb97911ea:kern-tools: anchor KMACHINE test (2012-06-08 11:56:21 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contribkraj/misc-updates
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc-updates
Quoted 11 lines
Khem Raj (16):
binutils_2.22: Backport to fix bogus textrels
pth: Mark incompatible with uclibc
libtool: Let -fstack-protector passed to link step
augeas: Fix compilation failure
cmake.bbclass: AddOECMAKE_C_LINK_FLAGSandOECMAKE_CXX_LINK_FLAGS
variables
task-self-hosted.bb,task-core-lsb.bb: Conditionalize pth inclusion
npth: Add recipe
gpgme: Depend on npth for uclibc
gnupg-2.0.19: Depend on npth for uclibc
I took the above patches.
Quoted 7 lines
rpm: Fix compilation on uclibc
rpm: Use link time check for libssp
sat-solver: Fix build on uclibc
libzypp: Fix build with uclibc
rpm: pass lrt and lpthread to link step explicitly for uclibc
zypper: Fix build on uclibc
libzypp: DefineOECMAKE_CXX_LINK_FLAGSwhen compiling for uclibc
I haven't taken these yet as I want to get Mark's rpm update in, then see where we stand. I also was a little worried about the extra OECONF/TUNE pieces in the sat-solver patch. There wasn't any mention of that in the commit message...
Cheers,
Richard
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Quoted 14 lines · Richard Purdie
Quoted 13 lines · Khem Raj
This patch now can compile a uclibc sato image using rpm as packaging backend Introduces variables into cmake class to control linker flags which was not available Adds npth recipe. npth is next gen pth soon gnupg 2.1 will drop pth and move on to use npth, right now its only used in uclibc case conditionalize use of pth using libc overrides since pth is not compatible with uclibc
The following changes since commit
75a973328d50ef3c007edb7a471ea77fb97911ea:kern-tools: anchor KMACHINE test (2012-06-08 11:56:21 +0100)
Quoted 7 lines
Quoted 7 lines
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib
kraj/misc-updates
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc-updates
Khem Raj (16):
Quoted 16 lines
Quoted 7 lines
binutils_2.22: Backport to fix bogus textrels pth: Mark incompatible with uclibc libtool: Let -fstack-protector passed to link step augeas: Fix compilation failure cmake.bbclass: Add
OECMAKE_C_LINK_FLAGSandOECMAKE_CXX_LINK_FLAGSvariables task-self-hosted.bb,task-core-lsb.bb: Conditionalize pth inclusion npth: Add recipe gpgme: Depend on npth for uclibc gnupg-2.0.19: Depend on npth for uclibcI took the above patches.
Quoted 5 lines
rpm: Fix compilation on uclibc rpm: Use link time check for libssp sat-solver: Fix build on uclibc libzypp: Fix build with uclibc rpm: pass lrt and lpthread to link step explicitly for uclibc zypper: Fix build on uclibc libzypp: Define
OECMAKE_CXX_LINK_FLAGSwhen compiling for uclibc
Quoted 4 lines
I haven't taken these yet as I want to get Mark's rpm update in, then see where we stand. I also was a little worried about the extra OECONF/TUNE pieces in the sat-solver patch. There wasn't any mention of that in the commit message...
Thanks for looking into it. EXTRA_OECMAKE change should not be required there. however appending to TUNE_CCARGS is needed for uclibc since it does not have
same qsort expectations that sat-solver wants. I can make it apply only for uclibc here.
I will redo this patch
Quoted 9 lines
Cheers,
Richard
_______________________________________________ Openembedded-core mailing list [email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk/V+nsACgkQuwUzVZGdMxSbgACdG7VHCB6xFFHiyd6rW4/Y7HsL CxYAnAhHzM7ieDonDCLNsYMYXAT+HAFs
=SOkF
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Quoted 15 lines · Khem Raj
Quoted 14 lines · Richard Purdie
Quoted 13 lines · Khem Raj
This patch now can compile a uclibc sato image using rpm as packaging backend Introduces variables into cmake class to control linker flags which was not available Adds npth recipe. npth is next gen pth soon gnupg 2.1 will drop pth and move on to use npth, right now its only used in uclibc case conditionalize use of pth using libc overrides since pth is not compatible with uclibc
The following changes since commit
75a973328d50ef3c007edb7a471ea77fb97911ea:kern-tools: anchor KMACHINE test (2012-06-08 11:56:21 +0100)
Quoted 9 lines
Quoted 9 lines
Quoted 9 lines
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib
kraj/misc-updates
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/misc-updates
Khem Raj (16):
Quoted 21 lines
Quoted 16 lines
Quoted 7 lines
binutils_2.22: Backport to fix bogus textrels pth: Mark incompatible with uclibc libtool: Let -fstack-protector passed to link step augeas: Fix compilation failure cmake.bbclass:
AddOECMAKE_C_LINK_FLAGSandOECMAKE_CXX_LINK_FLAGSvariables task-self-hosted.bb,task-core-lsb.bb: Conditionalize pth inclusion npth: Add recipe gpgme: Depend on npth for uclibc gnupg-2.0.19: Depend on npth for uclibcI took the above patches.
Quoted 5 lines
rpm: Fix compilation on uclibc rpm: Use link time check for libssp sat-solver: Fix build on uclibc libzypp: Fix build with uclibc rpm: pass lrt and lpthread to link step explicitly for uclibc zypper: Fix build on uclibc libzypp: Define
OECMAKE_CXX_LINK_FLAGSwhen compiling for uclibcQuoted 4 lines
I haven't taken these yet as I want to get Mark's rpm update in, then see where we stand. I also was a little worried about the extra OECONF/TUNE pieces in the sat-solver patch. There wasn't any mention of that in the commit message...
Quoted 7 lines
Thanks for looking into it.
EXTRA_OECMAKEchange should not be required there. however appending toTUNE_CCARGSis needed for uclibc since it does not have same qsort expectations that sat-solver wants. I can make it apply only for uclibc here.I will redo this patch
I have redone this patch as said and updated the pull tree. Additionally I have added a patch to cache guint32/guint64 on x86_64/uclibc otherwise glib-2.32.x wont build on uclibc for x86_64
Quoted 11 lines
Quoted 11 lines
Cheers,
Richard
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk/WhQIACgkQuwUzVZGdMxT/5gCeNR+T0sYctIC6YnevtuZt8MAA tdUAniQnGkk/tjeSPZsXX8Nwh2CZUzYQ
=Dc0w
-----END PGP SIGNATURE-----
Quoted 3 lines · Khem Raj
I have redone this patch as said and updated the pull tree. Additionally I have added a patch to cache guint32/guint64 on x86_64/uclibc otherwise glib-2.32.x wont build on uclibc for
x86_64
Richard
I have now rebased the patches in pull tree on top of rpm upgrade.
-Khem