]> granicus.if.org Git - postgresql/commit
The issue has been raised in the past that our build system links each
authorNeil Conway <neilc@samurai.com>
Thu, 5 May 2005 11:50:18 +0000 (11:50 +0000)
committerNeil Conway <neilc@samurai.com>
Thu, 5 May 2005 11:50:18 +0000 (11:50 +0000)
commitd445b413c6e2a7afeb77b9e30a1c9241edb1af53
tree1732f8a59ce708be311ca8e2f927d9c012a9df27
parentdb70a312941d7e20d9fff6bbe7d6e9ccf59294e0
The issue has been raised in the past that our build system links each
executable against the maximal set of libraries it might need. So for
example, if one executable requires `libreadline', all executables are
linked against it.

The easiest fix is to make use of GNU ld's --as-needed flag, which
ignores linker arguments that are not actually needed by the specified
object files. The attached patch modifies configure to check for this
flag (when using GNU ld), and if ld supports it, adds the flag to
LDFLAGS (we need to do the check since only relatively recent versions
of GNU ld support this capability). Currently only GNU ld is supported;
I'm not aware of any other linkers that support this functionality.
configure
configure.in