summaryrefslogtreecommitdiffstats
path: root/contrib/crossrpms/patches
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2008-10-04 04:58:19 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2008-10-04 04:58:19 +0000
commit1547cff649e224268ae79ef4d607881fe155d01d (patch)
tree7e26d180aa26cd794b68e7894d7a09d914ddebe2 /contrib/crossrpms/patches
parent2008-10-03 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-1547cff649e224268ae79ef4d607881fe155d01d.tar.bz2
Update to 2.18.92.
Diffstat (limited to 'contrib/crossrpms/patches')
-rw-r--r--contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff242
1 files changed, 242 insertions, 0 deletions
diff --git a/contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff b/contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff
new file mode 100644
index 0000000000..4b303b329e
--- /dev/null
+++ b/contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff
@@ -0,0 +1,242 @@
+diff -Naur binutils-2.18.92.orig/bfd/config.bfd binutils-2.18.92/bfd/config.bfd
+--- binutils-2.18.92.orig/bfd/config.bfd 2008-04-16 20:02:01.000000000 +0200
++++ binutils-2.18.92/bfd/config.bfd 2008-10-04 06:56:29.000000000 +0200
+@@ -721,7 +721,7 @@
+ targ_defvec=bfd_elf32_iq2000_vec
+ ;;
+
+- m32c-*-elf)
++ m32c-*-elf | m32c-*-rtems*)
+ targ_defvec=bfd_elf32_m32c_vec
+ ;;
+
+diff -Naur binutils-2.18.92.orig/gas/configure.tgt binutils-2.18.92/gas/configure.tgt
+--- binutils-2.18.92.orig/gas/configure.tgt 2008-10-02 10:07:17.000000000 +0200
++++ binutils-2.18.92/gas/configure.tgt 2008-10-04 06:56:29.000000000 +0200
+@@ -244,9 +244,10 @@
+
+ iq2000-*-elf) fmt=elf ;;
+
+- m32c-*-elf) fmt=elf ;;
++ m32c-*-elf | m32c-*-rtems*) fmt=elf ;;
+
+ m32r-*-elf*) fmt=elf ;;
++ m32r-*-rtems*) fmt=elf ;;
+ m32r-*-linux*) fmt=elf em=linux;;
+
+ m68hc11-*-* | m6811-*-*) fmt=elf ;;
+diff -Naur binutils-2.18.92.orig/ld/configure.tgt binutils-2.18.92/ld/configure.tgt
+--- binutils-2.18.92.orig/ld/configure.tgt 2008-08-09 07:35:13.000000000 +0200
++++ binutils-2.18.92/ld/configure.tgt 2008-10-04 06:56:29.000000000 +0200
+@@ -301,10 +301,12 @@
+ ;;
+ iq2000-*-elf) targ_emul=elf32iq2000 ; targ_extra_emuls="elf32iq10"
+ ;;
+-m32c-*-elf) targ_emul=elf32m32c
++m32c-*-elf|m32c-*-rtems*)
++ targ_emul=elf32m32c
+ ;;
+ m32r*le-*-elf*) targ_emul=m32rlelf ;;
+ m32r*-*-elf*) targ_emul=m32relf ;;
++m32r*-*-rtems*) targ_emul=m32relf ;;
+ m32r*le-*-linux-*) targ_emul=m32rlelf_linux ;;
+ m32r*-*-linux-*) targ_emul=m32relf_linux
+ ;;
+diff -Naur binutils-2.18.92.orig/ld/testsuite/ChangeLog binutils-2.18.92/ld/testsuite/ChangeLog
+--- binutils-2.18.92.orig/ld/testsuite/ChangeLog 2008-10-02 10:07:18.000000000 +0200
++++ binutils-2.18.92/ld/testsuite/ChangeLog 2008-10-04 06:52:32.000000000 +0200
+@@ -6,6 +6,20 @@
+
+ * ld-mips-elf/reloc-estimate-1.d: Make endian-neutral.
+
++2008-09-20 Jan Kratochvil <jan.kratochvil@redhat.com>
++
++ Provide virtual target "cfi" for targets supporting CFI.
++ * ld-elf/eh-frame-hdr.d: Replace target and xfail statements by single
++ `target: cfi'.
++ * ld-elf/eh-group.exp: Call check_as_cfi instead of is_elf_format.
++ * ld-elf/eh-group1.s, elf/eh-group2.s: Use more compatible section
++ flags prefix '%'.
++ * ld-elf/eh5.d: Replace target statement by `target: cfi' with an Alpha
++ exception. Relax the `Code alignment factor' matching.
++ * lib/ld-lib.exp: Rename istarget as istarget_ld.
++ (istarget, check_as_cfi): New procedure.
++ (run_dump_test): New comment for the virtual target `cfi'.
++
+ 2008-09-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * ld-elf/eh-group.exp, ld-elf/eh-group1.s, ld-elf/eh-group2.s: New test.
+diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh5.d binutils-2.18.92/ld/testsuite/ld-elf/eh5.d
+--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh5.d 2008-01-28 16:15:32.000000000 +0100
++++ binutils-2.18.92/ld/testsuite/ld-elf/eh5.d 2008-10-04 06:52:32.000000000 +0200
+@@ -3,14 +3,15 @@
+ #source: eh5b.s
+ #ld:
+ #readelf: -wf
+-#target: x86_64-*-* i?86-*-*
++#target: cfi
++#notarget: alpha*
+
+ The section .eh_frame contains:
+
+ 00000000 0000001[04] 00000000 CIE
+ Version: 1
+ Augmentation: "zR"
+- Code alignment factor: 1
++ Code alignment factor: .*
+ Data alignment factor: .*
+ Return address column: .*
+ Augmentation data: 1b
+@@ -29,7 +30,7 @@
+ 000000(2c|30) 00000014 00000000 CIE
+ Version: 1
+ Augmentation: "zPR"
+- Code alignment factor: 1
++ Code alignment factor: .*
+ Data alignment factor: .*
+ Return address column: .*
+ Augmentation data: 03 .. .. .. .. 1b
+@@ -53,7 +54,7 @@
+ 0000007[48] 0000001[8c] 00000000 CIE
+ Version: 1
+ Augmentation: "zPLR"
+- Code alignment factor: 1
++ Code alignment factor: .*
+ Data alignment factor: .*
+ Return address column: .*
+ Augmentation data: 03 .. .. .. .. 0c 1b
+@@ -74,7 +75,7 @@
+ 000000b[08] 0000001[04] 00000000 CIE
+ Version: 1
+ Augmentation: "zR"
+- Code alignment factor: 1
++ Code alignment factor: .*
+ Data alignment factor: .*
+ Return address column: .*
+ Augmentation data: 1b
+@@ -89,7 +90,7 @@
+ 000000[de]8 00000014 00000000 CIE
+ Version: 1
+ Augmentation: "zPR"
+- Code alignment factor: 1
++ Code alignment factor: .*
+ Data alignment factor: .*
+ Return address column: .*
+ Augmentation data: 03 .. .. .. .. 1b
+@@ -111,7 +112,7 @@
+ 000001(1c|30) 0000001[8c] 00000000 CIE
+ Version: 1
+ Augmentation: "zPLR"
+- Code alignment factor: 1
++ Code alignment factor: .*
+ Data alignment factor: .*
+ Return address column: .*
+ Augmentation data: 03 .. .. .. .. 0c 1b
+diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-frame-hdr.d binutils-2.18.92/ld/testsuite/ld-elf/eh-frame-hdr.d
+--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-frame-hdr.d 2006-12-04 09:57:09.000000000 +0100
++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-frame-hdr.d 2008-10-04 06:52:32.000000000 +0200
+@@ -1,17 +1,7 @@
+ #source: eh-frame-hdr.s
+ #ld: -e _start --eh-frame-hdr
+ #objdump: -hw
+-#target: alpha*-*-*
+-#target: arm*-*-*
+-#target: i?86-*-*
+-#target: m68k-*-*
+-#target: mips*-*-*
+-#target: powerpc*-*-*
+-#target: s390*-*-*
+-#target: sh*-*-*
+-#xfail: sh*l*-*-*
+-#target: sparc*-*-*
+-#target: x86_64-*-*
++#target: cfi
+ #...
+ [0-9] .eh_frame_hdr 0*[12][048c] .*
+ #pass
+diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group1.s binutils-2.18.92/ld/testsuite/ld-elf/eh-group1.s
+--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group1.s 2008-09-17 10:18:20.000000000 +0200
++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-group1.s 2008-10-04 06:52:32.000000000 +0200
+@@ -1,4 +1,4 @@
+- .section sect, "axG", @progbits, sectgroup, comdat
++ .section sect, "axG", %progbits, sectgroup, comdat
+ .global _start
+ _start:
+ .cfi_startproc
+diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group2.s binutils-2.18.92/ld/testsuite/ld-elf/eh-group2.s
+--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group2.s 2008-09-17 10:18:20.000000000 +0200
++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-group2.s 2008-10-04 06:52:32.000000000 +0200
+@@ -1,4 +1,4 @@
+- .section sect, "axG", @progbits, sectgroup, comdat
++ .section sect, "axG", %progbits, sectgroup, comdat
+ .cfi_startproc
+ .skip 16
+ .cfi_endproc
+diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group.exp binutils-2.18.92/ld/testsuite/ld-elf/eh-group.exp
+--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group.exp 2008-09-17 10:18:20.000000000 +0200
++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-group.exp 2008-10-04 06:52:32.000000000 +0200
+@@ -29,9 +29,9 @@
+ # executable trying to create .eh_frame_hdr. It needs a separate .exp file due
+ # to the requirement of two `ld' runs.
+
+-# Exclude non-ELF targets.
++# Exclude non-CFI (such as ia64) targets.
+
+-if ![is_elf_format] {
++if {![check_as_cfi]} {
+ return
+ }
+
+diff -Naur binutils-2.18.92.orig/ld/testsuite/lib/ld-lib.exp binutils-2.18.92/ld/testsuite/lib/ld-lib.exp
+--- binutils-2.18.92.orig/ld/testsuite/lib/ld-lib.exp 2008-02-18 12:04:09.000000000 +0100
++++ binutils-2.18.92/ld/testsuite/lib/ld-lib.exp 2008-10-04 06:52:32.000000000 +0200
+@@ -598,7 +598,8 @@
+ #
+ # target: TARGET
+ # Only run the test for TARGET. This may occur more than once; the
+-# target being tested must match at least one.
++# target being tested must match at least one. You may provide target
++# name "cfi" for any target supporting the CFI statements.
+ #
+ # notarget: TARGET
+ # Do not run the test for TARGET. This may occur more than once;
+@@ -1569,3 +1570,39 @@
+ }
+ return $gc_sections_available_saved
+ }
++
++# Check if the assembler supports CFI statements.
++
++proc check_as_cfi { } {
++ global check_as_cfi_result
++ global as
++ if [info exists check_as_cfi_result] {
++ return $check_as_cfi_result
++ }
++ set as_file "tmpdir/check_as_cfi.s"
++ set as_fh [open $as_file w 0666]
++ puts $as_fh "# Generated file. DO NOT EDIT"
++ puts $as_fh "\t.cfi_startproc"
++ puts $as_fh "\t.cfi_endproc"
++ close $as_fh
++ remote_download host $as_file
++ verbose -log "Checking CFI support:"
++ rename "perror" "check_as_cfi_perror"
++ proc perror { args } { }
++ set success [ld_assemble $as $as_file "/dev/null"]
++ rename "perror" ""
++ rename "check_as_cfi_perror" "perror"
++ #remote_file host delete $as_file
++ set check_as_cfi_result $success
++ return $success
++}
++
++# Provide virtual target "cfi" for targets supporting CFI.
++
++rename "istarget" "istarget_ld"
++proc istarget { target } {
++ if {$target == "cfi"} {
++ return [check_as_cfi]
++ }
++ return [istarget_ld $target]
++}