summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2012-12-04 21:00:32 +0100
committerYang Tse <yangsita@gmail.com>2012-12-04 21:00:32 +0100
commit3202cc61627c07ef3311fc4b3d9880ad7bcd77d2 (patch)
tree2c3bf253b57a6ba6c0f7df77bbabe22628511d76 /configure.ac
parent068f7ae2645844ce76b73702bd275f2073f3919c (diff)
downloadcurl-3202cc61627c07ef3311fc4b3d9880ad7bcd77d2.tar.gz
configure: add minimal sanity check on user provided LIBS and LDFLAGS
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac46
1 files changed, 33 insertions, 13 deletions
diff --git a/configure.ac b/configure.ac
index 0ad654790..0386d11f5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -168,6 +168,39 @@ curl_verbose_msg="enabled (--disable-verbose)"
init_ssl_msg=${curl_ssl_msg}
dnl
+dnl LIBS should only specify libraries
+dnl
+tst_bad_libspec="no"
+for word1 in $LIBS; do
+ case "$word1" in
+ -l*)
+ :
+ ;;
+ *)
+ tst_bad_libspec="yes"
+ ;;
+ esac
+done
+if test "$tst_bad_libspec" = "yes"; then
+ AC_MSG_ERROR([linker flags present in LIBS must be specified via LDFLAGS.])
+fi
+
+dnl
+dnl LDFLAGS should only specify linker flags
+dnl
+tst_bad_libspec="no"
+for word1 in $LDFLAGS; do
+ case "$word1" in
+ -l*)
+ tst_bad_libspec="yes"
+ ;;
+ esac
+done
+if test "$tst_bad_libspec" = "yes"; then
+ AC_MSG_ERROR([libraries present in LDFLAGS must be specified via LIBS.])
+fi
+
+dnl
dnl Save some initial values the user might have provided
dnl
INITIAL_LDFLAGS=$LDFLAGS
@@ -3323,19 +3356,6 @@ AC_HELP_STRING([--disable-soname-bump],[Disable enforced SONAME bump]),
)
AM_CONDITIONAL(SONAME_BUMP, test x$soname_bump = xyes)
-
-dnl ************************************************************
-if test ! -z "$winsock_LIB"; then
-
- dnl If ws2_32 is wanted, make sure it is the _last_ lib in LIBS (makes
- dnl things work when built with c-ares). But we can't just move it last
- dnl since then other stuff (SSL) won't build. So we simply append it to the
- dnl end.
-
- LIBS="$LIBS $winsock_LIB"
-
-fi
-
dnl
dnl All the library dependencies put into $LIB apply to libcurl only.
dnl