Compare commits
8 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
401e772243 | ||
|
|
da0d7afa9e | ||
|
|
9ce00030a5 | ||
|
|
4397c94fae | ||
|
|
57348fea03 | ||
|
|
9469ab4bec | ||
|
|
3740ef625b | ||
|
|
3773798aa6 |
16 changed files with 333 additions and 4047 deletions
|
|
@ -1 +0,0 @@
|
|||
1
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -1,2 +1 @@
|
|||
/grep-*.tar.xz
|
||||
/grep-*.tar.xz.sig
|
||||
grep-*.tar.xz
|
||||
|
|
|
|||
|
|
@ -1,11 +1,15 @@
|
|||
|
||||
# color-grep initialization
|
||||
|
||||
/usr/libexec/grepconf.sh -c
|
||||
if ( $status == 1 ) then
|
||||
exit
|
||||
if ( -r /etc/GREP_COLORS ) then
|
||||
set color_none=`sed -n '/^COLOR.*none/Ip' < /etc/GREP_COLORS`
|
||||
if ( "$color_none" != '' ) then
|
||||
unset color_none
|
||||
exit
|
||||
endif
|
||||
unset color_none
|
||||
endif
|
||||
|
||||
alias grep 'grep --color=auto'
|
||||
alias egrep 'grep -E --color=auto'
|
||||
alias fgrep 'grep -F --color=auto'
|
||||
alias egrep 'egrep --color=auto'
|
||||
alias fgrep 'fgrep --color=auto'
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
# color-grep initialization
|
||||
|
||||
/usr/libexec/grepconf.sh -c || return
|
||||
if [ -r /etc/GREP_COLORS ]; then
|
||||
grep -qi "^COLOR.*none" /etc/GREP_COLORS >/dev/null 2>/dev/null && return
|
||||
fi
|
||||
|
||||
alias grep='grep --color=auto' 2>/dev/null
|
||||
alias egrep='grep -E --color=auto' 2>/dev/null
|
||||
alias fgrep='grep -F --color=auto' 2>/dev/null
|
||||
alias egrep='egrep --color=auto' 2>/dev/null
|
||||
alias fgrep='fgrep --color=auto' 2>/dev/null
|
||||
|
|
|
|||
16
gating.yaml
16
gating.yaml
|
|
@ -1,16 +0,0 @@
|
|||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_contexts: [bodhi_update_push_testing]
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
|
||||
#gating rawhide
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_contexts: [bodhi_update_push_stable]
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
146
grep-2.21-buf-overrun-fix.patch
Normal file
146
grep-2.21-buf-overrun-fix.patch
Normal file
|
|
@ -0,0 +1,146 @@
|
|||
From 83a95bd8c8561875b948cadd417c653dbe7ef2e2 Mon Sep 17 00:00:00 2001
|
||||
From: Yuliy Pisetsky <ypisetsky@fb.com>
|
||||
Date: Thu, 01 Jan 2015 23:36:55 +0000
|
||||
Subject: grep -F: fix a heap buffer (read) overrun
|
||||
|
||||
grep's read buffer is often filled to its full size, except when
|
||||
reading the final buffer of a file. In that case, the number of
|
||||
bytes read may be far less than the size of the buffer. However, for
|
||||
certain unusual pattern/text combinations, grep -F would mistakenly
|
||||
examine bytes in that uninitialized region of memory when searching
|
||||
for a match. With carefully chosen inputs, one can cause grep -F to
|
||||
read beyond the end of that buffer altogether. This problem arose via
|
||||
commit v2.18-90-g73893ff with the introduction of a more efficient
|
||||
heuristic using what is now the memchr_kwset function. The use of
|
||||
that function in bmexec_trans could leave TP much larger than EP,
|
||||
and the subsequent call to bm_delta2_search would mistakenly access
|
||||
beyond end of the main input read buffer.
|
||||
|
||||
* src/kwset.c (bmexec_trans): When TP reaches or exceeds EP,
|
||||
do not call bm_delta2_search.
|
||||
* tests/kwset-abuse: New file.
|
||||
* tests/Makefile.am (TESTS): Add it.
|
||||
* THANKS.in: Update.
|
||||
* NEWS (Bug fixes): Mention it.
|
||||
|
||||
Prior to this patch, this command would trigger a UMR:
|
||||
|
||||
printf %0360db 0 | valgrind src/grep -F $(printf %019dXb 0)
|
||||
|
||||
Use of uninitialised value of size 8
|
||||
at 0x4142BE: bmexec_trans (kwset.c:657)
|
||||
by 0x4143CA: bmexec (kwset.c:678)
|
||||
by 0x414973: kwsexec (kwset.c:848)
|
||||
by 0x414DC4: Fexecute (kwsearch.c:128)
|
||||
by 0x404E2E: grepbuf (grep.c:1238)
|
||||
by 0x4054BF: grep (grep.c:1417)
|
||||
by 0x405CEB: grepdesc (grep.c:1645)
|
||||
by 0x405EC1: grep_command_line_arg (grep.c:1692)
|
||||
by 0x4077D4: main (grep.c:2570)
|
||||
|
||||
See the accompanying test for how to trigger the heap buffer overrun.
|
||||
|
||||
Thanks to Nima Aghdaii for testing and finding numerous
|
||||
ways to break early iterations of this patch.
|
||||
---
|
||||
--- a/THANKS.in
|
||||
+++ b/THANKS.in
|
||||
@@ -62,6 +62,7 @@ Michael Aichlmayr mikla@nx.com
|
||||
Miles Bader miles@ccs.mt.nec.co.jp
|
||||
Mirraz Mirraz mirraz1@rambler.ru
|
||||
Nelson H. F. Beebe beebe@math.utah.edu
|
||||
+Nima Aghdaii naghdaii@fb.com
|
||||
Olaf Kirch okir@ns.lst.de
|
||||
Paul Kimoto kimoto@spacenet.tn.cornell.edu
|
||||
Péter Radics mitchnull@gmail.com
|
||||
diff --git a/src/kwset.c b/src/kwset.c
|
||||
index 6d21893..998dbfe 100644
|
||||
--- a/src/kwset.c
|
||||
+++ b/src/kwset.c
|
||||
@@ -643,6 +643,8 @@ bmexec_trans (kwset_t kwset, char const *text, size_t size)
|
||||
if (! tp)
|
||||
return -1;
|
||||
tp++;
|
||||
+ if (ep <= tp)
|
||||
+ break;
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/tests/Makefile.am b/tests/Makefile.am
|
||||
index 217a731..2f69835 100644
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -72,6 +72,7 @@ TESTS = \
|
||||
inconsistent-range \
|
||||
invalid-multibyte-infloop \
|
||||
khadafy \
|
||||
+ kwset-abuse \
|
||||
long-line-vs-2GiB-read \
|
||||
match-lines \
|
||||
max-count-overread \
|
||||
diff --git a/tests/Makefile.in b/tests/Makefile.in
|
||||
index e40a070..9ecafe7 100644
|
||||
--- a/tests/Makefile.in
|
||||
+++ b/tests/Makefile.in
|
||||
@@ -1376,6 +1376,7 @@ TESTS = \
|
||||
inconsistent-range \
|
||||
invalid-multibyte-infloop \
|
||||
khadafy \
|
||||
+ kwset-abuse \
|
||||
long-line-vs-2GiB-read \
|
||||
match-lines \
|
||||
max-count-overread \
|
||||
@@ -2030,6 +2031,13 @@
|
||||
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
||||
--log-file $$b.log --trs-file $$b.trs \
|
||||
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||
+kwset-abuse.log: kwset-abuse
|
||||
+ @p='kwset-abuse'; \
|
||||
+ b='kwset-abuse'; \
|
||||
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
||||
+ --log-file $$b.log --trs-file $$b.trs \
|
||||
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||
"$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||
long-line-vs-2GiB-read.log: long-line-vs-2GiB-read
|
||||
@p='long-line-vs-2GiB-read'; \
|
||||
diff --git a/tests/kwset-abuse b/tests/kwset-abuse
|
||||
new file mode 100755
|
||||
index 0000000..6d8ec0c
|
||||
--- a/dev/null
|
||||
+++ b/tests/kwset-abuse
|
||||
@@ -0,0 +1,32 @@
|
||||
+#! /bin/sh
|
||||
+# Evoke a segfault in a hard-to-reach code path of kwset.c.
|
||||
+# This bug affected grep versions 2.19 through 2.21.
|
||||
+#
|
||||
+# Copyright (C) 2015 Free Software Foundation, Inc.
|
||||
+#
|
||||
+# This program is free software: you can redistribute it and/or modify
|
||||
+# it under the terms of the GNU General Public License as published by
|
||||
+# the Free Software Foundation, either version 3 of the License, or
|
||||
+# (at your option) any later version.
|
||||
+
|
||||
+# This program is distributed in the hope that it will be useful,
|
||||
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+# GNU General Public License for more details.
|
||||
+
|
||||
+# You should have received a copy of the GNU General Public License
|
||||
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
|
||||
+
|
||||
+fail=0
|
||||
+
|
||||
+# This test case chooses a haystack of size 260,000, since prodding
|
||||
+# with gdb showed a reallocation slightly larger than that in fillbuf.
|
||||
+# To reach the buggy code, the needle must have length < 1/11 that of
|
||||
+# the haystack, and 10,000 is a nice round number that fits the bill.
|
||||
+printf '%0260000dXy\n' 0 | grep -F $(printf %010000dy 0)
|
||||
+
|
||||
+test $? = 1 || fail=1
|
||||
+
|
||||
+Exit $fail
|
||||
--
|
||||
cgit v0.9.0.2
|
||||
30
grep-2.21-help-align.patch
Normal file
30
grep-2.21-help-align.patch
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
diff --git a/src/grep.c b/src/grep.c
|
||||
index e3461a7..50a9868 100644
|
||||
--- a/src/grep.c
|
||||
+++ b/src/grep.c
|
||||
@@ -1757,17 +1757,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 containing no match\n\
|
||||
+ -L, --files-without-match print only names of FILEs containing no match\n\
|
||||
-l, --files-with-matches print only names of FILEs containing matches\n\
|
||||
-c, --count print only a count of matching lines per FILE\n\
|
||||
-T, --initial-tab make tabs line up (if needed)\n\
|
||||
61
grep-2.21-man-fix-gs.patch
Normal file
61
grep-2.21-man-fix-gs.patch
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
diff --git a/doc/grep.in.1 b/doc/grep.in.1
|
||||
index b6362ee..5a1e3ea 100644
|
||||
--- a/doc/grep.in.1
|
||||
+++ b/doc/grep.in.1
|
||||
@@ -314,7 +314,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
|
||||
@@ -327,7 +327,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
|
||||
@@ -340,13 +340,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 8dbf86e..e3461a7 100644
|
||||
--- a/src/grep.c
|
||||
+++ b/src/grep.c
|
||||
@@ -1781,6 +1781,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\
|
||||
24
grep-2.21-recurse-behaviour-change-doc.patch
Normal file
24
grep-2.21-recurse-behaviour-change-doc.patch
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
diff --git a/doc/grep.in.1 b/doc/grep.in.1
|
||||
index 5a1e3ea..3f633ea 100644
|
||||
--- a/doc/grep.in.1
|
||||
+++ b/doc/grep.in.1
|
||||
@@ -478,6 +478,7 @@ Search only files whose base name matches
|
||||
.BR \-r ", " \-\^\-recursive
|
||||
Read all files under each directory, recursively,
|
||||
following symbolic links only if they are on the command line.
|
||||
+Note that if no file operand is given, grep searches the working directory.
|
||||
This is equivalent to the
|
||||
.B "\-d recurse"
|
||||
option.
|
||||
diff --git a/doc/grep.texi b/doc/grep.texi
|
||||
index da9a1be..63016bd 100644
|
||||
--- a/doc/grep.texi
|
||||
+++ b/doc/grep.texi
|
||||
@@ -698,6 +698,7 @@ For each directory operand,
|
||||
read and process all files in that directory, recursively.
|
||||
Follow symbolic links on the command line, but skip symlinks
|
||||
that are encountered recursively.
|
||||
+Note that if no file operand is given, grep searches the working directory.
|
||||
This is the same as the @samp{--directories=recurse} option.
|
||||
|
||||
@item -R
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
diff --git a/tests/Makefile.am b/tests/Makefile.am
|
||||
index 223088f..315ced7 100644
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -195,7 +195,6 @@ TESTS = \
|
||||
word-delim-multibyte \
|
||||
word-multi-file \
|
||||
word-multibyte \
|
||||
- write-error-msg \
|
||||
y2038-vs-32-bit \
|
||||
yesno \
|
||||
z-anchor-newline
|
||||
diff --git a/tests/Makefile.in b/tests/Makefile.in
|
||||
index 3270d30..33dcd8a 100644
|
||||
--- a/tests/Makefile.in
|
||||
+++ b/tests/Makefile.in
|
||||
@@ -2729,7 +2729,6 @@ TESTS = \
|
||||
word-delim-multibyte \
|
||||
word-multi-file \
|
||||
word-multibyte \
|
||||
- write-error-msg \
|
||||
y2038-vs-32-bit \
|
||||
yesno \
|
||||
z-anchor-newline
|
||||
@@ -3970,13 +3969,6 @@ word-multibyte.log: word-multibyte
|
||||
--log-file $$b.log --trs-file $$b.trs \
|
||||
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||
"$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||
-write-error-msg.log: write-error-msg
|
||||
- @p='write-error-msg'; \
|
||||
- b='write-error-msg'; \
|
||||
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
||||
- --log-file $$b.log --trs-file $$b.trs \
|
||||
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||
- "$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||
y2038-vs-32-bit.log: y2038-vs-32-bit
|
||||
@p='y2038-vs-32-bit'; \
|
||||
b='y2038-vs-32-bit'; \
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
diff --git a/src/grep.c b/src/grep.c
|
||||
index a530988..b6f6ee3 100644
|
||||
--- a/src/grep.c
|
||||
+++ b/src/grep.c
|
||||
@@ -2023,7 +2023,8 @@ 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=GLOB search only files that match GLOB (a file pattern)"
|
||||
@@ -2033,7 +2034,7 @@ Output control:\n\
|
||||
--exclude-dir=GLOB skip directories that match GLOB\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\
|
||||
3637
grep-keyring.gpg
3637
grep-keyring.gpg
File diff suppressed because it is too large
Load diff
359
grep.spec
359
grep.spec
|
|
@ -1,43 +1,32 @@
|
|||
%define _bindir /bin
|
||||
|
||||
Summary: Pattern matching utilities
|
||||
Name: grep
|
||||
Version: 3.12
|
||||
Release: 2%{?dist}
|
||||
License: GPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later AND LGPL-2.0-or-later AND GFDL-1.3-no-invariants-or-later
|
||||
URL: https://www.gnu.org/software/grep/
|
||||
|
||||
Source0: https://ftp.gnu.org/pub/gnu/%{name}/%{name}-%{version}.tar.xz
|
||||
Source1: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz.sig
|
||||
Source2: https://savannah.gnu.org/project/release-gpgkeys.php?group=grep&download=1'#/grep-keyring.gpg
|
||||
Source3: colorgrep.sh
|
||||
Source4: colorgrep.csh
|
||||
Source5: GREP_COLORS
|
||||
Source6: grepconf.sh
|
||||
|
||||
Version: 2.21
|
||||
Release: 3%{?dist}
|
||||
License: GPLv3+
|
||||
Group: Applications/Text
|
||||
Source: ftp://ftp.gnu.org/pub/gnu/grep/grep-%{version}.tar.xz
|
||||
Source1: colorgrep.sh
|
||||
Source2: colorgrep.csh
|
||||
Source3: GREP_COLORS
|
||||
# upstream ticket 39444
|
||||
Patch0: grep-2.21-man-fix-gs.patch
|
||||
# upstream ticket 39445
|
||||
Patch: grep-3.5-help-align.patch
|
||||
# upstream ticket 77800
|
||||
Patch: grep-3.12-test-write-error-msg-drop.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: pcre2-devel
|
||||
BuildRequires: texinfo
|
||||
BuildRequires: gettext
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
|
||||
# temporal for the gnulib patch
|
||||
BuildRequires: gettext-devel
|
||||
|
||||
Buildrequires: glibc-all-langpacks
|
||||
BuildRequires: perl(FileHandle)
|
||||
BuildRequires: make
|
||||
BuildRequires: gnupg2
|
||||
Patch1: grep-2.21-help-align.patch
|
||||
# fix buffer overrun for grep -F, rhbz#1183653
|
||||
Patch2: grep-2.21-buf-overrun-fix.patch
|
||||
# backported from upstream
|
||||
# http://git.savannah.gnu.org/cgit/grep.git/commit/?id=c8b9364d5900a40809827aee6cc53705073278f6
|
||||
Patch3: grep-2.21-recurse-behaviour-change-doc.patch
|
||||
URL: http://www.gnu.org/software/grep/
|
||||
Requires(post): /sbin/install-info
|
||||
Requires(preun): /sbin/install-info
|
||||
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
||||
BuildRequires: pcre-devel >= 3.9-10, texinfo, gettext
|
||||
BuildRequires: autoconf automake
|
||||
# https://fedorahosted.org/fpc/ticket/174
|
||||
Provides: bundled(gnulib)
|
||||
# for backward compatibility (rhbz#1540485)
|
||||
Provides: /bin/grep
|
||||
Provides: /bin/fgrep
|
||||
Provides: /bin/egrep
|
||||
|
||||
%description
|
||||
The GNU versions of commonly used grep utilities. Grep searches through
|
||||
|
|
@ -47,8 +36,13 @@ prints the matching lines. GNU's grep utilities include grep, egrep and fgrep.
|
|||
GNU grep is needed by many scripts, so it shall be installed on every system.
|
||||
|
||||
%prep
|
||||
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
||||
%autosetup -p1
|
||||
%setup -q
|
||||
%patch0 -p1 -b .man-fix-gs
|
||||
%patch1 -p1 -b .help-align
|
||||
%patch2 -p1 -b .buf-overrun-fix
|
||||
%patch3 -p1 -b .recurse-behaviour-change-doc
|
||||
|
||||
chmod 755 tests/kwset-abuse
|
||||
|
||||
%build
|
||||
%global BUILD_FLAGS $RPM_OPT_FLAGS
|
||||
|
|
@ -60,25 +54,39 @@ GNU grep is needed by many scripts, so it shall be installed on every system.
|
|||
%global BUILD_FLAGS %{BUILD_FLAGS} -mlong-double-64
|
||||
%endif
|
||||
|
||||
%configure --without-included-regex --disable-silent-rules CFLAGS="%{BUILD_FLAGS}"
|
||||
%make_build
|
||||
%configure --without-included-regex CPPFLAGS="-I%{_includedir}/pcre" \
|
||||
CFLAGS="%{BUILD_FLAGS}"
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
%make_install
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
make %{?_smp_mflags} DESTDIR=$RPM_BUILD_ROOT install
|
||||
gzip $RPM_BUILD_ROOT%{_infodir}/grep*
|
||||
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
||||
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
|
||||
install -pm 644 %{SOURCE3} %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
|
||||
install -pm 644 %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}
|
||||
install -Dpm 755 %{SOURCE6} $RPM_BUILD_ROOT%{_libexecdir}/grepconf.sh
|
||||
install -pm 644 %{SOURCE1} %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
|
||||
install -pm 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}
|
||||
|
||||
%find_lang %name
|
||||
|
||||
%check
|
||||
make check
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
%post
|
||||
/sbin/install-info --quiet --info-dir=%{_infodir} %{_infodir}/grep.info.gz || :
|
||||
|
||||
%preun
|
||||
if [ $1 = 0 ]; then
|
||||
/sbin/install-info --quiet --info-dir=%{_infodir} --delete %{_infodir}/grep.info.gz || :
|
||||
fi
|
||||
|
||||
%files -f %{name}.lang
|
||||
%doc AUTHORS THANKS TODO NEWS README
|
||||
%defattr(-,root,root,-)
|
||||
%doc ABOUT-NLS AUTHORS THANKS TODO NEWS README ChangeLog
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING
|
||||
|
||||
%{_bindir}/*
|
||||
|
|
@ -86,286 +94,31 @@ make check
|
|||
%config(noreplace) %{_sysconfdir}/GREP_COLORS
|
||||
%{_infodir}/*.info*.gz
|
||||
%{_mandir}/*/*
|
||||
%{_libexecdir}/grepconf.sh
|
||||
|
||||
%changelog
|
||||
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.12-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Mon Apr 14 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 3.12-1
|
||||
- New version
|
||||
Resolves: rhbz#2358901
|
||||
|
||||
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.11-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.11-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Mon Apr 29 2024 Lukáš Zaoral <lzaoral@redhat.com> - 3.11-8
|
||||
- remove redundant dependency on libsigsegv (RHEL-34664)
|
||||
|
||||
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.11-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.11-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Thu Aug 10 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.11-5
|
||||
- Updated SPDX license expression
|
||||
|
||||
* Wed Aug 9 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.11-4
|
||||
- Converted license to SPDX
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.11-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Thu Jul 13 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.11-2
|
||||
- Fixed egrep/fgrep aliases
|
||||
Resolves: rhbz#2215713
|
||||
|
||||
* Tue Jun 6 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.11-1
|
||||
- New version
|
||||
Resolves: rhbz#2181063
|
||||
|
||||
* Thu Mar 23 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.10-1
|
||||
- New version
|
||||
Resolves: rhbz#2181063
|
||||
|
||||
* Tue Mar 7 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.9-1
|
||||
- New version
|
||||
Resolves: rhbz#2175526
|
||||
- Added sources verification
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.8-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Tue Jan 3 2023 Florian Weimer <fweimer@redhat.com> - 3.8-2
|
||||
- Fix C99 compatibility issue in the configure script
|
||||
|
||||
* Mon Sep 5 2022 Jaroslav Škarvada <jskarvad@redhat.com> - 3.8-1
|
||||
- New version
|
||||
Resolves: rhbz#2123935
|
||||
- Switchd to pcre2
|
||||
Resolves: rhbz#1755491
|
||||
|
||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Fri Apr 8 2022 Davide Cavalca <dcavalca@fedoraproject.org> - 3.7-3
|
||||
- Gate perl-FileHandle dependency to f33 onwards
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.7-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Mon Aug 16 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 3.7-1
|
||||
- New version
|
||||
Resolves: rhbz#1993631
|
||||
- Temporarily switch to the included regex until glibc bug (glibc#11053)
|
||||
is fixed
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Wed Jun 23 2021 Jaroslav Škarvada <jskarvad@redhat.com> - 3.6-3
|
||||
- Fixed stack overflow detection
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.6-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Mon Nov 9 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 3.6-1
|
||||
- New version
|
||||
Resolves: rhbz#1895797
|
||||
|
||||
* Wed Sep 30 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 3.5-1
|
||||
- New version
|
||||
Resolves: rhbz#1883086
|
||||
|
||||
* Wed Aug 26 2020 Adam Williamson <awilliam@redhat.com> - 3.4-5
|
||||
- Backport fix for upstream #28105 to fix zgrep
|
||||
Resolves: rhbz#1872913
|
||||
- Remove some non-portable tests that fail on armv7hl (Paul Eggert)
|
||||
Resolves: rhbz#1863830
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-4
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.4-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 3.4-2
|
||||
- Use make macros
|
||||
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
||||
|
||||
* Wed Apr 1 2020 Jaroslav Škarvada <jskarvad@redhat.com> - 3.4-1
|
||||
- New version
|
||||
Resolves: rhbz#1818417
|
||||
- Added all glibc langpacks to allow more locale sensitive tests to run
|
||||
- Added perl-FileHandle requirement for the filename-lineno.pl test
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.3-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Wed Apr 24 2019 Björn Esser <besser82@fedoraproject.org> - 3.3-2
|
||||
- Remove hardcoded gzip suffix from GNU info pages
|
||||
|
||||
* Wed Apr 10 2019 Jaroslav Škarvada <jskarvad@redhat.com> - 3.3-1
|
||||
- New version
|
||||
Resolves: rhbz#1698044
|
||||
- Updated patches
|
||||
- Dropped glibc-2.28-fix patch (not needed)
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Thu Aug 9 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 3.1-8
|
||||
- Fixed FTBFS with glibc-2.28
|
||||
Resolves: rhbz#1604263
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Tue Jun 19 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 3.1-6
|
||||
- Dropped install-info
|
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Fri Feb 2 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 3.1-4
|
||||
- Moved binaries to /usr/bin
|
||||
Resolves: rhbz#1540485
|
||||
|
||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Mon Jul 3 2017 Jaroslav Škarvada <jskarvad@redhat.com> - 3.1-1
|
||||
- New version
|
||||
Related: rhbz#1421129
|
||||
- Updated patches
|
||||
|
||||
* Fri Feb 10 2017 Jaroslav Škarvada <jskarvad@redhat.com> - 3.0-1
|
||||
- New version
|
||||
Resolves: rhbz#1421129
|
||||
|
||||
* Wed Feb 8 2017 Jaroslav Škarvada <jskarvad@redhat.com> - 2.28-1
|
||||
- New version
|
||||
Resolves: rhbz#1419921
|
||||
- De-fuzzified patches
|
||||
|
||||
* Wed Dec 7 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.27-1
|
||||
- New version
|
||||
Resolves: rhbz#1402379
|
||||
- De-fuzzified patches
|
||||
|
||||
* Wed Oct 5 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.26-2
|
||||
- Re-enabled 'make check', glibc seems fixed
|
||||
|
||||
* Mon Oct 3 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.26-1
|
||||
- New version
|
||||
Resolves: rhbz#1381203
|
||||
- Disabled 'make check' due to glibc bug rhbz#1381582
|
||||
|
||||
* Fri Apr 22 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.25-1
|
||||
- New version
|
||||
Resolves: rhbz#1329627
|
||||
- De-fuzzified patches
|
||||
|
||||
* Fri Mar 11 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.24-1
|
||||
- New version
|
||||
Resolves: rhbz#1316890
|
||||
|
||||
* Fri Feb 5 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.23-1
|
||||
- New version
|
||||
Resolves: rhbz#1305035
|
||||
- Dropped disable-performance-related-tests, better-encoding-errors-handling,
|
||||
Pc-consistent-results, and test-pcre-count-fix patches (all upstreamed)
|
||||
- De-fuzzified man-fx-gs, and help-align patches
|
||||
|
||||
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.22-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Tue Jan 12 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.22-6
|
||||
- Fixed pcre-count test on secondary architectures
|
||||
(byt test-pcre-count-fix patch)
|
||||
Resolves: rhbz#1296842
|
||||
|
||||
* Wed Jan 6 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.22-5
|
||||
- Used latest upstream patch for bug 1269014 to fix regression,
|
||||
fixed order of patches
|
||||
Resolves: rhbz#1269014
|
||||
|
||||
* Tue Jan 5 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 2.22-4
|
||||
- Improved encoding errors handling (by better-encoding-errors-handling patch)
|
||||
Resolves: rhbz#1219141
|
||||
- kwset-abuse test no longer needs to be explicitly set executable
|
||||
|
||||
* Tue Dec 1 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.22-3
|
||||
- Fixed grep to be consistent in 'grep -Pc' and 'grep -P | wc -l'
|
||||
Resolves: rhbz#1269014
|
||||
|
||||
* Thu Nov 5 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.22-2
|
||||
- Disabled performance related tests
|
||||
(by disable-performance-related-tests patch), patch backported from upstream
|
||||
- Dropped disable-long-pattern-perf-test patch (not needed, covered by
|
||||
previous patch)
|
||||
Resolves: rhbz#1278428
|
||||
|
||||
* Mon Nov 2 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.22-1
|
||||
- New version
|
||||
Resolves: rhbz#1277113
|
||||
- Dropped buf-overrun-fix, recurse-behaviour-change-doc, gnulib
|
||||
patches (all upstreamed)
|
||||
- Minor spec cleanup to be consistent with whitespaces
|
||||
|
||||
* Sun Aug 2 2015 Peter Robinson <pbrobinson@fedoraproject.org> 2.21-7
|
||||
- Minor spec cleanups and modifications
|
||||
- Drop Changelog, details in NEWS
|
||||
- Add gnulib patch to fix FTBFS with perl 5.22
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.21-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Tue Apr 7 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.21-5
|
||||
* Tue Apr 7 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.21-3
|
||||
- Documented change in behaviour of recurse option
|
||||
Resolves: rhbz#1178305
|
||||
|
||||
* Sat Feb 21 2015 Till Maas <opensource@till.name> - 2.21-4
|
||||
- Rebuilt for Fedora 23 Change
|
||||
https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
|
||||
|
||||
* Tue Jan 20 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.21-3
|
||||
* Tue Jan 20 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 2.21-2
|
||||
- Fixed buffer overrun for grep -F
|
||||
Resolves: rhbz#1183653
|
||||
|
||||
* Tue Dec 9 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.21-2
|
||||
- Disable silent rules to make the build process more verbose
|
||||
|
||||
* Tue Nov 25 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.21-1
|
||||
- New version
|
||||
Resolves: rhbz#1167657
|
||||
- De-fuzzified patches
|
||||
- Dropped pcre-backported-fixes patch (not needed)
|
||||
|
||||
* Fri Nov 14 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.20-7
|
||||
* Fri Nov 14 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.20-6
|
||||
- Backported more PCRE fixes (by pcre-backported-fixes patch)
|
||||
- Dropped pcre-invalid-utf8-fix patch, handled by pcre-backported-fixes patch
|
||||
|
||||
* Tue Nov 11 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.20-6
|
||||
* Tue Nov 11 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.20-5
|
||||
- Fixed invalid UTF-8 byte sequence error in PCRE mode
|
||||
(by pcre-invalid-utf8-fix patch)
|
||||
Resolves: rhbz#1161832
|
||||
|
||||
* Wed Aug 20 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.20-5
|
||||
- Added script to check whether grep is coloured
|
||||
Resolves: rhbz#1034631
|
||||
|
||||
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.20-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
|
|
|
|||
11
grepconf.sh
11
grepconf.sh
|
|
@ -1,11 +0,0 @@
|
|||
#!/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
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
summary: Test plan with all Fedora tests
|
||||
discover:
|
||||
how: fmf
|
||||
url: https://src.fedoraproject.org/tests/grep.git
|
||||
execute:
|
||||
how: tmt
|
||||
3
sources
3
sources
|
|
@ -1,2 +1 @@
|
|||
SHA512 (grep-3.12.tar.xz) = c54b4db5a8b9afe098c088decd94977746305284d716666a60bac82b4edc0fae4acf828970b5b6fc7d58ecd549f638e17e6958f33a71fedcc7d7415b9228b161
|
||||
SHA512 (grep-3.12.tar.xz.sig) = 333755fd9e5879436789a19e9593667d6fb96c2d1b876a1c391eb9cd75d10bb7fbc10215db9838280e6006790c818ef4583b1ae22318a833a5b69264ca15dbf1
|
||||
43c48064d6409862b8a850db83c8038a grep-2.21.tar.xz
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue