Patchwork libiconv: skip recipe if using eglibc

login
register
mail settings
Submitter Paul Eggleton
Date Aug. 20, 2012, 1:20 p.m.
Message ID <1345468841-12320-1-git-send-email-paul.eggleton@linux.intel.com>
Download mbox | patch
Permalink /patch/34939/
State Accepted
Commit f3e2ccff952f148522a09c09e0dea92e59bab5b6
Headers show

Comments

Paul Eggleton - Aug. 20, 2012, 1:20 p.m.
libiconv is provided for use with uClibc - if you build it together with
eglibc (which already PROVIDES virtual/libiconv) you can end up with
dependency problems during do_rootfs.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 meta/recipes-support/libiconv/libiconv_1.11.1.bb |    5 +++++
 meta/recipes-support/libiconv/libiconv_1.14.bb   |    5 +++++
 2 files changed, 10 insertions(+)
Khem Raj - Aug. 20, 2012, 7:22 p.m.
On Mon, Aug 20, 2012 at 6:20 AM, Paul Eggleton
<paul.eggleton@linux.intel.com> wrote:
> libiconv is provided for use with uClibc - if you build it together with
> eglibc (which already PROVIDES virtual/libiconv) you can end up with
> dependency problems during do_rootfs.
>

hmmm ideally we should not need this. since iconv from eglibc should
be drop in replacement packagwise.
but extra net of security does not hurt.

Acked-by: Khem Raj <raj.khem@gmail.com>

> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> ---
>  meta/recipes-support/libiconv/libiconv_1.11.1.bb |    5 +++++
>  meta/recipes-support/libiconv/libiconv_1.14.bb   |    5 +++++
>  2 files changed, 10 insertions(+)
>
> diff --git a/meta/recipes-support/libiconv/libiconv_1.11.1.bb b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
> index 186a5a1..055e20d 100644
> --- a/meta/recipes-support/libiconv/libiconv_1.11.1.bb
> +++ b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
> @@ -20,6 +20,11 @@ S = "${WORKDIR}/libiconv-${PV}"
>
>  inherit autotools pkgconfig gettext
>
> +python __anonymous() {
> +    if d.getVar("TCLIBC", True) == "eglibc":
> +        raise bb.parse.SkipPackage("libiconv is provided for use with uClibc only - eglibc already provides iconv")
> +}
> +
>  EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
>
>  LEAD_SONAME = "libiconv.so"
> diff --git a/meta/recipes-support/libiconv/libiconv_1.14.bb b/meta/recipes-support/libiconv/libiconv_1.14.bb
> index af33d6b..6666866 100644
> --- a/meta/recipes-support/libiconv/libiconv_1.14.bb
> +++ b/meta/recipes-support/libiconv/libiconv_1.14.bb
> @@ -21,6 +21,11 @@ S = "${WORKDIR}/libiconv-${PV}"
>
>  inherit autotools pkgconfig gettext
>
> +python __anonymous() {
> +    if d.getVar("TCLIBC", True) == "eglibc":
> +        raise bb.parse.SkipPackage("libiconv is provided for use with uClibc only - eglibc already provides iconv")
> +}
> +
>  EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
>
>  LEAD_SONAME = "libiconv.so"
> --
> 1.7.9.5
>
Saul Wold - Aug. 24, 2012, 6:26 p.m.
On 08/20/2012 06:20 AM, Paul Eggleton wrote:
> libiconv is provided for use with uClibc - if you build it together with
> eglibc (which already PROVIDES virtual/libiconv) you can end up with
> dependency problems during do_rootfs.
>
> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> ---
>   meta/recipes-support/libiconv/libiconv_1.11.1.bb |    5 +++++
>   meta/recipes-support/libiconv/libiconv_1.14.bb   |    5 +++++
>   2 files changed, 10 insertions(+)
>
> diff --git a/meta/recipes-support/libiconv/libiconv_1.11.1.bb b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
> index 186a5a1..055e20d 100644
> --- a/meta/recipes-support/libiconv/libiconv_1.11.1.bb
> +++ b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
> @@ -20,6 +20,11 @@ S = "${WORKDIR}/libiconv-${PV}"
>
>   inherit autotools pkgconfig gettext
>
> +python __anonymous() {
> +    if d.getVar("TCLIBC", True) == "eglibc":
> +        raise bb.parse.SkipPackage("libiconv is provided for use with uClibc only - eglibc already provides iconv")
> +}
> +
>   EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
>
>   LEAD_SONAME = "libiconv.so"
> diff --git a/meta/recipes-support/libiconv/libiconv_1.14.bb b/meta/recipes-support/libiconv/libiconv_1.14.bb
> index af33d6b..6666866 100644
> --- a/meta/recipes-support/libiconv/libiconv_1.14.bb
> +++ b/meta/recipes-support/libiconv/libiconv_1.14.bb
> @@ -21,6 +21,11 @@ S = "${WORKDIR}/libiconv-${PV}"
>
>   inherit autotools pkgconfig gettext
>
> +python __anonymous() {
> +    if d.getVar("TCLIBC", True) == "eglibc":
> +        raise bb.parse.SkipPackage("libiconv is provided for use with uClibc only - eglibc already provides iconv")
> +}
> +
>   EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
>
>   LEAD_SONAME = "libiconv.so"
>

Merged into OE-Core

Thanks
	Sau!

Patch

diff --git a/meta/recipes-support/libiconv/libiconv_1.11.1.bb b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
index 186a5a1..055e20d 100644
--- a/meta/recipes-support/libiconv/libiconv_1.11.1.bb
+++ b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
@@ -20,6 +20,11 @@  S = "${WORKDIR}/libiconv-${PV}"
 
 inherit autotools pkgconfig gettext
 
+python __anonymous() {
+    if d.getVar("TCLIBC", True) == "eglibc":
+        raise bb.parse.SkipPackage("libiconv is provided for use with uClibc only - eglibc already provides iconv")
+}
+
 EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
 
 LEAD_SONAME = "libiconv.so"
diff --git a/meta/recipes-support/libiconv/libiconv_1.14.bb b/meta/recipes-support/libiconv/libiconv_1.14.bb
index af33d6b..6666866 100644
--- a/meta/recipes-support/libiconv/libiconv_1.14.bb
+++ b/meta/recipes-support/libiconv/libiconv_1.14.bb
@@ -21,6 +21,11 @@  S = "${WORKDIR}/libiconv-${PV}"
 
 inherit autotools pkgconfig gettext
 
+python __anonymous() {
+    if d.getVar("TCLIBC", True) == "eglibc":
+        raise bb.parse.SkipPackage("libiconv is provided for use with uClibc only - eglibc already provides iconv")
+}
+
 EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
 
 LEAD_SONAME = "libiconv.so"