-# Copyright 1995, 1997, 2002, 2004, 2007, 2008, 2009, 2010, 2012
-# Free Software Foundation, Inc.
+# Copyright (C) 1995-2015 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
}
}
-set bfdtest1 $base_dir/bfdtest1
-
# send_user "Version [binutil_version $AR]"
# Test long file name support
-proc long_filenames { } {
+proc long_filenames { bfdtests } {
global AR
global host_triplet
- global bfdtest1
+ global base_dir
set testname "ar long file names"
return
}
- set exec_output [binutils_run $bfdtest1 "$dest"]
- if ![string match "" $exec_output] {
- verbose -log $exec_output
- fail "$testname (bfdtest1)"
- return
+ foreach bfdtest $bfdtests {
+ set exec_output [binutils_run "$base_dir/$bfdtest" "$dest"]
+ if ![string match "" $exec_output] {
+ verbose -log $exec_output
+ fail "$testname ($bfdtest)"
+ return
+ }
}
if [is_remote host] {
# Test building a thin archive.
-proc thin_archive { } {
+proc thin_archive { bfdtests } {
global AR
global AS
global NM
global srcdir
global subdir
- global bfdtest1
+ global base_dir
set testname "ar thin archive"
return
}
- set exec_output [binutils_run $bfdtest1 "$archive"]
- if ![string match "" $exec_output] {
- verbose -log $exec_output
- fail "$testname (bfdtest1)"
- return
+ foreach bfdtest $bfdtests {
+ set exec_output [binutils_run "$base_dir/$bfdtest" "$archive"]
+ if ![string match "" $exec_output] {
+ verbose -log $exec_output
+ fail "$testname ($bfdtest)"
+ return
+ }
}
set got [binutils_run $NM "--print-armap $archive"]
# Test building a thin archive with a nested archive.
-proc thin_archive_with_nested { } {
+proc thin_archive_with_nested { bfdtests } {
global AR
global AS
global NM
global srcdir
global subdir
- global bfdtest1
+ global base_dir
set testname "ar thin archive with nested archive"
return
}
- set exec_output [binutils_run $bfdtest1 "$archive"]
- if ![string match "" $exec_output] {
- verbose -log $exec_output
- fail "$testname (bfdtest1)"
- return
- }
+ foreach bfdtest $bfdtests {
+ set exec_output [binutils_run "$base_dir/$bfdtest" "$archive"]
+ if ![string match "" $exec_output] {
+ verbose -log $exec_output
+ fail "$testname ($bfdtest)"
+ return
+ }
- set exec_output [binutils_run $bfdtest1 "$archive2"]
- if ![string match "" $exec_output] {
- verbose -log $exec_output
- fail "$testname (bfdtest1)"
- return
+ set exec_output [binutils_run "$base_dir/$bfdtest" "$archive2"]
+ if ![string match "" $exec_output] {
+ verbose -log $exec_output
+ fail "$testname ($bfdtest)"
+ return
+ }
}
set got [binutils_run $NM "--print-armap $archive"]
# Run the tests.
-long_filenames
+# Only run the bfdtest checks if the programs exist. Since these
+# programs are built but not installed, running the testsuite on an
+# installed toolchain will produce ERRORs about missing bfdtest1 and
+# bfdtest2 executables.
+if { [file exists $base_dir/bfdtest1] && [file exists $base_dir/bfdtest2] } {
+ set bfdtests [list bfdtest1 bfdtest2]
+
+ long_filenames $bfdtests
+ thin_archive $bfdtests
+ thin_archive_with_nested $bfdtests
+}
+
symbol_table
-thin_archive
-thin_archive_with_nested
argument_parsing
deterministic_archive
delete_an_element
move_an_element
+
if { [is_elf_format]
&& ![istarget "*-*-hpux*"]
&& ![istarget "msp*-*-*"] } {