testsuite,c,c++, Darwin: Allow LTO test link symbols to be undefined.
We had, for some time, a bug in the target supports that meant that
Darwin was not running tests that required -shared. Since that was
fixed, we have failed a number of LTO tests. It turns out that this
had nothing to do with LTO - but was a consequence of the tests
producing DSOs with undefined symbols. Darwin's linker defaults to
requiring all symbols to be defined at link time unless individually
(-U) or generally (-undefined dynamic_lookup) allowed. For one or two
symbols -U is preferable - but most of these cases have several and
dynamic lookup is a shorter fix. The extra_ld_flags option is not
additive - and so we must override for Darwin placing that second.