summaryrefslogtreecommitdiff
path: root/patches/gcc/4.2.0
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2011-08-31 14:47:42 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2011-08-31 14:47:42 (GMT)
commitef0f984b00ecbaf474c09ed31126ef179fcc2d4f (patch)
treeeb7b3a8beba76cea003bf2c000420dae8f49e8a5 /patches/gcc/4.2.0
parent636271cb0c9dcfdb1b3de403590b4024e0369831 (diff)
cc/gcc: libgcc_eh.a may be required, even from the stage-1 compiler
Building uClibc with libubacktrace requires libgcc_eh.a to be available, but gcc does not build it unless it is configured to generate shared libs. However, libgcc_eh.a does not *require* shared libs support, as it is a static library. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Diffstat (limited to 'patches/gcc/4.2.0')
-rw-r--r--patches/gcc/4.2.0/300-libgcc_eh.a.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/patches/gcc/4.2.0/300-libgcc_eh.a.patch b/patches/gcc/4.2.0/300-libgcc_eh.a.patch
new file mode 100644
index 0000000..909db3a
--- /dev/null
+++ b/patches/gcc/4.2.0/300-libgcc_eh.a.patch
@@ -0,0 +1,32 @@
+Vampirised from:
+ http://landley.net/hg/aboriginal/file/7e0747a665ab/sources/patches/gcc-core-libgcceh.patch
+
+diff -durN gcc-4.2.2.orig/gcc/mklibgcc.in gcc-4.2.2/gcc/mklibgcc.in
+--- gcc-4.2.2.orig/gcc/mklibgcc.in 2006-07-04 22:20:01.000000000 +0200
++++ gcc-4.2.2/gcc/mklibgcc.in 2011-08-31 16:24:03.674690016 +0200
+@@ -223,8 +223,8 @@
+ if [ "$LIBUNWIND" ]; then
+ libunwind_a=$dir/libunwind.a
+ fi
++ libgcc_eh_a=$dir/libgcc_eh.a
+ if [ "$SHLIB_LINK" ]; then
+- libgcc_eh_a=$dir/libgcc_eh.a
+ libgcc_s_so=$dir/libgcc_s${SHLIB_EXT}
+ if [ "$LIBUNWIND" ]; then
+ libunwind_so=$dir/libunwind${SHLIB_EXT}
+@@ -889,11 +889,11 @@
+ echo ' chmod 644' ${ldir}/libgcov.a
+ echo ' $(RANLIB_FOR_TARGET)' ${ldir}/libgcov.a
+
+- if [ "$SHLIB_LINK" ]; then
+- echo ' $(INSTALL_DATA)' ${dir}/libgcc_eh.a ${ldir}/
+- echo ' chmod 644' ${ldir}/libgcc_eh.a
+- echo ' $(RANLIB_FOR_TARGET)' ${ldir}/libgcc_eh.a
++ echo ' $(INSTALL_DATA)' ${dir}/libgcc_eh.a ${ldir}/
++ echo ' chmod 644' ${ldir}/libgcc_eh.a
++ echo ' $(RANLIB_FOR_TARGET)' ${ldir}/libgcc_eh.a
+
++ if [ "$SHLIB_LINK" ]; then
+ shlib_slibdir_qual=
+ os_multilib_dir=`$GCC_FOR_TARGET $flags --print-multi-os-directory`
+ if [ "$os_multilib_dir" != . ]; then