binutils testsuite strip-13 test
[deliverable/binutils-gdb.git] / binutils / testsuite / lib / binutils-common.exp
index 9fc9a18dae290940304b2bb3cd24d022b1eda4de..b1ede4cdf60607c09b62862e0e280565023a5acc 100644 (file)
@@ -23,7 +23,7 @@ proc is_elf_format {} {
     # config.sub for these targets curiously transforms a target doublet
     # ending in -elf to -none.  eg. m68hc12-elf to m68hc12-unknown-none
     # They are always elf.
-    if { [istarget m68hc1*-*] || [istarget xgate-*] } {
+    if { [istarget m68hc1*-*] || [istarget s12z*-*] || [istarget xgate-*] } {
        return 1;
     }
 # vxworks (and windiss) excluded due to number of ELF tests that need
@@ -111,15 +111,16 @@ proc is_elf64 { binary_file } {
     global READELF
     global READELFFLAGS
 
+    set tmpfile [file dirname $binary_file]/readelf.out
     set readelf_size ""
-    catch "exec $READELF $READELFFLAGS -h $binary_file > readelf.out" got
+    catch "exec $READELF $READELFFLAGS -h $binary_file > $tmpfile" got
 
     if ![string match "" $got] then {
        return 0
     }
 
     if { ![regexp "\n\[ \]*Class:\[ \]*ELF(\[0-9\]+)\n" \
-          [file_contents readelf.out] nil readelf_size] } {
+          [file_contents $tmpfile] nil readelf_size] } {
        return 0
     }
 
@@ -130,6 +131,26 @@ proc is_elf64 { binary_file } {
     return 0
 }
 
+# True if the object format is known to use RELA relocations.
+#
+proc is_rela { binary_file } {
+    global READELF
+    global READELFFLAGS
+
+    set tmpfile [file dirname $binary_file]/readelf.out
+    catch "exec $READELF $READELFFLAGS -S $binary_file > $tmpfile" got
+
+    if ![string match "" $got] then {
+       return 0
+    }
+
+    if { ![regexp "RELA" [file_contents $tmpfile]] } {
+       return 0
+    }
+
+    return 1
+}
+
 # True if the target matches TARGET, specified as a TCL procedure if
 # in square brackets or as machine triplet otherwise.
 #
@@ -177,7 +198,8 @@ proc supports_gnu_unique {} {
     if { [istarget "am33_2.0-*-*"]
         || [istarget "d30v-*-*"]
         || [istarget "dlx-*-*"]
-        || [istarget "pj*-*-*"] } {
+        || [istarget "pj*-*-*"]
+        || [istarget "xgate-*-*"] } {
        return 0
     }
     return 1
This page took 0.04165 seconds and 4 git commands to generate.