[configure] avoid 'no symbols' warnings on darwin
authorBernhard Urban <bernhard.urban@xamarin.com>
Wed, 4 Jan 2017 18:20:02 +0000 (19:20 +0100)
committerBernhard Urban <bernhard.urban@xamarin.com>
Thu, 5 Jan 2017 00:46:37 +0000 (01:46 +0100)
commitc1f39f3cb4bb853bb42051f08fcd1aad980f2ea9
treec2dfd5442b8d9d24cd6cda27d4b29fa4df386db2
parent0ef271dcc2238b904990ae913aebd92244afd690
[configure] avoid 'no symbols' warnings on darwin

This helps to get rid of the messages like these:

```
/Applications/Xcode8.1-beta1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: .libs/libmonosgen-2.0.a(libmonoruntimesgen_la-coree.o) has no symbols
/Applications/Xcode8.1-beta1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: .libs/libmonosgen-2.0.a(libmonoruntimesgen_la-file-mmap-windows.o) has no symbols
/Applications/Xcode8.1-beta1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: .libs/libmonosgen-2.0.a(libmonoruntimesgen_la-lock-tracer.o) has no symbols
/Applications/Xcode8.1-beta1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: .libs/libmonosgen-2.0.a(libmonoruntimesgen_la-mono-endian.o) has no symbols
[...]
```

That is what is in `libtool`:

```
# Commands used to build an old-style archive.
old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib"
```

`ar` is calling `ranlib`, and then `libtool` calls `ranlib` again. We
cannot control how `ar` calls `ranlib` (that is, we can't tell it to
pass `-no_warning_for_no_symbols`), but we can control to not call it
at all.  Let's to that then.

As a reference, source code of `ar`:
https://opensource.apple.com/source/cctools/cctools-895/ar/ar.c.auto.html
configure.ac