grep: new recipe v2.5.1a

This is the last GPLv2 version of grep. This recipe was dervied from
OpenEmbedded's version.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
This commit is contained in:
Scott Garman 2010-08-18 08:26:26 -07:00 committed by Richard Purdie
parent 119b69dd26
commit dd30a64fc1
2 changed files with 93 additions and 0 deletions

View File

@ -0,0 +1,53 @@
# Fix to use mempcpy instead of __mempcpy. This is needed for uclibc which
# doesn't define __mempcpy, only mempcpy. Since both uclibc and glibc have
# mempcpy, we'll just use that instead.
# Patch source: OpenEmbedded
Index: grep-2.5.1/intl/localealias.c
===================================================================
--- grep-2.5.1.orig/intl/localealias.c 2002-03-14 00:39:06.000000000 +1100
+++ grep-2.5.1/intl/localealias.c 2007-05-17 13:53:58.000000000 +1000
@@ -65,7 +65,7 @@
# define strcasecmp __strcasecmp
# ifndef mempcpy
-# define mempcpy __mempcpy
+# error "mempcpy not detected"
# endif
# define HAVE_MEMPCPY 1
# define HAVE___FSETLOCKING 1
Index: grep-2.5.1/lib/getopt.c
===================================================================
--- grep-2.5.1.orig/lib/getopt.c 2001-03-04 16:33:12.000000000 +1100
+++ grep-2.5.1/lib/getopt.c 2007-05-17 13:51:44.000000000 +1000
@@ -326,7 +326,7 @@
nonoption_flags_len = nonoption_flags_max_len = 0;
else
{
- memset (__mempcpy (new_str, __getopt_nonoption_flags,
+ memset (mempcpy (new_str, __getopt_nonoption_flags,
nonoption_flags_max_len),
'\0', top + 1 - nonoption_flags_max_len);
nonoption_flags_max_len = top + 1;
@@ -437,7 +437,7 @@
if (__getopt_nonoption_flags == NULL)
nonoption_flags_max_len = -1;
else
- memset (__mempcpy (__getopt_nonoption_flags, orig_str, len),
+ memset (mempcpy (__getopt_nonoption_flags, orig_str, len),
'\0', nonoption_flags_max_len - len);
}
}
Index: grep-2.5.1/lib/regex.c
===================================================================
--- grep-2.5.1.orig/lib/regex.c 2001-04-03 04:04:45.000000000 +1000
+++ grep-2.5.1/lib/regex.c 2007-05-17 13:51:48.000000000 +1000
@@ -7842,7 +7842,7 @@
if (msg_size > errbuf_size)
{
#if defined HAVE_MEMPCPY || defined _LIBC
- *((char *) __mempcpy (errbuf, msg, errbuf_size - 1)) = '\0';
+ *((char *) mempcpy (errbuf, msg, errbuf_size - 1)) = '\0';
#else
memcpy (errbuf, msg, errbuf_size - 1);
errbuf[errbuf_size - 1] = 0;

View File

@ -0,0 +1,40 @@
DESCRIPTION = "grep GNU utility"
SECTION = "console/utils"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
PR = "r1"
SRC_URI = "${GNU_MIRROR}/grep/grep-${PV}.tar.bz2 \
file://uclibc-fix.patch"
SRC_URI[md5sum] = "52202fe462770fa6be1bb667bd6cf30c"
SRC_URI[sha256sum] = "38c8a2bb9223d1fb1b10bdd607cf44830afc92fd451ac4cd07619bf92bdd3132"
inherit autotools gettext
EXTRA_OECONF = "--disable-perl-regexp --disable-ncurses"
do_configure_prepend () {
rm -f ${S}/m4/init.m4
}
do_install () {
autotools_do_install
install -d ${D}${base_bindir}
mv ${D}${bindir}/grep ${D}${base_bindir}/grep.${PN}
mv ${D}${bindir}/egrep ${D}${base_bindir}/egrep.${PN}
mv ${D}${bindir}/fgrep ${D}${base_bindir}/fgrep.${PN}
}
pkg_postinst_${PN} () {
update-alternatives --install ${base_bindir}/grep grep grep.${PN} 100
update-alternatives --install ${base_bindir}/egrep egrep egrep.${PN} 100
update-alternatives --install ${base_bindir}/fgrep fgrep fgrep.${PN} 100
}
pkg_prerm_${PN} () {
update-alternatives --remove grep grep.${PN}
update-alternatives --remove egrep egrep.${PN}
update-alternatives --remove fgrep fgrep.${PN}
}