gdb/gdb-rhel5-gcc44.patch

432 lines
16 KiB
Diff
Raw Normal View History

2010-01-12 22:15:57 +00:00
Some functionality is available on RHEL-5.4+ only with gcc44 and gfortran44 as
the default gcc and gfortran binaries are from gcc-4.1.
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.base/vla.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.base/vla.exp 2014-02-06 18:26:05.115083077 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.base/vla.exp 2014-02-06 18:26:06.689084765 +0100
2010-01-12 22:15:57 +00:00
@@ -16,7 +16,25 @@
set testfile vla
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
+# Temporarily provide compiler=gcc44 saving the original value around.
+
+set board [target_info name]
+if [board_info $board exists compiler] {
+ set old_compiler [board_info $board compiler]
+ unset_board_info compiler
+} elseif [info exists old_compiler] {
+ unset old_compiler
+}
+set_board_info compiler gcc44
+
+set err [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug quiet}]
+
+unset_board_info compiler
+if [info exists old_compiler] {
+ set_board_info compiler $old_compiler
+}
+
+if { $err != "" } {
untested "Couldn't compile test program"
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.base/break-interp.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.base/break-interp.exp 2014-02-06 18:26:05.116083078 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.base/break-interp.exp 2014-02-06 18:26:06.689084765 +0100
@@ -34,9 +34,29 @@ if [get_compiler_info] {
2010-01-12 22:15:57 +00:00
return -1
}
+# Temporarily provide compiler=gcc44 saving the original value around.
+# RHEL-5 workaround of its:
+# gcc: -soname: linker input file unused because linking not done
+
+set board [target_info name]
+if [board_info $board exists compiler] {
+ set old_compiler [board_info $board compiler]
+ unset_board_info compiler
+} elseif [info exists old_compiler] {
+ unset old_compiler
+}
+set_board_info compiler gcc44
+
# Use -soname so that the new library gets copied by build_executable_own_libs.
2010-01-12 22:15:57 +00:00
-if {[gdb_compile_shlib ${srcdir}/${subdir}/${srcfile_lib} ${binfile_lib} [list debug ldflags=-Wl,-soname,${test}.so]] != ""} {
+set err [gdb_compile_shlib ${srcdir}/${subdir}/${srcfile_lib} ${binfile_lib} [list debug ldflags=-Wl,-soname,${test}.so]]
2010-01-12 22:15:57 +00:00
+
+unset_board_info compiler
+if [info exists old_compiler] {
+ set_board_info compiler $old_compiler
+}
+
+if { $err != "" } {
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/common-block.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/common-block.exp 2014-02-06 18:26:05.116083078 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/common-block.exp 2014-02-06 18:26:06.690084760 +0100
@@ -22,8 +22,25 @@ if {[skip_fortran_tests]} {
2010-01-12 22:15:57 +00:00
standard_testfile .f90
-if {[prepare_for_testing ${testfile}.exp ${testfile} \
- $srcfile {debug f90 quiet}]} {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [prepare_for_testing ${testfile}.exp ${testfile} $srcfile {debug f90 quiet}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if {$err} {
2010-01-12 22:15:57 +00:00
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/dwarf-stride.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/dwarf-stride.exp 2014-02-06 18:26:05.117083079 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/dwarf-stride.exp 2014-02-06 18:26:06.690084760 +0100
2010-01-12 22:15:57 +00:00
@@ -27,7 +27,25 @@
set testfile dwarf-stride
set srcfile ${testfile}.f90
-if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} {debug f90}] } {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} {debug f90}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if $err {
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/dynamic.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/dynamic.exp 2014-02-06 18:26:05.117083079 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/dynamic.exp 2014-02-06 18:26:06.690084760 +0100
2010-01-12 22:15:57 +00:00
@@ -25,7 +25,25 @@ set testfile "dynamic"
set srcfile ${testfile}.f90
set binfile ${objdir}/${subdir}/${testfile}
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f90 quiet}] != "" } {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f90 quiet}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if { $err != "" } {
untested "Couldn't compile ${srcfile}"
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/library-module.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/library-module.exp 2014-02-06 18:26:05.117083079 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/library-module.exp 2014-02-06 18:26:06.690084760 +0100
@@ -23,16 +23,34 @@ if [get_compiler_info] {
2010-01-12 22:15:57 +00:00
return -1
}
-if { [gdb_compile_shlib "${srcdir}/${subdir}/${srclibfile}" $libfile {debug f90}] != "" } {
2010-01-12 22:15:57 +00:00
- untested "Couldn't compile ${srclibfile}"
- return -1
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
# prepare_for_testing cannot be used as linking with $libfile cannot be passed
# just for the linking phase (and not the source compilation phase). And any
# warnings on ignored $libfile abort the process.
-if { [gdb_compile $srcdir/$subdir/$srcfile $binfile executable [list debug f90 shlib=$libfile]] != "" } {
+set err1 [gdb_compile_shlib "${srcdir}/${subdir}/${srclibfile}" $libfile {debug f90}]
+set err2 [gdb_compile $srcdir/$subdir/$srcfile $binfile executable [list debug f90 shlib=$libfile]]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if { $err1 != "" } {
+ untested "Couldn't compile ${srclibfile}"
+ return -1
+}
+if { $err2 != "" } {
untested "Couldn't compile ${srcfile}"
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/module.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/module.exp 2014-02-06 18:26:05.118083080 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/module.exp 2014-02-06 18:26:06.690084760 +0100
@@ -15,7 +15,25 @@
standard_testfile .f90
2010-01-12 22:15:57 +00:00
-if { [prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}] } {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if $err {
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/string.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/string.exp 2014-02-06 18:26:05.118083080 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/string.exp 2014-02-06 18:26:06.691084763 +0100
2010-01-12 22:15:57 +00:00
@@ -23,7 +23,25 @@ set testfile "string"
set srcfile ${testfile}.f90
set binfile ${objdir}/${subdir}/${testfile}
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f90 quiet}] != "" } {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f90 quiet}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if { $err != "" } {
untested "Couldn't compile ${srcfile}"
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/omp-step.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/omp-step.exp 2014-02-06 18:26:05.118083080 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/omp-step.exp 2014-02-06 18:26:06.691084763 +0100
2010-01-12 22:15:57 +00:00
@@ -15,7 +15,26 @@
set testfile "omp-step"
set srcfile ${testfile}.f90
-if { [prepare_for_testing $testfile.exp $testfile $srcfile {debug f90 additional_flags=-fopenmp}] } {
2010-01-12 22:15:57 +00:00
+
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} {debug f90 additional_flags=-fopenmp}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if $err {
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/derived-type.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/derived-type.exp 2014-02-06 18:26:05.119083082 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/derived-type.exp 2014-02-06 18:26:06.691084763 +0100
@@ -22,7 +22,25 @@ if { [skip_fortran_tests] } { return -1
standard_testfile .f90
2010-01-12 22:15:57 +00:00
-if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}]} {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if $err {
2010-01-12 22:15:57 +00:00
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/subarray.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.fortran/subarray.exp 2014-02-06 18:26:05.119083082 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.fortran/subarray.exp 2014-02-06 18:26:06.691084763 +0100
@@ -22,7 +22,25 @@ if { [skip_fortran_tests] } { return -1
standard_testfile .f
2010-01-12 22:15:57 +00:00
-if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}]} {
+# Temporarily provide f90compiler=gfortran44 saving the original value around.
2010-01-12 22:15:57 +00:00
+
+set board [target_info name]
+if [board_info $board exists f90compiler] {
+ set old_f90compiler [board_info $board f90compiler]
+ unset_board_info f90compiler
+} elseif [info exists old_f90compiler] {
+ unset old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+set_board_info f90compiler gfortran44
2010-01-12 22:15:57 +00:00
+
+set err [prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}]
2010-01-12 22:15:57 +00:00
+
+unset_board_info f90compiler
+if [info exists old_f90compiler] {
+ set_board_info f90compiler $old_f90compiler
2010-01-12 22:15:57 +00:00
+}
+
+if $err {
2010-01-12 22:15:57 +00:00
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/gdb.threads/tls-sepdebug.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/gdb.threads/tls-sepdebug.exp 2014-02-06 18:26:05.119083082 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/gdb.threads/tls-sepdebug.exp 2014-02-06 18:26:06.691084763 +0100
2010-01-12 22:15:57 +00:00
@@ -32,7 +32,25 @@ set binshareddebugfile ${objdir}/${subdi
# FIXME: gcc dependency (-Wl,-soname).
-if { [gdb_compile_shlib "${srcdir}/${subdir}/${srcsharedfile}" "${binsharedfile}" [list debug additional_flags=-Wl,-soname=${binsharedbase}]] != "" } {
+# Temporarily provide compiler=gcc44 saving the original value around.
+
+set board [target_info name]
+if [board_info $board exists compiler] {
+ set old_compiler [board_info $board compiler]
+ unset_board_info compiler
+} elseif [info exists old_compiler] {
+ unset old_compiler
+}
+set_board_info compiler gcc44
+
+set err [gdb_compile_shlib "${srcdir}/${subdir}/${srcsharedfile}" "${binsharedfile}" [list debug additional_flags=-Wl,-soname=${binsharedbase}]]
+
+unset_board_info compiler
+if [info exists old_compiler] {
+ set_board_info compiler $old_compiler
+}
+
+if { $err != "" } {
untested "Couldn't compile test library"
return -1
}
Index: gdb-7.6.90.20140127/gdb/testsuite/lib/prelink-support.exp
===================================================================
--- gdb-7.6.90.20140127.orig/gdb/testsuite/lib/prelink-support.exp 2014-02-06 18:26:06.692084767 +0100
+++ gdb-7.6.90.20140127/gdb/testsuite/lib/prelink-support.exp 2014-02-06 18:27:44.960190192 +0100
@@ -118,9 +118,31 @@ proc file_copy {src dest} {
proc build_executable_own_libs {testname executable sources options {interp ""} {dir ""}} {
global subdir
- if {[build_executable $testname $executable $sources $options] == -1} {
- return ""
+ # Temporarily provide compiler=gcc44 saving the original value around.
+ # RHEL-5 workaround of its:
+ # gcc: -rpath: linker input file unused because linking not done
+ # gcc: --dynamic-linker: linker input file unused because linking not done
+
+ set board [target_info name]
+ if [board_info $board exists compiler] {
+ set old_compiler [board_info $board compiler]
+ unset_board_info compiler
+ } elseif [info exists old_compiler] {
+ unset old_compiler
2012-01-03 15:00:12 +00:00
+ }
+ set_board_info compiler gcc44
+
+ set err [build_executable $testname $executable $sources $options]
+
+ unset_board_info compiler
+ if [info exists old_compiler] {
+ set_board_info compiler $old_compiler
2012-01-03 15:00:12 +00:00
}
+
+ if { $err == -1 } {
+ return ""
+ }
+
set binfile [standard_output_file ${executable}]
set ldd [gdb_find_ldd]