diff options
author | drow <drow@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-04 04:22:37 +0000 |
---|---|---|
committer | drow <drow@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-04 04:22:37 +0000 |
commit | 894a47b43cc5eb4302f36c91b9d611b79256e98a (patch) | |
tree | ecf7edd5c93f496f2642ef1338e111c0d7a42345 /gcc/config | |
parent | 2fadd1c8e8c9aa4e32c06e62db0e7a6d6961ddb0 (diff) | |
download | ppe42-gcc-894a47b43cc5eb4302f36c91b9d611b79256e98a.tar.gz ppe42-gcc-894a47b43cc5eb4302f36c91b9d611b79256e98a.zip |
./
* Makefile.def (target_modules): Add libgcc.
(lang_env_dependencies): Remove default items. Use no_c and no_gcc.
* Makefile.tpl (clean-target-libgcc): Delete.
(configure-target-[+module+]): Emit --disable-bootstrap dependencies
on gcc even for bootstrapped modules. Rewrite handling of
lang_env_dependencies to loop over target_modules.
* configure.in (target_libraries): Add target-libgcc.
* Makefile.in, configure: Regenerated.
gcc/
* config.gcc: Mention libgcc/config.host.
* Makefile.in: Update comments mentioning libgcc.
(LIBGCC, INSTALL_LIBGCC, GCC_PARTS, mklibgcc): Delete.
(all.cross, start.encap, rest.encap, rest.cross): Update
dependencies for libgcc move.
(libgcc.mk, LIBGCC_DEPS, libgcov.a, libgcc.a, stmp-multilib)
(clean-target, clean-target-libgcc): Delete.
(srcdirify, GCC_EXTRA_PARTS): New macros.
(libgcc-support, libgcc.mvars): New rules.
(distclean): Remove mention of mklibgcc.
(install): Don't reference INSTALL_LIBGCC.
(install-common): Don't reference EXTRA_PARTS.
(install-libgcc, install-multilib): Delete rules.
* mklibgcc.in: Delete file.
* doc/configfiles.texi: Don't mention mklibgcc.
* config/i386/t-darwin (SHLIB_VERPFX): Delete (moved to libgcc).
* config/i386/t-darwin64 (SHLIB_VERPFX): Likewise.
* config/rs6000/t-darwin (SHLIB_VERPFX): Likewise.
* config/rs6000/t-ppccomm (TARGET_LIBGCC2_CFLAGS, SHLIB_MAPFILES)
(mklibgcc, ldblspecs): Likewise.
* config/i386/t-nwld (libgcc.def, libc.def, libpcre.def)
(posixpre.def): Use $(T).
(SHLIB_EXT, SHLIB_NAME, SHLIB_SLIBDIR_QUAL, SHLIB_DEF, SHLIB_MAP)
(SHLIB_SRC, SHLIB_INSTALL): Delete.
(SHLIB_LINK): Make dummy.
* config/t-slibgcc-darwin: Delete contents except for dummy SHLIB_LINK.
* config/frv/t-linux (EXTRA_MULTILIB_PARTS): Clear.
* config/alpha/t-crtfm: Use $(T) in rules for EXTRA_PARTS.
* config/alpha/t-vms, config/alpha/t-vms64, config/fr30/t-fr30,
config/i386/t-rtems-i386, config/ia64/t-ia64, config/rs6000/t-beos,
config/rs6000/t-newas, config/sparc/t-elf: Likewise.
* configure.ac (all_outputs): Remove mklibgcc.
* configure: Regenerated.
libgcc/
* Makefile.in, config/i386/t-darwin, config/i386/t-darwin64,
config/i386/t-nwld, config/rs6000/t-darwin, config/rs6000/t-ldbl128,
config/i386/t-crtfm, config/alpha/t-crtfm, config/ia64/t-ia64,
config/sparc/t-crtfm, config/t-slibgcc-darwin,
config/rs6000/t-ppccomm, config.host, configure.ac, empty.mk,
shared-object.mk, siditi-object.mk, static-object.mk: New files.
* configure: Generated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120429 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/alpha/t-crtfm | 4 | ||||
-rw-r--r-- | gcc/config/alpha/t-vms | 12 | ||||
-rw-r--r-- | gcc/config/alpha/t-vms64 | 8 | ||||
-rw-r--r-- | gcc/config/fr30/t-fr30 | 8 | ||||
-rw-r--r-- | gcc/config/frv/t-linux | 3 | ||||
-rw-r--r-- | gcc/config/i386/t-darwin | 1 | ||||
-rw-r--r-- | gcc/config/i386/t-darwin64 | 1 | ||||
-rw-r--r-- | gcc/config/i386/t-nwld | 43 | ||||
-rw-r--r-- | gcc/config/i386/t-rtems-i386 | 8 | ||||
-rw-r--r-- | gcc/config/ia64/t-ia64 | 20 | ||||
-rw-r--r-- | gcc/config/rs6000/t-beos | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/t-darwin | 2 | ||||
-rw-r--r-- | gcc/config/rs6000/t-newas | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/t-ppccomm | 12 | ||||
-rw-r--r-- | gcc/config/sparc/t-elf | 8 | ||||
-rw-r--r-- | gcc/config/t-slibgcc-darwin | 103 |
16 files changed, 51 insertions, 194 deletions
diff --git a/gcc/config/alpha/t-crtfm b/gcc/config/alpha/t-crtfm index 5ca8c3f747d..b4103834aca 100644 --- a/gcc/config/alpha/t-crtfm +++ b/gcc/config/alpha/t-crtfm @@ -1,5 +1,5 @@ EXTRA_PARTS += crtfastmath.o -crtfastmath.o: $(srcdir)/config/alpha/crtfastmath.c $(GCC_PASSES) +$(T)crtfastmath.o: $(srcdir)/config/alpha/crtfastmath.c $(GCC_PASSES) $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -frandom-seed=gcc-crtfastmath -c \ - -o crtfastmath.o $(srcdir)/config/alpha/crtfastmath.c + -o $(T)crtfastmath.o $(srcdir)/config/alpha/crtfastmath.c diff --git a/gcc/config/alpha/t-vms b/gcc/config/alpha/t-vms index 516d3ec6ec1..d1a98e2a5f8 100644 --- a/gcc/config/alpha/t-vms +++ b/gcc/config/alpha/t-vms @@ -7,18 +7,18 @@ EXTRA_PARTS = vms-dwarf2.o vms-dwarf2eh.o $(VMS_EXTRA_PARTS) # This object must be linked with in order to make the executable debuggable. # vms-ld handles it automatically when passed -g. -vms-dwarf2.o : $(srcdir)/config/alpha/vms-dwarf2.asm +$(T)vms-dwarf2.o : $(srcdir)/config/alpha/vms-dwarf2.asm gcc -c -x assembler $< -o $@ -vms-dwarf2eh.o : $(srcdir)/config/alpha/vms-dwarf2eh.asm +$(T)vms-dwarf2eh.o : $(srcdir)/config/alpha/vms-dwarf2eh.asm gcc -c -x assembler $< -o $@ # Assemble startup files. -vcrt0.o: $(CRT0_S) $(GCC_PASSES) - decc -c /names=as_is $(srcdir)/config/alpha/vms-crt0.c -o vcrt0.o +$(T)vcrt0.o: $(CRT0_S) $(GCC_PASSES) + decc -c /names=as_is $(srcdir)/config/alpha/vms-crt0.c -o $(T)vcrt0.o -pcrt0.o: $(CRT0_S) $(GCC_PASSES) - decc -c /names=as_is $(srcdir)/config/alpha/vms-psxcrt0.c -o pcrt0.o +$(T)pcrt0.o: $(CRT0_S) $(GCC_PASSES) + decc -c /names=as_is $(srcdir)/config/alpha/vms-psxcrt0.c -o $(T)pcrt0.o MULTILIB_OPTIONS = mcpu=ev6 MULTILIB_DIRNAMES = ev6 diff --git a/gcc/config/alpha/t-vms64 b/gcc/config/alpha/t-vms64 index e3fc3be6435..38503a96429 100644 --- a/gcc/config/alpha/t-vms64 +++ b/gcc/config/alpha/t-vms64 @@ -1,8 +1,8 @@ # Assemble startup files. -vcrt0.o: $(CRT0_S) $(GCC_PASSES) +$(T)vcrt0.o: $(CRT0_S) $(GCC_PASSES) decc -c /names=as_is /pointer_size=64 \ - $(srcdir)/config/alpha/vms-crt0-64.c -o vcrt0.o + $(srcdir)/config/alpha/vms-crt0-64.c -o $(T)vcrt0.o -pcrt0.o: $(CRT0_S) $(GCC_PASSES) +$(T)pcrt0.o: $(CRT0_S) $(GCC_PASSES) decc -c /names=as_is /pointer_size=64 \ - $(srcdir)/config/alpha/vms-psxcrt0-64.c -o pcrt0.o + $(srcdir)/config/alpha/vms-psxcrt0-64.c -o $(T)pcrt0.o diff --git a/gcc/config/fr30/t-fr30 b/gcc/config/fr30/t-fr30 index 5ee0808e0da..ede5cb79c3c 100644 --- a/gcc/config/fr30/t-fr30 +++ b/gcc/config/fr30/t-fr30 @@ -2,11 +2,11 @@ LIB1ASMSRC = fr30/lib1funcs.asm LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 # Assemble startup files. -crti.o: $(srcdir)/config/fr30/crti.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -o crti.o -x assembler $(srcdir)/config/fr30/crti.asm +$(T)crti.o: $(srcdir)/config/fr30/crti.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -c -o $(T)crti.o -x assembler $(srcdir)/config/fr30/crti.asm -crtn.o: $(srcdir)/config/fr30/crtn.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -o crtn.o -x assembler $(srcdir)/config/fr30/crtn.asm +$(T)crtn.o: $(srcdir)/config/fr30/crtn.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -c -o $(T)crtn.o -x assembler $(srcdir)/config/fr30/crtn.asm # We want fine grained libraries, so use the new code to build the # floating point emulation libraries. diff --git a/gcc/config/frv/t-linux b/gcc/config/frv/t-linux index 298f59b0b4d..38cea1b58c4 100644 --- a/gcc/config/frv/t-linux +++ b/gcc/config/frv/t-linux @@ -5,6 +5,9 @@ MULTILIB_MATCHES= MULTILIB_EXCEPTIONS= MULTILIB_EXTRA_OPTS= +# We don't use frvbegin.o or frvend.o. +EXTRA_MULTILIB_PARTS = + CRTSTUFF_T_CFLAGS = -fPIC TARGET_LIBGCC2_CFLAGS = -fPIC diff --git a/gcc/config/i386/t-darwin b/gcc/config/i386/t-darwin index e79f3355aaa..fb5bbe78c04 100644 --- a/gcc/config/i386/t-darwin +++ b/gcc/config/i386/t-darwin @@ -1,4 +1,3 @@ -SHLIB_VERPFX = $(srcdir)/config/i386/darwin-libgcc MULTILIB_OPTIONS = m64 MULTILIB_DIRNAMES = x86_64 LIB2_SIDITI_CONV_FUNCS=yes diff --git a/gcc/config/i386/t-darwin64 b/gcc/config/i386/t-darwin64 index e7875864b18..5143e3819dc 100644 --- a/gcc/config/i386/t-darwin64 +++ b/gcc/config/i386/t-darwin64 @@ -1,3 +1,2 @@ -SHLIB_VERPFX = $(srcdir)/config/i386/darwin-libgcc LIB2_SIDITI_CONV_FUNCS=yes LIB2FUNCS_EXTRA = $(srcdir)/config/darwin-64.c diff --git a/gcc/config/i386/t-nwld b/gcc/config/i386/t-nwld index 6f6905541ec..db5b905b7e3 100644 --- a/gcc/config/i386/t-nwld +++ b/gcc/config/i386/t-nwld @@ -4,18 +4,18 @@ CRT0STUFF_T_CFLAGS = -mpreferred-stack-boundary=2 $(INCLUDES) CRT0_S = $(srcdir)/config/i386/netware-crt0.c MCRT0_S = $(srcdir)/config/i386/netware-crt0.c -libgcc.def: $(srcdir)/config/i386/t-nwld +$(T)libgcc.def: $(srcdir)/config/i386/t-nwld echo "module libgcc_s" >$@ -libc.def: $(srcdir)/config/i386/t-nwld +$(T)libc.def: $(srcdir)/config/i386/t-nwld echo "module libc" >$@ -libcpre.def: $(srcdir)/config/i386/t-nwld +$(T)libcpre.def: $(srcdir)/config/i386/t-nwld echo "start _LibCPrelude" >$@ echo "exit _LibCPostlude" >>$@ echo "check _LibCCheckUnload" >>$@ -posixpre.def: $(srcdir)/config/i386/t-nwld +$(T)posixpre.def: $(srcdir)/config/i386/t-nwld echo "start POSIX_Start" >$@ echo "exit POSIX_Stop" >>$@ echo "check POSIX_CheckUnload" >>$@ @@ -26,36 +26,5 @@ nwld.o: $(srcdir)/config/i386/nwld.c $(RTL_H) $(TREE_H) $(CONFIG_H) $(TM_P_H) s-crt0: $(srcdir)/unwind-dw2-fde.h -# Build a shared libgcc library for NetWare. - -SHLIB_EXT = .nlm -SHLIB_NAME = @shlib_base_name@.nlm -SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@ -SHLIB_DEF = $(srcdir)/config/i386/netware-libgcc.def -SHLIB_MAP = $(srcdir)/config/i386/netware-libgcc.exp -SHLIB_SRC = $(srcdir)/config/i386/netware-libgcc.c - -SHLIB_LINK = set -e; \ - cat $(SHLIB_DEF) >@shlib_base_name@.def; \ - echo "name $(SHLIB_NAME)" >>@shlib_base_name@.def; \ - echo "version $(version)" | sed "s!\.!,!g" >>@shlib_base_name@.def; \ - touch libgcc/build; \ - echo "build $$$$(expr $$$$(<libgcc/build) + 0)" >>@shlib_base_name@.def; \ - echo "export @$(SHLIB_MAP)" >>@shlib_base_name@.def; \ - if mpkxdc -n -p @shlib_base_name@.xdc; \ - then echo "xdcdata @shlib_base_name@.xdc" >>@shlib_base_name@.def; \ - else echo "WARNING: $(SHLIB_NAME) built without XDC data will not work well." 1>&2; \ - fi; \ - $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -o $(SHLIB_NAME) \ - $(SHLIB_SRC) -posix -static-libgcc -lnetware \ - -Wl,--Map,--map-info,full,--strip-all,--def-file,@shlib_base_name@.def; \ - rm -f @shlib_base_name@.imp; $(LN_S) $(SHLIB_MAP) @shlib_base_name@.imp; \ - rm -f libgcc.imp; $(LN_S) @shlib_base_name@.imp libgcc.imp; \ - expr $$$$(<libgcc/build) + 1 >libgcc/build - -# $(slibdir) double quoted to protect it from expansion while building -# libgcc.mk. We want this delayed until actual install time. -SHLIB_INSTALL = \ - $$(SHELL) $(srcdir)/mkinstalldirs $$(slibdir)$(SHLIB_SLIBDIR_QUAL); \ - $$(INSTALL_DATA) $(SHLIB_NAME) $$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_NAME); \ - $$(INSTALL_DATA) @shlib_base_name@.imp $$(DESTDIR)$$(libsubdir)/ +# To keep DRIVER_DEFINES correct. +SHLIB_LINK = dummy diff --git a/gcc/config/i386/t-rtems-i386 b/gcc/config/i386/t-rtems-i386 index 9400be8f508..6486e09f222 100644 --- a/gcc/config/i386/t-rtems-i386 +++ b/gcc/config/i386/t-rtems-i386 @@ -5,12 +5,12 @@ # version of these files. # -crti.o: $(srcdir)/config/i386/sol2-ci.asm $(GCC_PASSES) +$(T)crti.o: $(srcdir)/config/i386/sol2-ci.asm $(GCC_PASSES) sed -e '/^!/d' <$(srcdir)/config/i386/sol2-ci.asm >crti.s - $(GCC_FOR_TARGET) -c -o crti.o crti.s -crtn.o: $(srcdir)/config/i386/sol2-cn.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -c -o $(T)crti.o crti.s +$(T)crtn.o: $(srcdir)/config/i386/sol2-cn.asm $(GCC_PASSES) sed -e '/^!/d' <$(srcdir)/config/i386/sol2-cn.asm >crtn.s - $(GCC_FOR_TARGET) -c -o crtn.o crtn.s + $(GCC_FOR_TARGET) -c -o $(T)crtn.o crtn.s # We want fine grained libraries, so use the new code to build the # floating point emulation libraries. diff --git a/gcc/config/ia64/t-ia64 b/gcc/config/ia64/t-ia64 index 60535882bb7..bba12fa9684 100644 --- a/gcc/config/ia64/t-ia64 +++ b/gcc/config/ia64/t-ia64 @@ -24,21 +24,21 @@ SHLIB_MAPFILES += $(srcdir)/config/ia64/libgcc-ia64.ver T = disable # Assemble startup files. -crtbegin.o: $(srcdir)/config/ia64/crtbegin.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -I. -c -o crtbegin.o -x assembler-with-cpp \ +$(T)crtbegin.o: $(srcdir)/config/ia64/crtbegin.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -I. -c -o $(T)crtbegin.o -x assembler-with-cpp \ $(srcdir)/config/ia64/crtbegin.asm -crtend.o: $(srcdir)/config/ia64/crtend.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -I. -c -o crtend.o -x assembler-with-cpp \ +$(T)crtend.o: $(srcdir)/config/ia64/crtend.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -I. -c -o $(T)crtend.o -x assembler-with-cpp \ $(srcdir)/config/ia64/crtend.asm -crtbeginS.o: $(srcdir)/config/ia64/crtbegin.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -I. -DSHARED -c -o crtbeginS.o \ +$(T)crtbeginS.o: $(srcdir)/config/ia64/crtbegin.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -I. -DSHARED -c -o $(T)crtbeginS.o \ -x assembler-with-cpp \ $(srcdir)/config/ia64/crtbegin.asm -crtendS.o: $(srcdir)/config/ia64/crtend.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -I. -DSHARED -c -o crtendS.o -x assembler-with-cpp \ +$(T)crtendS.o: $(srcdir)/config/ia64/crtend.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -I. -DSHARED -c -o $(T)crtendS.o -x assembler-with-cpp \ $(srcdir)/config/ia64/crtend.asm -crtfastmath.o: $(srcdir)/config/ia64/crtfastmath.c $(GCC_PASSES) - $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -c -o crtfastmath.o \ +$(T)crtfastmath.o: $(srcdir)/config/ia64/crtfastmath.c $(GCC_PASSES) + $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -c -o $(T)crtfastmath.o \ $(srcdir)/config/ia64/crtfastmath.c LIB2ADDEH = $(srcdir)/config/ia64/unwind-ia64.c $(srcdir)/unwind-sjlj.c \ diff --git a/gcc/config/rs6000/t-beos b/gcc/config/rs6000/t-beos index dc3b89dba57..ad9260fe7af 100644 --- a/gcc/config/rs6000/t-beos +++ b/gcc/config/rs6000/t-beos @@ -25,6 +25,6 @@ LIMITS_H_TEST = [ -f /boot/develop/headers/posix/limits.h ] # Aix 3.2.x needs milli.exp for -mcpu=common EXTRA_PARTS = milli.exp -milli.exp: $(srcdir)/config/rs6000/milli.exp - rm -f milli.exp - cp $(srcdir)/config/rs6000/milli.exp ./milli.exp +$(T)milli.exp: $(srcdir)/config/rs6000/milli.exp + rm -f $(T)milli.exp + cp $(srcdir)/config/rs6000/milli.exp $(T)milli.exp diff --git a/gcc/config/rs6000/t-darwin b/gcc/config/rs6000/t-darwin index 7ad4b8f5182..b742f763c9a 100644 --- a/gcc/config/rs6000/t-darwin +++ b/gcc/config/rs6000/t-darwin @@ -23,8 +23,6 @@ TARGET_LIBGCC2_CFLAGS = -Wa,-force_cpusubtype_ALL -pipe -mmacosx-version-min=10. # Export the _xlq* symbols from darwin-ldouble.c. SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ppc64.ver -SHLIB_VERPFX = $(srcdir)/config/rs6000/darwin-libgcc - LIB2ADDEH += $(srcdir)/config/rs6000/darwin-fallback.c darwin-fpsave.o: $(srcdir)/config/rs6000/darwin-asm.h diff --git a/gcc/config/rs6000/t-newas b/gcc/config/rs6000/t-newas index d5d03a1c66f..eed66bf5f09 100644 --- a/gcc/config/rs6000/t-newas +++ b/gcc/config/rs6000/t-newas @@ -32,6 +32,6 @@ LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/darwin-ldouble.c # Aix 3.2.x needs milli.exp for -mcpu=common EXTRA_PARTS = milli.exp -milli.exp: $(srcdir)/config/rs6000/milli.exp - rm -f milli.exp - cp $(srcdir)/config/rs6000/milli.exp ./milli.exp +$(T)milli.exp: $(srcdir)/config/rs6000/milli.exp + rm -f $(T)milli.exp + cp $(srcdir)/config/rs6000/milli.exp $(T)milli.exp diff --git a/gcc/config/rs6000/t-ppccomm b/gcc/config/rs6000/t-ppccomm index 1ca509cd59a..c7529d77d01 100644 --- a/gcc/config/rs6000/t-ppccomm +++ b/gcc/config/rs6000/t-ppccomm @@ -11,18 +11,6 @@ eabi.S: $(srcdir)/config/rs6000/eabi.asm tramp.S: $(srcdir)/config/rs6000/tramp.asm cat $(srcdir)/config/rs6000/tramp.asm > tramp.S -ifneq (,$findstring gnu,$(target)) -TARGET_LIBGCC2_CFLAGS += -specs=ldblspecs - -SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ppc-glibc.ver - -# Hack to use -mlong-double-128 only when not compiling nof libgcc -mklibgcc: ldblspecs - -ldblspecs: specs - sed -e '/cc1_options/{ n; s/$$/ %{!msoft-float:-mlong-double-128}/; }' < specs > $@ -endif - # Switch synonyms MULTILIB_MATCHES_ENDIAN = mlittle=mlittle-endian mbig=mbig-endian MULTILIB_MATCHES_SYSV = mcall-sysv=mcall-sysv-eabi mcall-sysv=mcall-sysv-noeabi mcall-sysv=mcall-linux mcall-sysv=mcall-netbsd diff --git a/gcc/config/sparc/t-elf b/gcc/config/sparc/t-elf index 6868736a178..50e674e5d20 100644 --- a/gcc/config/sparc/t-elf +++ b/gcc/config/sparc/t-elf @@ -23,7 +23,7 @@ LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib # Assemble startup files. -crti.o: $(srcdir)/config/sparc/sol2-ci.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -o crti.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-ci.asm -crtn.o: $(srcdir)/config/sparc/sol2-cn.asm $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -o crtn.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-cn.asm +$(T)crti.o: $(srcdir)/config/sparc/sol2-ci.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-ci.asm +$(T)crtn.o: $(srcdir)/config/sparc/sol2-cn.asm $(GCC_PASSES) + $(GCC_FOR_TARGET) -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/sparc/sol2-cn.asm diff --git a/gcc/config/t-slibgcc-darwin b/gcc/config/t-slibgcc-darwin index f41acae1b3f..b957b353296 100644 --- a/gcc/config/t-slibgcc-darwin +++ b/gcc/config/t-slibgcc-darwin @@ -1,101 +1,2 @@ -# Build a shared libgcc library with the darwin linker. -SHLIB_SOVERSION = 1 -SHLIB_VERSTRING = -compatibility_version $(SHLIB_SOVERSION) -current_version $(SHLIB_SOVERSION).0 -SHLIB_EXT = .dylib -SHLIB_SUFFIX = `if test @multilib_dir@ = ppc64 ; then echo _@multilib_dir@ ; fi` -SHLIB_INSTALL_NAME = @shlib_base_name@$(SHLIB_SUFFIX).$(SHLIB_SOVERSION)$(SHLIB_EXT) -SHLIB_SONAME = @shlib_base_name@.$(SHLIB_SOVERSION)$(SHLIB_EXT) -SHLIB_SOLINK = @shlib_base_name@.so -SHLIB_MAP = @shlib_map_file@ -SHLIB_OBJS = @shlib_objs@ -SHLIB_DIR = @multilib_dir@ -SHLIB_LC = -lc - -# Darwin only searches in /usr/lib for shared libraries, not in subdirectories, -# so the libgcc variants have different names not different locations. -# Note that this version is used for the loader, not the linker; the linker -# uses the stub versions named by $(LIBGCC). -SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -dynamiclib -nodefaultlibs \ - -install_name $(slibdir)/$(SHLIB_INSTALL_NAME) \ - -single_module -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp \ - -Wl,-exported_symbols_list,$(SHLIB_MAP) \ - $(SHLIB_VERSTRING) \ - @multilib_flags@ $(SHLIB_OBJS) $(SHLIB_LC) - -# $(slibdir) double quoted to protect it from expansion while building -# libgcc.mk. We want this delayed until actual install time. -SHLIB_INSTALL = \ - $$(mkinstalldirs) $$(DESTDIR)$$(slibdir); \ - $(INSTALL_DATA) $(SHLIB_SONAME) \ - $$(DESTDIR)$$(slibdir)/$(SHLIB_SONAME) - -SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk -SHLIB_MKMAP_OPTS = -v leading_underscore=1 -SHLIB_MAPFILES += $(srcdir)/libgcc-std.ver - -# Must use a different directive for hidden visibility in assembly sources. -ASM_HIDDEN_OP = .private_extern - -# In order to support -mmacosx-version-min, you need to have multiple -# different libgcc_s libraries that actually get linked against, one for -# each system version supported. They are 'stub' libraries that -# contain no code, just a list of exported symbols. -# The actual use of the libraries is controlled by REAL_LIBGCC_SPEC. -# -# This assumes each multilib corresponds to a different architecture. -libgcc_s.%.dylib : $(SHLIB_VERPFX).%.ver stmp-multilib - # When building multilibbed target libraries, all the required - # libraries are expected to exist in the multilib directory. - MLIBS=`$(GCC_FOR_TARGET) --print-multi-lib \ - | sed -e 's/;.*$$//' -e '/^\.$$/d'` ; \ - for mlib in $$MLIBS ; do \ - rm -f $${mlib}/$@ || exit 1 ; \ - $(LN_S) ../$@ $${mlib}/$@ || exit 1 ; \ - done - MLIBS=`$(GCC_FOR_TARGET) --print-multi-lib \ - | sed -e 's/;.*$$//' -e '/^\.$$/d'` ; \ - for mlib in '' $$MLIBS ; do \ - $(STRIP_FOR_TARGET) -o $(@)_T$${mlib} \ - -s $(SHLIB_VERPFX).$(*).ver -c -u \ - ./$${mlib}/libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT).tmp || exit 1 ; \ - done - $(LIPO_FOR_TARGET) -output $@ -create $(@)_T* - rm $(@)_T* - -libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT): stmp-multilib libgcc_s.10.4.dylib \ - libgcc_s.10.5.dylib - # When building multilibbed target libraries, all the required - # libraries are expected to exist in the multilib directory. - MLIBS=`$(GCC_FOR_TARGET) --print-multi-lib \ - | sed -e 's/;.*$$//' -e '/^\.$$/d'` ; \ - for mlib in '' $$MLIBS ; do \ - cp ./$${mlib}/libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT).tmp \ - ./libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} || exit 1 ; \ - done - $(LIPO_FOR_TARGET) -output libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT) \ - -create libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T* - rm libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T* - -# From the point-of-view of the Makefiles, libgcc is built by the 'strip' -# and 'lipo' commands above. -LIBGCC=libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT) libgcc_s.10.4.dylib \ - libgcc_s.10.5.dylib stmp-multilib - -INSTALL_FILES=libgcc_s.10.4.dylib libgcc_s.10.5.dylib libgcc_s.1.dylib - -install-darwin-libgcc-stubs : $(INSTALL_FILES) installdirs - for d in $(INSTALL_FILES) ; do \ - $(INSTALL_DATA) $$d $(DESTDIR)$(slibdir)/$$d || exit 1 ; \ - done - if [ -f $(DESTDIR)$(slibdir)/libgcc_s_ppc64.1.dylib ]; then \ - rm -f $(DESTDIR)$(slibdir)/libgcc_s_ppc64.1.dylib; \ - else true; fi - $(LN_S) libgcc_s.1.dylib \ - $(DESTDIR)$(slibdir)/libgcc_s_ppc64.1.dylib - if [ -f $(DESTDIR)$(slibdir)/libgcc_s_x86_64.1.dylib ]; then \ - rm -f $(DESTDIR)$(slibdir)/libgcc_s_x86_64.1.dylib; \ - else true; fi - $(LN_S) libgcc_s.1.dylib \ - $(DESTDIR)$(slibdir)/libgcc_s_x86_64.1.dylib - -INSTALL_LIBGCC = install-darwin-libgcc-stubs install-multilib +# To keep DRIVER_DEFINES correct. +SHLIB_LINK = dummy |