summaryrefslogtreecommitdiff
path: root/build-aux/ltmain.in
diff options
context:
space:
mode:
authorVadim Zeitlin <vz-libtool@zeitlins.org>2013-10-09 17:35:13 -0700
committerBrooks Moses <bmoses@google.com>2013-10-09 17:35:13 -0700
commit12641bdc45d091fd1e014d242dcf271237f3c95c (patch)
treebeada21aa30a65744c03b5517313aa5157afab8e /build-aux/ltmain.in
parent1c89ed8e1cdbee5bf2a56627bf02ebdd427dc2e3 (diff)
downloadlibtool-12641bdc45d091fd1e014d242dcf271237f3c95c.tar.gz
libtool: Don't fall back to static libraries if building them was disabled
If -no-undefined was not specified but the platform didn't support shared libraries with undefined symbols (e.g. Cygwin/ MinGW), static libraries were built instead of shared ones, even if building them was explicitly disabled with --disable- static configure option. Fix this by stopping with a fatal error if a shared library can't be built in this case instead of unexpectedly building a static library instead. * libltdl/config/ltmain.m4sh (func_mode_link()): Stop with fatal error when trying to build a shared library without -no- undefined on a platform not supporting undefined symbols in shared libraries. Copyright-paperwork-exempt: Yes
Diffstat (limited to 'build-aux/ltmain.in')
-rw-r--r--build-aux/ltmain.in9
1 files changed, 6 insertions, 3 deletions
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 363ce9bb..58b443cd 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -6984,9 +6984,12 @@ func_mode_link ()
# Check to see if the archive will have undefined symbols.
if test yes = "$allow_undefined"; then
if test unsupported = "$allow_undefined_flag"; then
- func_warning "undefined symbols not allowed in $host shared libraries"
- build_libtool_libs=no
- build_old_libs=yes
+ if test "$build_old_libs" = yes; then
+ func_warning "undefined symbols not allowed in $host shared libraries; building static only"
+ build_libtool_libs=no
+ else
+ func_fatal_error "can't build $host shared library unless -no-undefined is specified"
+ fi
fi
else
# Don't allow undefined symbols.