diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-06-07 18:00:15 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-06-07 18:00:15 +0000 |
commit | 6af9f7ea1f2b5cc8e19fc1f8d2d78f3a5dc02b6a (patch) | |
tree | 0b3f6bdde3fd6779fef4d162dd5a25868787d722 /fixincludes/inclhack.def | |
parent | 09066160c7184c030528e4ff559b66a4ccdcb9a5 (diff) | |
download | gcc-6af9f7ea1f2b5cc8e19fc1f8d2d78f3a5dc02b6a.tar.gz |
* MAINTAINERS (mt port): Remove.
(sco5, unixware, sco udk): Remove.
(Kean Johnston): Add to Write After Approval.
fixincludes:
* inclhack.def (AAB_svr4_replace_byteorder,
AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory,
libc1_G_va_list, libc1_ifdefd_memx, nested_motorola,
ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime,
solaris_mutex_init_1, solaris_socket, solaris_unistd,
solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param,
ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale,
ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc,
ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings,
ultrix_strings2, ultrix_sys_time, ultrix_unistd,
unicosmk_restrict, uw7_byteorder_fix, windiss_math1,
windiss_math2, windiss_valist): Remove.
* fixincl.x: Regenerate.
* mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*,
i370-*-openedition, i?86-*-moss*, i?86-*-uwin*,
powerpc-*-eabiaix*): Remove.
* tests/base/math.h: Update.
* tests/base/pthread.h: Update.
* tests/base/stdio.h: Update.
* tests/base/stdlib.h: Update.
* tests/base/string.h: Update.
* tests/base/strings.h: Update.
* tests/base/sys/file.h: Update.
* tests/base/sys/limits.h: Update.
* tests/base/sys/socket.h: Update.
* tests/base/sys/stat.h: Update.
* tests/base/sys/time.h: Update.
* tests/base/testing.h: Update.
* tests/base/unistd.h: Update.
* tests/base/_G_config.h: Remove.
* tests/base/arpa: Remove directory.
* tests/base/fs: Remove directory.
* tests/base/locale.h: Remove.
* tests/base/machine: Remove directory.
* tests/base/rpc/svc.h: Remove.
* tests/base/sys/ioctl.h: Remove.
* tests/base/sys/regset.h: Remove.
* tests/base/sys/times.h: Remove.
* tests/base/sys/utsname.h: Remove.
* tests/base/widec.h: Remove.
gcc:
* config.gcc (Obsolete configurations): Remove list of
configurations.
(Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*,
*-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other
targets matched by those patterns.
(strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*,
m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*,
alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf,
arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*,
hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*,
i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*,
i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*,
mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*,
powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*,
powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*,
strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*,
vax-*-ultrix*, xscale-*-elf, xscale-*-coff,
i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove.
Make code for Solaris 7 and greater unconditional for Solaris.
(ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*):
Remove --with-* handling.
* config/rs6000/sysv4.h (-mwindiss): Remove from all specs.
(LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC,
ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC,
LINK_OS_WINDISS_SPEC): Remove.
* config/rs6000/sysv4.opt (mwindiss): Remove.
* configure.ac (strongarm*-*-*, xscale*-*-*): Remove.
* configure: Regenerate.
* doc/cpp.texi: Don't mention BeOS.
* doc/extend.texi (interrupt): Don't mention MS1.
* doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv,
m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv,
alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout,
i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4,
powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix):
Remove.
* doc/invoke.texi (MT Options): Remove.
(-mwindiss): Remove.
(CRIS Options): Remove cris-axis-aout references.
(HPPA Options): Don't mention hppa1.1-*-pro.
* doc/md.texi: (MorphoTech family): Remove.
* libgcc2.c: Don't handle UWIN.
* config/alpha/t-unicosmk: Remove.
* config/alpha/unicosmk.h: Remove.
* config/arm/kaos-arm.h: Remove.
* config/arm/kaos-strongarm.h: Remove.
* config/arm/strongarm-coff.h: Remove.
* config/arm/strongarm-elf.h: Remove.
* config/arm/strongarm-pe.h: Remove.
* config/arm/t-strongarm-pe: Remove.
* config/arm/t-xscale-coff: Remove.
* config/arm/t-xscale-elf: Remove.
* config/arm/xscale-coff.h: Remove.
* config/arm/xscale-elf.h: Remove.
* config/chorus.h: Remove.
* config/cris/aout.h: Remove.
* config/cris/aout.opt: Remove.
* config/cris/t-aout: Remove.
* config/i386/beos-elf.h: Remove.
* config/i386/kaos-i386.h: Remove.
* config/i386/ptx4-i.h: Remove.
* config/i386/sco5.h: Remove.
* config/i386/sco5.opt: Remove.
* config/i386/sysv4-cpp.h: Remove.
* config/i386/sysv5.h: Remove.
* config/i386/t-beos: Remove.
* config/i386/t-sco5: Remove.
* config/i386/t-uwin: Remove.
* config/i386/uwin.asm: Remove.
* config/i386/uwin.h: Remove.
* config/kaos.h: Remove.
* config/mips/windiss.h: Remove.
* config/mt: Remove directory.
* config/pa/pa-osf.h: Remove.
* config/pa/pa-pro-end.h: Remove.
* config/pa/t-pro: Remove.
* config/ptx4.h: Remove.
* config/rs6000/beos.h: Remove.
* config/rs6000/kaos-ppc.h: Remove.
* config/rs6000/t-beos: Remove.
* config/rs6000/windiss.h: Remove.
* config/sh/kaos-sh.h: Remove.
* config/sol2-6.h: Remove.
* config/sparc/sol26-sld.h: Remove.
* config/sparc/sysv4-only.h: Remove.
* config/vax/bsd.h: Remove.
* config/vax/t-memfuncs: Remove.
* config/vax/ultrix.h: Remove.
* config/vax/vaxv.h: Remove.
* config/windiss.h: Remove.
gcc/testsuite:
* g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*.
* g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*.
* g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris
7.
* gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*,
strongarm*-*-* and cris-*-aout*.
* gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and
strongarm*-*-*.
* gcc.dg/20030909-1.c: Don't handle xscale*-*-* and
strongarm*-*-*.
* gcc.dg/20031108-1.c: Don't handle xscale*-*-* and
strongarm*-*-*.
* gcc.dg/20040813-1.c: Don't handle *-*-sysv5*.
* gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*.
* gcc.dg/arm-scd42-1.c: Use target arm*-*-*.
* gcc.dg/arm-scd42-3.c: Use target arm*-*-*.
* gcc.dg/cpp/assert4.c: Don't handle BeOS.
* gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*.
* gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and
xscale*-*-elf*.
* gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*.
* gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1.
* gcc.misc-tests/arm-isr.exp: Use target arm*-*-*.
* gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*.
* gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*.
* gcc.target/powerpc/ppc-stackalign-1.c: Don't handle
powerpc-*-sysv*.
* gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*.
* lib/target-supports.exp: Don't handle strongarm*-*-elf,
xscale*-*-elf and *-*-windiss.
* obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*.
* objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*.
* objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*.
* gcc.dg/mt-loopi1.c: Remove.
gnattools:
* configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove.
* configure: Regenerate.
libcpp:
* configure.ac (parisc*64*-*-*): Remove.
* configure: Regenerate.
libffi:
* configure.ac (parisc*-*-linux*, powerpc-*-sysv*,
powerpc-*-beos*): Remove.
* configure: Regenerate.
libgcc:
* config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*,
parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*,
alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf,
arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*,
hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*,
i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*,
i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*,
mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*,
powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*,
powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*,
strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*,
vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove.
libjava:
* configure.host (strongarm*-elf, xscale*-elf): Remove.
libstdc++-v3:
* configure.host (xscale, ep9312, m680[246]0, solaris2.5,
solaris2.5.[0-9], solaris2.6, windiss*): Remove.
* crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove.
* configure: Regenerate.
* config/os/solaris/solaris2.5: Remove directory.
* config/os/solaris/solaris2.6: Remove directory.
* config/os/windiss: Remove directory.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@136534 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'fixincludes/inclhack.def')
-rw-r--r-- | fixincludes/inclhack.def | 885 |
1 files changed, 0 insertions, 885 deletions
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index 6c21cb1775b..73bd13a4928 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -376,214 +376,6 @@ fix = { /* - * Completely replace <sys/byteorder.h> with a file that implements gcc's - * optimized byteswapping. (The original probably implemented some - * incompatible optimized byteswapping.) - */ -fix = { - hackname = AAB_svr4_replace_byteorder; - mach = "*-*-sysv4*"; - mach = "i[34567]86-*-sysv5*"; - mach = "i[34567]86-*-sco3.2v5*"; - mach = "i[34567]86-*-udk*"; - mach = "i[34567]86-*-solaris2.[0-4]"; - mach = "powerpcle-*-solaris2.[0-4]"; - mach = "sparc-*-solaris2.[0-4]"; - mach = "i[34567]86-sequent-ptx*"; - files = sys/byteorder.h; - replace = <<- _EndOfHeader_ - #ifndef _SYS_BYTEORDER_H - #define _SYS_BYTEORDER_H - - /* Functions to convert `short' and `long' quantities from host byte order - to (internet) network byte order (i.e. big-endian). - - Written by Ron Guilmette (rfg@ncd.com). - - This isn't actually used by GCC. It is installed by fixinc.svr4. - - For big-endian machines these functions are essentially no-ops. - - For little-endian machines, we define the functions using specialized - asm sequences in cases where doing so yields better code (e.g. i386). */ - - #if !defined (__GNUC__) && !defined (__GNUG__) - #error You lose! This file is only useful with GNU compilers. - #endif - - #ifndef __BYTE_ORDER__ - /* Byte order defines. These are as defined on UnixWare 1.1, but with - double underscores added at the front and back. */ - #define __LITTLE_ENDIAN__ 1234 - #define __BIG_ENDIAN__ 4321 - #define __PDP_ENDIAN__ 3412 - #endif - - #ifdef __STDC__ - static __inline__ unsigned long htonl (unsigned long); - static __inline__ unsigned short htons (unsigned int); - static __inline__ unsigned long ntohl (unsigned long); - static __inline__ unsigned short ntohs (unsigned int); - #endif /* defined (__STDC__) */ - - #if defined (__i386__) - - #ifndef __BYTE_ORDER__ - #define __BYTE_ORDER__ __LITTLE_ENDIAN__ - #endif - - /* Convert a host long to a network long. */ - - /* We must use a new-style function definition, so that this will also - be valid for C++. */ - static __inline__ unsigned long - htonl (unsigned long __arg) - { - register unsigned long __result; - - __asm__ ("xchg%B0 %b0,%h0 - ror%L0 $16,%0 - xchg%B0 %b0,%h0" : "=q" (__result) : "0" (__arg)); - return __result; - } - - /* Convert a host short to a network short. */ - - static __inline__ unsigned short - htons (unsigned int __arg) - { - register unsigned short __result; - - __asm__ ("xchg%B0 %b0,%h0" : "=q" (__result) : "0" (__arg)); - return __result; - } - - #elif (defined (__ns32k__) || defined (__vax__) || defined (__arm__)) - - #ifndef __BYTE_ORDER__ - #define __BYTE_ORDER__ __LITTLE_ENDIAN__ - #endif - - /* For other little-endian machines, using C code is just as efficient as - using assembly code. */ - - /* Convert a host long to a network long. */ - - static __inline__ unsigned long - htonl (unsigned long __arg) - { - register unsigned long __result; - - __result = (__arg >> 24) & 0x000000ff; - __result |= (__arg >> 8) & 0x0000ff00; - __result |= (__arg << 8) & 0x00ff0000; - __result |= (__arg << 24) & 0xff000000; - return __result; - } - - /* Convert a host short to a network short. */ - - static __inline__ unsigned short - htons (unsigned int __arg) - { - register unsigned short __result; - - __result = (__arg << 8) & 0xff00; - __result |= (__arg >> 8) & 0x00ff; - return __result; - } - - #else /* must be a big-endian machine */ - - #ifndef __BYTE_ORDER__ - #define __BYTE_ORDER__ __BIG_ENDIAN__ - #endif - - /* Convert a host long to a network long. */ - - static __inline__ unsigned long - htonl (unsigned long __arg) - { - return __arg; - } - - /* Convert a host short to a network short. */ - - static __inline__ unsigned short - htons (unsigned int __arg) - { - return __arg; - } - - #endif /* big-endian */ - - /* Convert a network long to a host long. */ - - static __inline__ unsigned long - ntohl (unsigned long __arg) - { - return htonl (__arg); - } - - /* Convert a network short to a host short. */ - - static __inline__ unsigned short - ntohs (unsigned int __arg) - { - return htons (__arg); - } - #endif - _EndOfHeader_; -}; - - -/* - * Cancel out ansi_compat.h on Ultrix. Replace it with an empty file. - */ -fix = { - hackname = AAB_ultrix_ansi_compat; - files = ansi_compat.h; - select = ULTRIX; - replace = "/* This file intentionally left blank. */\n"; -}; - - -/* - * The Ultrix 4.3 file limits.h is a symbolic link to sys/limits.h. - * Replace limits.h with a file that includes sys/limits.h. - */ -fix = { - hackname = AAB_ultrix_limits; - files = limits.h; - mach = "*-*-ultrix4.3"; - replace = <<- _EndOfHeader_ - #ifndef _LIMITS_INCLUDED - #define _LIMITS_INCLUDED - #include <sys/limits.h> - #endif /* _LIMITS_INCLUDED */ - _EndOfHeader_; -}; - - -/* - * The ULTRIX 4.3 version of memory.h duplicates definitions - * present in strings.h. Replace memory.h with a file that includes - * strings.h to prevent problems from multiple inclusion. - */ -fix = { - hackname = AAB_ultrix_memory; - files = memory.h; - mach = "*-*-ultrix4.3"; - replace = <<- _EndOfHeader_ - #ifndef _MEMORY_INCLUDED - #define _MEMORY_INCLUDED - #include <strings.h> - #endif /* _MEMORY_INCLUDED */ - _EndOfHeader_; -}; - - -/* * The Ultrix 4.3 file string.h is a symbolic link to strings.h. * Replace string.h link with a file that includes strings.h to prevent * problems from multiple inclusion. @@ -2423,56 +2215,6 @@ fix = { }; -/* - * Fix libc1 _G_va_list definition, used in declarations of several - * more-or-less standard functions, for example vasprintf. - */ -fix = { - hackname = libc1_G_va_list; - files = _G_config.h; - mach = '*-*-linux*libc1'; - select = 'typedef void \* _G_va_list;'; - c_fix = format; - c_fix_arg = "typedef __builtin_va_list _G_va_list;"; - test_text = 'typedef void * _G_va_list;'; -}; - - -/* - * GNU libc1 string.h does not prototype memcpy and memcmp for gcc - * versions > 1. This fix will open up the declaration for all - * versions of GCC and for g++. - */ -fix = { - hackname = libc1_ifdefd_memx; - - /* The string.h result is overwritten by AAB_ultrix_string when doing - "make check" and will fail. Therefore, we add the following kludgery - to insert the test_text into the special testing header. :-} */ - files = testing.h; - files = string.h; - - c_fix = format; - select = "' is a built-in function for gcc 2\\.x\\. \\*/"; - bypass = __cplusplus; - c_fix_arg = "%1"; - c_fix_arg = - '/\* `mem...\' is a built-in function for gcc 2\.x\. \*/' "\n" - '#if defined\(__STDC__\) && __GNUC__ < 2' "\n" - "(/\\* .* \\*/\n" - "extern [a-z_]+ mem.*(\n[^#].*)*;)\n" - "#endif"; - - test_text = - "/* \\`memcpy' is a built-in function for gcc 2.x. */\n" - "#if defined(__STDC__) && __GNUC__ < 2\n" - "/* Copy N bytes of SRC to DEST. */\n" - "extern __ptr_t memcpy __P ((__ptr_t __dest, __const __ptr_t __src,\n" - " size_t __n));\n" - "#endif"; -}; - - /* The /usr/include/sys/ucontext.h on ia64-*linux-gnu systems defines * an _SC_GR0_OFFSET macro using an idiom that isn't a compile time * constant on recent versions of g++. @@ -2655,28 +2397,6 @@ fix = { /* - * Fix nested comments in Motorola's <limits.h> and <sys/limits.h> - */ -fix = { - hackname = nested_motorola; - mach = "m68k-motorola-sysv*"; - files = sys/limits.h; - files = limits.h; - select = "max # bytes atomic in write|error value returned by Math lib"; - - sed = "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*" - "/\\* max # bytes atomic in write to a\\)$@\\1 */@"; - sed = "s@\\(/\\*#define\tHUGE_VAL\t3.[0-9e+]* \\)" - "\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@"; - - test_text = - "#undef PIPE_BUF /* max # bytes atomic in write to a\n" - "\t\t/* PIPE */\n" - "/*#define\tHUGE_VAL\t3.9e+9 /*error value returned by Math lib*/"; -}; - - -/* * Fixing nested comments in ISC <sys/limits.h> */ fix = { @@ -2920,30 +2640,6 @@ fix = { }; /* - * On DYNIX/ptx, sys/mc_param.h has an embedded asm for the cpuid instruction - * on the P5. This is not used by anything else so we ifdef it out. - * Current GCC doesn't seem to complain about the asm, though. - */ -#ifdef PTX -fix = { - hackname = ptx_sys_mc_param_h; - files = sys/mc_param.h; - sed = "/__asm/,/}/{" - "/__asm/i\\\n" - "#if !defined (__GNUC__) && !defined (__GNUG__)\n" - "/}/a\\\n" - "#endif\n" - "}"; - test_text = "__asm\n" - "int _CPUID()\n" - "{\n" - " non-GNU assembly here\n" - "}"; -}; -#endif - - -/* * Fix return type of fread and fwrite on sysV68 */ fix = { @@ -3065,89 +2761,6 @@ fix = { /* - * On SCO OpenServer prior to 5.0.7UP1, <sys/regset.h> and <ieeefp.h> - * have a clash on struct _fpstate and struct fpstate. - */ -fix = { - hackname = sco_regset; - files = sys/regset.h; - mach = "*-*-sco3.2v5*"; - select = "(struct[ \t]+.*)fpstate"; - c_fix = format; - c_fix_arg = "%1rsfpstate"; - - test_text = - "union u_fps {\n" - " struct\tfpstate\n" - " {\n" - " int whatever;\n" - " }\n" - "};\n" - "union _u_fps {\n" - " struct _fpstate\n" - " {\n" - " int whatever;\n" - " }\n" - "};\n"; -}; - - -/* - * The static functions lstat() and fchmod() in <sys/stat.h> - * cause G++ grief since they're not wrapped in "if __cplusplus". - * - * On SCO OpenServer 5.0.0 through (at least) 5.0.5 <sys/stat.h> contains - * tiny static wrappers that aren't C++ safe. - */ -fix = { - hackname = sco_static_func; - files = sys/stat.h; - mach = "i?86-*-sco3.2*"; - select = "^static int"; - - sed = "/^static int/i\\\n" - "#if __cplusplus\\\n" - "extern \"C\" {\\\n" - "#endif /* __cplusplus */"; - - sed = "/^}$/a\\\n" - "#if __cplusplus\\\n" - " }\\\n" - "#endif /* __cplusplus */"; - - test_text = - "#ifdef __STDC__\n" - "static int\tstat(const char *__f, struct stat *__p) {\n" - "\treturn __stat32(__f, __p);\n" - "}\n\n# else /* !__STDC__ THIS FAILS ON BSD SYSTEMS */\n" - - "static int\tstat(__f, __p)\n" - "\tchar *__f;\n" - "\tstruct stat *__p;\n" - "{\n" - "\treturn __stat32(__f, __p);\n" - "}\n" - "#endif"; -}; - - -/* - * Fix prototype declaration of utime in sys/times.h. - * In 3.2v4.0 the const is missing. - */ -fix = { - hackname = sco_utime; - files = sys/times.h; - mach = "i?86-*-sco3.2v4*"; - - select = '\(const char \*, struct utimbuf \*\);'; - c_fix = format; - c_fix_arg = '(const char *, const struct utimbuf *);'; - - test_text = "extern int utime(const char *, struct utimbuf *);"; -}; - -/* * Sun Solaris 10 defines several C99 math macros in terms of * builtins specific to the Studio compiler, in particular not * compatible with the GNU compiler. @@ -3280,26 +2893,6 @@ fix = { }; /* - * Sun Solaris 2.5.1, 2.6 defines PTHREAD_{MUTEX|COND}_INITIALIZER - * incorrectly, so we replace them with versions that correspond to - * the definition. We also explicitly name this fix "1" and the next - * fix "2" because this one does not deal with the last field. This - * fix needs to run before the next. - */ -fix = { - hackname = solaris_mutex_init_1; - select = '@\(#\)pthread.h' "[ \t]+1.1[0-9][ \t]+9[567]/[0-9/]+ SMI"; - files = pthread.h; - sed = "/define[ \t]*PTHREAD_MUTEX_INI/s/{0, 0,/{{{0}, 0}, {{{0}}},/\n" - "/define[ \t]*PTHREAD_COND_INI/s/{0,/{{{0},0},/"; - test_text = - '#ident "@(#)pthread.h 1.16 97/05/05 SMI"'"\n" - "#define PTHREAD_MUTEX_INITIALIZER\t{0, 0, 0}\n" - "#define PTHREAD_COND_INITIALIZER\t{0, 0} /* */\n"; -}; - - -/* * Sun Solaris defines PTHREAD_MUTEX_INITIALIZER with a trailing * "0" for the last field of the pthread_mutex_t structure, which is * of type upad64_t, which itself is typedef'd to int64_t, but with @@ -3418,26 +3011,6 @@ fix = { /* - * Solaris 2.5.1 and 2.6 use an outdated prototype for send & recv - * in sys/socket.h. This is corrected in Solaris 7 and up. - */ -fix = { - hackname = solaris_socket; - files = sys/socket.h; - select = '@\(#\)socket.h' "[ \t]+1.[123][0-9][ \t]+9[567]/[0-9/]+ SMI"; - c_fix = format; - c_fix_arg = "extern int %1(int, %2void *, int, int);"; - c_fix_arg = '^extern int (recv|send)\(int,' - ' (const )*char ' - '\*, int, int\);'; - - test_text = '#ident "@(#)socket.h 1.30 97/01/20 SMI"'"\n" - "extern int recv(int, char *, int, int);\n" - "extern int send(int, const char *, int, int);"; -}; - - -/* * Solaris 2.8 has what appears to be some gross workaround for * some old version of their c++ compiler. G++ doesn't want it * either, but doesn't want to be tied to SunPRO version numbers. @@ -3457,43 +3030,6 @@ fix = { /* - * Sun Solaris 2.5.1 doesn't define 'getpagesize' in <unistd.h>, as is done - * on Solaris 2.6 and up. - */ -fix = { - hackname = solaris_unistd; - files = unistd.h; - select = '@\(#\)unistd.h' "[ \t]+1.3[0-9][ \t]+9[567]/[0-9/]+ SMI"; - bypass = "getpagesize"; - c_fix = format; - c_fix_arg = "extern int getpagesize();\n%0"; - c_fix_arg = '^extern (pid_t|int) getpgid\(.*\);'; - test_text = '#ident "@(#)unistd.h 1.33 95/08/28 SMI"'"\n" - "extern pid_t getpgid(pid_t);\n" - "extern int getpgid();"; -}; - - -/* - * <widec.h> until Solaris 2.5.1 defines macros for a couple of <wchar.h> - * functions, breaking their prototypes if that file is included afterwards. - * Include <wchar.h> early to avoid this issue, as is done on Solaris 2.6 - * and up. - */ -fix = { - hackname = solaris_widec; - files = widec.h; - mach = '*-*-solaris2.[0-5]'; - mach = '*-*-solaris2.[0-5].*'; - bypass = "include.*wchar\\.h"; - select = "#include <euc.h>"; - c_fix = format; - c_fix_arg = "%0\n#include <wchar.h>"; - test_text = "#include <euc.h>"; -}; - - -/* * a missing semi-colon at the end of the statsswtch structure definition. */ fix = { @@ -4003,46 +3539,6 @@ fix = { /* - * Wrap some files on System V r4 and DYNIX/ptx systems with - * #ifdef _KERNEL, presumably to prevent kernel headers from - * leaking into userspace. This may not be necessary at all, - * but it was in the old scripts, so it seems safest to keep it for now. - */ -fix = { - /* Can't name this with _kernel, or the test case will hit the bypass! */ - hackname = svr4_krnl; - /* Since I'm rather unsure about the validity of this, limit it - * to the specific systems it was operating on before. It should - * also be bypassed for i?86-*-sysv4.3uw2, by that rule, but I didn't - * see an easy way to do that. Hopefully it will be harmless - * in any case. -- Nathanael */ - mach = '*-*-sysv4*'; - mach = 'i?86-sequent-ptx*'; - files = fs/rfs/rf_cache.h; - files = sys/erec.h; - files = sys/err.h; - files = sys/char.h; - files = sys/getpages.h; - files = sys/map.h; - files = sys/cmn_err.h; - files = sys/kdebugger.h; - - /* This bypass will match _KERNEL, __KERNEL, __KERNEL__, etc. - * It will also match SVR4_KERNEL_CHECK, which means that the - * testsuite case will always be bypassed. Which is fine with me. */ - bypass = '_KERNEL'; - - c_fix = wrap; - c_fix_arg = "#ifdef _KERNEL\n"; - c_fix_arg = "#endif /* _KERNEL */\n"; - - /* There's no reasonable test for this given that we don't know exactly - * what problem inspired it in the first place. */ - test_text = ""; -}; - - -/* * Delete any #defines of `__i386' which may be present in <ieeefp.h>. They * tend to conflict with the compiler's own definition of this symbol. (We * will use the compiler's definition.) @@ -4393,36 +3889,6 @@ fix = { /* - * function parameter to atexit is missing "void" on VAX Ultrix 4.3. - */ -fix = { - hackname = ultrix_atexit_param; - files = stdlib.h; - select = 'atexit\(.*\(\)'; - - c_fix = format; - c_fix_arg = "atexit( void (*__func)( void )"; - - test_text = "int atexit( void (*__func)() );\n"; -}; - - -/* - * parameter to atof not const on DECstation Ultrix V4.0 and NEWS-OS 4.2R. - */ -fix = { - hackname = ultrix_atof_param; - files = math.h; - select = "atof\\([ \t]*char"; - - c_fix = format; - c_fix_arg = "atof(const char"; - - test_text = "extern double atof( char *__nptr);\n"; -}; - - -/* * parameters not const on DECstation Ultrix V4.0 and OSF/1. */ fix = { @@ -4467,322 +3933,6 @@ fix = { /* - * parameters not const on Ultrix V4.3. - */ -fix = { - hackname = ultrix_const3; - files = stdio.h; - select = 'fdopen\( .*, char \*'; - - c_fix = format; - c_fix_arg = "%1 const %3 *__"; - c_fix_arg = "([ \t*](fdopen)\\(.*)" - "[ \t]+(char|void) \\*__"; - - test_text = - "extern FILE * fdopen( int __filedes, char *__type );\n"; -}; - - -/* - * Ultrix V4.[35] puts the declaration of uname before the definition - * of struct utsname, so the prototype (added by fixproto) causes havoc. - */ -fix = { - hackname = ultrix_fix_fixproto; - files = sys/utsname.h; - select = ULTRIX; - - c_fix = format; - c_fix_arg = "struct utsname;\n%0"; - c_fix_arg = "^[ \t]*extern[ \t]*int[ \t]*uname\\(\\);"; - - test_text = - "/* ULTRIX's uname */\nextern\tint\tuname();"; -}; - - -/* - * Check for bad #ifdef line (in Ultrix 4.1) - */ -fix = { - hackname = ultrix_ifdef; - select = "^#ifdef KERNEL[ \t]+&&"; - files = sys/file.h; - - c_fix = format; - c_fix_arg = "#if defined(KERNEL) &&"; - - test_text = - "#ifdef KERNEL\t&& defined( mumbojumbo )\nint oops;\n#endif"; -}; - - -/* - * Add once-only latch to Ultrix V4.3 locale.h. - */ -fix = { - hackname = ultrix_locale; - files = locale.h; - select = "@\\(#\\)locale\\.h.*6\\.1.*\\(ULTRIX\\)"; - c_fix = wrap; - test_text = - "@(#)locale.h 6.1 (ULTRIX)\n"; -}; - - -/* - * Strip "|| CC$gfloat" from Ultrix math headers. - */ -fix = { - hackname = ultrix_math_ifdef; - files = sys/limits.h; - files = float.h; - files = math.h; - select = "^(#if.*)\\|\\|[ \t]+CC\\$[a-z]+"; - c_fix = format; - c_fix_arg = "%1"; - - test_text = '#if defined(__GFLOAT) || CC\$gfloat'; -}; - - -/* - * Avoid nested comments on Ultrix 4.3. - */ -fix = { - hackname = ultrix_nested_ioctl; - files = sys/ioctl.h; - select = "^/\\* #define SIOCSCREEN"; - sed = "/^\\/\\* #define SIOCSCREEN/s@/\\* screend@*//* screend@"; - test_text = - "/* #define SIOCSCREENON _IOWR('i', 49, int)" - "/* screend, net/gw_screen.h */\n"; -}; - - -fix = { - hackname = ultrix_nested_svc; - files = rpc/svc.h; - select = "^ \\*[ \t]*int protocol; */\\*"; - sed = "s@^\\( \\*\tint protocol; \\)/\\*@\\1*/ /*@"; - test_text = - " *\tint protocol; /* like TCP or UDP\n"; -}; - - -/* - * Add missing prototype for lstat and define for S_ISLNK - * in Ultrix V4.3 sys/stat.h. - */ -fix = { - hackname = ultrix_stat; - files = sys/stat.h; - select = "@\\(#\\)stat\\.h.*6\\.1.*\\(ULTRIX\\)"; - sed = "/^#define[ \t]S_IFPORT[ \t]*S_IFIFO$/a\\\n" - "\\\n" - "/* macro to test for symbolic link */\\\n" - "#define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)\\\n" - "\n"; - sed = "/^[ \t]*fstat(),$/a\\\n" - "\tlstat(),\n"; - test_text = - "@(#)stat.h 6.1 (ULTRIX)\n" - "#define S_IFPORT S_IFIFO\n" - "\tfstat(),\n/* THE INSERTION LINE FAILS ON BSD SYSTEMS */"; -}; - - -/* - * Check for superfluous `static' (in Ultrix 4.2) - * On Ultrix 4.3, includes of other files (r3_cpu.h,r4_cpu.h) is broken. - */ -fix = { - hackname = ultrix_static; - files = machine/cpu.h; - select = '#include "r[34]_cpu'; - sed = "s/^static struct tlb_pid_state/struct tlb_pid_state/"; - sed = 's/^#include "r3_cpu\.h"$/#include <machine\/r3_cpu\.h>/'; - sed = 's/^#include "r4_cpu\.h"$/#include <machine\/r4_cpu\.h>/'; - test_text = - "static struct tlb_pid_state {\n" - "#include \"r3_cpu.h\"\n"; -}; - - -/* - * Add missing declarations to Ultrix V4.3 stdlib.h. - */ -fix = { - hackname = ultrix_stdlib; - files = stdlib.h; - select = "@\\(#\\)stdlib\\.h.*6\\.1.*\\(ULTRIX\\)"; - - sed = "/^char.*getenv( const char .* );.*$/a\\\n" - "int\t\tsetenv( const char *__name, const char *__val, int __ovrwrt );\\\n" - "void\t\tunsetenv( const char *__name );\\\n" - "int\t\tputenv( char *__s );\n"; - - sed = "/^char.*getenv();.*$/a\\\n" - "int\tsetenv();\\\n" - "void\tunsetenv();\\\n" - "int\tputenv();\n"; - - test_text = - "@(#)stdlib.h 6.1 (ULTRIX)\n" - "char * getenv( const char *__name );\n" - "char *getenv();\n"; -}; - - -/* - * Add once-only latch to Ultrix V4.3 strings.h. - */ -fix = { - hackname = ultrix_strings; - files = strings.h; - select = "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)"; - c_fix = wrap; - test_text = - "@(#)strings.h 6.1 (ULTRIX)\n"; -}; - - -/* - * Add missing declarations to Ultrix V4.3 strings.h. - */ -fix = { - hackname = ultrix_strings2; - files = strings.h; - select = "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)"; - - sed = "/^.*strncmp( const .* );.*/a\\\n" - "\\\n" - "extern int\\\n" - "\tstrcasecmp( const char *__s1, const char *__s2),\\\n" - "\tstrncasecmp( const char *__s1, const char *__s2, size_t __n );\n"; - - sed = "/^.*strncmp();.*/a\\\n" - "extern int\\\n" - "\tstrcasecmp(),\\\n" - "\tstrncasecmp();\n"; - - test_text = - "@(#)strings.h 6.1 (ULTRIX)\n" - "\tstrncmp( const char *__s1, const char *__s2, size_t __n );\n" - "\tstrncmp();\n"; -}; - - -/* - * Add missing declarations to Ultrix V4.3 sys/time.h. - */ -fix = { - hackname = ultrix_sys_time; - files = sys/time.h; - select = "@\\(#\\)time\\.h.*6\\.1.*\\(ULTRIX\\)"; - - sed = "/^extern.*time_t.*time( time_t .* );.*$/a\\\n" - "\\\n" - "extern int adjtime(struct timeval *, struct timeval *);\\\n" - "extern int getitimer(int, struct itimerval *);\\\n" - "extern int setitimer(int, struct itimerval *, struct itimerval *);\\\n" - "extern int gettimeofday(struct timeval *, struct timezone *);\\\n" - "extern int settimeofday(struct timeval *, struct timezone *);\\\n" - "extern void profil(const void *, size_t, size_t, unsigned int);\\\n" - "extern int stime(const time_t *);\\\n" - "extern int utimes(const char *, const struct timeval[2]);\\\n" - "extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);\n"; - - sed = "/^extern.*double.*difftime();.*$/a\\\n" - "extern\tint adjtime();\\\n" - "extern\tint getitimer();\\\n" - "extern\tint setitimer();\\\n" - "extern\tint gettimeofday();\\\n" - "extern\tint settimeofday();\\\n" - "extern\tvoid profil();\\\n" - "extern\tint stime();\\\n" - "extern\tint utimes();\\\n" - "extern\tint select();\n"; - - test_text = - "@(#)time.h 6.1 (ULTRIX)\n" - "extern time_t time( time_t *__tloc );\n" - "extern double difftime();\n"; -}; - - -/* - * Add missing declarations to Ultrix V4.3 unistd.h. - */ -fix = { - hackname = ultrix_unistd; - files = unistd.h; - select = "@\\(#\\)unistd\\.h.*6\\.1.*\\(ULTRIX\\)"; - - sed = "/^[ \t]*getgroups(),.*$/a\\\n" - "\tgetpagesize(),\n"; - - sed = "/^[ \t]*fork(),.*$/a\\\n" - "\tvfork(),\n"; - - test_text = - "@(#)unistd.h 6.1 (ULTRIX)\n" - "\tgetgroups(),\n" - "\tfork(),\n"; -}; - - -/* - * On Cray Unicos/Mk some standard headers use the C99 keyword "restrict" - * which must be replaced by __restrict__ for GCC. - */ -fix = { - hackname = unicosmk_restrict; - files = stdio.h; - files = stdlib.h; - files = wchar.h; - mach = "*-*-unicosmk*"; - select = "(\\*[ \t]*)restrict([ \t]+)"; - - c_fix = format; - c_fix_arg = "%1__restrict__%2"; - - test_text = "void f (char * restrict x);"; -}; - -/* - * If arpa/inet.h prototypes are incompatible with the ones we just - * installed in <sys/byteorder.h>, just remove the protos. - * Because of this close association, this patch must be applied only - * on those systems where the replacement byteorder header is installed. - */ -fix = { - hackname = uw7_byteorder_fix; - files = arpa/inet.h; - select = "in_port_t"; - test = "-f sys/byteorder.h"; -#ifndef SVR5 - mach = "*-*-sysv4*"; - mach = "i?86-*-sysv5*"; - mach = "i?86-*-udk*"; - mach = "i?86-*-solaris2.[0-4]"; - mach = "powerpcle-*-solaris2.[0-4]"; - mach = "sparc-*-solaris2.[0-4]"; -#endif /* SVR5 */ - - c_fix = format; - c_fix_arg = ""; - c_fix_arg = "^extern.*[ \t](htons|ntohs).*\\(in_port_t\\).*;"; - - test_text = "extern in_port_t\thtons __P((in_port_t));\n" - "extern in_port_t\tntohs __P((in_port_t));" - "`[ ! -d $DESTDIR/sys ] && mkdir $DESTDIR/sys\n" - "echo '/* DUMMY */' >> sys/byteorder.h`"; -}; - - -/* * Fix definitions of macros used by va-i960.h in VxWorks header file. */ fix = { @@ -4928,41 +4078,6 @@ fix = { }; -/* - * WindISS math.h headers include bogus extern declarations of - * numerous math functions that conflict with libstdc++-v3. - */ -fix = { - hackname = windiss_math1; - files = math.h; - mach = "*-*-windiss"; - sed = "s|inline long double cosl.*|#ifndef __GNUC__|"; - - test_text = "inline long double cosl(long double);"; -}; - -fix = { - hackname = windiss_math2; - files = math.h; - mach = "*-*-windiss"; - sed = "s|/\\* long double declarations \\*/|" - "#endif /* __GNUC__ */|"; - - test_text = "/* long double declarations */"; -}; - -/* - * WindISS headers include "diab/va_list.h" instead of "stdarg.h" - */ -fix = { - select = '(#include.*)diab/va_list.h'; - hackname = windiss_valist; - sed = "s|diab/va_list.h|stdarg.h|"; - mach = "*-*-windiss"; - - test_text = "#include <diab/va_list.h>"; -}; - /* * There are several name conflicts with C++ reserved words in X11 header * files. These are fixed in some versions, so don't do the fixes if |