diff options
author | Bill Cox <bill@gnu.org> | 1994-05-12 22:51:00 +0000 |
---|---|---|
committer | Bill Cox <bill@gnu.org> | 1994-05-12 22:51:00 +0000 |
commit | 09130b7890aad8fbe0dc41ac613d2e4a4368fa4a (patch) | |
tree | 61c1367f5c196bdc9bb3cac225c7b294092b852c | |
parent | c92d992a818973ef3395557f9bf5f2bd9a9ee598 (diff) | |
download | gcc-09130b7890aad8fbe0dc41ac613d2e4a4368fa4a.zip gcc-09130b7890aad8fbe0dc41ac613d2e4a4368fa4a.tar.gz gcc-09130b7890aad8fbe0dc41ac613d2e4a4368fa4a.tar.bz2 |
Various Lynx-related fixups. To math.h, string.h and curses.h.
From-SVN: r7286
-rwxr-xr-x | gcc/fixincludes | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/gcc/fixincludes b/gcc/fixincludes index d602bc5..512cc7c 100755 --- a/gcc/fixincludes +++ b/gcc/fixincludes @@ -1398,6 +1398,21 @@ if [ -r ${LIB}/$file ]; then '\ ${LIB}/$file > ${LIB}/${file}.sed rm -f ${LIB}/$file; mv ${LIB}/${file}.sed ${LIB}/$file + + # In addition, copy the definition of DBL_MAX from float.h + # if math.h requires one. The Lynx math.h requires it. + if egrep '#define[ ]*HUGE_VAL[ ]+DBL_MAX' $file >/dev/null 2>&1; then + if egrep '#define[ ]+DBL_MAX[ ]+' $file >/dev/null 2>&1; then + true; + else + dbl_max_def=`egrep 'define[ ]+DBL_MAX[ ]+.*' float.h 2>/dev/null` + if [ "$dbl_max_def" != "" ]; then + dbl_max_def=`echo $dbl_max_def | sed 's/.*define[ ]*DBL_MAX[ ]*//'` + sed -e "/define[ ]HUGE_VAL[ ]DBL_MAX/s/DBL_MAX/$dbl_max_def/" \ + ${LIB}/$file > ${LIB}/${file}.sed + fi + fi + fi if cmp $file ${LIB}/$file >/dev/null 2>&1; then echo Deleting ${LIB}/$file\; no fixes were needed. rm -f ${LIB}/$file @@ -1422,6 +1437,42 @@ if [ -r ${LIB}/$file ]; then fi fi +# Correct the return type for strlen in string.h on Lynx. +file=string.h +if [ -r $file ] && [ ! -r ${LIB}/$file ]; then + cp $file ${LIB}/$file >/dev/null 2>&1 || echo "Can't copy $file" + chmod +w ${LIB}/$file 2>/dev/null + chmod a+r ${LIB}/$file 2>/dev/null +fi + +if [ -r ${LIB}/$file ]; then + echo Fixing $file + sed -e 's/extern[ ]*int[ ]*strlen();/extern unsigned int strlen();/' \ + ${LIB}/$file > ${LIB}/${file}.sed + rm -f ${LIB}/$file; mv ${LIB}/${file}.sed ${LIB}/$file + if cmp $file ${LIB}/$file >/dev/null 2>&1; then + rm -f ${LIB}/$file + fi +fi + +# Delete the '#define void int' line from curses.h on Lynx +file=curses.h +if [ -r $file ] && [ ! -r ${LIB}/$file ]; then + cp $file ${LIB}/$file >/dev/null 2>&1 || echo "Can't copy $file" + chmod +w ${LIB}/$file 2>/dev/null + chmod a+r ${LIB}/$file 2>/dev/null +fi + +if [ -r ${LIB}/$file ]; then + echo Fixing $file + sed -e '/#define[ ][ ]*void[ ]int/d' \ + ${LIB}/$file > ${LIB}/${file}.sed + rm -f ${LIB}/$file; mv ${LIB}/${file}.sed ${LIB}/$file + if cmp $file ${LIB}/$file >/dev/null 2>&1; then + rm -f ${LIB}/$file + fi +fi + # Fix incorrect S_IF* definitions on m88k-sysv3. file=sys/stat.h if [ -r $file ] && [ ! -r ${LIB}/$file ]; then |