From d21415f07473fb08d00a08ed307b5ced28ef2f9c Mon Sep 17 00:00:00 2001 From: Robert Lipe Date: Thu, 3 Sep 1998 09:43:46 +0000 Subject: [PATCH] fixinc.sco: Borrow code to wrap 'bool' typedefs from tinfo.h and term.h from fixinc.wrap. * fixinc.sco: Borrow code to wrap 'bool' typedefs from tinfo.h and term.h from fixinc.wrap. From-SVN: r22206 --- gcc/ChangeLog | 5 +++++ gcc/fixinc.sco | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9bf58169908..0d89f27f70d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Sep 3 11:41:40 1998 Robert Lipe + + * fixinc.sco: Borrow code to wrap 'bool' typedefs from tinfo.h + and term.h from fixinc.wrap. + Thu Sep 3 09:47:31 1998 Kaveh R. Ghazi * aclocal.m4 (GCC_HEADER_STRING): New macro to detect if it is diff --git a/gcc/fixinc.sco b/gcc/fixinc.sco index c0ca7826d7f..205a8822af1 100755 --- a/gcc/fixinc.sco +++ b/gcc/fixinc.sco @@ -369,6 +369,39 @@ extern "C"\ fi fi +# This fix has the regex modified from the from fixinc.wrap +# Avoid the definition of the bool type in the following files when using +# g++, since it's now an official type in the C++ language. +for file in term.h tinfo.h +do + if [ -r $INPUT/$file ]; then + echo Checking $INPUT/$file + w='[ ]' + if grep "typedef$w.*char$w.*bool$w*;" $INPUT/$file >/dev/null + then + echo Fixed $file + rm -f $LIB/$file + cat <<'__EOF__' >$LIB/$file +#ifndef _CURSES_H_WRAPPER +#ifdef __cplusplus +# define bool __curses_bool_t +#endif +#include_next +#ifdef __cplusplus +# undef bool +#endif +#define _CURSES_H_WRAPPER +#endif /* _CURSES_H_WRAPPER */ +__EOF__ + # Define _CURSES_H_WRAPPER at the end of the wrapper, not the start, + # so that if #include_next gets another instance of the wrapper, + # this will follow the #include_next chain until we arrive at + # the real . + chmod a+r $LIB/$file + fi + fi +done + echo 'Removing unneeded directories:' cd $LIB files=`find . -type d -print | sort -r`