On Mon, Jun 27, 2022 at 2:10 AM Xi Ruoyao via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > egrep/fgrep has been deprecated in favor of grep -E/-F for a long time, > and the next grep release (3.8 or 4.0) will print a warning if egrep or > fgrep is used. Stop using egrep and fgrep so we won't see the warning. > > But, we can't simply replace egrep to grep -E or fgrep to grep -F or the > build will break with some non-GNU grep implementations (lacking -E or > -F support). autoconf documentation suggests to use AC_PROG_EGREP and > $EGREP or AC_PROG_FGREP and FGREP, but doing so is too complicated for > fixincludes. > > So we simply adjust the patterns for a plain grep, instead of relying on > the behavior of grep -E/-F. > > Q: Why "[ \t][ \t]*" instead of "[ \t]\\+"? > A: POSIX does not allow escaping + in BRE. > > fixincludes/ChangeLog: > > * fixinc.in: Use grep instead of egrep. > * inclhack.def: Use grep instead of egrep, and adjust an > regular expression to make it a BRE. > * genfixes: Use grep instead of egrep, and escape "." in the > pattern. > * fixincl.x: Regenerate. > --- > fixincludes/fixinc.in | 2 +- > fixincludes/fixincl.x | 10 +++++----- > fixincludes/genfixes | 2 +- > fixincludes/inclhack.def | 6 +++--- > 4 files changed, 10 insertions(+), 10 deletions(-) > > diff --git a/fixincludes/fixinc.in b/fixincludes/fixinc.in > index 0bd8027a554..a4cd3d0fbb4 100755 > --- a/fixincludes/fixinc.in > +++ b/fixincludes/fixinc.in > @@ -448,7 +448,7 @@ while [ $# != 0 ]; do > chmod a+r $3 2>/dev/null > if test $VERBOSE -gt 2 > then echo Copied $2 ; fi > - for include in `egrep '^[ ]*#[ ]*include[ ]*"[^/]' $3 | > + for include in `grep '^[ ]*#[ ]*include[ ]*"[^/]' $3 | > sed -e 's/^[ ]*#[ ]*include[ ]*"\([^"]*\)".*$/\1/'` > do > dir=`echo $2 | sed -e s'|/[^/]*$||'` > diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x > index bad490453b7..c9b4cf504f2 100644 > --- a/fixincludes/fixincl.x > +++ b/fixincludes/fixincl.x > @@ -2,11 +2,11 @@ > * > * DO NOT EDIT THIS FILE (fixincl.x) > * > - * It has been AutoGen-ed February 27, 2022 at 07:47:03 PM by AutoGen > 5.18.16 > + * It has been AutoGen-ed June 25, 2022 at 12:44:14 PM by AutoGen 5.18.16 > * From the definitions inclhack.def > * and the template file fixincl > */ > -/* DO NOT SVN-MERGE THIS FILE, EITHER Sun Feb 27 19:47:03 UTC 2022 > +/* DO NOT SVN-MERGE THIS FILE, EITHER Sat Jun 25 12:44:14 CST 2022
So, this is kind of a tangent, but since GCC has migrated from SVN to git, perhaps it's time to update this comment? > * > * You must regenerate it. Use the ./genfixes script. > * > @@ -6547,7 +6547,7 @@ static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = { > * Fix Command Arguments for Math_Huge_Val_From_Dbl_Max > */ > static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c", > - "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed > 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\ > + "\tdbl_max_def=`grep 'define[ \t][ \t]*DBL_MAX[ \t][ \t]*.*' float.h | > sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\ > \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\ > \tthen sed -e '/define[ \t]*HUGE_VAL[ > \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\ > \telse cat\n\ > @@ -10402,9 +10402,9 @@ tSCC zVxworks_Needs_VxworksSelect0[] = > tSCC zVxworks_Needs_VxworksTest0[] = > " -r types/vxTypesOld.h"; > tSCC zVxworks_Needs_VxworksTest1[] = > - " -n \"`egrep '#include' $file`\""; > + " -n \"`grep '#include' $file`\""; > tSCC zVxworks_Needs_VxworksTest2[] = > - " -n \"`egrep ULONG $file`\""; > + " -n \"`grep ULONG $file`\""; > > #define VXWORKS_NEEDS_VXWORKS_TEST_CT 4 > static tTestDesc aVxworks_Needs_VxworksTests[] = { > diff --git a/fixincludes/genfixes b/fixincludes/genfixes > index 47aad01289d..3a4c05c832b 100755 > --- a/fixincludes/genfixes > +++ b/fixincludes/genfixes > @@ -58,7 +58,7 @@ done > AG="autogen $AG" > set -e > > -if [ -z "`${AG} -v | fgrep ' 5.'`" ] > +if [ -z "`${AG} -v | grep ' 5\.'`" ] > then > echo "AutoGen appears to be out of date or not correctly installed." > echo "Please download and install from:" > diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def > index 7605ac89aa2..080bbc010dc 100644 > --- a/fixincludes/inclhack.def > +++ b/fixincludes/inclhack.def > @@ -3274,7 +3274,7 @@ fix = { > * If we do, we will replace the one in math.h with that one. > */ > > - "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h " > + "\tdbl_max_def=`grep 'define[ \t][ \t]*DBL_MAX[ \t][ \t]*.*' float.h " > "| sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n" > > "\tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n" > @@ -5266,8 +5266,8 @@ fix = { > hackname = vxworks_needs_vxworks; > files = sys/stat.h; > test = " -r types/vxTypesOld.h"; > - test = " -n \"`egrep '#include' $file`\""; > - test = " -n \"`egrep ULONG $file`\""; > + test = " -n \"`grep '#include' $file`\""; > + test = " -n \"`grep ULONG $file`\""; > select = "#[ \t]define[ \t]+__INCstath"; > > sed = "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n" > -- > 2.36.1 > >