is_elf_format and friends

Alan Modra amodra@gmail.com
Wed Sep 29 06:04:00 GMT 2010


These really ought to be in a common file somewhere.

binutils/testsuite/
	* lib/utils-lib.exp (is_elf_format): Merge with gas and ld versions.
gas/testsuite/
	* lib/gas-defs.exp (is_elf_format): Merge with binutils and ld versions.
	(is_aout_format): Copy from ld testsuite.
	(is_pecoff_format): Merge with ld version.
ld/testsuite/
	* lib/ld-lib.exp (is_elf_format): Merge with binutils and gas versions.
	(is_aout_format): Update target list.
	(is_pecoff_format): Remove unnecessary line continuation.

Index: binutils/testsuite/lib/utils-lib.exp
===================================================================
RCS file: /cvs/src/src/binutils/testsuite/lib/utils-lib.exp,v
retrieving revision 1.19
diff -u -p -r1.19 utils-lib.exp
--- binutils/testsuite/lib/utils-lib.exp	14 Jul 2010 19:46:00 -0000	1.19
+++ binutils/testsuite/lib/utils-lib.exp	28 Sep 2010 23:11:46 -0000
@@ -118,41 +118,59 @@ proc default_binutils_assemble_flags { s
     }
 }
 
-#
-# is_elf_format
-#	true if the object format is known to be ELF
+# True if the object format is known to be ELF.
 #
 proc is_elf_format {} {
-    if { ![istarget *-*-sysv4*] \
-	 && ![istarget *-*-unixware*] \
-	 && ![istarget *-*-elf*] \
-	 && ![istarget *-*-eabi*] \
-	 && ![istarget hppa*64*-*-hpux*] \
-	 && ![istarget ia64-*-hpux*] \
-	 && ![istarget *-*-linux*] \
-	 && ![istarget *-*-irix5*] \
-	 && ![istarget *-*-irix6*] \
-	 && ![istarget *-*-netbsd*] \
+    if { ![istarget *-*-sysv4*]
+	 && ![istarget *-*-unixware*]
+	 && ![istarget *-*-elf*]
+	 && ![istarget *-*-eabi*]
+	 && ![istarget *-*-rtems*]
+	 && ![istarget hppa*64*-*-hpux*]
+	 && ![istarget ia64-*-hpux*]
+	 && ![istarget *-*-linux*]
+	 && ![istarget frv-*-uclinux*]
+	 && ![istarget bfin-*-uclinux]
+	 && ![istarget sh*-*-uclinux*]
+	 && ![istarget *-*-irix5*]
+	 && ![istarget *-*-irix6*]
+	 && ![istarget *-*-netbsd*]
+	 && ![istarget *-*-openbsd*]
 	 && ![istarget *-*-solaris2*] } {
 	return 0
     }
 
-    if { [istarget *-*-linux*aout*] \
-	 || [istarget *-*-linux*oldld*] } {
+    if { [istarget *-*-linux*aout*]
+	 || [istarget *-*-linux*oldld*]
+	 || [istarget h8500-*-rtems*]
+	 || [istarget i960-*-rtems*]
+	 || [istarget *-*-rtemscoff*] } {
 	return 0
     }
 
-    if { ![istarget *-*-netbsdelf*] \
-	 && ([istarget *-*-netbsd*aout*] \
-	     || [istarget *-*-netbsdpe*] \
-	     || [istarget arm*-*-netbsd*] \
-	     || [istarget sparc-*-netbsd*] \
-	     || [istarget i*86-*-netbsd*] \
-	     || [istarget m68*-*-netbsd*] \
-	     || [istarget vax-*-netbsd*] \
+    if { ![istarget *-*-netbsdelf*]
+	 && ([istarget *-*-netbsd*aout*]
+	     || [istarget *-*-netbsdpe*]
+	     || [istarget arm*-*-netbsd*]
+	     || [istarget sparc-*-netbsd*]
+	     || [istarget i*86-*-netbsd*]
+	     || [istarget m68*-*-netbsd*]
+	     || [istarget vax-*-netbsd*]
 	     || [istarget ns32k-*-netbsd*]) } {
     	return 0
     }
+
+    if { [istarget arm-*-openbsd*]
+	 || [istarget i386-*-openbsd\[0-2\].*]
+	 || [istarget i386-*-openbsd3.\[0-2\]]
+	 || [istarget m68*-*-openbsd*]
+	 || [istarget ns32k-*-openbsd*]
+	 || [istarget sparc-*-openbsd\[0-2\].*]
+	 || [istarget sparc-*-openbsd3.\[0-1\]]
+	 || [istarget vax-*-openbsd*] } {
+	return 0
+    }
+
     return 1
 }
 
Index: gas/testsuite/lib/gas-defs.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/lib/gas-defs.exp,v
retrieving revision 1.40
diff -u -p -r1.40 gas-defs.exp
--- gas/testsuite/lib/gas-defs.exp	2 Aug 2010 08:48:57 -0000	1.40
+++ gas/testsuite/lib/gas-defs.exp	28 Sep 2010 23:11:54 -0000
@@ -277,51 +277,55 @@ proc gas_init { args } {
     return
 }
 
-#
-# is_elf_format
-#	true if the object format is known to be ELF
+# True if the object format is known to be ELF.
 #
 proc is_elf_format {} {
-    if { ![istarget *-*-sysv4*] \
-	 && ![istarget *-*-unixware*] \
-	 && ![istarget *-*-elf*] \
-	 && ![istarget *-*-eabi*] \
-	 && ![istarget hppa*64*-*-hpux*] \
-	 && ![istarget *-*-linux*] \
-	 && ![istarget frv-*-uclinux*] \
-	 && ![istarget sh*-*-uclinux*] \
-	 && ![istarget *-*-irix5*] \
-	 && ![istarget *-*-irix6*] \
-	 && ![istarget *-*-netbsd*] \
-	 && ![istarget *-*-openbsd*] \
+    if { ![istarget *-*-sysv4*]
+	 && ![istarget *-*-unixware*]
+	 && ![istarget *-*-elf*]
+	 && ![istarget *-*-eabi*]
+	 && ![istarget *-*-rtems*]
+	 && ![istarget hppa*64*-*-hpux*]
+	 && ![istarget ia64-*-hpux*]
+	 && ![istarget *-*-linux*]
+	 && ![istarget frv-*-uclinux*]
+	 && ![istarget bfin-*-uclinux]
+	 && ![istarget sh*-*-uclinux*]
+	 && ![istarget *-*-irix5*]
+	 && ![istarget *-*-irix6*]
+	 && ![istarget *-*-netbsd*]
+	 && ![istarget *-*-openbsd*]
 	 && ![istarget *-*-solaris2*] } {
 	return 0
     }
 
-    if { [istarget *-*-linux*aout*] \
-	 || [istarget *-*-linux*oldld*] } {
+    if { [istarget *-*-linux*aout*]
+	 || [istarget *-*-linux*oldld*]
+	 || [istarget h8500-*-rtems*]
+	 || [istarget i960-*-rtems*]
+	 || [istarget *-*-rtemscoff*] } {
 	return 0
     }
 
-    if { ![istarget *-*-netbsdelf*] \
-	 && ([istarget *-*-netbsd*aout*] \
-	     || [istarget *-*-netbsdpe*] \
-	     || [istarget arm*-*-netbsd*] \
-	     || [istarget sparc-*-netbsd*] \
-	     || [istarget i*86-*-netbsd*] \
-	     || [istarget m68*-*-netbsd*] \
-	     || [istarget vax-*-netbsd*] \
+    if { ![istarget *-*-netbsdelf*]
+	 && ([istarget *-*-netbsd*aout*]
+	     || [istarget *-*-netbsdpe*]
+	     || [istarget arm*-*-netbsd*]
+	     || [istarget sparc-*-netbsd*]
+	     || [istarget i*86-*-netbsd*]
+	     || [istarget m68*-*-netbsd*]
+	     || [istarget vax-*-netbsd*]
 	     || [istarget ns32k-*-netbsd*]) } {
     	return 0
     }
 
-    if { [istarget arm-*-openbsd*] \
-	 || [istarget i386-*-openbsd\[0-2\].*] \
-	 || [istarget i386-*-openbsd3.\[0-3\]] \
-	 || [istarget m68*-*-openbsd*] \
-	 || [istarget ns32k-*-openbsd*] \
-	 || [istarget sparc-*-openbsd\[0-2\].*] \
-	 || [istarget sparc-*-openbsd3.\[0-1\]] \
+    if { [istarget arm-*-openbsd*]
+	 || [istarget i386-*-openbsd\[0-2\].*]
+	 || [istarget i386-*-openbsd3.\[0-2\]]
+	 || [istarget m68*-*-openbsd*]
+	 || [istarget ns32k-*-openbsd*]
+	 || [istarget sparc-*-openbsd\[0-2\].*]
+	 || [istarget sparc-*-openbsd3.\[0-1\]]
 	 || [istarget vax-*-openbsd*] } {
 	return 0
     }
@@ -329,11 +333,49 @@ proc is_elf_format {} {
     return 1
 }
 
+# True if the object format is known to be a.out.
+#
+proc is_aout_format {} {
+    if { [istarget *-*-netbsdelf]
+	 || [istarget sparc64-*-netbsd*]
+	 || [istarget sparc64-*-openbsd*] } {
+	return 0
+    }
+    if { [istarget *-*-*\[ab\]out*]
+	 || [istarget *-*-linux*oldld*]
+	 || [istarget *-*-bsd*]
+	 || [istarget *-*-msdos*]
+	 || [istarget arm-*-netbsd*]
+	 || [istarget arm-*-openbsd*]
+	 || [istarget arm-*-riscix*]
+	 || [istarget i?86-*-freebsd\[12\]*]
+	 || [istarget i?86-*-netbsd*]
+	 || [istarget i?86-*-openbsd\[0-2\]*]
+	 || [istarget i?86-*-openbsd3.\[0-2\]*]
+	 || [istarget i?86-*-vsta]
+	 || [istarget i?86-*-mach*]
+	 || [istarget m68*-*-netbsd*]
+	 || [istarget m68*-*-openbsd*]
+	 || [istarget ns32k-*-*]
+	 || [istarget pdp11-*-*]
+	 || [istarget sparc*-*-sunos4*]
+	 || [istarget sparc*-*-netbsd*]
+	 || [istarget sparc*-*-openbsd\[0-2\]*]
+	 || [istarget sparc*-*-openbsd3.\[0-1\]*]
+	 || [istarget sparc*-fujitsu-none]
+	 || [istarget vax-dec-ultrix*]
+	 || [istarget vax-*-netbsd] } {
+	return 1
+    }
+    return 0
+}
+
 # True if the object format is known to be PE COFF.
 #
 proc is_pecoff_format {} {
-    if { ![istarget *-*-mingw*] \
-	 && ![istarget *-*-cygwin*] \
+    if { ![istarget *-*-mingw*]
+	 && ![istarget *-*-cygwin*]
+	 && ![istarget *-*-cegcc*]
 	 && ![istarget *-*-pe*] } {
 	return 0
     }
Index: ld/testsuite/lib/ld-lib.exp
===================================================================
RCS file: /cvs/src/src/ld/testsuite/lib/ld-lib.exp,v
retrieving revision 1.73
diff -u -p -r1.73 ld-lib.exp
--- ld/testsuite/lib/ld-lib.exp	18 Sep 2010 02:30:41 -0000	1.73
+++ ld/testsuite/lib/ld-lib.exp	28 Sep 2010 23:12:08 -0000
@@ -399,38 +399,56 @@ proc ld_simple_link_defsyms {} {
 # True if the object format is known to be ELF.
 #
 proc is_elf_format {} {
-    if { ![istarget *-*-sysv4*] \
-	 && ![istarget *-*-unixware*] \
-	 && ![istarget *-*-elf*] \
-	 && ![istarget *-*-eabi*] \
-	 && ![istarget hppa*64*-*-hpux*] \
-	 && ![istarget *-*-linux*] \
-	 && ![istarget frv-*-uclinux*] \
-	 && ![istarget bfin-*-uclinux] \
-	 && ![istarget sh*-*-uclinux*] \
-	 && ![istarget *-*-irix5*] \
-	 && ![istarget *-*-irix6*] \
-	 && ![istarget *-*-netbsd*] \
+    if { ![istarget *-*-sysv4*]
+	 && ![istarget *-*-unixware*]
+	 && ![istarget *-*-elf*]
+	 && ![istarget *-*-eabi*]
+	 && ![istarget *-*-rtems*]
+	 && ![istarget hppa*64*-*-hpux*]
+	 && ![istarget ia64-*-hpux*]
+	 && ![istarget *-*-linux*]
+	 && ![istarget frv-*-uclinux*]
+	 && ![istarget bfin-*-uclinux]
+	 && ![istarget sh*-*-uclinux*]
+	 && ![istarget *-*-irix5*]
+	 && ![istarget *-*-irix6*]
+	 && ![istarget *-*-netbsd*]
+	 && ![istarget *-*-openbsd*]
 	 && ![istarget *-*-solaris2*] } {
 	return 0
     }
 
-    if { [istarget *-*-linux*aout*] \
-	 || [istarget *-*-linux*oldld*] } {
+    if { [istarget *-*-linux*aout*]
+	 || [istarget *-*-linux*oldld*]
+	 || [istarget h8500-*-rtems*]
+	 || [istarget i960-*-rtems*]
+	 || [istarget *-*-rtemscoff*] } {
 	return 0
     }
 
-    if { ![istarget *-*-netbsdelf*] \
-	 && ([istarget *-*-netbsd*aout*] \
-	     || [istarget *-*-netbsdpe*] \
-	     || [istarget arm*-*-netbsd*] \
-	     || [istarget sparc-*-netbsd*] \
-	     || [istarget i*86-*-netbsd*] \
-	     || [istarget m68*-*-netbsd*] \
-	     || [istarget vax-*-netbsd*] \
+    if { ![istarget *-*-netbsdelf*]
+	 && ([istarget *-*-netbsd*aout*]
+	     || [istarget *-*-netbsdpe*]
+	     || [istarget arm*-*-netbsd*]
+	     || [istarget sparc-*-netbsd*]
+	     || [istarget i*86-*-netbsd*]
+	     || [istarget m68*-*-netbsd*]
+	     || [istarget vax-*-netbsd*]
 	     || [istarget ns32k-*-netbsd*]) } {
     	return 0
     }
+
+    if { [istarget arm-*-openbsd*]
+	 || [istarget i386-*-openbsd\[0-2\].*]
+	 || [istarget i386-*-openbsd3.\[0-2\]]
+	 || [istarget m68*-*-openbsd*]
+	 || [istarget ns32k-*-openbsd*]
+	 || [istarget sparc-*-openbsd\[0-2\].*]
+	 || [istarget sparc-*-openbsd3.\[0-1\]]
+	 || [istarget vax-*-openbsd*] } {
+	return 0
+    }
+
     return 1
 }
 
@@ -462,27 +480,35 @@ proc is_elf64 { binary_file } {
 # True if the object format is known to be a.out.
 #
 proc is_aout_format {} {
-    if { [istarget *-*-*\[ab\]out*] \
-	     || [istarget *-*-linux*oldld*] \
-	     || [istarget *-*-msdos*] \
-	     || [istarget arm-*-netbsd] \
-	     || [istarget i?86-*-netbsd] \
-	     || [istarget i?86-*-mach*] \
-	     || [istarget i?86-*-vsta] \
-	     || [istarget pdp11-*-*] \
-	     || [istarget m68*-ericsson-ose] \
-	     || [istarget m68k-hp-bsd*] \
-	     || [istarget m68*-*-hpux*] \
-	     || [istarget m68*-*-netbsd] \
-	     || [istarget m68*-*-netbsd*4k*] \
-	     || [istarget m68k-sony-*] \
-	     || [istarget m68*-sun-sunos\[34\]*] \
-	     || [istarget m68*-wrs-vxworks*] \
-	     || [istarget ns32k-*-*] \
-	     || [istarget sparc*-*-netbsd] \
-	     || [istarget sparc-sun-sunos4*] \
-	     || [istarget vax-dec-ultrix*] \
-	     || [istarget vax-*-netbsd] } {
+    if { [istarget *-*-netbsdelf]
+	 || [istarget sparc64-*-netbsd*]
+	 || [istarget sparc64-*-openbsd*] } {
+	return 0
+    }
+    if { [istarget *-*-*\[ab\]out*]
+	 || [istarget *-*-linux*oldld*]
+	 || [istarget *-*-bsd*]
+	 || [istarget *-*-msdos*]
+	 || [istarget arm-*-netbsd*]
+	 || [istarget arm-*-openbsd*]
+	 || [istarget arm-*-riscix*]
+	 || [istarget i?86-*-freebsd\[12\]*]
+	 || [istarget i?86-*-netbsd*]
+	 || [istarget i?86-*-openbsd\[0-2\]*]
+	 || [istarget i?86-*-openbsd3.\[0-2\]*]
+	 || [istarget i?86-*-vsta]
+	 || [istarget i?86-*-mach*]
+	 || [istarget m68*-*-netbsd*]
+	 || [istarget m68*-*-openbsd*]
+	 || [istarget ns32k-*-*]
+	 || [istarget pdp11-*-*]
+	 || [istarget sparc*-*-sunos4*]
+	 || [istarget sparc*-*-netbsd*]
+	 || [istarget sparc*-*-openbsd\[0-2\]*]
+	 || [istarget sparc*-*-openbsd3.\[0-1\]*]
+	 || [istarget sparc*-fujitsu-none]
+	 || [istarget vax-dec-ultrix*]
+	 || [istarget vax-*-netbsd] } {
 	return 1
     }
     return 0
@@ -491,9 +517,9 @@ proc is_aout_format {} {
 # True if the object format is known to be PE COFF.
 #
 proc is_pecoff_format {} {
-    if { ![istarget *-*-mingw*] \
-	 && ![istarget *-*-cygwin*] \
-	 && ![istarget *-*-cegcc*] \
+    if { ![istarget *-*-mingw*]
+	 && ![istarget *-*-cygwin*]
+	 && ![istarget *-*-cegcc*]
 	 && ![istarget *-*-pe*] } {
 	return 0
     }

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list