From: Vadim Zeitlin Date: Thu, 10 Oct 2013 00:35:13 +0000 (-0700) Subject: libtool: Don't fall back to static libraries if building them was disabled X-Git-Tag: v2.4.2.418~9 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=12641bdc45d091fd1e014d242dcf271237f3c95c;p=thirdparty%2Flibtool.git 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 --- diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in index 363ce9bb3..58b443cd4 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.