aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2009-09-16 03:19:39 +0000
committerDan Fandrich <dan@coneharvesters.com>2009-09-16 03:19:39 +0000
commit62ed553054c66b8a7f2728867f472cb4f496139a (patch)
treec5ac2344cd29da0682d791bfaf9c7c40936c3c91
parente3049e98d89ed2ec4d470164029048c689b7f044 (diff)
Moved the libssh2 checks after the SSL library checks. This helps when
statically linking since libssh2 needs the SSL library link flags to be set up already to satisfy its dependencies. This wouldn't be necessary if the libssh2 configure check was changed to use pkg-config since the --static flag would add the dependencies automatically.
-rw-r--r--CHANGES7
-rw-r--r--configure.ac142
2 files changed, 78 insertions, 71 deletions
diff --git a/CHANGES b/CHANGES
index 7edb461c1..816505f02 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,13 @@
Changelog
+Daniel Fandrich (15 Sep 2009)
+- Moved the libssh2 checks after the SSL library checks. This helps when
+ statically linking since libssh2 needs the SSL library link flags to be
+ set up already to satisfy its dependencies. This wouldn't be necessary if
+ the libssh2 configure check was changed to use pkg-config since the
+ --static flag would add the dependencies automatically.
+
Yang Tse (14 Sep 2009)
- Revert Joshua Kwan's patch committed 11 Sep 2009.
diff --git a/configure.ac b/configure.ac
index e0fd08faa..9a42869c7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1433,77 +1433,6 @@ dnl set variable for use in automakefile(s)
AM_CONDITIONAL(HAVE_LIBZ, test x"$AMFIXLIB" = x1)
dnl **********************************************************************
-dnl Check for the presence of LIBSSH2 libraries and headers
-dnl **********************************************************************
-
-dnl Default to compiler & linker defaults for LIBSSH2 files & libraries.
-OPT_LIBSSH2=off
-AC_ARG_WITH(libssh2,dnl
-AC_HELP_STRING([--with-libssh2=PATH],[Where to look for libssh2, PATH points to the LIBSSH2 installation (default: /usr/local/lib); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AC_HELP_STRING([--without-libssh2], [disable LIBSSH2]),
- OPT_LIBSSH2=$withval)
-
-if test X"$OPT_LIBSSH2" != Xno; then
- dnl backup the pre-libssh2 variables
- CLEANLDFLAGS="$LDFLAGS"
- CLEANCPPFLAGS="$CPPFLAGS"
- CLEANLIBS="$LIBS"
-
- case "$OPT_LIBSSH2" in
- yes)
- dnl --with-libssh2 (without path) used
- PREFIX_LIBSSH2=/usr/local/lib
- LIB_LIBSSH2="$PREFIX_LIBSSH2$libsuff"
- ;;
- off)
- dnl no --with-libssh2 option given, just check default places
- PREFIX_LIBSSH2=
- ;;
- *)
- dnl use the given --with-libssh2 spot
- PREFIX_LIBSSH2=$OPT_LIBSSH2
- LIB_LIBSSH2="$PREFIX_LIBSSH2/lib$libsuff"
- LDFLAGS="$LDFLAGS -L$LIB_LIBSSH2"
- CPPFLAGS="$CPPFLAGS -I$PREFIX_LIBSSH2/include"
- ;;
- esac
-
- AC_CHECK_LIB(ssh2, libssh2_channel_open_ex)
-
- AC_CHECK_HEADERS(libssh2.h,
- curl_ssh_msg="enabled (libSSH2)"
- LIBSSH2_ENABLED=1
- AC_DEFINE(USE_LIBSSH2, 1, [if libSSH2 is in use])
- AC_SUBST(USE_LIBSSH2, [1])
- )
-
- if test X"$OPT_LIBSSH2" != Xoff &&
- test "$LIBSSH2_ENABLED" != "1"; then
- AC_MSG_ERROR([libSSH2 libs and/or directories were not found where specified!])
- fi
-
- if test "$LIBSSH2_ENABLED" = "1"; then
- if test -n "$LIB_LIBSSH2"; then
- dnl when the libssh2 shared libs were found in a path that the run-time
- dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
- dnl to prevent further configure tests to fail due to this
-
- dnl libssh2_version is a post 1.0 addition
- AC_CHECK_FUNCS( libssh2_version )
-
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_LIBSSH2"
- export LD_LIBRARY_PATH
- AC_MSG_NOTICE([Added $LIB_LIBSSH2 to LD_LIBRARY_PATH])
- fi
- else
- dnl no libssh2, revert back to clean variables
- LDFLAGS=$CLEANLDFLAGS
- CPPFLAGS=$CLEANCPPFLAGS
- LIBS=$CLEANLIBS
- fi
-fi
-
-dnl **********************************************************************
dnl Check for the random seed preferences
dnl **********************************************************************
@@ -1750,6 +1679,77 @@ dnl **********************************************************************
CURL_CHECK_CA_BUNDLE
dnl **********************************************************************
+dnl Check for the presence of LIBSSH2 libraries and headers
+dnl **********************************************************************
+
+dnl Default to compiler & linker defaults for LIBSSH2 files & libraries.
+OPT_LIBSSH2=off
+AC_ARG_WITH(libssh2,dnl
+AC_HELP_STRING([--with-libssh2=PATH],[Where to look for libssh2, PATH points to the LIBSSH2 installation (default: /usr/local/lib); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
+AC_HELP_STRING([--without-libssh2], [disable LIBSSH2]),
+ OPT_LIBSSH2=$withval)
+
+if test X"$OPT_LIBSSH2" != Xno; then
+ dnl backup the pre-libssh2 variables
+ CLEANLDFLAGS="$LDFLAGS"
+ CLEANCPPFLAGS="$CPPFLAGS"
+ CLEANLIBS="$LIBS"
+
+ case "$OPT_LIBSSH2" in
+ yes)
+ dnl --with-libssh2 (without path) used
+ PREFIX_LIBSSH2=/usr/local/lib
+ LIB_LIBSSH2="$PREFIX_LIBSSH2$libsuff"
+ ;;
+ off)
+ dnl no --with-libssh2 option given, just check default places
+ PREFIX_LIBSSH2=
+ ;;
+ *)
+ dnl use the given --with-libssh2 spot
+ PREFIX_LIBSSH2=$OPT_LIBSSH2
+ LIB_LIBSSH2="$PREFIX_LIBSSH2/lib$libsuff"
+ LDFLAGS="$LDFLAGS -L$LIB_LIBSSH2"
+ CPPFLAGS="$CPPFLAGS -I$PREFIX_LIBSSH2/include"
+ ;;
+ esac
+
+ AC_CHECK_LIB(ssh2, libssh2_channel_open_ex)
+
+ AC_CHECK_HEADERS(libssh2.h,
+ curl_ssh_msg="enabled (libSSH2)"
+ LIBSSH2_ENABLED=1
+ AC_DEFINE(USE_LIBSSH2, 1, [if libSSH2 is in use])
+ AC_SUBST(USE_LIBSSH2, [1])
+ )
+
+ if test X"$OPT_LIBSSH2" != Xoff &&
+ test "$LIBSSH2_ENABLED" != "1"; then
+ AC_MSG_ERROR([libSSH2 libs and/or directories were not found where specified!])
+ fi
+
+ if test "$LIBSSH2_ENABLED" = "1"; then
+ if test -n "$LIB_LIBSSH2"; then
+ dnl when the libssh2 shared libs were found in a path that the run-time
+ dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
+ dnl to prevent further configure tests to fail due to this
+
+ dnl libssh2_version is a post 1.0 addition
+ AC_CHECK_FUNCS( libssh2_version )
+
+ LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_LIBSSH2"
+ export LD_LIBRARY_PATH
+ AC_MSG_NOTICE([Added $LIB_LIBSSH2 to LD_LIBRARY_PATH])
+ fi
+ else
+ dnl no libssh2, revert back to clean variables
+ LDFLAGS=$CLEANLDFLAGS
+ CPPFLAGS=$CLEANCPPFLAGS
+ LIBS=$CLEANLIBS
+ fi
+fi
+
+dnl **********************************************************************
dnl Check for the presence of IDN libraries and headers
dnl **********************************************************************