diff options
author | André Draszik <git@andred.net> | 2016-08-18 17:15:00 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-08-23 17:44:40 +0100 |
commit | bb96b161ae2e8c98b2d9b29b6cf2c16b89773549 (patch) | |
tree | 36c4c32dc2bb2d26b15e1c4fc166c1cab941ac4d /meta/recipes-core | |
parent | edec1c4e1ddc986edf2bd1ea11cff9277096c8f5 (diff) | |
download | poky-bb96b161ae2e8c98b2d9b29b6cf2c16b89773549.tar.gz |
gettext_0.16.1: use musl gettext implementation
gettext uses internal symbols to detect whether the
implementation is compatible with GNU gettext. However,
these symbols don't are not part of the public API, they
are specific to glibc.
While musl implements the GNU gettext *API* version 1 and 2
http://www.openwall.com/lists/musl/2015/04/16/3
it doesn't implement glibc internals. This means that
gettext fails to detect musl's working implementation.
More recent versions of gettext have changed the way
GNU gettext compatibility is done
https://lists.gnu.org/archive/html/bug-gettext/2016-04/msg00000.html
http://git.savannah.gnu.org/cgit/gettext.git/commit/gettext-runtime/m4/gettext.m4?id=b67399b40bc5bf3165b09e6a095ec941d4b30a97
and while we could backport the corresponding patch to
gettext.m4, we avoid doing that so as to avoid any
potential GPL-v3 issues.
So instead we force ./configure to assume that the gettext
implementation of the c-library (musl) is compatible.
As a side-effect, this also reduces image sizes as the
internal gettext implementation isn't built anymore, and
it's otherwise packaged into the main gettext package
which blows up the image as the main gettext package
contains a lot of things.
Similarly, libintl.h isn't generated anymore, as the one
from musl is OK.
(From OE-Core rev: 948f0bd162f0b1b0375db884e99a2338f47e8527)
Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r-- | meta/recipes-core/gettext/gettext_0.16.1.bb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/meta/recipes-core/gettext/gettext_0.16.1.bb b/meta/recipes-core/gettext/gettext_0.16.1.bb index 8b6f0a71b0..5a58578e22 100644 --- a/meta/recipes-core/gettext/gettext_0.16.1.bb +++ b/meta/recipes-core/gettext/gettext_0.16.1.bb | |||
@@ -31,6 +31,11 @@ PARALLEL_MAKE = "" | |||
31 | inherit autotools texinfo | 31 | inherit autotools texinfo |
32 | 32 | ||
33 | EXTRA_OECONF += "--without-lisp --disable-csharp --disable-openmp --without-emacs" | 33 | EXTRA_OECONF += "--without-lisp --disable-csharp --disable-openmp --without-emacs" |
34 | EXTRA_OECONF_append_libc-musl = "\ | ||
35 | gt_cv_func_gnugettext1_libc=yes \ | ||
36 | gt_cv_func_gnugettext2_libc=yes \ | ||
37 | " | ||
38 | |||
34 | acpaths = '-I ${S}/autoconf-lib-link/m4/ \ | 39 | acpaths = '-I ${S}/autoconf-lib-link/m4/ \ |
35 | -I ${S}/gettext-runtime/m4 \ | 40 | -I ${S}/gettext-runtime/m4 \ |
36 | -I ${S}/gettext-tools/m4' | 41 | -I ${S}/gettext-tools/m4' |
@@ -41,7 +46,6 @@ do_configure_prepend() { | |||
41 | 46 | ||
42 | do_install_append_libc-musl () { | 47 | do_install_append_libc-musl () { |
43 | rm -f ${D}${libdir}/charset.alias | 48 | rm -f ${D}${libdir}/charset.alias |
44 | rm -f ${D}${includedir}/libintl.h | ||
45 | } | 49 | } |
46 | 50 | ||
47 | # these lack the .x behind the .so, but shouldn't be in the -dev package | 51 | # these lack the .x behind the .so, but shouldn't be in the -dev package |