diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-28 06:51:09 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-28 06:51:09 +0000 |
commit | f2397fc40228ce92f93e1d71c824401057989053 (patch) | |
tree | ff7c191cc1dcc674da413c06e6bb28afeb84d04a /gcc/fixproto | |
parent | 08ed847dcf7be27a0e6b5ad22901644eb541fc65 (diff) | |
download | gcc-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-x | gcc/fixproto | 340 |
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 |