+2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
+
+ * lib/ld-lib.exp (ar_simple_create): Add an "aropts" parameter.
+ (run_ld_link_tests): Treat the second list element as "ar" options
+ when creating an archive. Don't run the linker in this case.
+ (run_cc_link_tests): Likewise.
+
2009-03-13 Nick Clifton <nickc@redhat.com>
* lib/ld-lib.exp (run_dump_test): Add verbose to list of globals.
# Create an archive using ar
#
-proc ar_simple_create { ar target objects } {
+proc ar_simple_create { ar aropts target objects } {
remote_file host delete $target
- set exec_output [run_host_cmd "$ar" "rc $target $objects"]
+ set exec_output [run_host_cmd "$ar" "$aropts rc $target $objects"]
set exec_output [prune_warnings $exec_output]
if [string match "" $exec_output] then {
# List contains test-items with 3 items followed by 2 lists, one item and
# one optional item:
-# 0:name 1:ld options 2:assembler options
+# 0:name 1:ld/ar options 2:assembler options
# 3:filenames of assembler files 4: action and options. 5: name of output file
# 6:compiler flags (optional)
#
continue
}
- if [regexp ".*a$" $binfile] then {
- if ![ar_simple_create $ar $binfile "$objfiles"] {
+ if { [regexp ".*a$" $binfile] } {
+ if { ![ar_simple_create $ar $ld_options $binfile "$objfiles"] } {
fail $testname
set failed 1
} else {
set failed 0
}
- } elseif ![ld_simple_link $ld $binfile "-L$srcdir/$subdir $ld_options $objfiles"] {
+ } elseif { ![ld_simple_link $ld $binfile "-L$srcdir/$subdir $ld_options $objfiles"] } {
fail $testname
set failed 1
} else {
# List contains test-items with 3 items followed by 2 lists, one item and
# one optional item:
# 0:name
-# 1:link options
+# 1:ld or ar options
# 2:compile options
# 3:filenames of source files
# 4:action and options.
set cc_cmd $CC
}
- if [regexp ".*a$" $binfile] then {
- if ![ar_simple_create $ar $binfile "$objfiles"] {
+ if { [regexp ".*a$" $binfile] } {
+ if { ![ar_simple_create $ar $ldflags $binfile "$objfiles"] } {
fail $testname
set failed 1
} else {
set failed 0
}
- } elseif ![ld_simple_link $cc_cmd $binfile "-L$srcdir/$subdir $ldflags $objfiles"] {
+ } elseif { ![ld_simple_link $cc_cmd $binfile "-L$srcdir/$subdir $ldflags $objfiles"] } {
fail $testname
set failed 1
} else {