commit 9494603aea753d62cb4ad9b7988a5eb65c82c7ce Author: overweight <5324761+overweight@user.noreply.gitee.com> Date: Mon Sep 30 10:51:53 2019 -0400 Package init diff --git a/GREP_COLORS b/GREP_COLORS new file mode 100644 index 0000000..1ef53a6 --- /dev/null +++ b/GREP_COLORS @@ -0,0 +1,4 @@ +# Configuration file for the color grep utility + +# 'none' shuts colorization off. +#COLOR none diff --git a/colorgrep.csh b/colorgrep.csh new file mode 100644 index 0000000..b3152a6 --- /dev/null +++ b/colorgrep.csh @@ -0,0 +1,11 @@ + +# color-grep initialization + +/usr/libexec/grepconf.sh -c +if ( $status == 1 ) then + exit +endif + +alias grep 'grep --color=auto' +alias egrep 'egrep --color=auto' +alias fgrep 'fgrep --color=auto' diff --git a/colorgrep.sh b/colorgrep.sh new file mode 100644 index 0000000..cd0539c --- /dev/null +++ b/colorgrep.sh @@ -0,0 +1,7 @@ +# color-grep initialization + +/usr/libexec/grepconf.sh -c || return + +alias grep='grep --color=auto' 2>/dev/null +alias egrep='egrep --color=auto' 2>/dev/null +alias fgrep='fgrep --color=auto' 2>/dev/null diff --git a/grep-3.1-glibc-2.28-fix.patch b/grep-3.1-glibc-2.28-fix.patch new file mode 100644 index 0000000..4ca9377 --- /dev/null +++ b/grep-3.1-glibc-2.28-fix.patch @@ -0,0 +1,38 @@ +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 66fb461..c6e96e4 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -55,10 +55,6 @@ XFAIL_TESTS = triple-backref + # FIXME-2015: Remove this once the gnulib bug is fixed. + if USE_INCLUDED_REGEX + XFAIL_TESTS += equiv-classes +-else +-# The backslash-alt test fails for glibc, which needs to be fixed. +-# FIXME-2015: Remove this once the glibc bug is fixed. +-XFAIL_TESTS += backref-alt + endif + + TESTS = \ +diff --git a/tests/Makefile.in b/tests/Makefile.in +index 55c72d0..04e64af 100644 +--- a/tests/Makefile.in ++++ b/tests/Makefile.in +@@ -108,9 +108,6 @@ check_PROGRAMS = get-mb-cur-max$(EXEEXT) + # The included matcher needs to be fixed. + # FIXME-2015: Remove this once the gnulib bug is fixed. + @USE_INCLUDED_REGEX_TRUE@am__append_1 = equiv-classes +-# The backslash-alt test fails for glibc, which needs to be fixed. +-# FIXME-2015: Remove this once the glibc bug is fixed. +-@USE_INCLUDED_REGEX_FALSE@am__append_2 = backref-alt + subdir = tests + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ +@@ -1408,7 +1405,7 @@ LDADD = ../lib/libgreputils.a $(LIBINTL) ../lib/libgreputils.a + # matcher (i.e., with glibc) and with the included matcher. + # Both matchers need to be fixed. + # FIXME-2015: Remove this once the glibc and gnulib bugs are fixed. +-XFAIL_TESTS = triple-backref $(am__append_1) $(am__append_2) ++XFAIL_TESTS = triple-backref $(am__append_1) + TESTS = \ + backref \ + backref-alt \ diff --git a/grep-3.1.tar.xz b/grep-3.1.tar.xz new file mode 100644 index 0000000..cd1ab0c Binary files /dev/null and b/grep-3.1.tar.xz differ diff --git a/grep-3.31-help-align.patch b/grep-3.31-help-align.patch new file mode 100644 index 0000000..caf6d4c --- /dev/null +++ b/grep-3.31-help-align.patch @@ -0,0 +1,30 @@ +diff --git a/src/grep.c b/src/grep.c +index a2de03d..fd1b3a9 100644 +--- a/src/grep.c ++++ b/src/grep.c +@@ -1962,17 +1962,20 @@ Output control:\n\ + -D, --devices=ACTION how to handle devices, FIFOs and sockets;\n\ + ACTION is 'read' or 'skip'\n\ + -r, --recursive like --directories=recurse\n\ +- -R, --dereference-recursive likewise, but follow all symlinks\n\ ++ -R, --dereference-recursive\n\ ++ likewise, but follow all symlinks\n\ + ")); + printf (_("\ +- --include=FILE_PATTERN search only files that match FILE_PATTERN\n\ +- --exclude=FILE_PATTERN skip files and directories matching\ ++ --include=FILE_PATTERN\n\ ++ search only files that match FILE_PATTERN\n\ ++ --exclude=FILE_PATTERN\n\ ++ skip files and directories matching\ + FILE_PATTERN\n\ + --exclude-from=FILE skip files matching any file pattern from FILE\n\ +- --exclude-dir=PATTERN directories that match PATTERN will be skipped.\n\ ++ --exclude-dir=PATTERN directories that match PATTERN will be skipped.\n\ + ")); + printf (_("\ +- -L, --files-without-match print only names of FILEs with no selected lines\n\ ++ -L, --files-without-match print only names of FILEs with no selected lines\n\ + -l, --files-with-matches print only names of FILEs with selected lines\n\ + -c, --count print only a count of selected lines per FILE\n\ + -T, --initial-tab make tabs line up (if needed)\n\ diff --git a/grep-3.31-man-fix-gs.patch b/grep-3.31-man-fix-gs.patch new file mode 100644 index 0000000..233270f --- /dev/null +++ b/grep-3.31-man-fix-gs.patch @@ -0,0 +1,61 @@ +diff --git a/doc/grep.in.1 b/doc/grep.in.1 +index 40c9586..a4e89eb 100644 +--- a/doc/grep.in.1 ++++ b/doc/grep.in.1 +@@ -335,7 +335,7 @@ Print + .I NUM + lines of trailing context after matching lines. + Places a line containing a group separator +-.RB ( \-\^\- ) ++.RB "(described under " \-\^\-group\-separator ) + between contiguous groups of matches. + With the + .B \-o +@@ -348,7 +348,7 @@ Print + .I NUM + lines of leading context before matching lines. + Places a line containing a group separator +-.RB ( \-\^\- ) ++.RB "(described under " \-\^\-group\-separator ) + between contiguous groups of matches. + With the + .B \-o +@@ -361,13 +361,24 @@ Print + .I NUM + lines of output context. + Places a line containing a group separator +-.RB ( \-\^\- ) ++.RB "(described under " \-\^\-group\-separator ) + between contiguous groups of matches. + With the + .B \-o + or + .B \-\^\-only\-matching + option, this has no effect and a warning is given. ++.TP ++.BI \-\^\-group\-separator= SEP ++Use ++.I SEP ++as a group separator. By default ++.I SEP ++is double hyphen ++.RB ( \-\^\- ). ++.TP ++.B \-\^\-no\-group-separator ++Use empty string as a group separator. + .SS "File and Directory Selection" + .TP + .BR \-a ", " \-\^\-text +diff --git a/src/grep.c b/src/grep.c +index 8d22aec..a2de03d 100644 +--- a/src/grep.c ++++ b/src/grep.c +@@ -1986,6 +1986,8 @@ Context control:\n\ + ")); + printf (_("\ + -NUM same as --context=NUM\n\ ++ --group-separator=SEP use SEP as a group separator\n\ ++ --no-group-separator use empty string as a group separator\n\ + --color[=WHEN],\n\ + --colour[=WHEN] use markers to highlight the matching strings;\n\ + WHEN is 'always', 'never', or 'auto'\n\ diff --git a/grep.spec b/grep.spec new file mode 100644 index 0000000..69f834e --- /dev/null +++ b/grep.spec @@ -0,0 +1,63 @@ +Name: grep +Version: 3.1 +Release: 9 +Summary: A string search utility +License: GPLv3+ +URL: http://www.gnu.org/software/grep/ +Source0: https://ftp.gnu.org/gnu/grep/grep-%{version}.tar.xz +Source1: colorgrep.sh +Source2: colorgrep.csh +Source3: GREP_COLORS +Source4: grepconf.sh + +Patch0: grep-3.31-man-fix-gs.patch +Patch1: grep-3.31-help-align.patch +Patch2: grep-3.1-glibc-2.28-fix.patch + +BuildRequires: gcc git pcre-devel >= 3.9-10 texinfo gettext +Provides: /bin/egrep /bin/fgrep /bin/grep bundled(gnulib) + +%description +Grep searches one or more input files for lines containing a match to +a specified pattern. By default, Grep outputs the matching lines. + +%prep +%autosetup -n %{name}-%{version} -p1 + +%build +%configure --without-included-regex --disable-silent-rules \ +CPPFLAGS="-I%{_includedir}/pcre" CFLAGS="$RPM_OPT_FLAGS" +%make_build + +%install +%make_install +rm -f $RPM_BUILD_ROOT%{_infodir}/dir +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d +install -pm 644 %{SOURCE1} %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/profile.d +install -pm 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir} +install -Dpm 755 %{SOURCE4} $RPM_BUILD_ROOT%{_libexecdir}/grepconf.sh + +%pre +%preun +%post +%postun + +%check +make check + +%files +%{_datadir}/locale/* +%doc AUTHORS NEWS README THANKS TODO +%license COPYING +%{_bindir}/*grep +%config(noreplace) %{_sysconfdir}/profile.d/colorgrep.*sh +%config(noreplace) %{_sysconfdir}/GREP_COLORS +%{_infodir}/grep.info.gz +%{_mandir}/man1/*grep.1.gz +%{_libexecdir}/grepconf.sh + + +%changelog +* Mon Aug 19 2019 openEuler Buildteam - 3.1-9 +- Package init + diff --git a/grepconf.sh b/grepconf.sh new file mode 100644 index 0000000..418af0b --- /dev/null +++ b/grepconf.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +case "$1" in + -c | --interactive-color) + ! grep -qsi "^COLOR.*none" /etc/GREP_COLORS + ;; + *) + echo >&2 "Invalid / no option passed, so far only -c | --interactive-color is supported." + exit 1 + ;; +esac