+Thu Feb 25 21:32:34 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * fixinc.wrap: Also handle struct queue in sys/stream.h.
+ * fixinc.svr4: Likewise.
+
Thu Feb 25 21:23:06 1999 Jason Merrill <jason@yorick.cygnus.com>
* dwarf2out.c (scope_die_for): Set scope_die to comp_unit_die
#! /bin/sh
# Install modified versions of certain ANSI-incompatible
# native System V Release 4 system include files.
-# Copyright (C) 1994, 1996, 1997, 1998 Free Software Foundation, Inc.
+# Copyright (C) 1994, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
# Contributed by Ron Guilmette (rfg@monkeys.com).
#
# This file is part of GNU CC.
rm -f /tmp/$base
fi
+# Similarly for struct queue in sys/stream.h.
+file=sys/stream.h
+base=`basename $file`
+if [ -r ${LIB}/$file ]; then
+ file_to_fix=${LIB}/$file
+else
+ if [ -r ${INPUT}/$file ]; then
+ file_to_fix=${INPUT}/$file
+ else
+ file_to_fix=""
+ fi
+fi
+if [ \! -z "$file_to_fix" ]; then
+ echo Checking $file_to_fix
+ sed -e '/struct[ ]*queue/i\
+#ifdef __cplusplus\
+#define queue __stream_queue\
+#endif'\
+ -e '/struct[ ]*queue/a\
+#ifdef __cplusplus\
+#undef queue\
+#endif' $file_to_fix > /tmp/$base
+ if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
+ true
+ else
+ echo Fixed $file_to_fix
+ mkdir -p $LIB/`dirname $file`
+ rm -f ${LIB}/$file
+ cp /tmp/$base ${LIB}/$file
+ chmod a+r ${LIB}/$file
+ fi
+ rm -f /tmp/$base
+fi
+
echo 'Removing unneeded directories:'
cd $LIB
files=`find . -type d -print | sort -r`
fi
fi
+# Similarly for struct queue in sys/stream.h.
+file=sys/stream.h
+if [ -r $INPUT/$file ]; then
+ echo Checking $INPUT/$file
+ if grep 'struct[ ]*queue' $INPUT/$file >/dev/null
+ then
+ echo Fixed $file
+ mkdir -p $LIB/`dirname $file`
+ rm -f $LIB/$file
+ cat <<'__EOF__' >$LIB/$file
+#ifndef _SYS_STREAM_H_WRAPPER
+#ifdef __cplusplus
+# define queue __stream_queue
+#endif
+#include_next <sys/stream.h>
+#ifdef __cplusplus
+# undef queue
+#endif
+#define _SYS_STREAM_H_WRAPPER
+#endif /* _SYS_STREAM_H_WRAPPER */
+__EOF__
+ # Define _SYS_STREAM_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 <sys/stream.h>.
+ chmod a+r $LIB/$file
+ fi
+fi
+
# Avoid the definition of the bool type in the Solaris 2.x curses.h when using
# g++, since it's now an official type in the C++ language.
file=curses.h