Skip to contentSkip to conversation

uclibc support in oe-core v2

PATCH Superseded Khem Raj 2 participants 27 messages Apr 25, 2011 – Apr 28, 2011

v1 of 3 Superseded Latest is v3 →

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

cover uclibc support in oe-core v2

Here are patches needed on top of oe-core to get uclibc based images building. It incorporates the feedback from last set of patches. On top there is a new virtual package virtual/gettext introduced which is preferred to be gettext but can be overridden e.g. for uclibc it can be set to proxy-libintl and thereby getting rid of gettext in images

libintl comes from three sources glibc/eglibc, gettext, proxy-libintl when using eglibc/glibc we chose glibc/eglibc to provide it and not gettext

but when using uclibc one could use gettext to provide it or one could choose proxy-libintl which stubs out gettext functionality and reduces the image size.

Virtual/gettext can be provided by gettext or proxy-libintl, when we build uclibc systems with out NLS then we can get rid of gettext fully by selecting proxy-libintl to provide both virtual/libintl as well as virtual/gettext

Thanks
-Khem

Pull URL: git://git.openembedded.org/openembedded-core-contrib
Branch: kraj/uclibc
Browse: http://git.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibc

Thanks,
Khem Raj <[email protected]>
---

Khem Raj (17):
gettext.bbclass: Use _append instead of =+
insane.bbclass: Move code to add function to tasks toward the end insane.bbclass: Checking for NLS too when checking gettext dependency autotools.bbclass: Copy gettext files only if --disable-nls is not
set
sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak
gettext: Divide packaging into gettext-runtime and rest gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with
proxy-libintl
poky-default.inc: Weakly assign gettext to provide virtual/gettext
libiconv: update from 1.9.2 -> 1.11.1
glib-2.0: Inherit gettext should provide right libintl so remove from
DEPENDS
util-linux.inc: remove virtual/libintl from DEPENDS elfutils_0.148.bb: Fix compilation issues on uclibc perl_5.12.2.bb: Undefine features not found in uclibc
xorg-lib: inherit gettext class instead of adding gettext to DEPENDS
directly
attr: Fix compilation on uclibc
linux-tools.inc: Dummify do_compile_perf and do_install_perf for
uclibc
alsa-utils_1.0.23.bb: Fix compilation for uclibc targets

 meta/classes/autotools.bbclass                     |   19 ++--
 meta/classes/gettext.bbclass                       |   31 ++++---
 meta/classes/insane.bbclass                        |   24 +++--
 meta/classes/sstate.bbclass                        |    2 +-
 meta/conf/distro/include/poky-default.inc          |    1 +
 meta/recipes-core/gettext/gettext_0.17.bb          |   39 ++++++-
 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch |  104 ++++++++++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb      |    4 +-
 meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb      |    5 +-
 meta/recipes-core/glib-2.0/glib.inc                |    2 +-
 meta/recipes-core/util-linux/util-linux.inc        |    6 +-
 .../elfutils/elfutils-0.148/mempcpy.patch          |   23 +++++
 meta/recipes-devtools/elfutils/elfutils_0.148.bb   |    6 +-
 .../perl/perl-5.12.2/native-ssp.patch              |   16 ---
 meta/recipes-devtools/perl/perl_5.12.2.bb          |   16 +++
 meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb     |    4 +-
 meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb   |    4 +-
 meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb     |    3 +-
 meta/recipes-kernel/linux/linux-tools.inc          |   17 +++-
 meta/recipes-multimedia/alsa/alsa-utils_1.0.23.bb  |    9 +-
 meta/recipes-support/attr/attr.inc                 |    4 +
 meta/recipes-support/attr/ea-acl.inc               |    4 +-
 .../libiconv/libiconv-1.11.1/autoconf.patch        |   48 +++++++++
 .../shared_preloadable_libiconv_linux.patch        |   24 +++++
 meta/recipes-support/libiconv/libiconv_1.11.1.bb   |   30 ++++++
 meta/recipes-support/libiconv/libiconv_1.9.2.bb    |   21 ----
 26 files changed, 366 insertions(+), 100 deletions(-)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
 create mode 100644 meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
 delete mode 100644 meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv_1.11.1.bb
 delete mode 100644 meta/recipes-support/libiconv/libiconv_1.9.2.bb
Signature · 1 line
1.7.4.1
author
#1 lore raw

PATCH 1/17 gettext.bbclass: Use _append instead of =+

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non null

---
 meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------
 1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +19 -12
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@
 def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends = oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d, True) + ')$'
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
 python () {
     gettext_after_parse(d)
 }
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"
 EXTRA_OECONF += "--enable-nls"
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "
Signature · 1 line
1.7.4.1
#2 lore raw

Re: [PATCH 01/17] gettext.bbclass: Use _append instead of =+

Quoted 9 lines · Khem Raj

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Quoted 7 lines

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non null

Khem,

This patch seems to be causing a circular dependency when you try to build meta-toolchain-sdk, not sure if you tested that target.

% bitbake meta-toolchain-sdk -n
NOTE: Out of date cache found, rebuilding...
WARNING: No bb files matched BBFILE_PATTERN_yocto '^/intel/poky/distro/meta-yocto/' Parsing recipes: 100% |#########################################| Time: 00:00:15 Parsing of 796 .bb files complete (0 cached, 796 parsed). 1008 targets, 6 skipped, 0 masked, 0 errors.

OE Build Configuration:
BB_VERSION = "1.11.0"
METADATA_BRANCH = "stage"
METADATA_REVISION = "86f12953dbf57264cfcc06feac446f3edf0c6d8f"

TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.0+snapshot-20110426"
TARGET_FPU        = ""

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Task virtual:nativesdk:/intel/poky/distro/meta/recipes-core/gettext/gettext_0.17.bb (do_package) has circular dependency on virtual:nativesdk:/intel/poky/distro/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb (do_package)

Is there dependencies on this patch with the other patches? (ie can I take part of your other patches or just hold off)?

Sau!

Quoted 46 lines
---
  meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------
  1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +19 -12
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@
  def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends = oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d, True) + ')$'
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
  python () {
      gettext_after_parse(d)
  }
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"
  EXTRA_OECONF += "--enable-nls"
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "
author
#3 lore raw

Re: [PATCH 01/17] gettext.bbclass: Use _append instead of =+

Quoted 15 lines · Saul Wold
Quoted 14 lines · Khem Raj

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Quoted 8 lines
Quoted 3 lines

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non null

Khem,

This patch seems to be causing a circular dependency when you try to build meta-toolchain-sdk, not sure if you tested that target.

No I did not. Let me try it out.

Quoted 28 lines

% bitbake meta-toolchain-sdk -n
NOTE: Out of date cache found, rebuilding...
WARNING: No bb files matched BBFILE_PATTERN_yocto '^/intel/poky/distro/meta-yocto/'
Parsing recipes: 100% |#########################################| Time:
00:00:15
Parsing of 796 .bb files complete (0 cached, 796 parsed). 1008 targets, 6 skipped, 0 masked, 0 errors.

OE Build Configuration:
BB_VERSION        = "1.11.0"
METADATA_BRANCH   = "stage"
METADATA_REVISION = "86f12953dbf57264cfcc06feac446f3edf0c6d8f" TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.0+snapshot-20110426" TARGET_FPU        = ""

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Task virtual:nativesdk:/intel/poky/distro/meta/recipes-core/gettext/gettext_0.17.bb (do_package) has circular dependency on virtual:nativesdk:/intel/poky/distro/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb (do_package)

Quoted 3 lines

Is there dependencies on this patch with the other patches? (ie can I take part of your other patches or just hold off)?

This patch is kind of needed for few of them for parsing sake. some of them dont depend on this e.g.

[PATCH 05/17] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak [PATCH 09/17] libiconv: update from 1.9.2 -> 1.11.1
[PATCH 12/17] elfutils_0.148.bb: Fix compilation issues on uclibc [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc [PATCH 14/17] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly
[PATCH 15/17] attr: Fix compilation on uclibc
[PATCH 16/17] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc

Quoted 62 lines

Sau!

Quoted 52 lines

---
 meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------

 1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +0 -0
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@

 def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends = oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d, True) + ')$'
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
 python () {
     gettext_after_parse(d)
 }

meta/classes/gettext.bbclass +0 -4
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"

 EXTRA_OECONF += "--enable-nls"

meta/classes/gettext.bbclass line 24

Quoted 2 lines
meta/classes/gettext.bbclass +2 -0
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

author
#4 lore raw

Re: [PATCH 01/17] gettext.bbclass: Use _append instead of =+

Quoted 62 lines · Khem Raj
Quoted 15 lines · Saul Wold
Quoted 14 lines · Khem Raj

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Quoted 8 lines
Quoted 3 lines

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non null

Khem,

This patch seems to be causing a circular dependency when you try to build meta-toolchain-sdk, not sure if you tested that target.

No I did not. Let me try it out.

Quoted 28 lines

% bitbake meta-toolchain-sdk -n
NOTE: Out of date cache found, rebuilding...
WARNING: No bb files matched BBFILE_PATTERN_yocto '^/intel/poky/distro/meta-yocto/'
Parsing recipes: 100% |#########################################| Time:
00:00:15
Parsing of 796 .bb files complete (0 cached, 796 parsed). 1008 targets, 6 skipped, 0 masked, 0 errors.

OE Build Configuration:
BB_VERSION        = "1.11.0"
METADATA_BRANCH   = "stage"
METADATA_REVISION = "86f12953dbf57264cfcc06feac446f3edf0c6d8f" TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.0+snapshot-20110426" TARGET_FPU        = ""

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Task virtual:nativesdk:/intel/poky/distro/meta/recipes-core/gettext/gettext_0.17.bb (do_package) has circular dependency on virtual:nativesdk:/intel/poky/distro/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb (do_package)

Quoted 3 lines

Is there dependencies on this patch with the other patches? (ie can I take part of your other patches or just hold off)?

This patch is kind of needed for few of them for parsing sake. some of them dont depend on this e.g.

Quoted 9 lines

[PATCH 05/17] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak [PATCH 09/17] libiconv: update from 1.9.2 -> 1.11.1
[PATCH 12/17] elfutils_0.148.bb: Fix compilation issues on uclibc [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc [PATCH 14/17] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly
[PATCH 15/17] attr: Fix compilation on uclibc
[PATCH 16/17] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc

Saul

I have fixed this patch and pushed it to the pull tree. Can you pull fresh from the pull request tree and give it a shot ? Let me know how it goes

Quoted 63 lines
Quoted 62 lines

Sau!

Quoted 52 lines

---
 meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------

 1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +0 -0
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@

 def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends = oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d, True) + ')$'
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
 python () {
     gettext_after_parse(d)
 }

meta/classes/gettext.bbclass +0 -4
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"

 EXTRA_OECONF += "--enable-nls"

meta/classes/gettext.bbclass line 24

Quoted 2 lines
meta/classes/gettext.bbclass +2 -0
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#5 lore raw

Re: [PATCH 01/17] gettext.bbclass: Use _append instead of =+

Quoted 20 lines · Khem Raj
Quoted 19 lines · Khem Raj
Quoted 18 lines · Saul Wold
Quoted 17 lines · Khem Raj

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non null

Quoted 7 lines
Quoted 7 lines
Quoted 5 lines

Khem,

This patch seems to be causing a circular dependency when you try to build meta-toolchain-sdk, not sure if you tested that target.

No I did not. Let me try it out.

Khem,

There still seems to be a problem with binutil-cross-canadian and gcc-cross-canadian not finding the gettext-native, it suggests to have these recipe inherit gettext, which binutils does via it's .inc file, but gcc-cross-canadian did not seem to do. I tried to add inherit gettext to the cross-canadian.bbclass but that did not solve the issue.

Currently the meta-toolchain gmae builds show this problem.

Thanks
Sau!

Quoted 120 lines
Quoted 36 lines
Quoted 29 lines

% bitbake meta-toolchain-sdk -n
NOTE: Out of date cache found, rebuilding...
WARNING: No bb files matched BBFILE_PATTERN_yocto '^/intel/poky/distro/meta-yocto/'
Parsing recipes: 100% |#########################################| Time:
00:00:15
Parsing of 796 .bb files complete (0 cached, 796 parsed). 1008 targets, 6 skipped, 0 masked, 0 errors.

OE Build Configuration:
BB_VERSION = "1.11.0"
METADATA_BRANCH = "stage"
METADATA_REVISION = "86f12953dbf57264cfcc06feac446f3edf0c6d8f"

TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.0+snapshot-20110426"
TARGET_FPU        = ""

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Task virtual:nativesdk:/intel/poky/distro/meta/recipes-core/gettext/gettext_0.17.bb (do_package) has circular dependency on virtual:nativesdk:/intel/poky/distro/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb (do_package)

Quoted 3 lines

Is there dependencies on this patch with the other patches? (ie can I take part of your other patches or just hold off)?

This patch is kind of needed for few of them for parsing sake. some of them dont depend on this e.g.

Quoted 9 lines

[PATCH 05/17] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak [PATCH 09/17] libiconv: update from 1.9.2 -> 1.11.1
[PATCH 12/17] elfutils_0.148.bb: Fix compilation issues on uclibc [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc [PATCH 14/17] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly
[PATCH 15/17] attr: Fix compilation on uclibc
[PATCH 16/17] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc

Saul

I have fixed this patch and pushed it to the pull tree. Can you pull fresh from the pull request tree and give it a shot ? Let me know how it goes

Quoted 54 lines
Quoted 54 lines

Sau!

Quoted 52 lines
---
  meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------
  1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +7 -8
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@
  def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$',
 bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS',
 oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$',
 bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends =
 oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$',
 depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross',

'crosssdk'):

meta/classes/gettext.bbclass +4 -0
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove

dependencies

meta/classes/gettext.bbclass +4 -0
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d, True) +

')$'

meta/classes/gettext.bbclass +2 -4
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
  python () {
      gettext_after_parse(d)
  }
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"
  EXTRA_OECONF += "--enable-nls"
Quoted 9 lines
Quoted 8 lines

meta/classes/gettext.bbclass line 24

Quoted 2 lines
meta/classes/gettext.bbclass +2 -0
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

author
#6 lore raw

Re: [PATCH 01/17] gettext.bbclass: Use _append instead of =+

Quoted 34 lines · Saul Wold
Quoted 24 lines · Khem Raj
Quoted 22 lines · Khem Raj
Quoted 20 lines · Saul Wold
Quoted 18 lines · Khem Raj

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non
null

Quoted 8 lines
Quoted 8 lines
Quoted 6 lines

Khem,

This patch seems to be causing a circular dependency when you try to build
meta-toolchain-sdk, not sure if you tested that target.

No I did not. Let me try it out.

Quoted 8 lines

Khem,

There still seems to be a problem with binutil-cross-canadian and gcc-cross-canadian not finding the gettext-native, it suggests to have these recipe inherit gettext, which binutils does via it's .inc file, but gcc-cross-canadian did not seem to do.  I tried to add inherit gettext to the cross-canadian.bbclass but that did not solve the issue.

Does it break the build ?
this may be a new issue unearthed. We can fix it with subsequent patch

Quoted 2 lines

Currently the meta-toolchain gmae builds show this problem.

I will try to see whats going on here.

Quoted 137 lines

Thanks
       Sau!

Quoted 124 lines
Quoted 40 lines
Quoted 29 lines

% bitbake meta-toolchain-sdk -n
NOTE: Out of date cache found, rebuilding...
WARNING: No bb files matched BBFILE_PATTERN_yocto '^/intel/poky/distro/meta-yocto/'
Parsing recipes: 100% |#########################################| Time:
00:00:15
Parsing of 796 .bb files complete (0 cached, 796 parsed). 1008 targets, 6
skipped, 0 masked, 0 errors.

OE Build Configuration:
BB_VERSION        = "1.11.0"
METADATA_BRANCH   = "stage"
METADATA_REVISION = "86f12953dbf57264cfcc06feac446f3edf0c6d8f" TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.0+snapshot-20110426" TARGET_FPU        = ""

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Task

virtual:nativesdk:/intel/poky/distro/meta/recipes-core/gettext/gettext_0.17.bb (do_package) has circular dependency on

Quoted 7 lines

virtual:nativesdk:/intel/poky/distro/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb (do_package)

Is there dependencies on this patch with the other patches? (ie can I take
part of your other patches or just hold off)?

This patch is kind of needed for few of them for parsing sake. some of them dont depend on this e.g.

Quoted 10 lines

[PATCH 05/17] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak
[PATCH 09/17] libiconv: update from 1.9.2 ->  1.11.1
[PATCH 12/17] elfutils_0.148.bb: Fix compilation issues on uclibc [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc [PATCH 14/17] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly
[PATCH 15/17] attr: Fix compilation on uclibc
[PATCH 16/17] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc

Saul

I have fixed this patch and pushed it to the pull tree. Can you pull fresh from the pull request tree and give it a shot ? Let me know how it goes

Quoted 57 lines
Quoted 57 lines

Sau!

Quoted 55 lines

---
 meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------

 1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +0 -0
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@

 def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends =

oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d, True) +
')$'
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
 python () {
     gettext_after_parse(d)
 }

meta/classes/gettext.bbclass +0 -4
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"

 EXTRA_OECONF += "--enable-nls"

Quoted 9 lines
Quoted 8 lines

meta/classes/gettext.bbclass line 24

Quoted 2 lines
meta/classes/gettext.bbclass +2 -0
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Quoted 4 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#7 lore raw

Re: [PATCH 01/17] gettext.bbclass: Use _append instead of =+

Quoted 44 lines · Khem Raj
Quoted 34 lines · Saul Wold
Quoted 24 lines · Khem Raj
Quoted 22 lines · Khem Raj
Quoted 20 lines · Saul Wold
Quoted 18 lines · Khem Raj

Ensure gettext and gettext-native are removed from DEPENDS when not using NLS

Use append instead of += to get gettext dependecies processed correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non
null

Quoted 8 lines
Quoted 8 lines
Quoted 6 lines

Khem,

This patch seems to be causing a circular dependency when you try to build
meta-toolchain-sdk, not sure if you tested that target.

No I did not. Let me try it out.

Quoted 8 lines

Khem,

There still seems to be a problem with binutil-cross-canadian and gcc-cross-canadian not finding the gettext-native, it suggests to have these recipe inherit gettext, which binutils does via it's .inc file, but gcc-cross-canadian did not seem to do. I tried to add inherit gettext to the cross-canadian.bbclass but that did not solve the issue.

Quoted 3 lines

Does it break the build ?
this may be a new issue unearthed. We can fix it with subsequent patch

Not breaking the mainline build, but it is breaking the toolchain builds.

Sau!

Quoted 147 lines
Quoted 2 lines

Currently the meta-toolchain gmae builds show this problem.

I will try to see whats going on here.

Quoted 132 lines

Thanks
Sau!

Quoted 124 lines
Quoted 40 lines
Quoted 29 lines

% bitbake meta-toolchain-sdk -n
NOTE: Out of date cache found, rebuilding...
WARNING: No bb files matched BBFILE_PATTERN_yocto '^/intel/poky/distro/meta-yocto/'
Parsing recipes: 100% |#########################################| Time:
00:00:15
Parsing of 796 .bb files complete (0 cached, 796 parsed). 1008 targets, 6
skipped, 0 masked, 0 errors.

OE Build Configuration:
BB_VERSION = "1.11.0"
METADATA_BRANCH = "stage"
METADATA_REVISION = "86f12953dbf57264cfcc06feac446f3edf0c6d8f"

TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.0+snapshot-20110426"
TARGET_FPU        = ""

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Task

virtual:nativesdk:/intel/poky/distro/meta/recipes-core/gettext/gettext_0.17.bb (do_package) has circular dependency on

Quoted 7 lines

virtual:nativesdk:/intel/poky/distro/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb (do_package)

Is there dependencies on this patch with the other patches? (ie can I take
part of your other patches or just hold off)?

This patch is kind of needed for few of them for parsing sake. some of them dont depend on this e.g.

Quoted 10 lines

[PATCH 05/17] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak
[PATCH 09/17] libiconv: update from 1.9.2 -> 1.11.1
[PATCH 12/17] elfutils_0.148.bb: Fix compilation issues on uclibc [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc [PATCH 14/17] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly
[PATCH 15/17] attr: Fix compilation on uclibc
[PATCH 16/17] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc

Saul

I have fixed this patch and pushed it to the pull tree. Can you pull fresh from the pull request tree and give it a shot ? Let me know how it goes

Quoted 57 lines
Quoted 57 lines

Sau!

Quoted 55 lines
---
  meta/classes/gettext.bbclass |   31 +++++++++++++++++++------------
  1 files changed, 19 insertions(+), 12 deletions(-)
meta/classes/gettext.bbclass +7 -8
index a40e74f..a6f80f2 100644
@@ -1,17 +1,24 @@
  def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$',
 bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS',
 oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$',
 bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends =
 
 oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$',
 depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross',

'crosssdk'):

meta/classes/gettext.bbclass +4 -0
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove

dependencies

meta/classes/gettext.bbclass +4 -0
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = '^(' + bb.data.getVar('DEPENDS_GETTEXT', d,

True) +
')$'

meta/classes/gettext.bbclass +2 -4
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
  python () {
      gettext_after_parse(d)
  }
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"
  EXTRA_OECONF += "--enable-nls"
Quoted 9 lines
Quoted 8 lines

meta/classes/gettext.bbclass line 24

Quoted 2 lines
meta/classes/gettext.bbclass +2 -0
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Quoted 4 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Quoted 5 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

author
#8 lore raw

PATCH 2/17 insane.bbclass: Move code to add function to tasks toward the end

In reply to Khem Raj

Cosmetic change to make syntax highlighters happy

---
 meta/classes/insane.bbclass |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)
meta/classes/insane.bbclass +8 -7
index 22a5086..98acf7f 100644
@@ -554,9 +554,6 @@ python do_package_qa () {
 }
 
 
-# The Staging Func, to check all staging
-#addtask qa_staging after do_populate_sysroot before do_build
-do_populate_sysroot[postfuncs] += "do_qa_staging "
 python do_qa_staging() {
     bb.note("QA checking staging")
 
@@ -564,10 +561,6 @@ python do_qa_staging() {
         bb.fatal("QA staging was broken by the package built above")
 }
 
-# Check broken config.log files, for packages requiring Gettext which don't
-# have it in DEPENDS and for correct LIC_FILES_CHKSUM
-#addtask qa_configure after do_configure before do_compile
-do_configure[postfuncs] += "do_qa_configure "
 python do_qa_configure() {
     configs = []
     workdir = bb.data.getVar('WORKDIR', d, True)
@@ -603,3 +596,11 @@ Missing inherit gettext?""" % config)
     if not package_qa_check_license(workdir, d):
         bb.fatal("Licensing Error: LIC_FILES_CHKSUM does not match, please fix")
 }
+# The Staging Func, to check all staging
+#addtask qa_staging after do_populate_sysroot before do_build
+do_populate_sysroot[postfuncs] += "do_qa_staging "
+
+# Check broken config.log files, for packages requiring Gettext which don't
+# have it in DEPENDS and for correct LIC_FILES_CHKSUM
+#addtask qa_configure after do_configure before do_compile
+do_configure[postfuncs] += "do_qa_configure "
Signature · 1 line
1.7.4.1
author
#9 lore raw

PATCH 3/17 insane.bbclass: Checking for NLS too when checking gettext dependency

In reply to Khem Raj

Checking for gettext is not needed when --disable-nls is used

Let user know what variant of gettext is missing e.g. gettext-native, gettext-nativesdk etc, reveals a bit more for user

Check for virtual/gettext

---
 meta/classes/insane.bbclass |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)
meta/classes/insane.bbclass +5 -4
index 98acf7f..742be5e 100644
@@ -578,20 +578,21 @@ Rerun configure task after fixing this. The path was '%s'""" % root)
         if "configure.in" in files:
             configs.append(os.path.join(root, "configure.in"))
 
-    if "gettext" not in bb.data.getVar('P', d, True) and "gcc-runtime" not in bb.data.getVar('P', d, True):
+    cnf = bb.data.getVar('EXTRA_OECONF', d, True) or ""
+    if "gettext" not in bb.data.getVar('P', d, True) and "gcc-runtime" not in bb.data.getVar('P', d, True) and "--disable-nls" not in cnf:
        if bb.data.inherits_class('native', d) or bb.data.inherits_class('cross', d) or bb.data.inherits_class('crosssdk', d) or bb.data.inherits_class('nativesdk', d):
           gt = "gettext-native"
        elif bb.data.inherits_class('cross-canadian', d):
           gt = "gettext-nativesdk"
        else:
-          gt = "gettext"
+          gt = "virtual/gettext"
        deps = bb.utils.explode_deps(bb.data.getVar('DEPENDS', d, True) or "")
        if gt not in deps:
           for config in configs:
               gnu = "grep \"^[[:space:]]*AM_GNU_GETTEXT\" %s >/dev/null" % config
               if os.system(gnu) == 0:
-                 bb.fatal("""Gettext required but not in DEPENDS for file %s.
-Missing inherit gettext?""" % config)
+                 bb.fatal("""%s required but not in DEPENDS for file %s.
+Missing inherit gettext?""" % (gt, config))
 
     if not package_qa_check_license(workdir, d):
         bb.fatal("Licensing Error: LIC_FILES_CHKSUM does not match, please fix")
Signature · 1 line
1.7.4.1
author
#10 lore raw

PATCH 4/17 autotools.bbclass: Copy gettext files only if --disable-nls is not set

In reply to Khem Raj
---
 meta/classes/autotools.bbclass |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)
meta/classes/autotools.bbclass +10 -9
index 7ebf833..cbd2e96 100644
@@ -127,17 +127,18 @@ autotools_do_configure() {
 			else
 			  CONFIGURE_AC=configure.ac
 			fi
-			if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
-			  if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
-			    : do nothing -- we still have an old unmodified configure.ac
-			  else
-			    oenote Executing glib-gettextize --force --copy
-			    echo "no" | glib-gettextize --force --copy
+			if ! echo ${EXTRA_OECONF} | grep -q "\-\-disable-nls"; then
+			  if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+			    if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
+			      : do nothing -- we still have an old unmodified configure.ac
+			    else
+			      oenote Executing glib-gettextize --force --copy
+			      echo "no" | glib-gettextize --force --copy
+			    fi
+			  else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+			    cp ${STAGING_DATADIR}/gettext/config.rpath ${S}/
 			  fi
-			else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
-			  cp ${STAGING_DATADIR}/gettext/config.rpath ${S}/
 			fi
-
 			fi
 			mkdir -p m4
 			if grep "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC >/dev/null; then
Signature · 1 line
1.7.4.1
author
#11 lore raw

PATCH 5/17 sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak

In reply to Khem Raj

Distributions can then override this variable if needed useful e.g. when building uclibc/eglibc both using same tmpdir

---
 meta/classes/sstate.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/classes/sstate.bbclass +1 -1
index be650c4..553c6a2 100644
@@ -1,6 +1,6 @@
 SSTATE_VERSION = "2"
 
-SSTATE_MANIFESTS = "${TMPDIR}/sstate-control"
+SSTATE_MANIFESTS ?= "${TMPDIR}/sstate-control"
 SSTATE_MANFILEBASE = "${SSTATE_MANIFESTS}/manifest-${SSTATE_MANMACH}-"
 SSTATE_MANFILEPREFIX = "${SSTATE_MANFILEBASE}${PN}"
 
Signature · 1 line
1.7.4.1
author
#12 lore raw

PATCH 6/17 gettext: Divide packaging into gettext-runtime and rest

In reply to Khem Raj

This helps in footprint on space constrained systems e.g. uclibc based systems where packaging full gettext just for libintl can be waste of space.

---
 meta/recipes-core/gettext/gettext_0.17.bb |   35 +++++++++++++++++++++++++---
 1 files changed, 31 insertions(+), 4 deletions(-)
meta/recipes-core/gettext/gettext_0.17.bb +31 -4
index b9c4e1c..bfcb5ea 100644
@@ -53,9 +53,36 @@ acpaths = '-I ${S}/autoconf-lib-link/m4/ \
 # 1300    KiB /ep93xx/uclibc-dev_0.9.29-r8_ep93xx.ipk
 # 140     KiB /armv4t/gettext-dev_0.14.1-r6_armv4t.ipk
 # 4       KiB /ep93xx/libgcc-s-dev_4.2.2-r2_ep93xx.ipk
+PACKAGES =+ "gettext-runtime gettext-runtime-dev gettext-runtime-doc"
 
-PACKAGES =+ "libgettextlib libgettextsrc"
-FILES_libgettextlib = "${libdir}/libgettextlib-*.so*"
-FILES_libgettextsrc = "${libdir}/libgettextsrc-*.so*"
-
+FILES_gettext-runtime = "${bindir}/gettext \
+                         ${bindir}/ngettext \
+                         ${bindir}/envsubst \
+                         ${bindir}/gettext.sh \
+                         ${libdir}/libasprintf.so* \
+                         ${libdir}/GNU.Gettext.dll \
+                        "
+FILES_gettext-runtime_append_libc-uclibc = " ${libdir}/libintl.so* \
+                                             ${libdir}/charset.alias \
+                                           "
+FILES_gettext-runtime-dev += "${libdir}/libasprintf.a \
+                      ${includedir}/autosprintf.h \
+                     "
+FILES_gettext-runtime-dev_append_libc-uclibc = " ${libdir}/libintl.a \
+                                                 ${includedir}/libintl.h \
+                                               "
+FILES_gettext-runtime-doc = "${mandir}/man1/gettext.* \
+                             ${mandir}/man1/ngettext.* \
+                             ${mandir}/man1/envsubst.* \
+                             ${mandir}/man1/.* \
+                             ${mandir}/man3/* \
+                             ${docdir}/gettext/gettext.* \
+                             ${docdir}/gettext/ngettext.* \
+                             ${docdir}/gettext/envsubst.* \
+                             ${docdir}/gettext/*.3.html \
+                             ${datadir}/gettext/ABOUT-NLS \
+                             ${docdir}/gettext/csharpdoc/* \
+                             ${docdir}/libasprintf/autosprintf.html \
+                             ${infodir}/autosprintf.info \
+                            "
 BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
1.7.4.1
author
#13 lore raw

PATCH 7/17 gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with proxy-libintl

In reply to Khem Raj
---
 meta/recipes-core/gettext/gettext_0.17.bb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-core/gettext/gettext_0.17.bb +2 -2
index bfcb5ea..ce5fc3e 100644
@@ -8,9 +8,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 PR = "r5"
 DEPENDS = "gettext-native virtual/libiconv ncurses expat"
 DEPENDS_virtclass-native = ""
-PROVIDES = "virtual/libintl"
+PROVIDES = "virtual/libintl virtual/gettext"
 PROVIDES_virtclass-native = ""
-
+CONFLICTS_${PN} = "proxy-libintl"
 SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
            file://autotools.patch;patch=1 \
            file://wchar-uclibc.patch;patch=1 \
Signature · 1 line
1.7.4.1
author
#14 lore raw

PATCH 8/17 poky-default.inc: Weakly assign gettext to provide virtual/gettext

In reply to Khem Raj
---
 meta/conf/distro/include/poky-default.inc |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
meta/conf/distro/include/poky-default.inc +1 -0
index 3ec5e1d..91985b3 100644
@@ -14,6 +14,7 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "gcc-runtime"
 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "${POKYLIBC}-initial"
 PREFERRED_PROVIDER_virtual/${SDK_PREFIX}libc-for-gcc-nativesdk ?= "${POKYLIBC}-nativesdk"
 
+PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
 
 GCCVERSION ?= "4.5.1"
 SDKGCCVERSION ?= "4.5.1"
Signature · 1 line
1.7.4.1
author
#15 lore raw

PATCH 9/17 libiconv: update from 1.9.2 -> 1.11.1

In reply to Khem Raj

1.11.1 was the last LGPLv2 release shared_preloadable_libiconv_linux.patch is needed to make libtool 2.4 happy

Autoconf patch is similarly made to point m4 directory and update to newer autoconf

---
 .../libiconv/libiconv-1.11.1/autoconf.patch        |   48 ++++++++++++++++++++
 .../shared_preloadable_libiconv_linux.patch        |   24 ++++++++++
 meta/recipes-support/libiconv/libiconv_1.11.1.bb   |   30 ++++++++++++
 meta/recipes-support/libiconv/libiconv_1.9.2.bb    |   21 ---------
 4 files changed, 102 insertions(+), 21 deletions(-)
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv_1.11.1.bb
 delete mode 100644 meta/recipes-support/libiconv/libiconv_1.9.2.bb
meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch new file +48 -0
new file mode 100644
index 0000000..2b24894
@@ -0,0 +1,48 @@
+It adds the variables that are needed
+for autoconf 2.65 to reconfigure libiconv and defines the m4 macros 
+directory. Its imported from OE.
+
+Signed-off-by: Khem Raj <[email protected]>
+
+Index: libiconv-1.11.1/configure.ac
+===================================================================
+--- libiconv-1.11.1.orig/configure.ac
++++ libiconv-1.11.1/configure.ac
+@@ -23,7 +23,7 @@ AC_CONFIG_AUX_DIR(build-aux)
+ AM_INIT_AUTOMAKE(libiconv, 1.11)
+ AC_CONFIG_HEADERS(config.h lib/config.h)
+ AC_PROG_MAKE_SET
+-
++AC_CONFIG_MACRO_DIR([m4])
+ dnl           checks for basic programs
+ 
+ AC_PROG_CC
+Index: libiconv-1.11.1/libcharset/configure.ac
+===================================================================
+--- libiconv-1.11.1.orig/libcharset/configure.ac
++++ libiconv-1.11.1/libcharset/configure.ac
+@@ -16,17 +16,17 @@ dnl along with the GNU CHARSET Library;
+ dnl write to the Free Software Foundation, Inc., 51 Franklin Street,
+ dnl Fifth Floor, Boston, MA 02110-1301, USA.
+ 
+-AC_PREREQ(2.13)
++AC_PREREQ(2.61)
++AC_INIT([libcharset],[1.4] )
++AC_CONFIG_SRCDIR([lib/localcharset.c])
+ 
+-PACKAGE=libcharset
+-VERSION=1.4
+-
+-AC_INIT(lib/localcharset.c)
+ AC_CONFIG_AUX_DIR(build-aux)
+ AC_CONFIG_HEADER(config.h)
+ AC_PROG_MAKE_SET
+-AC_SUBST(PACKAGE)
+-AC_SUBST(VERSION)
++dnl AC_SUBST(PACKAGE)
++dnl AC_SUBST(VERSION)
++
++AC_CONFIG_MACRO_DIR([m4])
+ 
+ dnl           checks for basic programs
+ 
meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch new file +24 -0
new file mode 100644
index 0000000..a913dad
@@ -0,0 +1,24 @@
+With libtool generating shared and static version of libraries needs -fPIC flags
+without this it will not generate the commands to create shared linked library
+Its more enforced by libtool 2.4. I have not checked it with older libtool
+libiconv 1.11.x is relatively old release and libtool 2.4 did not exist when it
+was released these kind of problem are more likely
+
+Signed-off-by: Khem Raj <[email protected]>
+
+Index: libiconv-1.11.1/lib/Makefile.in
+===================================================================
+--- libiconv-1.11.1.orig/lib/Makefile.in
++++ libiconv-1.11.1/lib/Makefile.in
+@@ -70,9 +70,9 @@ preloadable_libiconv.so : preloadable_li
+ 
+ preloadable_libiconv_linux.so : $(SOURCES)
+ 	if test -n "@GCC@"; then \
+-	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \
++	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -rpath $(libdir) -o libpreload_iconv.la && cp .libs/libpreload_iconv.so preloadable_libiconv_linux.so; \
+ 	else \
+-	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \
++	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -rpath $(libdir) -o libpreload_iconv.la && cp .libs/libpreload_iconv.so preloadable_libiconv_linux.so; \
+ 	fi
+ 
+ preloadable_libiconv_solaris.so : $(SOURCES)
meta/recipes-support/libiconv/libiconv_1.11.1.bb new file +30 -0
new file mode 100644
index 0000000..28c70c8
@@ -0,0 +1,30 @@
+DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \
+multiple character encodings, but that support lacks from your system."
+HOMEPAGE = "http://www.gnu.org/software/libiconv"
+SECTION = "libs"
+PRIORITY = "optional"
+NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8"
+PROVIDES = "virtual/libiconv"
+PR = "r0"
+LICENSE = "LGPL"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674 \
+                    file://libcharset/COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674"
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
+           file://autoconf.patch \
+	   file://shared_preloadable_libiconv_linux.patch \
+          "
+
+SRC_URI[md5sum] = "d42b97f6ef5dd0ba4469d520ed732fed"
+SRC_URI[sha256sum] = "e78c347a1a0cb15f2648519e9799151f4b4a934b61ad9ee7424478efe2b8257f"
+
+S = "${WORKDIR}/libiconv-${PV}"
+
+inherit autotools pkgconfig gettext
+
+EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
+
+LEAD_SONAME = "libiconv.so"
+
+do_configure_prepend () {
+	rm -f m4/libtool.m4 libcharset/m4/libtool.m4
+}
meta/recipes-support/libiconv/libiconv_1.9.2.bb deleted +0 -21
deleted file mode 100644
index dac9e3c..0000000
@@ -1,21 +0,0 @@
-DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \
-multiple character encodings, but that support lacks from your system."
-HOMEPAGE = "http://www.gnu.org/software/libiconv"
-SECTION = "libs"
-PRIORITY = "optional"
-NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8"
-PROVIDES = "virtual/libiconv"
-PR = "r4"
-LICENSE = "LGPL"
-SRC_URI = "${GNU_MIRROR}/libiconv/libiconv-${PV}.tar.gz"
-
-S = "${WORKDIR}/libiconv-${PV}"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF += "--enable-shared --enable-static"
-
-do_configure () {
-	rm -f m4/libtool.m4 libcharset/m4/libtool.m4
-	autotools_do_configure
-}
Signature · 1 line
1.7.4.1
author
#16 lore raw

PATCH 10/17 glib-2.0: Inherit gettext should provide right libintl so remove from DEPENDS

In reply to Khem Raj

Add no-iconv.patch to provide dummy libiconv in case of uclibc

---
 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch |  104 ++++++++++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb      |    4 +-
 meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb      |    5 +-
 meta/recipes-core/glib-2.0/glib.inc                |    2 +-
 4 files changed, 112 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch new file +104 -0
new file mode 100644
index 0000000..cca57d4
@@ -0,0 +1,104 @@
+We provide dummy implementation of iconv functionality if it does not find
+iconv which will be case with uclibc. We remove the check for iconv in configure
+
+This is needed when libintl and libiconv is not available. It wont have any
+impact on case when they are available.
+
+Signed-off-by: Khem Raj <[email protected]>
+
+
+Index: glib-2.26.1/glib/gconvert.c
+===================================================================
+--- glib-2.26.1.orig/glib/gconvert.c
++++ glib-2.26.1/glib/gconvert.c
+@@ -23,7 +23,7 @@
+ #include "config.h"
+ #include "glibconfig.h"
+ 
+-#ifndef G_OS_WIN32
++#if !defined G_OS_WIN32 && defined HAVE_ICONV_H
+ #include <iconv.h>
+ #endif
+ #include <errno.h>
+@@ -65,6 +65,28 @@
+ #error GNU libiconv not in use but included iconv.h is from libiconv
+ #endif
+ 
++#ifndef HAVE_ICONV_H
++typedef void *iconv_t;
++
++iconv_t iconv_open(const char *tocode, const char *fromcode)
++{
++	return (iconv_t)(-1);
++}
++
++int iconv_close(iconv_t cd)
++{
++	free(cd);
++
++	return 0;
++}
++size_t iconv (iconv_t __cd, char **__inbuf,
++                     size_t *__inbytesleft,
++                     char **__outbuf,
++                     size_t *__outbytesleft)
++{
++	return 0;
++}
++#endif
+ 
+ /**
+  * SECTION:conversions
+Index: glib-2.26.1/configure.ac
+===================================================================
+--- glib-2.26.1.orig/configure.ac
++++ glib-2.26.1/configure.ac
+@@ -373,46 +373,8 @@ dnl *** Tests for iconv ***
+ dnl ***********************
+ dnl
+ dnl We do this before the gettext checks, to avoid distortion
+-
+-dnl On Windows we use a native implementation
+-
+-if test x"$glib_native_win32" = xyes; then
+-  with_libiconv=native
+-else
+-  AC_ARG_WITH(libiconv,
+-	      [AC_HELP_STRING([--with-libiconv=@<:@no/gnu/native@:>@],
+-			      [use the libiconv library])],,
+-	      [with_libiconv=maybe])
+-
+-  found_iconv=no
+-  case $with_libiconv in
+-    maybe)
+-      # Check in the C library first
+-      AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
+-      # Check if we have GNU libiconv
+-      if test $found_iconv = "no"; then
+-	AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
+-      fi
+-      # Check if we have a iconv in -liconv, possibly from vendor
+-      if test $found_iconv = "no"; then
+-	AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
+-      fi
+-      ;;
+-    no)
+-      AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
+-      ;;
+-    gnu|yes)
+-      AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
+-      ;;
+-    native)
+-      AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
+-      ;;
+-  esac
+-
+-  if test "x$found_iconv" = "xno" ; then
+-     AC_MSG_ERROR([*** No iconv() implementation found in C library or libiconv])
+-  fi
+-fi
++found_iconv=yes
++with_libiconv=no
+ 
+ gl_GLIBC21
+ AC_ARG_ENABLE(iconv-cache, 
meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb +3 -1
index 6a1fb6c..256abc1 100644
@@ -1,13 +1,15 @@
 require glib.inc
 
 PE = "1"
-PR = "r0"
+PR = "r1"
 
 SRC_URI = "${GNOME_MIRROR}/glib/2.26/glib-${PV}.tar.bz2 \
            file://configure-libtool.patch \
            file://60_wait-longer-for-threads-to-die.patch \
            file://g_once_init_enter.patch \
           "
+# Only apply this patch for target recipe on uclibc
+SRC_URI_append_libc-uclibc = " ${@['', 'file://no-iconv.patch']['${PN}' == '${BPN}']}"
 
 SRC_URI[md5sum] = "17535accceef55bcb17a74d73f9c2aef"
 SRC_URI[sha256sum] = "7a74ff12b6b9dee1f2d0e520b56b68b621920c4f4250bdf23468e515625c28d5"
meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb +4 -1
index 4014a1b..776284e 100644
@@ -1,6 +1,6 @@
 require glib.inc
 
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "${GNOME_MIRROR}/glib/2.27/glib-${PV}.tar.bz2 \
            file://configure-libtool.patch \
@@ -13,6 +13,9 @@ SRC_URI[sha256sum] = "aad3038db865b762e01b1dc455ffd601b4083c069018d290e5fdfe1a61
 
 SRC_URI_append_virtclass-native = " file://glib-gettextize-dir.patch"
 
+# Only apply this patch for target recipe on uclibc
+SRC_URI_append_libc-uclibc = " ${@['', 'file://no-iconv.patch']['${PN}' == '${BPN}']}"
+
 BBCLASSEXTEND = "native nativesdk"
 
 DEFAULT_PREFERENCE = "-1"
meta/recipes-core/glib-2.0/glib.inc +1 -1
index 5ebff68..756b9ef 100644
@@ -15,7 +15,7 @@ SECTION = "libs"
 
 require glib-2.0.inc
 
-DEPENDS = "glib-2.0-native gtk-doc-native virtual/libiconv virtual/libintl zip dbus"
+DEPENDS = "glib-2.0-native gtk-doc-native zip dbus"
 DEPENDS_virtclass-native = "gtk-doc-native pkgconfig-native gettext-native dbus-native"
 DEPENDS_virtclass-nativesdk = "libtool-nativesdk"
 PACKAGES =+ "glib-2.0-utils "
Signature · 1 line
1.7.4.1
author
#17 lore raw

PATCH 11/17 util-linux.inc: remove virtual/libintl from DEPENDS

In reply to Khem Raj

inherit gettext should do it.

---
 meta/recipes-core/util-linux/util-linux.inc |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-core/util-linux/util-linux.inc +3 -3
index 913bb1b..447e5b7 100644
@@ -13,10 +13,10 @@ LIC_FILES_CHKSUM = "file://README.licensing;md5=1530e36fe1304d4535513de90a290df9
                     file://licenses/COPYING.UCB;md5=263860f8968d8bafa5392cab74285262 \
                     file://getopt/COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
 
-DEPENDS = "zlib ncurses virtual/libintl"
-DEPENDS_virtclass-native = "zlib-native ncurses-native lzo-native gettext-native"
-
 inherit autotools gettext
+DEPENDS = "zlib ncurses"
+DEPENDS_virtclass-native_append = " lzo-native"
+
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux-ng/v${MAJOR_VERSION}/util-linux-ng-${PV}.tar.bz2 \
            file://MCONFIG \
Signature · 1 line
1.7.4.1
author
#18 lore raw

PATCH 12/17 elfutils_0.148.bb: Fix compilation issues on uclibc

In reply to Khem Raj

* Add -luargp and -lintl to linker flags
* __mempcpy is not there on uclibc so define it to mempcpy

---
 .../elfutils/elfutils-0.148/mempcpy.patch          |   23 ++++++++++++++++++++
 meta/recipes-devtools/elfutils/elfutils_0.148.bb   |    6 +++-
 2 files changed, 27 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch new file +23 -0
new file mode 100644
index 0000000..e1e4ad0
@@ -0,0 +1,23 @@
+uclibc does not export __mempcpy like glibc so we alias it here.
+This patch may make sense for upstream but elfutils uses more
+glibc specific features like obstack_printf which are missing in
+uclibc they need to be fixed along to make it work all the way
+
+Upstream-status: Inappropriate[Elfutils uses more glibc specific features]
+
+Signed-off-by: Khem Raj <[email protected]>
+
+Index: elfutils-0.148/libelf/elf_begin.c
+===================================================================
+--- elfutils-0.148.orig/libelf/elf_begin.c
++++ elfutils-0.148/libelf/elf_begin.c
+@@ -68,6 +68,9 @@
+ #include "libelfP.h"
+ #include "common.h"
+ 
++#ifdef __UCLIBC__
++#define __mempcpy mempcpy
++#endif
+ 
+ /* Create descriptor for archive in memory.  */
+ static inline Elf *
meta/recipes-devtools/elfutils/elfutils_0.148.bb +4 -2
index a55b98d..df933f6 100644
@@ -28,8 +28,8 @@ SRC_URI += "\
         file://elf_additions.diff \
 	file://elfutils-fsize.patch \
 	file://remove-unused.patch \
+	file://mempcpy.patch \
 "
-
 # The buildsystem wants to generate 2 .h files from source using a binary it just built,
 # which can not pass the cross compiling, so let's work around it by adding 2 .h files
 # along with the do_configure_prepend()
@@ -38,7 +38,6 @@ SRC_URI += "\
         file://i386_dis.h \
         file://x86_64_dis.h \
 "
-
 inherit autotools
 
 EXTRA_OECONF = "--program-prefix=eu-"
@@ -49,6 +48,9 @@ do_configure_prepend() {
 	cp ${WORKDIR}/*dis.h ${S}/libcpu
 }
 
+# Only append ldflags for target recipe
+TARGET_LDFLAGS_libc-uclibc += "${@['', '-lintl -luargp']['${PN}' == '${BPN}']}"
+
 BBCLASSEXTEND = "native nativesdk"
 
 # Package utilities separately
Signature · 1 line
1.7.4.1
author
#19 lore raw

PATCH 13/17 perl_5.12.2.bb: Undefine features not found in uclibc

In reply to Khem Raj
---
 .../perl/perl-5.12.2/native-ssp.patch              |   16 ----------------
 meta/recipes-devtools/perl/perl_5.12.2.bb          |   16 ++++++++++++++++
 2 files changed, 16 insertions(+), 16 deletions(-)
 delete mode 100644 meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch deleted +0 -16
deleted file mode 100644
index e1e6f08..0000000
@@ -1,16 +0,0 @@
-Upstream-Status:Inappropriate [embedded specific]
-
-Fix for compiling with ssp enabled gcc:
-See http://bugs.openembedded.net/show_bug.cgi?id=1980
-
-diff -Naur perl-5.8.7.orig/cflags.SH perl-5.8.7/cflags.SH
---- perl-5.8.7.orig/cflags.SH	2002-09-30 10:59:07.000000000 +0000
-+++ perl-5.8.7/cflags.SH	2005-10-02 04:08:39.000000000 +0000
-@@ -165,6 +165,8 @@
- esac
- 
-     : Can we perhaps use $ansi2knr here
-+    [[ $file == regcomp ]] && export ccflags="${ccflags} -fno-stack-protector"
-+    [[ $file == regexec ]] && export ccflags="${ccflags} -fno-stack-protector"
-     echo "$cc -c -DPERL_CORE $ccflags $optimize $warn"
-     eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn"'
meta/recipes-devtools/perl/perl_5.12.2.bb +16 -0
index 9ce8156..b841e7d 100644
@@ -131,6 +131,12 @@ do_configure() {
                        -e "s,\(getnetent_r_proto=\)'\w+',\1'0',g" \
                        -e "s,\(d_sockatmark=\)'define',\1'undef',g" \
                        -e "s,\(d_sockatmarkproto=\)'\w+',\1'0',g" \
+                       -e "s,\(d_eaccess=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval_sets_cnt=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdiobase=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdstdio=\)'define',\1'undef',g" \
+                       -e "s,-fstack-protector,-fno-stack-protector,g" \
                     config.sh-${TARGET_ARCH}-${TARGET_OS}
         fi
 
@@ -145,6 +151,16 @@ do_configure() {
 	       -e 's,/perl5,/perl,g' \
             config.sh-${TARGET_ARCH}-${TARGET_OS}
 
+       case "${TARGET_ARCH}" in                                                                      
+                x86_64 | powerpc | s390)                                                              
+                        sed -i -e "s,\(need_va_copy=\)'undef',\1'define',g" \                         
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}                                 
+                        ;;                                                                            
+                arm)                                                                                  
+                        sed -i -e "s,\(d_u32align=\)'undef',\1'define',g" \                           
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}                                 
+                        ;;                                                                            
+        esac                                                                                          
         # These are strewn all over the source tree
         for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":"` ; do
             echo Fixing: $foo
Signature · 1 line
1.7.4.1
#20 lore raw

Re: [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc

Quoted 7 lines · Khem Raj
---
  .../perl/perl-5.12.2/native-ssp.patch              |   16 ----------------
  meta/recipes-devtools/perl/perl_5.12.2.bb          |   16 ++++++++++++++++
  2 files changed, 16 insertions(+), 16 deletions(-)

delete mode 100644 meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch

Khem, Nitin:

With perl being updated to 5.12.3 at this point, can you confirm this patch removal is still correct

Sau!

Quoted 56 lines
meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch deleted +0 -16
deleted file mode 100644
index e1e6f08..0000000
@@ -1,16 +0,0 @@
-Upstream-Status:Inappropriate [embedded specific]
-
-Fix for compiling with ssp enabled gcc:
-See http://bugs.openembedded.net/show_bug.cgi?id=1980
-
-diff -Naur perl-5.8.7.orig/cflags.SH perl-5.8.7/cflags.SH
---- perl-5.8.7.orig/cflags.SH	2002-09-30 10:59:07.000000000 +0000
-+++ perl-5.8.7/cflags.SH	2005-10-02 04:08:39.000000000 +0000
-@@ -165,6 +165,8 @@
- esac
-
-     : Can we perhaps use $ansi2knr here
-+    [[ $file == regcomp ]]&&  export ccflags="${ccflags} -fno-stack-protector"
-+    [[ $file == regexec ]]&&  export ccflags="${ccflags} -fno-stack-protector"
-     echo "$cc -c -DPERL_CORE $ccflags $optimize $warn"
-     eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn"'
meta/recipes-devtools/perl/perl_5.12.2.bb +16 -0
index 9ce8156..b841e7d 100644
@@ -131,6 +131,12 @@ do_configure() {
                         -e "s,\(getnetent_r_proto=\)'\w+',\1'0',g" \
                         -e "s,\(d_sockatmark=\)'define',\1'undef',g" \
                         -e "s,\(d_sockatmarkproto=\)'\w+',\1'0',g" \
+                       -e "s,\(d_eaccess=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval_sets_cnt=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdiobase=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdstdio=\)'define',\1'undef',g" \
+                       -e "s,-fstack-protector,-fno-stack-protector,g" \
                      config.sh-${TARGET_ARCH}-${TARGET_OS}
          fi
 
@@ -145,6 +151,16 @@ do_configure() {
  	       -e 's,/perl5,/perl,g' \
              config.sh-${TARGET_ARCH}-${TARGET_OS}
 
+       case "${TARGET_ARCH}" in
+                x86_64 | powerpc | s390)
+                        sed -i -e "s,\(need_va_copy=\)'undef',\1'define',g" \
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}
+                        ;;
+                arm)
+                        sed -i -e "s,\(d_u32align=\)'undef',\1'define',g" \
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}
+                        ;;
+        esac
          # These are strewn all over the source tree
          for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":"` ; do
              echo Fixing: $foo
#21 lore raw

Re: [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc

In reply to Khem Raj
Quoted 7 lines · Khem Raj
---
  .../perl/perl-5.12.2/native-ssp.patch              |   16 ----------------
  meta/recipes-devtools/perl/perl_5.12.2.bb          |   16 ++++++++++++++++
  2 files changed, 16 insertions(+), 16 deletions(-)

delete mode 100644 meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch

Khem,

Looking further at this patch, what affects will removing these features have on LSB for example?

What's the bigger affect of removing the stack-protector flags, in the do_configure?

Sau!

Quoted 56 lines
meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch deleted +0 -16
deleted file mode 100644
index e1e6f08..0000000
@@ -1,16 +0,0 @@
-Upstream-Status:Inappropriate [embedded specific]
-
-Fix for compiling with ssp enabled gcc:
-See http://bugs.openembedded.net/show_bug.cgi?id=1980
-
-diff -Naur perl-5.8.7.orig/cflags.SH perl-5.8.7/cflags.SH
---- perl-5.8.7.orig/cflags.SH	2002-09-30 10:59:07.000000000 +0000
-+++ perl-5.8.7/cflags.SH	2005-10-02 04:08:39.000000000 +0000
-@@ -165,6 +165,8 @@
- esac
-
-     : Can we perhaps use $ansi2knr here
-+    [[ $file == regcomp ]]&&  export ccflags="${ccflags} -fno-stack-protector"
-+    [[ $file == regexec ]]&&  export ccflags="${ccflags} -fno-stack-protector"
-     echo "$cc -c -DPERL_CORE $ccflags $optimize $warn"
-     eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn"'
meta/recipes-devtools/perl/perl_5.12.2.bb +16 -0
index 9ce8156..b841e7d 100644
@@ -131,6 +131,12 @@ do_configure() {
                         -e "s,\(getnetent_r_proto=\)'\w+',\1'0',g" \
                         -e "s,\(d_sockatmark=\)'define',\1'undef',g" \
                         -e "s,\(d_sockatmarkproto=\)'\w+',\1'0',g" \
+                       -e "s,\(d_eaccess=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval_sets_cnt=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdiobase=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdstdio=\)'define',\1'undef',g" \
+                       -e "s,-fstack-protector,-fno-stack-protector,g" \
                      config.sh-${TARGET_ARCH}-${TARGET_OS}
          fi
 
@@ -145,6 +151,16 @@ do_configure() {
  	       -e 's,/perl5,/perl,g' \
              config.sh-${TARGET_ARCH}-${TARGET_OS}
 
+       case "${TARGET_ARCH}" in
+                x86_64 | powerpc | s390)
+                        sed -i -e "s,\(need_va_copy=\)'undef',\1'define',g" \
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}
+                        ;;
+                arm)
+                        sed -i -e "s,\(d_u32align=\)'undef',\1'define',g" \
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}
+                        ;;
+        esac
          # These are strewn all over the source tree
          for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":"` ; do
              echo Fixing: $foo
author
#22 lore raw

Re: [PATCH 13/17] perl_5.12.2.bb: Undefine features not found in uclibc

Quoted 12 lines · Saul Wold
Quoted 11 lines · Khem Raj

---
 .../perl/perl-5.12.2/native-ssp.patch              |   16
----------------
 meta/recipes-devtools/perl/perl_5.12.2.bb          |   16
++++++++++++++++

 2 files changed, 16 insertions(+), 16 deletions(-)

 delete mode 100644 meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch

Quoted 8 lines

Khem,

Looking further at this patch, what affects will removing these features have on LSB for example?

What's the bigger affect of removing the stack-protector flags, in the do_configure?

No effect. Patch was not applied. It is useless to keep unapplied patches. and the real changes are only for uclibc based targets so it has no effect for eglibc builds

Quoted 68 lines

Sau!

Quoted 64 lines
meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch deleted +0 -18
deleted file mode 100644
index e1e6f08..0000000
@@ -1,16 +0,0 @@
-Upstream-Status:Inappropriate [embedded specific]
-
-Fix for compiling with ssp enabled gcc:
-See http://bugs.openembedded.net/show_bug.cgi?id=1980
-
-diff -Naur perl-5.8.7.orig/cflags.SH perl-5.8.7/cflags.SH
---- perl-5.8.7.orig/cflags.SH  2002-09-30 10:59:07.000000000 +0000
-+++ perl-5.8.7/cflags.SH       2005-10-02 04:08:39.000000000 +0000
-@@ -165,6 +165,8 @@
- esac
-
-     : Can we perhaps use $ansi2knr here
-+    [[ $file == regcomp ]]&&  export ccflags="${ccflags}
-fno-stack-protector"
-+    [[ $file == regexec ]]&&  export ccflags="${ccflags}
-fno-stack-protector"
-     echo "$cc -c -DPERL_CORE $ccflags $optimize $warn"
-     eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn"'
meta/recipes-devtools/perl/perl_5.12.2.bb +6 -0
index 9ce8156..b841e7d 100644
@@ -131,6 +131,12 @@ do_configure() {
                         -e "s,\(getnetent_r_proto=\)'\w+',\1'0',g" \
                         -e "s,\(d_sockatmark=\)'define',\1'undef',g" \
                         -e "s,\(d_sockatmarkproto=\)'\w+',\1'0',g" \
+                       -e "s,\(d_eaccess=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval=\)'define',\1'undef',g" \
+                       -e
 "s,\(d_stdio_ptr_lval_sets_cnt=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdiobase=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdstdio=\)'define',\1'undef',g" \
+                       -e "s,-fstack-protector,-fno-stack-protector,g" \
                      config.sh-${TARGET_ARCH}-${TARGET_OS}

         fi

meta/recipes-devtools/perl/perl_5.12.2.bb +10 -0
@@ -145,6 +151,16 @@ do_configure() {
               -e 's,/perl5,/perl,g' \
              config.sh-${TARGET_ARCH}-${TARGET_OS}
 
+       case "${TARGET_ARCH}" in
+                x86_64 | powerpc | s390)
+                        sed -i -e
 "s,\(need_va_copy=\)'undef',\1'define',g" \
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}
+                        ;;
+                arm)
+                        sed -i -e "s,\(d_u32align=\)'undef',\1'define',g"
 \
+                                config.sh-${TARGET_ARCH}-${TARGET_OS}
+                        ;;
+        esac
          # These are strewn all over the source tree

         for foo in grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":" ; do
             echo Fixing: $foo

author
#23 lore raw

PATCH 14/17 xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly

In reply to Khem Raj
---
 meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb   |    4 +++-
 meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb |    4 ++--
 meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb   |    3 ++-
 3 files changed, 7 insertions(+), 4 deletions(-)
meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb +3 -1
index 79078ef..793008b 100644
@@ -6,10 +6,12 @@ both client-side and server-side."
 
 require xorg-lib-common.inc
 
+inherit gettext
+
 LICENSE = "MIT-style"
 LIC_FILES_CHKSUM = "file://COPYING;md5=7908e342491198401321cec1956807ec"
 
-DEPENDS += " xproto gettext"
+DEPENDS += " xproto"
 PROVIDES = "xau"
 
 PR = "r0"
meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb +2 -2
index d897dab..483dce3 100644
@@ -8,6 +8,8 @@ autonomous display."
 
 require xorg-lib-common.inc
 
+inherit gettext
+
 LICENSE = "MIT-style"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d559fb26e129626022e052a5e6e0e123"
 
@@ -17,8 +19,6 @@ PROVIDES = "xdmcp"
 PR = "r0"
 PE = "1"
 
-DEPENDS += "gettext"
-
 XORG_PN = "libXdmcp"
 
 BBCLASSEXTEND = "native nativesdk"
meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb +2 -1
index 335f020..19abe5a 100644
@@ -16,7 +16,8 @@ PE = "1"
 PR = "r0"
 
 RDEPENDS_${PN}-dev = ""
-DEPENDS += "gettext"
+
+inherit gettext
 
 BBCLASSEXTEND = "native nativesdk"
 
Signature · 1 line
1.7.4.1
author
#24 lore raw

PATCH 15/17 attr: Fix compilation on uclibc

In reply to Khem Raj

It needs -lintl added to LDFLAGS for uclibc

inherit gettext class instead of adding gettext to DEPENDS directly

---
 meta/recipes-support/attr/attr.inc   |    4 ++++
 meta/recipes-support/attr/ea-acl.inc |    4 +---
 2 files changed, 5 insertions(+), 3 deletions(-)
meta/recipes-support/attr/attr.inc +4 -0
index c110340..b2ed9a1 100644
@@ -20,3 +20,7 @@ do_install_append() {
 	sed -i ${D}${libdir}/libattr.la -e \
 	    s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
 }
+
+# Only append ldflags for target recipe
+LDFLAGS_libc-uclibc += "${@['', '-lintl']['${PN}' == '${BPN}']}"
+
meta/recipes-support/attr/ea-acl.inc +1 -3
index bc93107..a09c31c 100644
@@ -1,11 +1,9 @@
 # this build system is mostly shared by attr and acl
 
-DEPENDS =+ "gettext"
-
 SRC_URI += "file://relative-libdir.patch;striplevel=0 \
             file://no-fixed-prog-path.patch"
 
-inherit autotools
+inherit autotools gettext
 
 # the package comes with a custom config.h.in, it cannot be
 # overwritten by autoheader
Signature · 1 line
1.7.4.1
author
#25 lore raw

PATCH 16/17 linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc

In reply to Khem Raj

Perf wants elfutils and elfutils on uclibc does not work due to its usage of obstack_printf functionality missing from uclibc.

---
 meta/recipes-kernel/linux/linux-tools.inc |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)
meta/recipes-kernel/linux/linux-tools.inc +13 -4
index d64c9be..ef81650 100644
@@ -1,6 +1,11 @@
 # included by kernel recipes if they want to build/provide
 # perf functionality from their tree.
-
+do_compile_perf_libc-uclibc () {
+	:
+}
+do_install_perf_libc-uclibc () {
+	:
+}
 do_compile_perf() {
 	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
 }
@@ -14,6 +19,10 @@ do_install_perf() {
 addtask compile_perf after do_compile before do_install
 addtask install_perf after do_install before do_package
 
-do_compile_perf[depends] =  "virtual/libc:do_populate_sysroot"
-do_compile_perf[depends] =+ "elfutils:do_populate_sysroot"
-RDEPENDS_perf += "python perl elfutils"
+
+PERFDEPENDS = "virtual/libc:do_populate_sysroot elfutils:do_populate_sysroot"
+PERFDEPENDS_libc-uclibc = ""
+PERFRDEPENDS = "python perl elfutils"
+PERFRDEPENDS_libc-uclibc = ""
+do_compile_perf[depends] = "${PERFDEPENDS}"
+RDEPENDS_perf += "${PERFRDEPENDS}"
Signature · 1 line
1.7.4.1
author
#26 lore raw

PATCH 17/17 alsa-utils_1.0.23.bb: Fix compilation for uclibc targets

In reply to Khem Raj

Use libc-uclibc override to cover all uclibc cases

inherit gettext class instead of adding gettext to DEPENDS directly

---
 meta/recipes-multimedia/alsa/alsa-utils_1.0.23.bb |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)
meta/recipes-multimedia/alsa/alsa-utils_1.0.23.bb +4 -5
index 46283cc..46b96ae 100644
@@ -5,11 +5,11 @@ SECTION = "console/utils"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \
                     file://alsactl/utils.c;beginline=1;endline=20;md5=fe9526b055e246b5558809a5ae25c0b9"
-DEPENDS = "alsa-lib ncurses gettext"
+DEPENDS = "alsa-lib ncurses"
 PR = "r0"
 
 SRC_URI = "ftp://ftp.alsa-project.org/pub/utils/alsa-utils-${PV}.tar.bz2 \
-           file://ncursesfix.patch;patch=1 "
+           file://ncursesfix.patch"
 
 SRC_URI[md5sum] = "cb0cf46029ac9549cf3a31bff6a4f4e1"
 SRC_URI[sha256sum] = "b7d05e915e25f8540ad151c6dd558cf0fc1e9bb0ee23052d531c983666a1f7b0"
@@ -19,10 +19,9 @@ SRC_URI[sha256sum] = "b7d05e915e25f8540ad151c6dd558cf0fc1e9bb0ee23052d531c983666
 # please close bug and remove this comment when properly fixed
 #
 EXTRA_OECONF = "--disable-xmlto"
-EXTRA_OECONF_linux-uclibc = "--disable-nls"
-EXTRA_OECONF_linux-uclibcgnueabi = "--disable-nls"
+EXTRA_OECONF_append_libc-uclibc = " --disable-nls"
 
-inherit autotools
+inherit autotools gettext
 
 # This are all packages that we need to make. Also, the now empty alsa-utils
 # ipk depend on them.
Signature · 1 line
1.7.4.1