* [PATCH 01/16] binutils_2.22: Backport to fix bogus textrels
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
@ 2012-06-09 16:42 ` Khem Raj
2012-06-09 16:43 ` [PATCH 02/16] rpm: Fix compilation on uclibc Khem Raj
` (16 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:42 UTC (permalink / raw)
To: openembedded-core
This is reported by prelinker which does not
go well with textrels.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../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
diff --git a/meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patch b/meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patch
new file mode 100644
index 0000000..0a0e064
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/0001-PR-ld-13470.patch
@@ -0,0 +1,82 @@
+From 82fdddd1c4e37881db9b4c6a944261521c6f10ac Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@bigpond.net.au>
+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 <raj.khem@gmail.com>
+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)
diff --git a/meta/recipes-devtools/binutils/binutils_2.22.bb b/meta/recipes-devtools/binutils/binutils_2.22.bb
index 9f62883..7b6adef 100644
--- a/meta/recipes-devtools/binutils/binutils_2.22.bb
+++ b/meta/recipes-devtools/binutils/binutils_2.22.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 02/16] rpm: Fix compilation on uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
2012-06-09 16:42 ` [PATCH 01/16] binutils_2.22: Backport to fix bogus textrels Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 03/16] pth: Mark incompatible with uclibc Khem Raj
` (15 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
rpmatch is not there in uclibc therefore add logic to configure
to detect it.
x* wrappers need to be defined for uclibc as well.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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
diff --git a/meta/recipes-devtools/rpm/rpm/rpmatch.patch b/meta/recipes-devtools/rpm/rpm/rpmatch.patch
new file mode 100644
index 0000000..8ea3490
--- /dev/null
+++ b/meta/recipes-devtools/rpm/rpm/rpmatch.patch
@@ -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 <raj.khem@gmail.com>
+
+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
diff --git a/meta/recipes-devtools/rpm/rpm/uclibc-support.patch b/meta/recipes-devtools/rpm/rpm/uclibc-support.patch
new file mode 100644
index 0000000..f863669
--- /dev/null
+++ b/meta/recipes-devtools/rpm/rpm/uclibc-support.patch
@@ -0,0 +1,69 @@
+Define the x* wrappers for uclibc as well
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: rpm-5.4.0/rpmio/rpmio.h
+===================================================================
+--- rpm-5.4.0.orig/rpmio/rpmio.h 2010-09-29 07:54:30.000000000 -0700
++++ rpm-5.4.0/rpmio/rpmio.h 2012-05-31 16:05:26.042065540 -0700
+@@ -23,7 +23,8 @@
+ */
+ /*@{*/
+ #if !defined(__LCLINT__) && !defined(__UCLIBC__) && defined(__GLIBC__) && \
+- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2))
++ (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)) && \
++ !defined(__UCLIBC__)
+ #define USE_COOKIE_SEEK_POINTER 1
+ typedef _IO_off64_t _libio_off_t;
+ typedef _libio_off_t * _libio_pos_t;
+Index: rpm-5.4.0/system.h
+===================================================================
+--- rpm-5.4.0.orig/system.h 2010-09-27 14:24:39.000000000 -0700
++++ rpm-5.4.0/system.h 2012-05-31 16:08:07.334073348 -0700
+@@ -402,12 +402,12 @@
+ #endif /* defined(__LCLINT__) */
+
+ /* Memory allocation via macro defs to get meaningful locations from mtrace() */
+-#if defined(__GNUC__)
++#if defined(__GNUC__) || defined(__UCLIBC__)
+ #define xmalloc(_size) (malloc(_size) ? : vmefail(_size))
+ #define xcalloc(_nmemb, _size) (calloc((_nmemb), (_size)) ? : vmefail(_size))
+ #define xrealloc(_ptr, _size) (realloc((_ptr), (_size)) ? : vmefail(_size))
+ #define xstrdup(_str) (strcpy((malloc(strlen(_str)+1) ? : vmefail(strlen(_str)+1)), (_str)))
+-#endif /* defined(__GNUC__) */
++#endif /* defined(__GNUC__) */
+ #endif /* HAVE_MCHECK_H */
+
+ /* Retrofit glibc __progname */
+Index: rpm-5.4.0/lib/librpm.vers
+===================================================================
+--- rpm-5.4.0.orig/lib/librpm.vers 2010-09-27 16:12:48.000000000 -0700
++++ rpm-5.4.0/lib/librpm.vers 2012-05-31 16:05:26.042065540 -0700
+@@ -405,6 +405,10 @@
+ specedit;
+ strict_erasures;
+ XrpmtsiInit;
++ xmalloc;
++ xrealloc;
++ xcalloc;
++ xstrdup;
+ local:
+ *;
+ };
+Index: rpm-5.4.0/rpmio/librpmio.vers
+===================================================================
+--- rpm-5.4.0.orig/rpmio/librpmio.vers 2012-05-31 16:13:34.034089141 -0700
++++ rpm-5.4.0/rpmio/librpmio.vers 2012-05-31 16:13:56.542090245 -0700
+@@ -881,6 +881,10 @@
+ mongo_simple_int_command;
+ mongo_simple_str_command;
+ mongo_update;
++ xmalloc;
++ xrealloc;
++ xcalloc;
++ xstrdup;
+ local:
+ *;
+ };
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.0.bb b/meta/recipes-devtools/rpm/rpm_5.4.0.bb
index 43999e5..f4938fd 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.0.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.0.bb
@@ -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 \
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 03/16] pth: Mark incompatible with uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
2012-06-09 16:42 ` [PATCH 01/16] binutils_2.22: Backport to fix bogus textrels Khem Raj
2012-06-09 16:43 ` [PATCH 02/16] rpm: Fix compilation on uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 04/16] libtool: Let -fstack-protector passed to link step Khem Raj
` (14 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
pth does not work with uclibc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-support/pth/pth_2.0.7.bb | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-support/pth/pth_2.0.7.bb b/meta/recipes-support/pth/pth_2.0.7.bb
index 61865b7..cdd5eaf 100644
--- a/meta/recipes-support/pth/pth_2.0.7.bb
+++ b/meta/recipes-support/pth/pth_2.0.7.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 04/16] libtool: Let -fstack-protector passed to link step
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (2 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 03/16] pth: Mark incompatible with uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 05/16] rpm: Use link time check for libssp Khem Raj
` (13 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
linker should add -lssp to linker cmdline when
-fstack-protector therefore add this knowledge to libtool
otherwise packages will fail to link
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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
diff --git a/meta/recipes-devtools/libtool/libtool-2.4.2.inc b/meta/recipes-devtools/libtool/libtool-2.4.2.inc
index c1ef7c4..05a2e6d 100644
--- a/meta/recipes-devtools/libtool/libtool-2.4.2.inc
+++ b/meta/recipes-devtools/libtool/libtool-2.4.2.inc
@@ -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"
diff --git a/meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patch b/meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patch
new file mode 100644
index 0000000..a82b2ec
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/respect-fstack-protector.patch
@@ -0,0 +1,53 @@
+Source: http://permalink.gmane.org/gmane.comp.gnu.libtool.bugs/7341
+
+Bug confirmed. When code is compiled with -fstack-protector{,-all},
+GCC "emits extra code to check for buffer overflows, such as stack
+smashing attacks". This extra code uses symbols from libssp, and
+therefore (at least) Cygwin's GCC specs contain:
+
+*link_ssp:
+%{fstack-protector|fstack-protector-all:-lssp_nonshared -lssp}
+
+Therefore, when libtool fails to pass -fstack-protector{,-all} at link
+stage, the link fails.
+
+Patch attached. (Yes, I have a copyright assignment on file.)
+
+Yaakov
+Cygwin/X
+
+From b79f4e117b6f73cc461a2e232063e08481d33300 Mon Sep 17 00:00:00 2001
+From: Yaakov Selkowitz <yselkowitz <at> users.sourceforge.net>
+Date: Tue, 1 Jun 2010 22:18:51 -0500
+Subject: [PATCH] Fix linking with -fstack-protector
+
+* libltdl/config/ltmain.m4sh (func_mode_link): Pass -fstack-protector*
+to the linker as it is required at link time to resolve libssp symbols.
+
+Signed-off-by: Yaakov Selkowitz <yselkowitz <at> users.sourceforge.net>
+---
+ libltdl/config/ltmain.m4sh | 4 +++-
+ 1 files changed, 3 insertions(+), 1 deletions(-)
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+Index: libtool-2.4.2/libltdl/config/ltmain.m4sh
+===================================================================
+--- libtool-2.4.2.orig/libltdl/config/ltmain.m4sh 2012-06-01 12:35:44.089638130 -0700
++++ libtool-2.4.2/libltdl/config/ltmain.m4sh 2012-06-01 12:37:25.789643055 -0700
+@@ -5067,13 +5067,14 @@
+ # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
+ # -F/path path to uninstalled frameworks, gcc on darwin
+ # -p, -pg, --coverage, -fprofile-* profiling flags for GCC
++ # -fstack-protector* stack protector flags for GCC
+ # @file GCC response files
+ # -tp=* Portland pgcc target processor selection
+ # --sysroot=* for sysroot support
+ # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
+ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
+- -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
++ -O*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ func_append compile_command " $arg"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 05/16] rpm: Use link time check for libssp
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (3 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 04/16] libtool: Let -fstack-protector passed to link step Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 06/16] sat-solver: Fix build on uclibc Khem Raj
` (12 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
-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
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../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
diff --git a/meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patch b/meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patch
new file mode 100644
index 0000000..84d0430
--- /dev/null
+++ b/meta/recipes-devtools/rpm/rpm/fstack-protector-configure-check.patch
@@ -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])]
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.0.bb b/meta/recipes-devtools/rpm/rpm_5.4.0.bb
index f4938fd..a8bff65 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.0.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.0.bb
@@ -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 \
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 06/16] sat-solver: Fix build on uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (4 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 05/16] rpm: Use link time check for libssp Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 07/16] libzypp: Fix build with uclibc Khem Raj
` (11 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
futimes is not available on uclibc so use utimes
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../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
diff --git a/meta/recipes-extended/sat-solver/sat-solver/futimes.patch b/meta/recipes-extended/sat-solver/sat-solver/futimes.patch
new file mode 100644
index 0000000..b24d852
--- /dev/null
+++ b/meta/recipes-extended/sat-solver/sat-solver/futimes.patch
@@ -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 <raj.khem@gmail.com>
+
+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;
+ }
diff --git a/meta/recipes-extended/sat-solver/sat-solver_git.bb b/meta/recipes-extended/sat-solver/sat-solver_git.bb
index 9d8422f..743c6f8 100644
--- a/meta/recipes-extended/sat-solver/sat-solver_git.bb
+++ b/meta/recipes-extended/sat-solver/sat-solver_git.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 07/16] libzypp: Fix build with uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (5 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 06/16] sat-solver: Fix build on uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 08/16] augeas: Fix compilation failure Khem Raj
` (10 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
cstdio 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.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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
diff --git a/meta/recipes-extended/libzypp/libzypp/cstdio.patch b/meta/recipes-extended/libzypp/libzypp/cstdio.patch
new file mode 100644
index 0000000..a021d58
--- /dev/null
+++ b/meta/recipes-extended/libzypp/libzypp/cstdio.patch
@@ -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 <raj.khem@gmail.com>
+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 )
+ {
diff --git a/meta/recipes-extended/libzypp/libzypp_git.bb b/meta/recipes-extended/libzypp/libzypp_git.bb
index 3c3a9f0..0fe6114 100644
--- a/meta/recipes-extended/libzypp/libzypp_git.bb
+++ b/meta/recipes-extended/libzypp/libzypp_git.bb
@@ -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 = ""
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 08/16] augeas: Fix compilation failure
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (6 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 07/16] libzypp: Fix build with uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 09/16] rpm: pass lrt and lpthread to link step explicitly for uclibc Khem Raj
` (9 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
on uclibc we see this failure
too few arguments to function 'escape'
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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
diff --git a/meta/recipes-extended/augeas/augeas.inc b/meta/recipes-extended/augeas/augeas.inc
index 9fe864d..479fb97 100644
--- a/meta/recipes-extended/augeas/augeas.inc
+++ b/meta/recipes-extended/augeas/augeas.inc
@@ -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"
diff --git a/meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patch b/meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patch
new file mode 100644
index 0000000..3d0d0e3
--- /dev/null
+++ b/meta/recipes-extended/augeas/augeas/0001-Add-missing-argument-to-escape.patch
@@ -0,0 +1,29 @@
+Upstream-Status: Backport
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+From 021ea39f8e400225e2d01b4c62eb9d56404f2ecd Mon Sep 17 00:00:00 2001
+From: Michael Chapman <mike@very.puzzling.org>
+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
+
diff --git a/meta/recipes-extended/augeas/augeas_0.10.0.bb b/meta/recipes-extended/augeas/augeas_0.10.0.bb
index 00921aa..1a08707 100644
--- a/meta/recipes-extended/augeas/augeas_0.10.0.bb
+++ b/meta/recipes-extended/augeas/augeas_0.10.0.bb
@@ -1,6 +1,6 @@
require augeas.inc
-PR = "r1"
+PR = "r2"
SRC_URI[md5sum] = "fe1834e90a066c3208ac0214622c7352"
SRC_URI[sha256sum] = "ec111af06186216930176ebe5ecccdf7bf528528aee9acde1d5d70088484afca"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 09/16] rpm: pass lrt and lpthread to link step explicitly for uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (7 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 08/16] augeas: Fix compilation failure Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 10/16] zypper: Fix build on uclibc Khem Raj
` (8 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
These 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.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-devtools/rpm/rpm_5.4.0.bb | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/meta/recipes-devtools/rpm/rpm_5.4.0.bb b/meta/recipes-devtools/rpm/rpm_5.4.0.bb
index a8bff65..e9d2f35e 100644
--- a/meta/recipes-devtools/rpm/rpm_5.4.0.bb
+++ b/meta/recipes-devtools/rpm/rpm_5.4.0.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 10/16] zypper: Fix build on uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (8 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 09/16] rpm: pass lrt and lpthread to link step explicitly for uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 11/16] cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS variables Khem Raj
` (7 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
uclibc does not have rpmatch() so we define
it if zypper is being compiled for uclibc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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
diff --git a/meta/recipes-extended/zypper/zypper/rpmatch.patch b/meta/recipes-extended/zypper/zypper/rpmatch.patch
new file mode 100644
index 0000000..a750a3b
--- /dev/null
+++ b/meta/recipes-extended/zypper/zypper/rpmatch.patch
@@ -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 <raj.khem@gmail.com>
+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_*/
diff --git a/meta/recipes-extended/zypper/zypper_git.bb b/meta/recipes-extended/zypper/zypper_git.bb
index 56ccc86..c5d7c61 100644
--- a/meta/recipes-extended/zypper/zypper_git.bb
+++ b/meta/recipes-extended/zypper/zypper_git.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 11/16] cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS variables
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (9 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 10/16] zypper: Fix build on uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 12/16] libzypp: Define OECMAKE_CXX_LINK_FLAGS when compiling for uclibc Khem Raj
` (6 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
In 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
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/classes/cmake.bbclass | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/meta/classes/cmake.bbclass b/meta/classes/cmake.bbclass
index dcd974a..eda45dd 100644
--- a/meta/classes/cmake.bbclass
+++ b/meta/classes/cmake.bbclass
@@ -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
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 12/16] libzypp: Define OECMAKE_CXX_LINK_FLAGS when compiling for uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (10 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 11/16] cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_CXX_LINK_FLAGS variables Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 13/16] task-self-hosted.bb, task-core-lsb.bb: Conditionalize pth inclusion Khem Raj
` (5 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-extended/libzypp/libzypp_git.bb | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-extended/libzypp/libzypp_git.bb b/meta/recipes-extended/libzypp/libzypp_git.bb
index 0fe6114..ad38751 100644
--- a/meta/recipes-extended/libzypp/libzypp_git.bb
+++ b/meta/recipes-extended/libzypp/libzypp_git.bb
@@ -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}"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 13/16] task-self-hosted.bb, task-core-lsb.bb: Conditionalize pth inclusion
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (11 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 12/16] libzypp: Define OECMAKE_CXX_LINK_FLAGS when compiling for uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 14/16] npth: Add recipe Khem Raj
` (4 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
pth is not portable to uclibc therefore we need to exclude it for
uclibc based systems.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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(-)
diff --git a/meta/recipes-core/tasks/task-self-hosted.bb b/meta/recipes-core/tasks/task-self-hosted.bb
index 64e01bb..61d08ed 100644
--- a/meta/recipes-core/tasks/task-self-hosted.bb
+++ b/meta/recipes-core/tasks/task-self-hosted.bb
@@ -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 = ""
diff --git a/meta/recipes-extended/tasks/task-core-lsb.bb b/meta/recipes-extended/tasks/task-core-lsb.bb
index 4faf4d7..553b89e 100644
--- a/meta/recipes-extended/tasks/task-core-lsb.bb
+++ b/meta/recipes-extended/tasks/task-core-lsb.bb
@@ -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 = ""
+
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 14/16] npth: Add recipe
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (12 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 13/16] task-self-hosted.bb, task-core-lsb.bb: Conditionalize pth inclusion Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 15/16] gpgme: Depend on npth for uclibc Khem Raj
` (3 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
npth is modern version of pth
gnugp 2.1 will drop pth in favor of npth
npth works with uclibc too whereas pth does not
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
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
diff --git a/meta/recipes-support/npth/npth_0.90.bb b/meta/recipes-support/npth/npth_0.90.bb
new file mode 100644
index 0000000..7d39ca8
--- /dev/null
+++ b/meta/recipes-support/npth/npth_0.90.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 15/16] gpgme: Depend on npth for uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (13 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 14/16] npth: Add recipe Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-09 16:43 ` [PATCH 16/16] gnupg-2.0.19: " Khem Raj
` (2 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-support/gpgme/gpgme_1.3.1.bb | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-support/gpgme/gpgme_1.3.1.bb b/meta/recipes-support/gpgme/gpgme_1.3.1.bb
index 4bcb57a..43d8aad 100644
--- a/meta/recipes-support/gpgme/gpgme_1.3.1.bb
+++ b/meta/recipes-support/gpgme/gpgme_1.3.1.bb
@@ -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"
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH 16/16] gnupg-2.0.19: Depend on npth for uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (14 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 15/16] gpgme: Depend on npth for uclibc Khem Raj
@ 2012-06-09 16:43 ` Khem Raj
2012-06-10 23:05 ` [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
2012-06-11 13:03 ` Richard Purdie
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-09 16:43 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-support/gnupg/gnupg_2.0.19.bb | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-support/gnupg/gnupg_2.0.19.bb b/meta/recipes-support/gnupg/gnupg_2.0.19.bb
index d014f03..24219a8 100644
--- a/meta/recipes-support/gnupg/gnupg_2.0.19.bb
+++ b/meta/recipes-support/gnupg/gnupg_2.0.19.bb
@@ -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
--
1.7.5.4
^ permalink raw reply related [flat|nested] 22+ messages in thread* Re: [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (15 preceding siblings ...)
2012-06-09 16:43 ` [PATCH 16/16] gnupg-2.0.19: " Khem Raj
@ 2012-06-10 23:05 ` Khem Raj
2012-06-11 13:03 ` Richard Purdie
17 siblings, 0 replies; 22+ messages in thread
From: Khem Raj @ 2012-06-10 23:05 UTC (permalink / raw)
To: openembedded-core
On Sat, Jun 9, 2012 at 9:42 AM, Khem Raj <raj.khem@gmail.com> wrote:
>
> 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
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.
>
> 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
>
> --
> 1.7.5.4
>
^ permalink raw reply [flat|nested] 22+ messages in thread* Re: [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc
2012-06-09 16:42 [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
` (16 preceding siblings ...)
2012-06-10 23:05 ` [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc Khem Raj
@ 2012-06-11 13:03 ` Richard Purdie
2012-06-11 14:02 ` Khem Raj
17 siblings, 1 reply; 22+ messages in thread
From: Richard Purdie @ 2012-06-11 13:03 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On Sat, 2012-06-09 at 09:42 -0700, Khem Raj wrote:
> 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
> pth: Mark incompatible with uclibc
> libtool: Let -fstack-protector passed to link step
> augeas: Fix compilation failure
> cmake.bbclass: Add OECMAKE_C_LINK_FLAGS and OECMAKE_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.
> 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_FLAGS when 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
^ permalink raw reply [flat|nested] 22+ messages in thread* Re: [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc
2012-06-11 13:03 ` Richard Purdie
@ 2012-06-11 14:02 ` Khem Raj
2012-06-11 23:53 ` Khem Raj
0 siblings, 1 reply; 22+ messages in thread
From: Khem Raj @ 2012-06-11 14:02 UTC (permalink / raw)
To: openembedded-core
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 6/11/2012 6:03 AM, Richard Purdie wrote:
> On Sat, 2012-06-09 at 09:42 -0700, Khem Raj wrote:
>> 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 pth: Mark
>> incompatible with uclibc libtool: Let -fstack-protector passed to
>> link step augeas: Fix compilation failure cmake.bbclass: Add
>> OECMAKE_C_LINK_FLAGS and OECMAKE_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.
>
>> 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_FLAGS when 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...
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
>
> Cheers,
>
> Richard
>
>
> _______________________________________________ Openembedded-core
> mailing list Openembedded-core@lists.openembedded.org
> 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-----
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH 00/16 V2] Prelink/ld bug and rpm compilation on uclibc
2012-06-11 14:02 ` Khem Raj
@ 2012-06-11 23:53 ` Khem Raj
2012-06-12 14:45 ` Khem Raj
0 siblings, 1 reply; 22+ messages in thread
From: Khem Raj @ 2012-06-11 23:53 UTC (permalink / raw)
To: openembedded-core
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 6/11/2012 7:02 AM, Khem Raj wrote:
> On 6/11/2012 6:03 AM, Richard Purdie wrote:
>> On Sat, 2012-06-09 at 09:42 -0700, Khem Raj wrote:
>>> 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 pth: Mark
>>> incompatible with uclibc libtool: Let -fstack-protector passed
>>> to link step augeas: Fix compilation failure cmake.bbclass:
>>> Add OECMAKE_C_LINK_FLAGS and OECMAKE_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.
>
>>> 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_FLAGS when 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...
>
> 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
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
>
>
>> Cheers,
>
>> Richard
>
>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> 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-----
^ permalink raw reply [flat|nested] 22+ messages in thread