2000-05-03 14:21:49 -04:00
|
|
|
#!/bin/sh
|
|
|
|
# Construct makefile for libgcc.
|
|
|
|
# Copyright (C) 2000 Free Software Foundation, Inc.
|
|
|
|
#
|
|
|
|
# This file is part of GNU CC.
|
|
|
|
|
|
|
|
# Arguments, taken from the environment, since there are a lot
|
|
|
|
# of them, and positional args becomes quite ugly.
|
|
|
|
#
|
|
|
|
# objext
|
|
|
|
# LIB1ASMFUNCS
|
|
|
|
# LIB2FUNCS
|
2001-05-13 22:46:22 -04:00
|
|
|
# LIB2FUNCS_ST
|
2000-05-03 14:21:49 -04:00
|
|
|
# LIB2ADD
|
2001-04-09 19:43:06 -04:00
|
|
|
# LIB2ADD_ST
|
2001-03-28 06:04:51 -05:00
|
|
|
# LIB2ADDEH
|
|
|
|
# LIB2ADDEHDEP
|
2000-05-03 14:21:49 -04:00
|
|
|
# FPBIT
|
|
|
|
# FPBIT_FUNCS
|
|
|
|
# DPBIT
|
|
|
|
# DPBIT_FUNCS
|
|
|
|
# LIBGCC
|
|
|
|
# MULTILIBS
|
|
|
|
# EXTRA_MULTILIB_PARTS
|
2000-10-08 19:20:18 -04:00
|
|
|
# SHLIB_EXT
|
2000-10-04 16:53:29 -04:00
|
|
|
# SHLIB_LINK
|
|
|
|
# SHLIB_MULTILIB
|
2000-10-06 01:46:02 -04:00
|
|
|
# SHLIB_MKMAP
|
|
|
|
# SHLIB_MAPFILES
|
2000-10-20 21:47:05 -04:00
|
|
|
# SHLIB_NM_FLAGS
|
2001-01-07 04:27:25 -05:00
|
|
|
# SHLIB_INSTALL
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
# Make needs VPATH to be literal.
|
|
|
|
echo 'srcdir = @srcdir@'
|
|
|
|
echo 'VPATH = @srcdir@'
|
2000-05-11 16:42:39 -04:00
|
|
|
echo 'EQ = ='
|
2000-05-03 14:21:49 -04:00
|
|
|
echo
|
2000-06-02 21:39:51 -04:00
|
|
|
echo 'force:'
|
|
|
|
echo
|
2000-05-03 14:21:49 -04:00
|
|
|
|
2000-10-04 16:53:29 -04:00
|
|
|
# Disable SHLIB_LINK if shared libgcc not enabled.
|
|
|
|
if [ "@enable_shared@" = "no" ]; then
|
|
|
|
SHLIB_LINK=""
|
|
|
|
fi
|
2000-05-03 14:21:49 -04:00
|
|
|
|
2000-05-10 19:37:23 -04:00
|
|
|
# Build lines.
|
|
|
|
|
|
|
|
gcc_compile='$(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) $(INCLUDES)'
|
|
|
|
make_compile='$(MAKE) GCC_FOR_TARGET="$(GCC_FOR_TARGET)" \
|
|
|
|
AR_FOR_TARGET="$(AR_FOR_TARGET)" \
|
|
|
|
AR_CREATE_FOR_TARGET="$(AR_CREATE_FOR_TARGET)" \
|
|
|
|
AR_EXTRACT_FOR_TARGET="$(AR_EXTRACT_FOR_TARGET)" \
|
|
|
|
AR_FLAGS_FOR_TARGET="$(AR_FLAGS_FOR_TARGET)" \
|
|
|
|
CC="$(CC)" CFLAGS="$(CFLAGS)" \
|
|
|
|
HOST_PREFIX="$(HOST_PREFIX)" \
|
|
|
|
HOST_PREFIX_1="$(HOST_PREFIX_1)" \
|
|
|
|
LANGUAGES="$(LANGUAGES)"'
|
2000-05-03 14:21:49 -04:00
|
|
|
|
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-16 23:16:18 -04:00
|
|
|
# Dependencies for libgcc2.c
|
2001-03-28 06:04:51 -05:00
|
|
|
libgcc2_c_dep='stmp-dirs $(srcdir)/libgcc2.c $(CONFIG_H) $(MACHMODE_H) longlong.h gbl-ctors.h config.status stmp-int-hdrs tsystem.h'" $LIB2ADDEHDEP"
|
2000-05-03 14:21:49 -04:00
|
|
|
|
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-16 23:16:18 -04:00
|
|
|
# Dependencies for fp-bit.c
|
2000-06-05 21:56:06 -04:00
|
|
|
fpbit_c_dep='stmp-dirs config.status tsystem.h'
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
#
|
|
|
|
# Build libgcc1 components.
|
|
|
|
#
|
|
|
|
|
|
|
|
libgcc1_objs=""
|
|
|
|
|
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-16 23:16:18 -04:00
|
|
|
for name in $LIB1ASMFUNCS; do
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${name}${objext}"
|
2000-05-03 14:21:49 -04:00
|
|
|
|
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-16 23:16:18 -04:00
|
|
|
echo ${out}: stmp-dirs '$(srcdir)/config/$(LIB1ASMSRC)'
|
|
|
|
echo " $gcc_compile" $flags -DL$name -xassembler-with-cpp \
|
2000-05-10 19:37:23 -04:00
|
|
|
-c '$(srcdir)/config/$(LIB1ASMSRC)' -o $out
|
2000-06-24 19:34:25 -04:00
|
|
|
|
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-16 23:16:18 -04:00
|
|
|
# Remove any objects from LIB2FUNCS that are defined as optimized
|
|
|
|
# assembly code in LIB1ASMFUNCS.
|
|
|
|
LIB2FUNCS=`echo $LIB2FUNCS | sed -e 's/^'$name' //' \
|
|
|
|
-e 's/ '$name' / /' \
|
|
|
|
-e 's/ '$name'$//'`
|
|
|
|
done
|
|
|
|
libgcc1_objs="$libgcc1_objs ${name}${objext}"
|
|
|
|
done
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
#
|
|
|
|
# Build libgcc2 components.
|
|
|
|
#
|
|
|
|
|
|
|
|
libgcc2_objs=""
|
2001-05-13 22:46:22 -04:00
|
|
|
libgcc2_st_objs=""
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
for name in $LIB2FUNCS; do
|
|
|
|
for ml in $MULTILIBS; do
|
2000-05-11 16:42:39 -04:00
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
2000-05-03 14:21:49 -04:00
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${name}${objext}"
|
|
|
|
|
2000-06-05 21:56:06 -04:00
|
|
|
echo $out: $libgcc2_c_dep
|
2000-05-10 19:37:23 -04:00
|
|
|
echo " $gcc_compile" '$(MAYBE_USE_COLLECT2)' $flags -DL$name \
|
|
|
|
-c '$(srcdir)/libgcc2.c' -o $out
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
libgcc2_objs="$libgcc2_objs ${name}${objext}"
|
|
|
|
done
|
|
|
|
|
2001-05-13 22:46:22 -04:00
|
|
|
for name in $LIB2FUNCS_ST; do
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${name}${objext}"
|
|
|
|
|
|
|
|
echo $out: $libgcc2_c_dep
|
|
|
|
echo " $gcc_compile" '$(MAYBE_USE_COLLECT2)' $flags -DL$name \
|
|
|
|
-c '$(srcdir)/libgcc2.c' -o $out
|
|
|
|
done
|
|
|
|
libgcc2_st_objs="$libgcc2_st_objs ${name}${objext}"
|
|
|
|
done
|
|
|
|
|
2000-05-03 14:21:49 -04:00
|
|
|
if [ "$FPBIT" ]; then
|
|
|
|
for name in $FPBIT_FUNCS; do
|
|
|
|
for ml in $MULTILIBS; do
|
2000-05-11 16:42:39 -04:00
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
2000-05-03 14:21:49 -04:00
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${name}${objext}"
|
|
|
|
|
2000-06-05 21:56:06 -04:00
|
|
|
echo $out: $FPBIT $fpbit_c_dep
|
2000-05-10 19:37:23 -04:00
|
|
|
echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
|
|
|
|
-c $FPBIT -o $out
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
libgcc2_objs="$libgcc2_objs ${name}${objext}"
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$DPBIT" ]; then
|
|
|
|
for name in $DPBIT_FUNCS; do
|
|
|
|
for ml in $MULTILIBS; do
|
2000-05-11 16:42:39 -04:00
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
2000-05-03 14:21:49 -04:00
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${name}${objext}"
|
|
|
|
|
2000-06-05 21:56:06 -04:00
|
|
|
echo $out: $DPBIT $fpbit_c_dep
|
2000-05-10 19:37:23 -04:00
|
|
|
echo " $gcc_compile" -DFINE_GRAINED_LIBRARIES $flags -DL$name \
|
|
|
|
-c $DPBIT -o $out
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
libgcc2_objs="$libgcc2_objs ${name}${objext}"
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
|
|
|
|
for file in $LIB2ADD; do
|
|
|
|
name=`echo $file | sed -e 's/[.][cSo]$//' -e 's/[.]asm$//' -e 's/[.]txt$//'`
|
|
|
|
oname=`echo $name | sed -e 's,.*/,,'`
|
|
|
|
|
2000-10-09 17:13:04 -04:00
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${oname}${objext}"
|
|
|
|
if [ ${name}.asm = ${file} ]; then
|
|
|
|
flags="$flags -xassembler-with-cpp"
|
|
|
|
fi
|
2000-05-03 14:21:49 -04:00
|
|
|
|
2000-10-09 17:13:04 -04:00
|
|
|
echo $out: stmp-dirs $file
|
|
|
|
echo " $gcc_compile" $flags -c $file -o $out
|
|
|
|
done
|
|
|
|
libgcc2_objs="$libgcc2_objs ${oname}${objext}"
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
|
2001-03-28 06:04:51 -05:00
|
|
|
for file in $LIB2ADDEH; do
|
|
|
|
name=`echo $file | sed -e 's/[.][cSo]$//' -e 's/[.]asm$//' -e 's/[.]txt$//'`
|
|
|
|
oname=`echo $name | sed -e 's,.*/,,'`
|
|
|
|
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${oname}${objext}"
|
|
|
|
if [ ${name}.asm = ${file} ]; then
|
|
|
|
flags="$flags -xassembler-with-cpp"
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo $out: stmp-dirs $file
|
|
|
|
echo " $gcc_compile" $flags -fexceptions -c $file -o $out
|
|
|
|
done
|
|
|
|
libgcc2_objs="$libgcc2_objs ${oname}${objext}"
|
|
|
|
done
|
|
|
|
|
2001-04-09 19:43:06 -04:00
|
|
|
for file in $LIB2ADD_ST; do
|
|
|
|
name=`echo $file | sed -e 's/[.][cSo]$//' -e 's/[.]asm$//' -e 's/[.]txt$//'`
|
|
|
|
oname=`echo $name | sed -e 's,.*/,,'`
|
|
|
|
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
|
|
|
out="libgcc/${dir}/${oname}${objext}"
|
|
|
|
if [ ${name}.asm = ${file} ]; then
|
|
|
|
flags="$flags -xassembler-with-cpp"
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo $out: stmp-dirs $file
|
|
|
|
echo " $gcc_compile" $flags -c $file -o $out
|
|
|
|
done
|
|
|
|
libgcc2_st_objs="$libgcc2_st_objs ${oname}${objext}"
|
|
|
|
done
|
|
|
|
|
2000-10-06 01:46:02 -04:00
|
|
|
# SHLIB_MKMAP
|
|
|
|
# SHLIB_MAPFILES
|
2000-05-03 14:21:49 -04:00
|
|
|
for ml in $MULTILIBS; do
|
2000-05-11 16:42:39 -04:00
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
2000-10-04 16:53:29 -04:00
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
libgcc_objs=""
|
|
|
|
for o in $libgcc1_objs; do
|
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-16 23:16:18 -04:00
|
|
|
libgcc_objs="$libgcc_objs libgcc/${dir}/$o"
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
for o in $libgcc2_objs; do
|
|
|
|
libgcc_objs="$libgcc_objs libgcc/${dir}/$o"
|
|
|
|
done
|
2000-10-06 01:46:02 -04:00
|
|
|
shlib_deps="$libgcc_objs"
|
|
|
|
|
2001-04-09 19:43:06 -04:00
|
|
|
libgcc_st_objs=""
|
|
|
|
for o in $libgcc2_st_objs; do
|
|
|
|
libgcc_st_objs="$libgcc_st_objs libgcc/${dir}/$o"
|
|
|
|
done
|
|
|
|
|
2000-10-06 01:46:02 -04:00
|
|
|
if [ "$SHLIB_LINK" -a "$SHLIB_MKMAP" -a -z "$mapfile" ]; then
|
|
|
|
mapfile="libgcc.map"
|
|
|
|
echo ""
|
|
|
|
echo "${mapfile}: $SHLIB_MKMAP $SHLIB_MAPFILES $libgcc_objs"
|
2000-10-20 21:47:05 -04:00
|
|
|
echo ' { $(NM_FOR_TARGET)'" $SHLIB_NM_FLAGS $libgcc_objs; echo %%; cat $SHLIB_MAPFILES; } | "'$(AWK)'" -f $SHLIB_MKMAP > "'tmp-$@'
|
2000-10-06 01:46:02 -04:00
|
|
|
echo ' mv tmp-$@ $@'
|
|
|
|
fi
|
2000-10-08 19:20:18 -04:00
|
|
|
shlib_deps="$shlib_deps $mapfile"
|
2000-10-06 01:46:02 -04:00
|
|
|
|
|
|
|
# Depend on EXTRA_MULTILIB_PARTS, since that's where crtbegin/end
|
|
|
|
# usually are put in a true multilib situation.
|
|
|
|
for f in $EXTRA_MULTILIB_PARTS; do
|
|
|
|
shlib_deps="$shlib_deps $dir/$f"
|
|
|
|
done
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
echo ""
|
2001-04-09 19:43:06 -04:00
|
|
|
echo "${dir}/libgcc.a: $libgcc_objs $libgcc_st_objs"
|
2000-05-03 14:21:49 -04:00
|
|
|
echo " -rm -rf ${dir}/libgcc.a"
|
2001-04-09 19:43:06 -04:00
|
|
|
echo ' $(AR_CREATE_FOR_TARGET)' ${dir}/libgcc.a $libgcc_objs $libgcc_st_objs
|
2000-05-03 14:21:49 -04:00
|
|
|
echo ' if $(RANLIB_TEST_FOR_TARGET) ; then' \\
|
|
|
|
echo ' $(RANLIB_FOR_TARGET)' ${dir}/libgcc.a ';' \\
|
|
|
|
echo ' else true; fi;'
|
2000-10-04 16:53:29 -04:00
|
|
|
|
|
|
|
if [ "$SHLIB_LINK" ]; then
|
|
|
|
if [ -z "$SHLIB_MULTILIB" ]; then
|
|
|
|
if [ "$dir" = "." ]; then
|
|
|
|
shlib_base_name="libgcc_s";
|
|
|
|
else
|
|
|
|
shlib_base_name=libgcc_s_`echo $dir | sed s,/,_,g`
|
|
|
|
fi
|
|
|
|
echo ""
|
2000-10-08 19:20:18 -04:00
|
|
|
echo "${dir}/${shlib_base_name}${SHLIB_EXT}: $shlib_deps"
|
|
|
|
echo " $SHLIB_LINK" \
|
|
|
|
| sed -e "s%@multilib_flags@%$flags%g" \
|
|
|
|
-e "s%@multilib_dir@%$dir%g" \
|
|
|
|
-e "s%@shlib_objs@%$libgcc_objs%g" \
|
|
|
|
-e "s%@shlib_base_name@%$shlib_base_name%g" \
|
|
|
|
-e "s%@shlib_map_file@%$mapfile%g"
|
2000-10-04 16:53:29 -04:00
|
|
|
elif [ "$SHLIB_MULTILIB" = "$dir" ]; then
|
|
|
|
shlib_base_name="libgcc_s";
|
|
|
|
echo ""
|
2000-10-08 19:20:18 -04:00
|
|
|
echo "${shlib_base_name}${SHLIB_EXT}: $shlib_deps"
|
|
|
|
echo " $SHLIB_LINK" \
|
|
|
|
| sed -e "s%@multilib_flags@%$flags%g" \
|
|
|
|
-e "s%@multilib_dir@%$dir%g" \
|
|
|
|
-e "s%@shlib_objs@%$libgcc_objs%g" \
|
|
|
|
-e "s%@shlib_base_name@%$shlib_base_name%g" \
|
|
|
|
-e "s%@shlib_map_file@%$mapfile%g"
|
2000-10-04 16:53:29 -04:00
|
|
|
fi
|
|
|
|
fi
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
|
2000-09-06 10:45:28 -04:00
|
|
|
dirs=libgcc
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
if [ $dir != . ]; then
|
|
|
|
dirs="$dirs libgcc/${dir}"
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
echo ''
|
|
|
|
echo 'libgcc-stage-start:'
|
|
|
|
echo ' for dir in '"${dirs}"'; do \'
|
|
|
|
echo ' if [ -d $(stage)/$$dir ]; then true; else mkdir $(stage)/$$dir; fi; \'
|
|
|
|
echo ' done'
|
|
|
|
echo ' -for dir in '"${dirs}"'; do \'
|
|
|
|
echo ' mv $$dir/*'"${objext}"' $(stage)/$$dir; \'
|
|
|
|
echo ' done'
|
|
|
|
|
2000-05-03 14:21:49 -04:00
|
|
|
echo ""
|
2000-06-05 21:56:06 -04:00
|
|
|
all=stmp-dirs
|
|
|
|
dirs=libgcc
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
for ml in $MULTILIBS; do
|
2000-05-11 16:42:39 -04:00
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
2000-05-20 07:48:03 -04:00
|
|
|
if [ $dir != . ]; then
|
2000-06-05 21:56:06 -04:00
|
|
|
dirs="$dirs ${dir} libgcc/${dir}"
|
2000-05-03 14:21:49 -04:00
|
|
|
fi
|
|
|
|
all="$all ${dir}/libgcc.a"
|
2000-10-04 16:53:29 -04:00
|
|
|
if [ "$SHLIB_LINK" ]; then
|
|
|
|
if [ -z "$SHLIB_MULTILIB" ]; then
|
|
|
|
if [ "$dir" = "." ]; then
|
|
|
|
suff="";
|
|
|
|
else
|
|
|
|
suff=_`echo $dir | sed s,/,_,g`
|
|
|
|
fi
|
2000-10-08 19:20:18 -04:00
|
|
|
all="$all ${dir}/libgcc_s${suff}${SHLIB_EXT}"
|
2000-10-04 16:53:29 -04:00
|
|
|
elif [ "$SHLIB_MULTILIB" = "$dir" ]; then
|
2000-10-08 19:20:18 -04:00
|
|
|
all="$all libgcc_s${SHLIB_EXT}"
|
2000-10-04 16:53:29 -04:00
|
|
|
fi
|
|
|
|
fi
|
2000-05-03 14:21:49 -04:00
|
|
|
done
|
|
|
|
|
2000-06-05 21:56:06 -04:00
|
|
|
echo 'stmp-dirs: force'
|
|
|
|
echo ' for d in '"$dirs"'; do \'
|
|
|
|
echo ' if [ -d $$d ]; then true; else mkdir $$d; fi \'
|
|
|
|
echo ' done'
|
|
|
|
echo ' if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi'
|
|
|
|
|
2000-05-03 14:21:49 -04:00
|
|
|
for f in $EXTRA_MULTILIB_PARTS; do
|
|
|
|
for ml in $MULTILIBS; do
|
2000-05-11 16:42:39 -04:00
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
2000-05-03 14:21:49 -04:00
|
|
|
flags=`echo ${ml} | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`;
|
2000-11-07 22:51:34 -05:00
|
|
|
case $dir in
|
|
|
|
.) out=$f ; t= ;;
|
2000-11-09 08:56:53 -05:00
|
|
|
*) out=$dir/$f ; t=$dir/ ;;
|
|
|
|
esac
|
|
|
|
case $out in
|
|
|
|
# Prevent `make' from interpreting $out as a macro assignment
|
|
|
|
*'$(EQ)'*) targ="T_TARGET=$out T_TARGET" ;;
|
|
|
|
*) targ=$out ;;
|
2000-11-07 22:51:34 -05:00
|
|
|
esac
|
2000-05-03 14:21:49 -04:00
|
|
|
|
2000-11-07 22:51:34 -05:00
|
|
|
echo $out: stmp-dirs
|
2000-05-10 19:37:23 -04:00
|
|
|
echo " $make_compile" \\
|
|
|
|
echo ' LIBGCC2_CFLAGS="$(LIBGCC2_CFLAGS)' $flags '" ' \\
|
2000-11-09 08:56:53 -05:00
|
|
|
echo ' MULTILIB_CFLAGS="'$flags'"' T=$t $targ
|
2000-05-03 14:21:49 -04:00
|
|
|
|
|
|
|
all="$all $out"
|
|
|
|
done
|
|
|
|
done
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo "all: $all"
|
2001-01-07 04:27:25 -05:00
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo "install: $all"
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
if [ $dir != . ]; then
|
|
|
|
ldir='$(libsubdir)'/$dir
|
|
|
|
echo " if [ -d $ldir ]; then true; else mkdir $ldir; chmod a+rx $ldir; fi;"
|
|
|
|
else
|
|
|
|
ldir='$(libsubdir)'
|
|
|
|
fi
|
|
|
|
echo ' $(INSTALL_DATA)' ${dir}/libgcc.a ${ldir}/
|
|
|
|
echo ' $(RANLIB_FOR_TARGET)' ${ldir}/libgcc.a
|
|
|
|
|
|
|
|
if [ "$SHLIB_LINK" ]; then
|
|
|
|
if [ -z "$SHLIB_MULTILIB" ]; then
|
|
|
|
if [ "$dir" = "." ]; then
|
|
|
|
shlib_base_name="libgcc_s";
|
|
|
|
else
|
|
|
|
shlib_base_name=libgcc_s_`echo $dir | sed s,/,_,g`
|
|
|
|
fi
|
|
|
|
echo " $SHLIB_INSTALL" \
|
|
|
|
| sed -e "s%@shlib_base_name@%$shlib_base_name%g"
|
|
|
|
elif [ "$SHLIB_MULTILIB" = "$dir" ]; then
|
|
|
|
shlib_base_name="libgcc_s";
|
|
|
|
echo " $SHLIB_INSTALL" \
|
|
|
|
| sed -e "s%@shlib_base_name@%$shlib_base_name%g"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
for f in $EXTRA_MULTILIB_PARTS; do
|
|
|
|
for ml in $MULTILIBS; do
|
|
|
|
dir=`echo ${ml} | sed -e 's/;.*$//' -e 's/=/$(EQ)/g'`
|
|
|
|
if [ $dir != . ]; then
|
|
|
|
out=${dir}/$f
|
|
|
|
ldir='$(libsubdir)'/$dir
|
|
|
|
else
|
|
|
|
out=$f
|
|
|
|
ldir='$(libsubdir)'
|
|
|
|
fi
|
|
|
|
echo ' $(INSTALL_DATA)' $out $ldir/
|
|
|
|
done
|
|
|
|
done
|