Sync from SUSE:SLFO:Main grep revision 48d6a4315595b9ef62be92d59dd9c78a

This commit is contained in:
Adrian Schröter 2024-05-03 13:17:46 +02:00
commit 833d3e6a29
9 changed files with 4876 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

9
efgrep-warning.patch Normal file
View File

@ -0,0 +1,9 @@
Index: grep-3.8/src/egrep.sh
===================================================================
--- grep-3.8.orig/src/egrep.sh
+++ grep-3.8/src/egrep.sh
@@ -1,4 +1,2 @@
#!@SHELL@
-cmd=${0##*/}
-echo "$cmd: warning: $cmd is obsolescent; using @grep@ @option@" >&2
exec @grep@ @option@ "$@"

BIN
grep-3.11.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

16
grep-3.11.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEFV0/xQDINEhtHupnf9n8ywAL7u4FAmRfTKwACgkQf9n8ywAL
7u6GLhAAlhO11xMM5IG9VbQoT3Qa3i+T3f6r34N7LWUMDJE2WUJojujuQ7Ac78fU
mxm0Z+t6+vaJzrmNtnotmhg2LK7rWVnase64o0t0GB3/gZumJlSHL0jQzKvaKoGz
vwE4yfRRN5uM284Xmb/k8EyamG+3oyoxWk/Ml13vouEPxPbu0Oe2vlChl8tL0g/W
Wi4x8ue32ZipBse0QyE3l/fxnOQ8MCwVqzVr+psGIa6vmSMhkuDfEprTAfZLVRbN
AzsZrZ1BEtlTzitTMxWejTwI/4Eq2FguAJXgEESaPBHhX+XRC3ArXNtycTcWmqB1
wNwDLz3bpzns0g24WJ3B8ahY0IxzXfbqkUEy4MNVClsz4+iLUlbQIB48AZbKL9Bo
PhmsJoxDFI7D2Cam2a6iK6aprtFOal+gTRqPmdvqCgxShvZxgndASD0SKc+0CAik
FkNz12NDp5hYZDSUO+uSiTKaVzlYCKqLnPg0CVw++u2H+QsP5BgqJr3tkc5PwXmX
TfwFWTx4h2xasoBe4RzFw4RMRejtDVaNUSAoSj6FhHcW7NYYJeURZb/0FpAwWov1
otjDCU0NzpraAB/xk79uwPxp8InfEM6GYPlEi2hkPQBT0HZY1MZYaIzW0h9lLxlU
vr8Dvr9uUlNIHse7mWc1zm1dFwOjWwCmg6Lfaj8DebAvEHI5gNQ=
=9t3y
-----END PGP SIGNATURE-----

2
grep-rpmlintrc Normal file
View File

@ -0,0 +1,2 @@
# the package itself still contains the compatibility links
addFilter("grep.* deprecated-grep .*[ef]grep")

1073
grep.changes Normal file

File diff suppressed because it is too large Load Diff

3637
grep.keyring Normal file

File diff suppressed because it is too large Load Diff

99
grep.spec Normal file
View File

@ -0,0 +1,99 @@
#
# spec file for package grep
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: grep
Version: 3.11
Release: 0
Summary: Print lines matching a pattern
License: GPL-3.0-or-later
Group: Productivity/Text/Utilities
URL: https://www.gnu.org/software/grep/
Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz
Source2: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz.sig
# Taken from https://savannah.gnu.org/project/release-gpgkeys.php?group=grep&download=1
Source3: %{name}.keyring
Source4: profile.sh
Source5: %{name}-rpmlintrc
Patch0: efgrep-warning.patch
BuildRequires: fdupes
BuildRequires: glibc-locale
BuildRequires: makeinfo
BuildRequires: pkgconfig(libpcre2-8)
Provides: base:%{_bindir}/grep
%description
The grep command searches one or more input files for lines containing a
match to a specified pattern. By default, grep prints the matching lines.
%lang_package
%prep
%autosetup -p1
%build
export CONFIG_SHELL=/bin/sh
%configure \
--disable-silent-rules \
%{nil}
%if 0%{?do_profiling}
%make_build CFLAGS="%{optflags} %{cflags_profile_generate}"
setarch -R sh %{SOURCE4} # profiling run
%make_build clean
%make_build CFLAGS="%{optflags} %{cflags_profile_feedback}"
%else
%make_build
%endif
%check
%if 0%{?qemu_user_space_build}
echo exit 77 > tests/stack-overflow
echo exit 77 > tests/pcre-jitstack
echo exit 77 > gnulib-tests/test-c-stack.sh
echo 'int main() { return 77; }' > gnulib-tests/test-sigsegv-catch-stackoverflow1.c
echo 'int main() { return 77; }' > gnulib-tests/test-sigsegv-catch-stackoverflow2.c
%endif
%make_build check
%install
%make_install
%if 0%{?suse_version} < 1550
install -d %{buildroot}/bin
ln -sf %{_bindir}/egrep %{buildroot}/bin/egrep
ln -sf %{_bindir}/fgrep %{buildroot}/bin/fgrep
ln -sf %{_bindir}/grep %{buildroot}/bin/grep
%endif
%fdupes -s %{buildroot}
%find_lang %{name}
%files
%license COPYING
%doc README AUTHORS NEWS THANKS TODO ChangeLog*
%if 0%{?suse_version} < 1550
/bin/egrep
/bin/fgrep
/bin/grep
%endif
%{_bindir}/egrep
%{_bindir}/fgrep
%{_bindir}/grep
%{_mandir}/man1/grep.1%{?ext_man}
%{_infodir}/grep.info%{?ext_info}
%files lang -f %{name}.lang
%changelog

14
profile.sh Normal file
View File

@ -0,0 +1,14 @@
#!/bin/sh
# profiling script for profile-guided-optimizations (PGO)
# must be fully deterministic in what it does for reproducible builds
# should cover most code for good PGO optimization benefit
# See https://github.com/bmwiedemann/theunreproduciblepackage/tree/master/pgo
# for background information on PGO reproducibility
grep=src/grep
t=COPYING
exec > /dev/null
for param in "" -v -i -h -H -l -L -q -n -Z -E -F -P -e -w -c -o; do
$grep $param "GNU" $t
$grep $param "G.*U" $t
done