summaryrefslogtreecommitdiff
path: root/gcc/fixinc/fixinc.wrap
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/fixinc/fixinc.wrap')
-rwxr-xr-xgcc/fixinc/fixinc.wrap115
1 files changed, 0 insertions, 115 deletions
diff --git a/gcc/fixinc/fixinc.wrap b/gcc/fixinc/fixinc.wrap
deleted file mode 100755
index 4be9f13..0000000
--- a/gcc/fixinc/fixinc.wrap
+++ /dev/null
@@ -1,115 +0,0 @@
-#! /bin/sh
-# Create wrappers for include files instead of replacing them.
-#
-# This script is designed for systems whose include files can be fixed
-# by creating small wrappers around them.
-# An advantage of this method is that if the system include files are changed
-# (e.g. by OS upgrade), you need not re-run fixincludes.
-#
-# See README-fixinc for more information.
-
-# Directory in which to store the results.
-LIB=${1?"fixincludes: output directory not specified"}
-
-# Make sure it exists.
-if [ ! -d $LIB ]; then
- mkdir $LIB || exit 1
-fi
-
-ORIG_DIR=`${PWDCMD-pwd}`
-
-# Make LIB absolute if it is relative.
-# Don't do this if not necessary, since may screw up automounters.
-case $LIB in
-/*)
- ;;
-*)
- cd $LIB; LIB=`${PWDCMD-pwd}`
- ;;
-esac
-
-echo Building fixed headers in ${LIB}
-# Directory containing the original header files.
-shift
-if [ $# -eq 0 ] ; then
- set /usr/include
-fi
-
-INLIST="$@"
-
-for INPUT in ${INLIST} ; do
-cd ${ORIG_DIR}
-cd ${INPUT}
-
-# Some math.h files define struct exception, which conflicts with
-# the class exception defined in the C++ file std/stdexcept.h. We
-# redefine it to __math_exception. This is not a great fix, but I
-# haven't been able to think of anything better.
-file=math.h
-if [ -r $INPUT/$file ]; then
- echo Checking $INPUT/$file
- if grep 'struct exception' $INPUT/$file >/dev/null
- then
- echo Fixed $file
- rm -f $LIB/$file
- cat <<'__EOF__' >$LIB/$file
-#ifndef _MATH_H_WRAPPER
-#ifdef __cplusplus
-# define exception __math_exception
-#endif
-#include_next <math.h>
-#ifdef __cplusplus
-# undef exception
-#endif
-#define _MATH_H_WRAPPER
-#endif /* _MATH_H_WRAPPER */
-__EOF__
- # Define _MATH_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 <math.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
-if [ -r $INPUT/$file ]; then
- echo Checking $INPUT/$file
- w='[ ]'
- if grep "typedef$w$w*char$w$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 <curses.h>
-#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 <curses.h>.
- chmod a+r $LIB/$file
- fi
-fi
-
-done
-
-if [ x${INSTALL_ASSERT_H} != x ] ;
-then
- cd ${ORIG_DIR}
- rm -f include/assert.h;
- cp $(srcdir)/assert.h include/assert.h;
- chmod a+r include/assert.h;
-fi
-
-exit 0