[OE-core] [[Patch v2]] Always use locale.h in grep

Saul Wold sgw at linux.intel.com
Mon Mar 11 21:22:14 UTC 2013


Please fix the subject to reflect which recipe you are affecting.

grep: Always use locale.h

(see below also)
On 03/11/2013 08:26 AM, Alex DAMIAN wrote:
> From: Alexandru DAMIAN <alexandru.damian at intel.com>
>
> The changes in the grep 2.5 configuration always leave out
> HAVE_LOCALE_H - it has been removed from other files, but
> not from everywhere.
>
> This leads to a crash in certain configurations where the
> size of int is not the size of pointer due to using
> setlocale() while being undeclared.
>
Nice pickup on fixing this bug!

> [YOCTO #3959]
> ---
>   .../grep/grep-2.5.1a/fix64-int-to-pointer.patch       |   17 +++++++++++++++++
>   meta/recipes-extended/grep/grep_2.5.1a.bb             |    3 ++-
>   2 files changed, 19 insertions(+), 1 deletion(-)
>   create mode 100644 meta/recipes-extended/grep/grep-2.5.1a/fix64-int-to-pointer.patch
>
> diff --git a/meta/recipes-extended/grep/grep-2.5.1a/fix64-int-to-pointer.patch b/meta/recipes-extended/grep/grep-2.5.1a/fix64-int-to-pointer.patch
> new file mode 100644
> index 0000000..3b91520
> --- /dev/null
> +++ b/meta/recipes-extended/grep/grep-2.5.1a/fix64-int-to-pointer.patch
> @@ -0,0 +1,17 @@
> +Always use locale.h as HAVE_LOCALE_H is no longer handled by ./configure
> +Upstream-Status: Inappropriate [ old version that will not be maintained ]
> +Signed-off-by: Alex DAMIAN <alexandru.damian at intel.com>
> +
> +diff --recursive --unified grep-2.5.1a-orig/lib/hard-locale.c grep-2.5.1a/lib/hard-locale.c
> +--- grep-2.5.1a-orig/lib/hard-locale.c	2001-03-04 07:33:12.000000000 +0200
> ++++ grep-2.5.1a/lib/hard-locale.c	2013-03-11 17:05:52.086444891 +0200
> +@@ -38,9 +38,7 @@
> + # endif
> + #endif
> +
> +-#if HAVE_LOCALE_H
> + # include <locale.h>
> +-#endif
> +
> + #if HAVE_STRING_H
> + # include <string.h>
> diff --git a/meta/recipes-extended/grep/grep_2.5.1a.bb b/meta/recipes-extended/grep/grep_2.5.1a.bb
> index ebcbe23..b534066 100644
> --- a/meta/recipes-extended/grep/grep_2.5.1a.bb
> +++ b/meta/recipes-extended/grep/grep_2.5.1a.bb
> @@ -11,6 +11,7 @@ SRC_URI = "${GNU_MIRROR}/grep/grep-${PV}.tar.bz2 \
>              file://uclibc-fix.patch \
>              file://grep_fix_for_automake-1.12.patch \
>              file://gettext.patch \
> +           file://fix64-int-to-pointer.patch \
>              file://Makevars \
>              "
>
> @@ -21,7 +22,7 @@ inherit autotools gettext
>
>   EXTRA_OECONF = "--disable-perl-regexp --disable-ncurses"
>
> -CFLAGS += "-D PROTOTYPES"
> +CFLAGS += "-O0 -D PROTOTYPES"

You are also changing the CFLAGS here, does this need to be removed or 
documented.

Sau!
>   do_configure_prepend () {
>   	rm -f ${S}/m4/init.m4
>   	cp -f ${WORKDIR}/Makevars ${S}/po/
>




More information about the Openembedded-core mailing list