]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - ncurses/base/MKlib_gen.sh
ncurses 6.2 - patch 20210807
[ncurses.git] / ncurses / base / MKlib_gen.sh
index b8a123eddfe6fc28e816c8925cc16d4c3bd223e7..b264eada02578f9455bb33cf94d20ec45ce6d118 100755 (executable)
@@ -2,10 +2,10 @@
 #
 # MKlib_gen.sh -- generate sources from curses.h macro definitions
 #
-# ($Id: MKlib_gen.sh,v 1.67 2020/08/16 16:05:57 tom Exp $)
+# ($Id: MKlib_gen.sh,v 1.69 2021/08/07 21:17:46 tom Exp $)
 #
 ##############################################################################
-# Copyright 2018,2020 Thomas E. Dickey                                       #
+# Copyright 2018-2020,2021 Thomas E. Dickey                                  #
 # Copyright 1998-2016,2017 Free Software Foundation, Inc.                    #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
@@ -69,14 +69,23 @@ USE="$3"
 
 # A patch discussed here:
 #      https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
+#
 # introduces spurious #line markers into the preprocessor output.  The result
 # appears in gcc 5.0 and (with modification) in 5.1, making it necessary to
 # determine if we are using gcc, and if so, what version because the proposed
 # solution uses a nonstandard option.
+#
+# As illustrated in
+#      https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60723
+#
+# gcc developers chose to ignore the problems with this, and summarized those
+# as "intriguing problems" in
+#      https://gcc.gnu.org/gcc-5/porting_to.html
+
 PRG=`echo "$1" | "$AWK" '{ sub(/^[     ]*/,""); sub(/[         ].*$/, ""); print; }' || exit 0`
 FSF=`("$PRG" --version 2>/dev/null || exit 0) | fgrep "Free Software Foundation" | head -n 1`
 ALL=`"$PRG" -dumpversion 2>/dev/null || exit 0`
-ONE=`echo "$ALL" | sed -e 's/\..*$//'`
+ONE=`echo "$ALL" | sed -e 's/[^0-9].*$//'`
 if test -n "$FSF" && test -n "$ALL" && test -n "$ONE" ; then
        if test "$ONE" -ge 5 ; then
                echo ".. adding -P option to work around $PRG $ALL" >&2