mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

82 lines
3.4 KiB

# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
#
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# Please add additional copyright information _after_ the line containing
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
#
# ROCK Linux: rock-src/package/mnemoc/uclibc/patches/gcc33-12-uclibc-ppc_corrections.patch
# ROCK Linux is Copyright (C) 1998 - 2006 Clifford Wolf
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# --- ROCK-COPYRIGHT-NOTE-END ---
Use the patch by Carl Miller <chaz@energoncube.net> for powerpc, with
some minor modifications. Changed *os_uclibc to *os_linux_uclibc since
at some point we might support other platforms.
Index: gcc/config/rs6000/linux.h
===================================================================
RCS file: /home/cvs/tools/gcc-3.3.2/gcc/config/rs6000/linux.h,v
retrieving revision 1.1.1.1
diff -d -u -r1.1.1.1 linux.h
--- gcc-3.3.2/gcc/config/rs6000/linux.h 4 Dec 2003 01:19:31 -0000 1.1.1.1
+++ gcc-3.3.2/gcc/config/rs6000/linux.h 4 Dec 2003 23:18:01 -0000
@@ -64,7 +64,11 @@
#define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
#undef LINK_OS_DEFAULT_SPEC
+#ifdef USE_UCLIBC
+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)"
+#else
#define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
+#endif
#undef TARGET_VERSION
#define TARGET_VERSION fprintf (stderr, " (PowerPC GNU/Linux)");
Index: gcc/config/rs6000/sysv4.h
===================================================================
RCS file: /home/cvs/tools/gcc-3.3.2/gcc/config/rs6000/sysv4.h,v
retrieving revision 1.1.1.1
diff -d -u -r1.1.1.1 sysv4.h
--- gcc-3.3.2/gcc/config/rs6000/sysv4.h 4 Dec 2003 01:19:31 -0000 1.1.1.1
+++ gcc-3.3.2/gcc/config/rs6000/sysv4.h 4 Dec 2003 23:18:18 -0000
@@ -953,9 +953,11 @@
%{mcall-linux: %(link_os_linux) } \
%{mcall-gnu: %(link_os_gnu) } \
%{mcall-netbsd: %(link_os_netbsd) } \
+%{mcall-uclibc: %(link_os_linux_uclibc) } \
%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mwindiss: \
%{!mcall-freebsd: %{!mcall-linux: %{!mcall-gnu: \
- %{!mcall-netbsd: %(link_os_default) }}}}}}}}}"
+ %{!mcall-netbsd: %{!mcall-uclibc: \
+ %(link_os_default) }}}}}}}}}}"
#define LINK_OS_DEFAULT_SPEC ""
@@ -1292,6 +1294,12 @@
#define LINK_OS_WINDISS_SPEC ""
+/* uClibc support for Linux. */
+
+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}"
+
/* Define any extra SPECS that the compiler needs to generate. */
/* Override rs6000.h definition. */
#undef SUBTARGET_EXTRA_SPECS
@@ -1357,6 +1365,7 @@
{ "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \
{ "link_os_vxworks", LINK_OS_VXWORKS_SPEC }, \
{ "link_os_windiss", LINK_OS_WINDISS_SPEC }, \
+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \
{ "link_os_default", LINK_OS_DEFAULT_SPEC }, \
{ "cc1_endian_big", CC1_ENDIAN_BIG_SPEC }, \
{ "cc1_endian_little", CC1_ENDIAN_LITTLE_SPEC }, \