Redmine #6434: Fix AIX missing a lot of log output.

It happens because we list a static library as a dependency for
libpromises, and then we list the same static library as a dependency
for a binary that depends on libpromises. Then the symbol will be
included both in the library and in the binary.

Exactly how the symbols are resolved appears to be platform dependent,
but what can happen is this: At any point, when you call a duplicate
symbol, depending on where you call it from, you will either call the
version in the binary or in the library. This is fine, since they both
contain exactly the same code. However, they do not refer to the same
global symbols. They each have their own set. This means that
something that was initialized in the binary may not be initialized in
the library, even though the symbol name is the same. This has weird
effects, like a symbol suddenly switching from a valid value to zero
when the stack trace crosses a library boundary.

The problem was observed on AIX, where the log level randomly switches
between verbose and non-verbose, depending on where the Log() function
was called from.