summaryrefslogtreecommitdiff
path: root/gcc/fixproto
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-28 06:51:09 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-28 06:51:09 +0000
commitf2397fc40228ce92f93e1d71c824401057989053 (patch)
treeff7c191cc1dcc674da413c06e6bb28afeb84d04a /gcc/fixproto
parent08ed847dcf7be27a0e6b5ad22901644eb541fc65 (diff)
downloadgcc-f2397fc40228ce92f93e1d71c824401057989053.tar.gz
fixincludes:
* inclhack.def (aix_syswait, exception_structure, pthread_page_size): Remove. (math_exception): Remove mention of fixproto in comment. * fixincl.x: Regenerate. * mkheaders.in: Do not handle STMP_FIXPROTO. gcc: * config/arm/t-arm-coff, config/h8300/coff.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/libgloss.h, config/m68k/coff.h, config/m68k/m68k-aout.h, config/pdp11/2bsd.h, config/rs6000/aix41.h, config/rs6000/aix41.opt, config/rs6000/t-newas, config/sh/coff.h, fix-header.c, fixproto, gen-protos.c, protoize.c, scan-decls.c, scan-types.sh, scan.c, scan.h, sort-protos, sys-protos.h, sys-types.h: Remove. * Makefile.in: Remove protoize and fixproto support and references in comments. (SYSCALLS.c.X-warn, TARGET_GETGROUPS_T, STMP_FIXPROTO, PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, FIXPROTO_DEFINES): Remove. (ALL_HOST_OBJS): Remove $(PROTO_OBJS). (MOSTLYCLEANFILES): Remove protoize$(exeext) and unprotoize$(exeext). (rest.encap): Don't depend on $(STMP_FIXPROTO) (.PHONY): Don't depend on proto. (libgcc-support): Don't depend on $(STMP_FIXPROTO). (proto, PROTO_OBJS, protoize$(exeext), unprotoize$(exeext), protoize.o, unprotoize.o, SYSCALLS.c.X, test-protoize-simple, deduced.h, GEN_PROTOS_OBJS, build/gen-protos$(build_exeext), build/gen-protos.o, build/scan.o, xsys-protos.h, build/fix-header$(build_exeext), build/fix-header.o, build/scan-decls.o, fixhdr.ready, stmp-fixproto, stmp-install-fixproto): Remove. (mostlyclean): Don't remove xsys-protos.hT, SYSCALLS.c.X, SYSCALLS.c or fixproto files. (install-common): Don't install protoize. (install-headers-tar, install-headers-cpio, install-headers-cp): Don't depend on $(STMP_FIXPROTO). (install-mkheaders): Don't depend on $(STMP_FIXPROTO). Don't install fixproto files or write out fixproto settings. (uninstall): Don't uninstall protoize. * config.gcc (use_fixproto): Remove. (arm-*-coff*, armel-*-coff*, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove. * config/m32r/t-linux (STMP_FIXPROTO): Remove. * config/m68k/m68k.c: Remove M68K_TARGET_COFF-conditional code. * config/mips/t-iris (FIXPROTO_DEFINES): Remove. * config/pa/t-pa-hpux (FIXPROTO_DEFINES): Remove. * config/pdp11/pdp11.c: Remove TWO_BSD-conditional code. * config/t-svr4 (FIXPROTO_DEFINES): Remove. * config/t-vxworks (STMP_FIXPROTO): Remove. * configure.ac (AC_TYPE_GETGROUPS, TARGET_GETGROUPS_T, STMP_FIXPROTO): Remove. * config.in, configure: Regenerate. * crtstuff.c (gid_t, uid_t): Don't undefine. * doc/install.texi: Change m68k-coff to m68k-elf in example. (arm-*-coff, arm-*-aout: Remove target entries. (*-ibm-aix*): Mention removal of support for AIX 4.2 and older. Remove mention of AIX 4.1. (m68k-*-*): Remove mention of m68k-*-aout and m68k-*-coff*. * doc/invoke.texi (Running Protoize): Remove. * doc/trouble.texi (Actual Bugs): Remove mention of fixproto. (Protoize Caveats): Remove. * tsystem.h: Update comments on headers assumed to exist. gcc/po: * EXCLUDES (fix-header.c, gen-protos.c, scan-decls.c, scan.c, scan.h): Remove. gcc/testsuite: * g++.old-deja/g++.ext/attrib5.C, g++.old-deja/g++.jason/thunk3.C, gcc.c-torture/compile/981006-1.c: Don't XFAIL or add special options for removed targets. libgcc: * config.host (arm-*-coff*, armel-*-coff*, arm-semi-aof, armel-semi-aof, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145158 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fixproto')
-rwxr-xr-xgcc/fixproto340
1 files changed, 0 insertions, 340 deletions
diff --git a/gcc/fixproto b/gcc/fixproto
deleted file mode 100755
index 7c42d9c77ed..00000000000
--- a/gcc/fixproto
+++ /dev/null
@@ -1,340 +0,0 @@
-#!/bin/sh
-#
-# SYNOPSIS
-# fixproto TARGET-DIR SOURCE-DIR-ALL SOURCE-DIR-STD
-#
-# COPYRIGHT
-# Copyright (C) 1993, 1994, 1997, 1998, 2002, 2003, 2007, 2008
-# Free Software Foundation, Inc.
-# This file is part of GCC.
-#
-# GCC is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3, or (at your option)
-# any later version.
-#
-# GCC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-#
-# DESCRIPTION
-# Adjunct script for GCC to populate a directory with ANSI,
-# Posix.1, and C++ compatible header files.
-#
-# Each file found under SOURCE-DIR-ALL is analyzed and "fixed."
-# Only standard ANSI/POSIX files found under SOURCE-DIR-STD
-# are analyzed and "fixed."
-# The SOURCE-DIRs are searched in order; a file found
-# under multiple SOURCE-DIRs is only handled for the first one.
-#
-# STRATEGY
-# Each include file is fed through cpp, and the scan-decls program
-# parses it, and emits any found function declarations.
-# The fix-header program analyzes the scan-decls output,
-# together with the original include file, and writes a "fixed"
-# include file, if needed.
-#
-# The comment at the beginning of fix-header.c lists specifically
-# what kind of changes are made.
-#
-# NOTE
-# Some file space will be wasted, because the original header
-# files are copied. An earlier version just included the original
-# by "reference", using GNU cpp's #include_next mechanism.
-# This is currently not done, partly because #include_next is
-# fragile (susceptible to version incompatibilities, and depends
-# and GCC-specific features), and partly for performance reasons.
-#
-# AUTHORS
-# Ron Guilmette (rfg@netcom.com) (original idea and code)
-# Per Bothner (bothner@cygnus.com) (major re-write)
-
-dirname=`echo "$0" | sed 's,^[^/]*$,.,;s,//*[^/]*$,,'`
-progname=`echo "$0" | sed 's,.*/,,'`
-original_dir=`${PWDCMD-pwd}`
-FIX_HEADER=${FIX_HEADER-$original_dir/fix-header}
-DEFINES="-D__STDC__=0 -D__cplusplus ${FIXPROTO_DEFINES}"
-
-if mkdir -p . 2> /dev/null; then
- # Great, mkdir accepts -p
- mkinstalldirs="mkdir -p"
-else
- # We expect mkinstalldirs to be passed in the environment.
- # If it is not, assume it is in the directory that contains this script.
- mkinstalldirs=${mkinstalldirs-"/bin/sh $dirname/mkinstalldirs"}
- if $mkinstalldirs . 2> /dev/null; then
- :
- else
- # But, in case of failure, fallback to plain mkdir, and hope it works
- mkinstalldirs=mkdir
- fi
-fi
-
-if [ `echo $1 | wc -w` = 0 ] ; then
- echo $progname\: usage\: $progname target-dir \[ source-dir \.\.\. \]
- exit 1
-fi
-
-std_files="ctype.h dirent.h errno.h curses.h fcntl.h grp.h locale.h math.h pwd.h setjmp.h signal.h stdio.h stdlib.h string.h sys/socket.h sys/stat.h sys/times.h sys/resource.h sys/utsname.h sys/wait.h tar.h termios.h time.h unistd.h utime.h"
-
-rel_target_dir=$1
-# All files in $src_dir_all (normally same as $rel_target_dir) are
-# processed.
-src_dir_all=$2
-# In $src_dir_std (normally same as /usr/include), only the
-# "standard" ANSI/POSIX files listed in $std_files are processed.
-src_dir_std=$3
-
-case $rel_target_dir in
- /* | [A-Za-z]:[\\/]*)
- abs_target_dir=$rel_target_dir
- ;;
- *)
- abs_target_dir=$original_dir/$rel_target_dir
- ;;
-esac
-
-# Determine whether this system has symbolic links.
-if ln -s X $rel_target_dir/ShouldNotExist 2>/dev/null; then
- rm -f $rel_target_dir/ShouldNotExist
- LINKS=true
-elif ln -s X /tmp/ShouldNotExist 2>/dev/null; then
- rm -f /tmp/ShouldNotExist
- LINKS=true
-else
- LINKS=false
-fi
-
-if [ \! -d $abs_target_dir ] ; then
- echo $progname\: creating directory $rel_target_dir
- $mkinstalldirs $abs_target_dir
-fi
-
-echo $progname\: populating \`$rel_target_dir\'
-
-include_path=""
-
-if [ `echo $* | wc -w` != 0 ] ; then
- for rel_source_dir in $src_dir_all $src_dir_std; do
- case $rel_source_dir in
- /* | [A-Za-z]:[\\/]*)
- abs_source_dir=$rel_source_dir
- ;;
- *)
- abs_source_dir=$original_dir/$rel_source_dir
- ;;
- esac
- include_path="$include_path -I$abs_source_dir"
- done
-fi
-
-done_dirs=""
-subdirs_made=""
-echo "" >fixproto.list
-
-for code in ALL STD ; do
-
- subdirs="."
-
- case $code in
- ALL)
- rel_source_dir=$src_dir_all
-
- dirs="."
- levels=2
- while $LINKS && test -n "$dirs" -a $levels -gt 0
- do
- levels=`expr $levels - 1`
- newdirs=
- for d in $dirs ; do
- # Find all directories under $d, relative to $d, excluding $d itself.
- # Assume directory names ending in CC or containing ++ are
- # for C++, so skip those.
- subdirs="$subdirs "`cd $rel_source_dir/$d; find . -type d -print | \
- sed -e '/^\.$/d' -e "s|^\./|${d}/|" -e 's|^\./||' \
- -e '/CC$/d' -e '/[+][+]/d'`
- links=
- links=`cd $rel_source_dir; find $d/. -type l -print | \
- sed -e "s|$d/./|$d/|" -e 's|^\./||'`
- for link in $links --dummy-- ; do
- test -d $rel_source_dir/$link/. && newdirs="$newdirs $link"
- done
- done
- dirs="$newdirs"
- subdirs="$subdirs $newdirs"
- done
- ;;
- STD)
- rel_source_dir=$src_dir_std
- ;;
- esac
-
- case $rel_source_dir in
- /* | [A-Za-z]:[\\/]*)
- abs_source_dir=$rel_source_dir
- ;;
- *)
- abs_source_dir=$original_dir/$rel_source_dir
- ;;
- esac
-
- if [ \! -d $abs_source_dir ] ; then
- echo $progname\: warning\: no such directory\: \`$rel_source_dir\'
- continue
- fi
-
- for rel_source_subdir in $subdirs; do
-
- abs_target_subdir=${abs_target_dir}/${rel_source_subdir}
- if [ \! -d $abs_target_subdir ] ; then
- if $mkinstalldirs $abs_target_subdir ; then
- subdirs_made="$abs_target_subdir $subdirs_made"
- fi
- fi
- # Append "/"; remove initial "./". Hence "." -> "" and "sys" -> "sys/".
- rel_source_prefix=`echo $rel_source_subdir | sed -e 's|$|/|' -e 's|^\./||'`
-
- case $code in
- ALL)
- # The 'sed' is in case the *.h matches nothing, which yields "*.h"
- # which would then get re-globbed in the current directory. Sigh.
- rel_source_files=`cd ${abs_source_dir}/${rel_source_subdir}; echo *.h | sed -e 's|[*].h|NONE|'`
- ;;
-
- STD)
- files_to_check="$std_files"
- rel_source_files=""
-
- # Also process files #included by the $std_files.
- while [ -n "${files_to_check}" ]
- do
- new_files_to_check=""
- for file in $files_to_check ; do
- xxfile=`echo $file | sed -e 's|/\([^/\.][^/\.]*\)/\.\./|/|'`
- # Create the dir where this file will go when fixed.
- xxdir=`echo ./$file | sed -e 's|/[^/]*$||'`
- if [ \! -d $abs_target_subdir/$xxdir ] ; then
- if $mkinstalldirs $abs_target_subdir/$xxdir ; then
- subdirs_made="$abs_target_subdir/$xxdir $subdirs_made"
- fi
- fi
- # Just in case we have edited out a symbolic link
- if [ -f $src_dir_std/$file -a -f $src_dir_std/$xxfile ] ; then
- file=$xxfile
- fi
- case " $rel_source_files " in
- *" ${file} "*)
- # Already seen $file; nothing to do
- ;;
- *)
- if test -f $src_dir_std/$file ; then
- rel_dir=`echo $file | sed -n -e 's|^\(.*/\)[^/]*$|\1|p'`
- # For #include "foo.h", that might be either "foo.h"
- # or "${rel_dir}foo.h (or something bogus).
- new_files_to_check="$new_files_to_check "`sed -n \
- -e 's@ @ @g' \
- -e 's@^ *# *include *<\([^>]*\)>.*$@\1@p' -e \
- 's@^ *# *include *\"\([^\"]*\)\".*$@\1 '$rel_dir'\1@p'\
- <$src_dir_std/$file`
- rel_source_files="$rel_source_files $file"
- fi
- ;;
- esac
- done
- files_to_check="$new_files_to_check"
- done
- rel_source_files="$rel_source_files"
- ;;
- esac
-
- for filename in $rel_source_files ; do
- rel_source_file=${rel_source_prefix}${filename}
- abs_source_file=$abs_source_dir/$rel_source_file
- abs_target_file=$abs_target_dir/$rel_source_file
-
- if test "$filename" = 'NONE' ; then
- echo "(No *.h files in $abs_source_dir/$rel_source_subdir)"
- # If target file exists, check if was written while processing one
- # of the earlier source directories; if so ignore it.
- elif test -f $abs_target_file -a -n "$done_dirs" \
- && grep "$rel_source_file" fixproto.list >/dev/null
- then true
- else
- $FIX_HEADER $rel_source_file $abs_source_file $abs_target_file ${DEFINES} $include_path
- if test $? != 0 ; then exit 1 ; fi
- echo "${rel_source_file}" >>fixproto.list
- fi
- done
- done
- done_dirs="$done_dir $rel_source_dir"
-done
-
-# This might be more cleanly moved into the main loop, by adding
-# a <dummy> source directory at the end. FIXME!
-
-# All the headers we create define size_t and NULL.
-for rel_source_file in unistd.h stdlib.h string.h time.h ; do
- if grep "$rel_source_file" fixproto.list >/dev/null ; then
- : # It exists, we don't need to make it
- else
- echo Adding missing $rel_source_file
- rel_source_ident=`echo $rel_source_file | tr ./ __`
- cat >tmp.h <<EOF
-/* Fake ${rel_source_file}, created by GCC.
- The functions declared in this file do not necessarily exist in
- your C library. */
-#ifndef __${rel_source_ident}
-#define __${rel_source_ident}
-
-#define __need_NULL
-#define __need_size_t
-#include <stddef.h>
-EOF
- # Insert special stuff for particular files here.
- case ${rel_source_file} in
- time.h)
- # If time.h doesn't exist, find out if sys/time.h does.
- if test -f $src_dir_std/sys/time.h \
- || grep "sys/time.h" fixproto.list >/dev/null ; then
- # It does; include it and hope it has the needed declarations.
- # Some versions require sys/types.h.
- cat >>tmp.h <<EOF
-
-#include <sys/types.h>
-#include <sys/time.h>
-EOF
- else
- # It doesn't. Make up plausible definitions for time_t, clock_t.
- # Forward-declare struct tm. Hope nobody tries to use it. (Odds
- # are they won't.)
- cat >>tmp.h <<EOF
-
-typedef long time_t;
-typedef long clock_t;
-struct tm;
-EOF
- fi ;;
- esac
- cat >>tmp.h <<EOF
-
-#endif /* __${rel_source_ident} */
-EOF
- ${FIX_HEADER} $rel_source_file tmp.h $abs_target_dir/$rel_source_file ${DEFINES} $include_path
- if test $? != 0 ; then exit 1 ; fi
- if test -f $abs_target_dir/$rel_source_file ; then
- rm tmp.h
- else
- mv tmp.h $abs_target_dir/$rel_source_file
- fi
- fi
-done
-
-# Remove any directories that we made that are still empty.
-rmdir $subdirs_made 2>/dev/null
-
-exit 0