if test X"$OPT_BROTLI" != Xno; then
dnl backup the pre-brotli variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_BROTLI"
+ LDFLAGSPC="$LDFLAGSPC $LD_BROTLI"
CPPFLAGS="$CPPFLAGS $CPP_BROTLI"
LIBS="$LIB_BROTLI $LIBS"
else
dnl no brotli, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
fi
if test X"$OPT_ZSTD" != Xno; then
dnl backup the pre-zstd variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_ZSTD"
+ LDFLAGSPC="$LDFLAGSPC $LD_ZSTD"
CPPFLAGS="$CPPFLAGS $CPP_ZSTD"
LIBS="$LIB_ZSTD $LIBS"
else
dnl no zstd, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
fi
if test -n "$gnu_gss"; then
curl_gss_msg="enabled (GNU GSS)"
LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
+ LDFLAGSPC="$LDFLAGSPC $GSSAPI_LIB_DIR"
LIBS="-lgss $LIBS"
elif test -z "$GSSAPI_LIB_DIR"; then
case $host in
if test "$GSSAPI_ROOT" != "yes"; then
LDFLAGS="$LDFLAGS -L$GSSAPI_ROOT/lib$libsuff"
+ LDFLAGSPC="$LDFLAGSPC -L$GSSAPI_ROOT/lib$libsuff"
LIBS="-l$gss_libname $LIBS"
else
LIBS="-l$gss_libname $LIBS"
esac
else
LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
+ LDFLAGSPC="$LDFLAGSPC $GSSAPI_LIB_DIR"
case $host in
*-hp-hpux*)
LIBS="-lgss $LIBS"
if test X"$OPT_LIBPSL" != Xno; then
dnl backup the pre-libpsl variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_PSL"
+ LDFLAGSPC="$LDFLAGSPC $LD_PSL"
CPPFLAGS="$CPPFLAGS $CPP_PSL"
LIBS="$LIB_PSL $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
if test X"$OPT_LIBSSH2" != Xno; then
dnl backup the pre-libssh2 variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_SSH2"
+ LDFLAGSPC="$LDFLAGSPC $LD_SSH2"
CPPFLAGS="$CPPFLAGS $CPP_SSH2"
LIBS="$LIB_SSH2 $LIBS"
else
dnl no libssh2, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
fi
elif test X"$OPT_LIBSSH" != Xno; then
dnl backup the pre-libssh variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_SSH"
+ LDFLAGSPC="$LDFLAGSPC $LD_SSH"
CPPFLAGS="$CPPFLAGS $CPP_SSH"
LIBS="$LIB_SSH $LIBS"
else
dnl no libssh, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
fi
elif test X"$OPT_WOLFSSH" != Xno; then
dnl backup the pre-wolfssh variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
if test "$OPT_WOLFSSH" != yes; then
WOLFCONFIG="$OPT_WOLFSSH/bin/wolfssh-config"
- LDFLAGS="$LDFLAGS `$WOLFCONFIG --libs`"
+ WOLFSSH_LIBS=`$WOLFCONFIG --libs`
+ LDFLAGS="$LDFLAGS $WOLFSSH_LIBS"
+ LDFLAGSPC="$LDFLAGSPC $WOLFSSH_LIBS"
CPPFLAGS="$CPPFLAGS `$WOLFCONFIG --cflags`"
fi
if test X"$OPT_LIBRTMP" != Xno; then
dnl backup the pre-librtmp variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_RTMP"
+ LDFLAGSPC="$LDFLAGSPC $LD_RTMP"
CPPFLAGS="$CPPFLAGS $CPP_RTMP"
LIBS="$LIB_RTMP $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
dnl WinIDN library support has been requested
clean_CPPFLAGS="$CPPFLAGS"
clean_LDFLAGS="$LDFLAGS"
+ clean_LDFLAGSPC="$LDFLAGSPC"
clean_LIBS="$LIBS"
WINIDN_LIBS="-lnormaliz"
WINIDN_CPPFLAGS=""
#
CPPFLAGS="$CPPFLAGS $WINIDN_CPPFLAGS"
LDFLAGS="$LDFLAGS $WINIDN_LDFLAGS"
+ LDFLAGSPC="$LDFLAGSPC $WINIDN_LDFLAGS"
LIBS="$WINIDN_LIBS $LIBS"
#
AC_MSG_CHECKING([if IdnToUnicode can be linked])
AC_MSG_WARN([Cannot find libraries for IDN support: IDN disabled])
CPPFLAGS="$clean_CPPFLAGS"
LDFLAGS="$clean_LDFLAGS"
+ LDFLAGSPC="$clean_LDFLAGSPC"
LIBS="$clean_LIBS"
fi
fi
dnl idn library support has been requested
clean_CPPFLAGS="$CPPFLAGS"
clean_LDFLAGS="$LDFLAGS"
+ clean_LDFLAGSPC="$LDFLAGSPC"
clean_LIBS="$LIBS"
PKGCONFIG="no"
#
#
CPPFLAGS="$CPPFLAGS $IDN_CPPFLAGS"
LDFLAGS="$LDFLAGS $IDN_LDFLAGS"
+ LDFLAGSPC="$LDFLAGSPC $IDN_LDFLAGS"
LIBS="$IDN_LIBS $LIBS"
#
AC_MSG_CHECKING([if idn2_lookup_ul can be linked])
AC_MSG_WARN([Cannot find libidn2])
CPPFLAGS="$clean_CPPFLAGS"
LDFLAGS="$clean_LDFLAGS"
+ LDFLAGSPC="$clean_LDFLAGSPC"
LIBS="$clean_LIBS"
want_idn="no"
fi
if test X"$want_nghttp2" != Xno; then
dnl backup the pre-nghttp2 variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
fi
LDFLAGS="$LDFLAGS $LD_H2"
+ LDFLAGSPC="$LDFLAGSPC $LD_H2"
CPPFLAGS="$CPPFLAGS $CPP_H2"
LIBS="$LIB_H2 $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
dnl backup the pre-ngtcp2 variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_TCP2])
LDFLAGS="$LDFLAGS $LD_TCP2"
+ LDFLAGSPC="$LDFLAGSPC $LD_TCP2"
CPPFLAGS="$CPPFLAGS $CPP_TCP2"
LIBS="$LIB_TCP2 $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
if test "x$NGTCP2_ENABLED" = "x1" -a "x$OPENSSL_ENABLED" = "x1" -a "x$OPENSSL_IS_BORINGSSL" != "x1"; then
dnl backup the pre-ngtcp2_crypto_quictls variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_QUICTLS])
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_QUICTLS"
+ LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_QUICTLS"
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_QUICTLS"
LIBS="$LIB_NGTCP2_CRYPTO_QUICTLS $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
if test "x$NGTCP2_ENABLED" = "x1" -a "x$OPENSSL_ENABLED" = "x1" -a "x$OPENSSL_IS_BORINGSSL" = "x1"; then
dnl backup the pre-ngtcp2_crypto_boringssl variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_BORINGSSL])
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_BORINGSSL"
+ LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_BORINGSSL"
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_BORINGSSL"
LIBS="$LIB_NGTCP2_CRYPTO_BORINGSSL $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
if test "x$NGTCP2_ENABLED" = "x1" -a "x$GNUTLS_ENABLED" = "x1"; then
dnl backup the pre-ngtcp2_crypto_gnutls variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_GNUTLS])
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_GNUTLS"
+ LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_GNUTLS"
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_GNUTLS"
LIBS="$LIB_NGTCP2_CRYPTO_GNUTLS $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
if test "x$NGTCP2_ENABLED" = "x1" -a "x$WOLFSSL_ENABLED" = "x1"; then
dnl backup the pre-ngtcp2_crypto_wolfssl variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_WOLFSSL])
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_WOLFSSL"
+ LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_WOLFSSL"
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_WOLFSSL"
LIBS="$LIB_NGTCP2_CRYPTO_WOLFSSL $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
dnl backup the pre-nghttp3 variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_NGHTTP3])
LDFLAGS="$LDFLAGS $LD_NGHTTP3"
+ LDFLAGSPC="$LDFLAGSPC $LD_NGHTTP3"
CPPFLAGS="$CPPFLAGS $CPP_NGHTTP3"
LIBS="$LIB_NGHTTP3 $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
dnl backup the pre-quiche variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_QUICHE])
LDFLAGS="$LDFLAGS $LD_QUICHE"
+ LDFLAGSPC="$LDFLAGSPC $LD_QUICHE"
CPPFLAGS="$CPPFLAGS $CPP_QUICHE"
LIBS="$LIB_QUICHE $LIBS"
dnl backup the pre-msh3 variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
CPP_MSH3="-I$want_msh3_path/include"
DIR_MSH3="$want_msh3_path/lib"
LDFLAGS="$LDFLAGS $LD_MSH3"
+ LDFLAGSPC="$LDFLAGSPC $LD_MSH3"
CPPFLAGS="$CPPFLAGS $CPP_MSH3"
fi
LIBS="-lmsh3 $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
dnl backup the pre-libuv variables
CLEANLDFLAGS="$LDFLAGS"
+ CLEANLDFLAGSPC="$LDFLAGSPC"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
AC_MSG_NOTICE([-L is $LD_LIBUV])
LDFLAGS="$LDFLAGS $LD_LIBUV"
+ LDFLAGSPC="$LDFLAGSPC $LD_LIBUV"
CPPFLAGS="$CPPFLAGS $CPP_LIBUV"
LIBS="$LIB_LIBUV $LIBS"
],
dnl not found, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
+ LDFLAGSPC=$CLEANLDFLAGSPC
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
)
dnl
dnl All the library dependencies put into $LIB apply to libcurl only.
dnl
+LIBCURL_PC_LDFLAGS_PRIVATE=''
+dnl Do not quote $INITIAL_LDFLAGS
+set -- $INITIAL_LDFLAGS
+while [ "$#" -gt 0 ]; do
+ case "$1" in
+ -L* | --library-path=* | -F*)
+ LIBCURL_PC_LDFLAGS_PRIVATE="$LIBCURL_PC_LDFLAGS_PRIVATE $1"
+ ;;
+ -framework)
+ if [ "$#" -gt 1 ]; then
+ LIBCURL_PC_LDFLAGS_PRIVATE="$LIBCURL_PC_LDFLAGS_PRIVATE $1 $2"
+ shift
+ fi
+ ;;
+ esac
+ shift
+done
+LIBCURL_PC_LDFLAGS_PRIVATE="$LIBCURL_PC_LDFLAGS_PRIVATE $LDFLAGSPC"
LIBCURL_PC_LIBS_PRIVATE="$LIBS$PTHREAD"
+AC_SUBST(LIBCURL_PC_LDFLAGS_PRIVATE)
AC_SUBST(LIBCURL_PC_LIBS_PRIVATE)
AC_SUBST(CURL_NETWORK_LIBS)
AC_SUBST(CURL_NETWORK_AND_TIME_LIBS)
squeeze LDFLAGS
squeeze LIBS
+squeeze LIBCURL_PC_LDFLAGS_PRIVATE
squeeze LIBCURL_PC_LIBS_PRIVATE
squeeze CURL_NETWORK_LIBS
squeeze CURL_NETWORK_AND_TIME_LIBS
CFLAGS extras: ${CURL_CFLAG_EXTRAS}
CPPFLAGS: ${CPPFLAGS}
LDFLAGS: ${LDFLAGS}
+ curl-config: ${LIBCURL_PC_LDFLAGS_PRIVATE}
LIBS: ${LIBS}
curl version: ${CURLVERSION}