diff options
author | ro <ro@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-11-20 17:13:01 +0000 |
---|---|---|
committer | ro <ro@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-11-20 17:13:01 +0000 |
commit | 03150a338ef2f77b0e6a8b3238e3f6f9fba15e4f (patch) | |
tree | 05532f9b36c19db3ba4c3c2a298e1d0c80348696 /libgcc/config | |
parent | 40b4f5e174cfdb85f43dabb9b568cad567c7a3f8 (diff) | |
download | gcc-03150a338ef2f77b0e6a8b3238e3f6f9fba15e4f.tar.gz |
gcc:
PR bootstrap/33100
* config.gcc (i[34567]86-*-solaris2*): Don't include
i386/t-crtstuff here.
Move extra_parts, i386/t-sol2 in tmake_file to libgcc/config.host.
* config/i386/t-sol2: Move to libgcc/config/i386.
libgcc:
PR bootstrap/33100
* configure.ac (i?86-*-solaris2.1[0-9]*): Only include
i386/t-crtstuff if linker supports ZERO terminator unwind entries.
* configure: Regenerate.
* config.host (i[34567]86-*-solaris2*): Move i386/t-sol2 in
tmake_file here from gcc/config.gcc.
Move extra_parts here from gcc/config.gcc.
* config/i386/t-sol2: Move here from gcc/config/i386.
Use gcc_srcdir instead of srcdir.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142050 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgcc/config')
-rw-r--r-- | libgcc/config/i386/t-sol2 | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libgcc/config/i386/t-sol2 b/libgcc/config/i386/t-sol2 new file mode 100644 index 00000000000..24b7c7c10f4 --- /dev/null +++ b/libgcc/config/i386/t-sol2 @@ -0,0 +1,34 @@ +# gmon build rule: +$(T)gmon.o: $(gcc_srcdir)/config/i386/gmon-sol2.c $(GCC_PASSES) $(CONFIG_H) + $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) \ + -c $(gcc_srcdir)/config/i386/gmon-sol2.c -o $(T)gmon.o + +# Assemble startup files. +# Apparently Sun believes that assembler files don't need comments, because no +# single ASCII character is valid (tried them all). So we manually strip out +# the comments with sed. This bug may only be in the Early Access releases. +$(T)gcrt1.o: $(gcc_srcdir)/config/i386/sol2-gc1.asm $(GCC_PASSES) + sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-gc1.asm >gcrt1.s + $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)gcrt1.o gcrt1.s +$(T)crt1.o: $(gcc_srcdir)/config/i386/sol2-c1.asm $(GCC_PASSES) + sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-c1.asm >crt1.s + $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crt1.o crt1.s +$(T)crti.o: $(gcc_srcdir)/config/i386/sol2-ci.asm $(GCC_PASSES) + sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-ci.asm >crti.s + $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crti.o crti.s +$(T)crtn.o: $(gcc_srcdir)/config/i386/sol2-cn.asm $(GCC_PASSES) + sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-cn.asm >crtn.s + $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crtn.o crtn.s + +# We need to use -fPIC when we are using gcc to compile the routines in +# crtstuff.c. This is only really needed when we are going to use gcc/g++ +# to produce a shared library, but since we don't know ahead of time when +# we will be doing that, we just always use -fPIC when compiling the +# routines in crtstuff.c. +# +# We must also enable optimization to avoid having any code appear after +# the call & alignment statement, but before we switch back to the +# .text section. + +CRTSTUFF_T_CFLAGS = -fPIC -O2 +TARGET_LIBGCC2_CFLAGS = -fPIC |