From 869a0f9679b8fa9bc7ff0ec8281140b5148ab26e Mon Sep 17 00:00:00 2001 From: Dave Murphy Date: Sun, 10 Feb 2008 06:11:00 +0000 Subject: [PATCH] add libgloss bits --- dkarm-eabi/patches/gcc-4.2.3.patch | 99 ++++++++++++++++++++---------- 1 file changed, 68 insertions(+), 31 deletions(-) diff --git a/dkarm-eabi/patches/gcc-4.2.3.patch b/dkarm-eabi/patches/gcc-4.2.3.patch index 28856db..15a57e4 100644 --- a/dkarm-eabi/patches/gcc-4.2.3.patch +++ b/dkarm-eabi/patches/gcc-4.2.3.patch @@ -1,6 +1,6 @@ -diff -Nbaur gcc-4.2.1/gcc/c-incpath.c gcc-4.2.1-arm/gcc/c-incpath.c ---- gcc-4.2.1/gcc/c-incpath.c Thu May 18 23:16:23 2006 -+++ gcc-4.2.1-arm/gcc/c-incpath.c Sun Jul 29 15:35:14 2007 +diff -Nbaur gcc-4.2.3/gcc/c-incpath.c gcc-4.2.3-arm/gcc/c-incpath.c +--- gcc-4.2.3/gcc/c-incpath.c Sat Sep 1 16:28:30 2007 ++++ gcc-4.2.3-arm/gcc/c-incpath.c Sun Feb 10 05:49:01 2008 @@ -340,13 +340,18 @@ cpp_dir *p; @@ -27,9 +27,9 @@ diff -Nbaur gcc-4.2.1/gcc/c-incpath.c gcc-4.2.1-arm/gcc/c-incpath.c #endif p = XNEW (cpp_dir); -diff -Nbaur gcc-4.2.1/gcc/config/arm/t-arm-elf gcc-4.2.1-arm/gcc/config/arm/t-arm-elf ---- gcc-4.2.1/gcc/config/arm/t-arm-elf Mon Nov 6 12:13:53 2006 -+++ gcc-4.2.1-arm/gcc/config/arm/t-arm-elf Sun Jul 29 15:35:14 2007 +diff -Nbaur gcc-4.2.3/gcc/config/arm/t-arm-elf gcc-4.2.3-arm/gcc/config/arm/t-arm-elf +--- gcc-4.2.3/gcc/config/arm/t-arm-elf Mon Nov 6 12:13:53 2006 ++++ gcc-4.2.3-arm/gcc/config/arm/t-arm-elf Sun Feb 10 05:49:01 2008 @@ -15,9 +15,9 @@ # MULTILIB_DIRNAMES += ep9312 # MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312* @@ -43,10 +43,47 @@ diff -Nbaur gcc-4.2.1/gcc/config/arm/t-arm-elf gcc-4.2.1-arm/gcc/config/arm/t-ar # # MULTILIB_OPTIONS += mhard-float/msoft-float # MULTILIB_DIRNAMES += fpu soft -diff -Nbaur gcc-4.2.1/gcc/gcc.c gcc-4.2.1-arm/gcc/gcc.c ---- gcc-4.2.1/gcc/gcc.c Mon Mar 5 20:37:05 2007 -+++ gcc-4.2.1-arm/gcc/gcc.c Sun Jul 29 15:35:14 2007 -@@ -3370,8 +3370,6 @@ +diff -Nbaur gcc-4.2.3/gcc/config/arm/unknown-elf.h gcc-4.2.3-arm/gcc/config/arm/unknown-elf.h +--- gcc-4.2.3/gcc/config/arm/unknown-elf.h Sat Sep 1 16:28:30 2007 ++++ gcc-4.2.3-arm/gcc/config/arm/unknown-elf.h Sun Feb 10 05:50:56 2008 +@@ -93,4 +93,4 @@ + udivmoddi4, which will depend on the exception unwind routines, + which will depend on abort, which is defined in libc. */ + #undef LINK_GCC_C_SEQUENCE_SPEC +-#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L --end-group" ++#define LINK_GCC_C_SEQUENCE_SPEC "--start-group %G %L %(libgloss) --end-group" +diff -Nbaur gcc-4.2.3/gcc/gcc.c gcc-4.2.3-arm/gcc/gcc.c +--- gcc-4.2.3/gcc/gcc.c Sat Sep 1 16:28:30 2007 ++++ gcc-4.2.3-arm/gcc/gcc.c Sun Feb 10 05:55:21 2008 +@@ -621,6 +621,11 @@ + #endif + #endif + ++#ifndef LIBGLOSS_SPEC ++# define LIBGLOSS_SPEC "-lsysbase" ++#endif ++ ++ + /* config.h can define STARTFILE_SPEC to override the default crt0 files. */ + #ifndef STARTFILE_SPEC + #define STARTFILE_SPEC \ +@@ -742,6 +747,7 @@ + static const char *mflib_spec = MFLIB_SPEC; + static const char *link_gomp_spec = ""; + static const char *libgcc_spec = LIBGCC_SPEC; ++static const char *libgloss_spec = LIBGLOSS_SPEC; + static const char *endfile_spec = ENDFILE_SPEC; + static const char *startfile_spec = STARTFILE_SPEC; + static const char *switches_need_spaces = SWITCHES_NEED_SPACES; +@@ -1548,6 +1554,7 @@ + INIT_STATIC_SPEC ("mflib", &mflib_spec), + INIT_STATIC_SPEC ("link_gomp", &link_gomp_spec), + INIT_STATIC_SPEC ("libgcc", &libgcc_spec), ++ INIT_STATIC_SPEC ("libgloss", &libgloss_spec), + INIT_STATIC_SPEC ("startfile", &startfile_spec), + INIT_STATIC_SPEC ("switches_need_spaces", &switches_need_spaces), + INIT_STATIC_SPEC ("cross_compile", &cross_compile), +@@ -3369,8 +3376,6 @@ gcc_libexec_prefix = make_relative_prefix (argv[0], standard_bindir_prefix, standard_libexec_prefix); @@ -55,7 +92,7 @@ diff -Nbaur gcc-4.2.1/gcc/gcc.c gcc-4.2.1-arm/gcc/gcc.c } else { -@@ -6214,10 +6212,21 @@ +@@ -6213,10 +6218,21 @@ /* We need to check standard_exec_prefix/just_machine_suffix/specs for any override of as, ld and libraries. */ @@ -77,10 +114,10 @@ diff -Nbaur gcc-4.2.1/gcc/gcc.c gcc-4.2.1-arm/gcc/gcc.c strcat (specs_file, just_machine_suffix); strcat (specs_file, "specs"); if (access (specs_file, R_OK) == 0) -diff -Nbaur gcc-4.2.1/gcc/prefix.c gcc-4.2.1-arm/gcc/prefix.c ---- gcc-4.2.1/gcc/prefix.c Sat Dec 17 20:45:46 2005 -+++ gcc-4.2.1-arm/gcc/prefix.c Sun Jul 29 15:35:14 2007 -@@ -246,13 +246,16 @@ +diff -Nbaur gcc-4.2.3/gcc/prefix.c gcc-4.2.3-arm/gcc/prefix.c +--- gcc-4.2.3/gcc/prefix.c Sat Sep 1 16:28:30 2007 ++++ gcc-4.2.3-arm/gcc/prefix.c Sun Feb 10 05:49:01 2008 +@@ -245,13 +245,16 @@ The returned string is always malloc-ed, and the caller is responsible for freeing it. */ @@ -99,17 +136,17 @@ diff -Nbaur gcc-4.2.1/gcc/prefix.c gcc-4.2.1-arm/gcc/prefix.c && (IS_DIR_SEPARATOR(path[len]) || path[len] == '\0') && key != 0) -@@ -354,4 +357,6 @@ +@@ -353,4 +356,6 @@ set_std_prefix (const char *prefix, int len) { std_prefix = save_string (prefix, len); + + putenv (concat ("GCC_EXEC_PREFIX=", std_prefix, NULL)); } -diff -Nbaur gcc-4.2.1/gcc/stor-layout.c gcc-4.2.1-arm/gcc/stor-layout.c ---- gcc-4.2.1/gcc/stor-layout.c Sun Nov 19 00:44:04 2006 -+++ gcc-4.2.1-arm/gcc/stor-layout.c Sun Jul 29 15:35:14 2007 -@@ -531,7 +531,15 @@ +diff -Nbaur gcc-4.2.3/gcc/stor-layout.c gcc-4.2.3-arm/gcc/stor-layout.c +--- gcc-4.2.3/gcc/stor-layout.c Sat Sep 1 16:28:30 2007 ++++ gcc-4.2.3-arm/gcc/stor-layout.c Sun Feb 10 05:49:02 2008 +@@ -530,7 +530,15 @@ #ifdef STRUCTURE_SIZE_BOUNDARY /* Packed structures don't need to have minimum size. */ if (! TYPE_PACKED (t)) @@ -126,10 +163,10 @@ diff -Nbaur gcc-4.2.1/gcc/stor-layout.c gcc-4.2.1-arm/gcc/stor-layout.c #endif rli->offset = size_zero_node; -diff -Nbaur gcc-4.2.1/gcc/toplev.c gcc-4.2.1-arm/gcc/toplev.c ---- gcc-4.2.1/gcc/toplev.c Mon Oct 9 17:27:14 2006 -+++ gcc-4.2.1-arm/gcc/toplev.c Sun Jul 29 15:35:14 2007 -@@ -82,6 +82,7 @@ +diff -Nbaur gcc-4.2.3/gcc/toplev.c gcc-4.2.3-arm/gcc/toplev.c +--- gcc-4.2.3/gcc/toplev.c Sat Sep 1 16:28:30 2007 ++++ gcc-4.2.3-arm/gcc/toplev.c Sun Feb 10 05:49:02 2008 +@@ -81,6 +81,7 @@ #include "value-prof.h" #include "alloc-pool.h" #include "tree-mudflap.h" @@ -137,7 +174,7 @@ diff -Nbaur gcc-4.2.1/gcc/toplev.c gcc-4.2.1-arm/gcc/toplev.c #if defined (DWARF2_UNWIND_INFO) || defined (DWARF2_DEBUGGING_INFO) #include "dwarf2out.h" -@@ -1479,6 +1480,10 @@ +@@ -1478,6 +1479,10 @@ progname = p; xmalloc_set_program_name (progname); @@ -148,9 +185,9 @@ diff -Nbaur gcc-4.2.1/gcc/toplev.c gcc-4.2.1-arm/gcc/toplev.c hex_init (); -diff -Nbaur gcc-4.2.1/gcc/version.c gcc-4.2.1-arm/gcc/version.c ---- gcc-4.2.1/gcc/version.c Wed Mar 16 06:04:10 2005 -+++ gcc-4.2.1-arm/gcc/version.c Sun Jul 29 15:35:14 2007 +diff -Nbaur gcc-4.2.3/gcc/version.c gcc-4.2.3-arm/gcc/version.c +--- gcc-4.2.3/gcc/version.c Wed Mar 16 06:04:10 2005 ++++ gcc-4.2.3-arm/gcc/version.c Sun Feb 10 05:49:02 2008 @@ -8,7 +8,7 @@ in parentheses. You may also wish to include a number indicating the revision of your modified compiler. */ @@ -169,9 +206,9 @@ diff -Nbaur gcc-4.2.1/gcc/version.c gcc-4.2.1-arm/gcc/version.c /* The complete version string, assembled from several pieces. BASEVER, DATESTAMP, and DEVPHASE are defined by the Makefile. */ -diff -Nbaur gcc-4.2.1/libcpp/files.c gcc-4.2.1-arm/libcpp/files.c ---- gcc-4.2.1/libcpp/files.c Sat Feb 18 09:25:31 2006 -+++ gcc-4.2.1-arm/libcpp/files.c Sun Jul 29 15:42:39 2007 +diff -Nbaur gcc-4.2.3/libcpp/files.c gcc-4.2.3-arm/libcpp/files.c +--- gcc-4.2.3/libcpp/files.c Sat Feb 18 09:25:31 2006 ++++ gcc-4.2.3-arm/libcpp/files.c Sun Feb 10 05:49:02 2008 @@ -226,6 +226,22 @@ close (file->fd); file->fd = -1;