diff options
Diffstat (limited to 'meta/packages/gcc/gcc-3.3.4/gcc-uclibc-3.3-110-conf.patch')
| -rw-r--r-- | meta/packages/gcc/gcc-3.3.4/gcc-uclibc-3.3-110-conf.patch | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/meta/packages/gcc/gcc-3.3.4/gcc-uclibc-3.3-110-conf.patch b/meta/packages/gcc/gcc-3.3.4/gcc-uclibc-3.3-110-conf.patch new file mode 100644 index 0000000000..f297c3283f --- /dev/null +++ b/meta/packages/gcc/gcc-3.3.4/gcc-uclibc-3.3-110-conf.patch | |||
| @@ -0,0 +1,55 @@ | |||
| 1 | Use the patch by Carl Miller <chaz@energoncube.net> for powerpc, with | ||
| 2 | some minor modifications. Changed *os_uclibc to *os_linux_uclibc since | ||
| 3 | at some point we might support other platforms. Also updated to 3.3.3. | ||
| 4 | diff -urN gcc-3.3.3/gcc/config/rs6000/linux.h gcc-3.3.3-new/gcc/config/rs6000/linux.h | ||
| 5 | --- gcc-3.3.3/gcc/config/rs6000/linux.h 2003-11-14 00:46:10.000000000 -0600 | ||
| 6 | +++ gcc-3.3.3-new/gcc/config/rs6000/linux.h 2004-02-16 21:13:40.000000000 -0600 | ||
| 7 | @@ -64,7 +64,11 @@ | ||
| 8 | #define LINK_START_DEFAULT_SPEC "%(link_start_linux)" | ||
| 9 | |||
| 10 | #undef LINK_OS_DEFAULT_SPEC | ||
| 11 | +#ifdef USE_UCLIBC | ||
| 12 | +#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)" | ||
| 13 | +#else | ||
| 14 | #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" | ||
| 15 | +#endif | ||
| 16 | |||
| 17 | #undef TARGET_VERSION | ||
| 18 | #define TARGET_VERSION fprintf (stderr, " (PowerPC GNU/Linux)"); | ||
| 19 | diff -urN gcc-3.3.3/gcc/config/rs6000/sysv4.h gcc-3.3.3-new/gcc/config/rs6000/sysv4.h | ||
| 20 | --- gcc-3.3.3/gcc/config/rs6000/sysv4.h 2003-10-28 13:55:41.000000000 -0600 | ||
| 21 | +++ gcc-3.3.3-new/gcc/config/rs6000/sysv4.h 2004-02-16 21:13:40.000000000 -0600 | ||
| 22 | @@ -968,9 +968,11 @@ | ||
| 23 | %{mcall-linux: %(link_os_linux) } \ | ||
| 24 | %{mcall-gnu: %(link_os_gnu) } \ | ||
| 25 | %{mcall-netbsd: %(link_os_netbsd) } \ | ||
| 26 | +%{mcall-uclibc: %(link_os_linux_uclibc) } \ | ||
| 27 | %{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mwindiss: \ | ||
| 28 | %{!mcall-freebsd: %{!mcall-linux: %{!mcall-gnu: \ | ||
| 29 | - %{!mcall-netbsd: %(link_os_default) }}}}}}}}}" | ||
| 30 | + %{!mcall-netbsd: %{!mcall-uclibc: \ | ||
| 31 | + %(link_os_default) }}}}}}}}}}" | ||
| 32 | |||
| 33 | #define LINK_OS_DEFAULT_SPEC "" | ||
| 34 | |||
| 35 | @@ -1307,6 +1309,12 @@ | ||
| 36 | |||
| 37 | #define LINK_OS_WINDISS_SPEC "" | ||
| 38 | |||
| 39 | +/* uClibc support for Linux. */ | ||
| 40 | + | ||
| 41 | +#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \ | ||
| 42 | + %{rdynamic:-export-dynamic} \ | ||
| 43 | + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}" | ||
| 44 | + | ||
| 45 | /* Define any extra SPECS that the compiler needs to generate. */ | ||
| 46 | /* Override rs6000.h definition. */ | ||
| 47 | #undef SUBTARGET_EXTRA_SPECS | ||
| 48 | @@ -1372,6 +1380,7 @@ | ||
| 49 | { "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \ | ||
| 50 | { "link_os_vxworks", LINK_OS_VXWORKS_SPEC }, \ | ||
| 51 | { "link_os_windiss", LINK_OS_WINDISS_SPEC }, \ | ||
| 52 | + { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \ | ||
| 53 | { "link_os_default", LINK_OS_DEFAULT_SPEC }, \ | ||
| 54 | { "cc1_endian_big", CC1_ENDIAN_BIG_SPEC }, \ | ||
| 55 | { "cc1_endian_little", CC1_ENDIAN_LITTLE_SPEC }, \ | ||
