Changes for GCC 2.7.2.2, from version 2.7.2.1. *** ./config/i386/linux.h.~1~ Thu Jun 15 09:47:44 1995 --- ./config/i386/linux.h Sun Jan 26 22:30:35 1997 *************** *** 151,161 **** --- 151,165 ---- #define CPP_PREDEFINES "-D__ELF__ -Dunix -Di386 -Dlinux -Asystem(unix) -Asystem(posix) -Acpu(i386) -Amachine(i386)" #undef CPP_SPEC + #ifdef LIBC_VERSION_1 #if TARGET_CPU_DEFAULT == 2 #define CPP_SPEC "%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{!m386:-D__i486__} %{posix:-D_POSIX_SOURCE}" #else #define CPP_SPEC "%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{m486:-D__i486__} %{posix:-D_POSIX_SOURCE}" #endif + #else /* not LIBC_VERSION_1 */ + #define CPP_SPEC "%(cpp_cpu) %[cpp_cpu] %{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" + #endif /* not LIBC_VERSION_1 */ #undef LIB_SPEC #if 1 *************** *** 190,195 **** --- 194,200 ---- /* If ELF is the default format, we should not use /lib/elf. */ #undef LINK_SPEC + #ifdef LIBC_VERSION_1 #ifndef LINUX_DEFAULT_ELF #define LINK_SPEC "-m elf_i386 %{shared:-shared} \ %{!shared: \ *************** *** 207,212 **** --- 212,233 ---- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.1}} \ %{static:-static}}}" #endif + #else /* not LIBC_VERSION_1 */ + #define LINK_SPEC "-m elf_i386 %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ + %{static:-static}}}" + #endif /* not LIBC_VERSION_1 */ + + #ifndef LIBC_VERSION_1 + #undef LIB_SPEC + #define LIB_SPEC \ + "%{!shared: %{mieee-fp:-lieee} %{pthread:-lpthread} \ + %{profile:-lc_p} %{!profile: -lc}}" + #endif /* not LIBC_VERSION_1 */ /* Get perform_* macros to build libgcc.a. */ #include "i386/perform.h" *** ./config/t-linux-libc1.~1~ Wed Dec 31 19:00:00 1969 --- ./config/t-linux-libc1 Sun Jan 26 23:54:35 1997 *************** *** 0 **** --- 1,3 ---- + # This file is used for GNU/Linux systems using + # version 1 of the GNU C Library (Linux libc version 5). + T_CFLAGS = -DLIBC_VERSION_1 *** ./config.guess.~1~ Sun Nov 26 14:56:22 1995 --- ./config.guess Wed Jan 29 16:00:30 1997 *************** *** 319,327 **** # The BFD linker knows what the default object file format is, so # first see if it will tell us. ld_help_string=`ld --help 2>&1` ! if echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf_i[345]86"; then ! echo "${UNAME_MACHINE}-unknown-linux" ; exit 0 ! elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86linux"; then echo "${UNAME_MACHINE}-unknown-linuxaout" ; exit 0 elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86coff"; then echo "${UNAME_MACHINE}-unknown-linuxcoff" ; exit 0 --- 319,327 ---- # The BFD linker knows what the default object file format is, so # first see if it will tell us. ld_help_string=`ld --help 2>&1` ! # if echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf_i[345]86"; then ! # echo "${UNAME_MACHINE}-unknown-linux" ; exit 0 ! if echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86linux"; then echo "${UNAME_MACHINE}-unknown-linuxaout" ; exit 0 elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86coff"; then echo "${UNAME_MACHINE}-unknown-linuxcoff" ; exit 0 *************** *** 329,345 **** echo alpha-unknown-linux ; exit 0 else # Either a pre-BFD a.out linker (linuxoldld) or one that does not give us ! # useful --help. Gcc wants to distinguish between linuxoldld and linuxaout. test ! -d /usr/lib/ldscripts/. \ && echo "${UNAME_MACHINE}-unknown-linuxoldld" && exit 0 # Determine whether the default compiler is a.out or elf cat >dummy.c <dummy.c < main(argc, argv) int argc; char *argv[]; { #ifdef __ELF__ ! # ifdef __GLIBC__ ! # if __GLIBC__ >= 2 ! printf ("%s-unknown-linux\n", argv[1]); ! # else ! printf ("%s-unknown-linuxlibc1\n", argv[1]); ! # endif ! # else ! printf ("%s-unknown-linuxlibc1\n", argv[1]); ! # endif #else printf ("%s-unknown-linuxaout\n", argv[1]); #endif *** ./INSTALL.~1~ Tue Jul 2 07:19:38 1996 --- ./INSTALL Sun Jan 26 23:51:03 1997 *************** *** 695,700 **** --- 695,705 ---- GNU systems. This configuration is being superseded. You must use gas/binutils version 2.5.2 or later. + `i386-*-linuxlibc1' + Use this configuration to generate ELF binaries on Linux-based GNU + systems using GNU libc version 1 (Linux libc version 5). You must + use gas/binutils version 2.5.2 or later. + `i386-*-linux' Use this configuration to generate ELF binaries on Linux-based GNU systems. You must use gas/binutils version 2.5.2 or later. *** ./configure.~1~ Sun Nov 26 14:39:15 1995 --- ./configure Thu Jan 30 17:20:15 1997 *************** *** 844,850 **** xm_file=i370/xm-mvs.h out_file=i370/mvs370.c ;; ! i[345]86-ibm-aix*) # IBM PS/2 running AIX cpu_type=i386 if [ x$gas = xyes ] then --- 844,850 ---- xm_file=i370/xm-mvs.h out_file=i370/mvs370.c ;; ! i[3456]86-ibm-aix*) # IBM PS/2 running AIX cpu_type=i386 if [ x$gas = xyes ] then *************** *** 867,873 **** extra_parts="crtbegin.o crtend.o" tmake_file=i386/t-crtpic ;; ! i[345]86-next-*) cpu_type=i386 tm_file=i386/next.h out_file=i386/next.c --- 867,873 ---- extra_parts="crtbegin.o crtend.o" tmake_file=i386/t-crtpic ;; ! i[3456]86-next-*) cpu_type=i386 tm_file=i386/next.h out_file=i386/next.c *************** *** 875,881 **** tmake_file=i386/t-next xmake_file=i386/x-next ;; ! i[345]86-sequent-bsd*) # 80386 from Sequent cpu_type=i386 use_collect2=yes if [ x$gas = xyes ] --- 875,881 ---- tmake_file=i386/t-next xmake_file=i386/x-next ;; ! i[3456]86-sequent-bsd*) # 80386 from Sequent cpu_type=i386 use_collect2=yes if [ x$gas = xyes ] *************** *** 885,891 **** tm_file=i386/sequent.h fi ;; ! i[345]86-sequent-ptx1*) cpu_type=i386 xm_file=i386/xm-sysv3.h xmake_file=i386/x-sysv3 --- 885,891 ---- tm_file=i386/sequent.h fi ;; ! i[3456]86-sequent-ptx1*) cpu_type=i386 xm_file=i386/xm-sysv3.h xmake_file=i386/x-sysv3 *************** *** 896,902 **** install_headers_dir=install-headers-cpio broken_install=yes ;; ! i[345]86-sequent-ptx2* | i[345]86-sequent-sysv*) cpu_type=i386 xm_file=i386/xm-sysv3.h xmake_file=i386/x-sysv3 --- 896,902 ---- install_headers_dir=install-headers-cpio broken_install=yes ;; ! i[3456]86-sequent-ptx2* | i[3456]86-sequent-sysv*) cpu_type=i386 xm_file=i386/xm-sysv3.h xmake_file=i386/x-sysv3 *************** *** 912,929 **** tm_file=i386/sun.h use_collect2=yes ;; ! i[345]86-*-aout*) cpu_type=i386 tm_file=i386/i386-aout.h tmake_file=i386/t-i386bare ;; ! i[345]86-*-bsdi* | i[345]86-*-bsd386*) cpu_type=i386 tm_file=i386/bsd386.h xm_file=i386/xm-bsd386.h # tmake_file=t-libc-ok ;; ! i[345]86-*-bsd*) cpu_type=i386 tm_file=i386/386bsd.h xm_file=i386/xm-bsd386.h --- 912,929 ---- tm_file=i386/sun.h use_collect2=yes ;; ! i[3456]86-*-aout*) cpu_type=i386 tm_file=i386/i386-aout.h tmake_file=i386/t-i386bare ;; ! i[3456]86-*-bsdi* | i[3456]86-*-bsd386*) cpu_type=i386 tm_file=i386/bsd386.h xm_file=i386/xm-bsd386.h # tmake_file=t-libc-ok ;; ! i[3456]86-*-bsd*) cpu_type=i386 tm_file=i386/386bsd.h xm_file=i386/xm-bsd386.h *************** *** 931,937 **** # Next line turned off because both 386BSD and BSD/386 use GNU ld. # use_collect2=yes ;; ! i[345]86-*-freebsd*) cpu_type=i386 tm_file=i386/freebsd.h xm_file=i386/xm-freebsd.h --- 931,937 ---- # Next line turned off because both 386BSD and BSD/386 use GNU ld. # use_collect2=yes ;; ! i[3456]86-*-freebsd*) cpu_type=i386 tm_file=i386/freebsd.h xm_file=i386/xm-freebsd.h *************** *** 939,945 **** fixincludes=Makefile.in xmake_file=i386/x-freebsd ;; ! i[345]86-*-netbsd*) cpu_type=i386 tm_file=i386/netbsd.h xm_file=i386/xm-netbsd.h --- 939,945 ---- fixincludes=Makefile.in xmake_file=i386/x-freebsd ;; ! i[3456]86-*-netbsd*) cpu_type=i386 tm_file=i386/netbsd.h xm_file=i386/xm-netbsd.h *************** *** 948,966 **** tmake_file=t-libc-ok xmake_file=x-netbsd ;; ! i[345]86-*-coff*) cpu_type=i386 tm_file=i386/i386-coff.h tmake_file=i386/t-i386bare ;; ! i[345]86-*-gnu*) cpu_type=i386 # GNU supports this CPU; rest done below. ;; ! i[345]86-*-isc*) # 80386 running ISC system cpu_type=i386 xm_file=i386/xm-isc.h case $machine in ! i[345]86-*-isc[34]*) xmake_file=i386/x-isc3 ;; *) --- 948,966 ---- tmake_file=t-libc-ok xmake_file=x-netbsd ;; ! i[3456]86-*-coff*) cpu_type=i386 tm_file=i386/i386-coff.h tmake_file=i386/t-i386bare ;; ! i[3456]86-*-gnu*) cpu_type=i386 # GNU supports this CPU; rest done below. ;; ! i[3456]86-*-isc*) # 80386 running ISC system cpu_type=i386 xm_file=i386/xm-isc.h case $machine in ! i[3456]86-*-isc[34]*) xmake_file=i386/x-isc3 ;; *) *************** *** 981,1021 **** install_headers_dir=install-headers-cpio broken_install=yes ;; ! i[345]86-*-linux*oldld*) # Intel 80386's running Linux cpu_type=i386 # with a.out format using pre BFD linkers xm_file=i386/xm-linux.h xmake_file=x-linux tm_file=i386/linux-oldld.h ! fixincludes=Makefile.in #On Linux, the headers are ok already. broken_install=yes gnu_ld=yes ;; ! i[345]86-*-linux*aout*) # Intel 80386's running Linux cpu_type=i386 # with a.out format xm_file=i386/xm-linux.h xmake_file=x-linux tm_file=i386/linux-aout.h ! fixincludes=Makefile.in #On Linux, the headers are ok already. broken_install=yes gnu_ld=yes ;; ! i[345]86-*-linux*) # Intel 80386's running Linux ! cpu_type=i386 # with ELF format xm_file=i386/xm-linux.h xmake_file=x-linux tm_file=i386/linux.h ! fixincludes=Makefile.in #On Linux, the headers are ok already. broken_install=yes gnu_ld=yes ! # Don't use it. Linux uses a slightly different one. ! # The real one comes with the Linux C library. #extra_parts="crtbegin.o crtend.o" ;; ! i[345]86-go32-msdos | i[345]86-*-go32) cpu_type=i386 tm_file=i386/go32.h ;; ! i[345]86-*-lynxos*) cpu_type=i386 if [ x$gas = xyes ] then --- 981,1033 ---- install_headers_dir=install-headers-cpio broken_install=yes ;; ! i[3456]86-*-linux*oldld*) # Intel 80386's running GNU/Linux cpu_type=i386 # with a.out format using pre BFD linkers xm_file=i386/xm-linux.h xmake_file=x-linux tm_file=i386/linux-oldld.h ! fixincludes=Makefile.in # The headers are ok already. broken_install=yes gnu_ld=yes ;; ! i[3456]86-*-linux*aout*) # Intel 80386's running GNU/Linux cpu_type=i386 # with a.out format xm_file=i386/xm-linux.h xmake_file=x-linux tm_file=i386/linux-aout.h ! fixincludes=Makefile.in # The headers are ok already. broken_install=yes gnu_ld=yes ;; ! i[3456]86-*-linuxlibc1*) # Intel 80386's running GNU/Linux ! cpu_type=i386 # with ELF format, using GNU libc v1. xm_file=i386/xm-linux.h xmake_file=x-linux + tmake_file=t-linux-libc1 tm_file=i386/linux.h ! fixincludes=Makefile.in # The headers are ok already. broken_install=yes gnu_ld=yes ! # GNU libc v1 supplies these. #extra_parts="crtbegin.o crtend.o" ;; ! i[3456]86-*-linux*) # Intel 80386's running GNU/Linux ! cpu_type=i386 # with ELF format ! xm_file=i386/xm-linux.h ! xmake_file=x-linux ! tm_file=i386/linux.h ! fixincludes=Makefile.in # The headers are ok already. ! broken_install=yes ! gnu_ld=yes ! # GNU libc version 2 does not supply these; ! # we want them from GCC. ! extra_parts="crtbegin.o crtend.o" ! ;; ! i[3456]86-go32-msdos | i[3456]86-*-go32) cpu_type=i386 tm_file=i386/go32.h ;; ! i[3456]86-*-lynxos*) cpu_type=i386 if [ x$gas = xyes ] then *************** *** 1027,1039 **** tmake_file=i386/t-i386bare xmake_file=x-lynx ;; ! i[345]86-*-mach*) cpu_type=i386 tm_file=i386/mach.h # tmake_file=t-libc-ok use_collect2=yes ;; ! i[345]86-*-osfrose*) # 386 using OSF/rose cpu_type=i386 if [ x$elf = xyes ] then --- 1039,1051 ---- tmake_file=i386/t-i386bare xmake_file=x-lynx ;; ! i[3456]86-*-mach*) cpu_type=i386 tm_file=i386/mach.h # tmake_file=t-libc-ok use_collect2=yes ;; ! i[3456]86-*-osfrose*) # 386 using OSF/rose cpu_type=i386 if [ x$elf = xyes ] then *************** *** 1047,1053 **** xmake_file=i386/x-osfrose extra_objs=halfpic.o ;; ! i[345]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system cpu_type=i386 xm_file=i386/xm-sco.h xmake_file=i386/x-sco4 --- 1059,1065 ---- xmake_file=i386/x-osfrose extra_objs=halfpic.o ;; ! i[3456]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system cpu_type=i386 xm_file=i386/xm-sco.h xmake_file=i386/x-sco4 *************** *** 1065,1071 **** extra_parts="crtbegin.o crtend.o" fi ;; ! i[345]86-*-sco*) # 80386 running SCO system cpu_type=i386 xm_file=i386/xm-sco.h xmake_file=i386/x-sco --- 1077,1083 ---- extra_parts="crtbegin.o crtend.o" fi ;; ! i[3456]86-*-sco*) # 80386 running SCO system cpu_type=i386 xm_file=i386/xm-sco.h xmake_file=i386/x-sco *************** *** 1083,1089 **** fi truncate_target=yes ;; ! i[345]86-*-solaris2* | i[345]86-*-sunos5*) cpu_type=i386 xm_file=i386/xm-sysv4.h tm_file=i386/sol2.h --- 1095,1101 ---- fi truncate_target=yes ;; ! i[3456]86-*-solaris2* | i[3456]86-*-sunos5*) cpu_type=i386 xm_file=i386/xm-sysv4.h tm_file=i386/sol2.h *************** *** 1093,1099 **** fixincludes=fixinc.svr4 broken_install=yes ;; ! i[345]86-*-sysv4*) # Intel 80386's running system V.4 cpu_type=i386 xm_file=i386/xm-sysv4.h if [ x$stabs = xyes ] --- 1105,1111 ---- fixincludes=fixinc.svr4 broken_install=yes ;; ! i[3456]86-*-sysv4*) # Intel 80386's running system V.4 cpu_type=i386 xm_file=i386/xm-sysv4.h if [ x$stabs = xyes ] *************** *** 1106,1112 **** xmake_file=x-svr4 extra_parts="crtbegin.o crtend.o" ;; ! i[345]86-*-sysv*) # Intel 80386's running system V cpu_type=i386 xm_file=i386/xm-sysv3.h xmake_file=i386/x-sysv3 --- 1118,1124 ---- xmake_file=x-svr4 extra_parts="crtbegin.o crtend.o" ;; ! i[3456]86-*-sysv*) # Intel 80386's running system V cpu_type=i386 xm_file=i386/xm-sysv3.h xmake_file=i386/x-sysv3 *************** *** 1134,1140 **** tmake_file=i386/t-vsta xmake_file=i386/x-vsta ;; ! i[345]86-*-winnt3*) cpu_type=i386 tm_file=i386/win-nt.h out_file=i386/i386.c --- 1146,1152 ---- tmake_file=i386/t-vsta xmake_file=i386/x-vsta ;; ! i[3456]86-*-winnt3*) cpu_type=i386 tm_file=i386/win-nt.h out_file=i386/i386.c *************** *** 1523,1548 **** extra_parts="crtbegin.o crtend.o" extra_headers=math-68881.h ;; ! m68k-*-linux*aout*) # Motorola m68k's running Linux xm_file=m68k/xm-linux.h # with a.out format xmake_file=x-linux tm_file=m68k/linux-aout.h tmake_file=m68k/t-linux ! fixincludes=Makefile.in #On Linux, the headers are ok already. extra_headers=math-68881.h gnu_ld=yes ;; ! m68k-*-linux*) # Motorola m68k's running Linux xm_file=m68k/xm-linux.h # with ELF format xmake_file=x-linux tm_file=m68k/linux.h tmake_file=m68k/t-linux ! fixincludes=Makefile.in #On Linux, the headers are ok already. extra_headers=math-68881.h gnu_ld=yes ! # Don't use it. Linux uses a slightly different one. ! # The real one comes with the Linux C library. ! #extra_parts="crtbegin.o crtend.o" ;; m88k-dg-dgux*) case $machine in --- 1535,1558 ---- extra_parts="crtbegin.o crtend.o" extra_headers=math-68881.h ;; ! m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux xm_file=m68k/xm-linux.h # with a.out format xmake_file=x-linux tm_file=m68k/linux-aout.h tmake_file=m68k/t-linux ! fixincludes=Makefile.in # The headers are ok already. extra_headers=math-68881.h gnu_ld=yes ;; ! m68k-*-linux*) # Motorola m68k's running GNU/Linux xm_file=m68k/xm-linux.h # with ELF format xmake_file=x-linux tm_file=m68k/linux.h tmake_file=m68k/t-linux ! fixincludes=Makefile.in # The headers are ok already. extra_headers=math-68881.h gnu_ld=yes ! extra_parts="crtbegin.o crtend.o" ;; m88k-dg-dgux*) case $machine in *************** *** 2535,2541 **** case $lang in ..) ;; # The odd quoting in the next line works around ! # an apparent bug in bash 1.12 on linux. ${srcdir}/[*]/config-lang.in) ;; *) subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`" ;; esac --- 2545,2551 ---- case $lang in ..) ;; # The odd quoting in the next line works around ! # an apparent bug in bash 1.12 on GNU/Linux. ${srcdir}/[*]/config-lang.in) ;; *) subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`" ;; esac *************** *** 2543,2549 **** # Are we using gcc as the native compiler? case $canon_host in ! *linux*) # All Linux's use gcc as the native compiler. prefix=$native_prefix ;; esac --- 2553,2559 ---- # Are we using gcc as the native compiler? case $canon_host in ! *linux*) # All GNU/Linux systems use gcc as the native compiler. prefix=$native_prefix ;; esac *** ./version.c.~1~ Wed Jul 24 14:55:50 1996 --- ./version.c Sun Jan 26 23:57:42 1997 *************** *** 1 **** ! char *version_string = "2.7.2.1"; --- 1 ---- ! char *version_string = "2.7.2.2"; *** ./install.texi.~1~ Sat Jun 29 12:27:34 1996 --- ./install.texi Sun Jan 26 23:51:06 1997 *************** *** 814,819 **** --- 814,824 ---- systems. This configuration is being superseded. You must use gas/binutils version 2.5.2 or later. + @item i386-*-linuxlibc1 + Use this configuration to generate ELF binaries on Linux-based GNU + systems using GNU libc version 1 (Linux libc version 5). You must use + gas/binutils version 2.5.2 or later. + @item i386-*-linux Use this configuration to generate ELF binaries on Linux-based GNU systems. You must use gas/binutils version 2.5.2 or later. *** ./README.~1~ Sun Nov 26 14:55:48 1995 --- ./README Thu Jan 30 03:23:35 1997 *************** *** 1,6 **** ! This directory contains the version 2.7.2 release of the GNU C compiler. It includes all of the support for compiling C++ and Objective C, including a run-time library for Objective C. The GNU C compiler is free software. See the file COPYING for copying permission. --- 1,9 ---- ! This directory contains the version 2.7.2.2 release of the GNU C compiler. It includes all of the support for compiling C++ and Objective C, including a run-time library for Objective C. + + The reason for the 2.7.2.2 release is to add support for GNU C library + version 2 on GNU/Linux systems. The GNU C compiler is free software. See the file COPYING for copying permission.