aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac17
-rw-r--r--lib/Makefile.am8
-rw-r--r--src/Makefile.am10
-rw-r--r--tests/libtest/Makefile.am10
4 files changed, 33 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac
index 68cc8d292..16bb0f064 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2200,6 +2200,7 @@ fi
dnl set variable for use in automakefile(s)
AM_CONDITIONAL(USE_MANUAL, test x"$USE_MANUAL" = x1)
+aresembedded="unknown"
AC_MSG_CHECKING([whether to enable c-ares])
AC_ARG_ENABLE(ares,
AC_HELP_STRING([--enable-ares=PATH],[Enable c-ares for name lookups])
@@ -2220,8 +2221,6 @@ AC_HELP_STRING([--disable-ares],[Disable c-ares for name lookups]),
AC_SUBST(HAVE_ARES)
curl_ares_msg="enabled"
- LIBS="-lcares $LIBS"
-
dnl For backwards compatibility default to includes/lib in srcdir/ares
dnl If a value is specified it is assumed that the libs are in $val/lib
dnl and the includes are in $val/include. This is the default setup for
@@ -2232,16 +2231,15 @@ AC_HELP_STRING([--disable-ares],[Disable c-ares for name lookups]),
AC_CONFIG_SUBDIRS(ares)
aresinc=`cd $srcdir/ares && pwd`
CPPFLAGS="$CPPFLAGS -I$aresinc"
-
- dnl the pwd= below cannot 'cd' into the ares dir to get the full
- dnl path to it, since it may not exist yet if we build outside of
- dnl the source tree
- pwd=`pwd`
- LDFLAGS="$LDFLAGS -L$pwd/ares"
+ dnl This c-ares library is an uninstalled libtool archive, so
+ dnl we delegate all the linking magic on libtool and automake.
+ else
+ LIBS="-lcares $LIBS"
fi
else
CPPFLAGS="$CPPFLAGS -I$enableval/include"
LDFLAGS="$LDFLAGS -L$enableval/lib"
+ LIBS="-lcares $LIBS"
fi
if test -z "$aresembedded"; then
@@ -2275,6 +2273,9 @@ AC_HELP_STRING([--disable-ares],[Disable c-ares for name lookups]),
AC_MSG_RESULT(no)
)
+dnl set variable for use in automakefile(s)
+AM_CONDITIONAL(USE_EMBEDDED_ARES, test x$aresembedded = xyes)
+
dnl ************************************************************
dnl disable verbose text strings
dnl
diff --git a/lib/Makefile.am b/lib/Makefile.am
index f7bfadde8..ec1905745 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -103,6 +103,12 @@ if MIMPURE
MIMPURE = -mimpure-text
endif
+if USE_EMBEDDED_ARES
+EMBEDDEDARES = ../ares/libcares.la
+else
+EMBEDDEDARES =
+endif
+
libcurl_la_LDFLAGS = $(UNDEF) $(VERSIONINFO) $(MIMPURE) $(LIBCURL_LIBS)
# Makefile.inc provides the CSOURCES and HHEADERS defines
@@ -110,6 +116,8 @@ include Makefile.inc
libcurl_la_SOURCES = $(CSOURCES) $(HHEADERS)
+libcurl_la_LIBADD = $(EMBEDDEDARES)
+
WIN32SOURCES = $(CSOURCES)
WIN32HEADERS = $(HHEADERS) config-win32.h
diff --git a/src/Makefile.am b/src/Makefile.am
index a008dcb1c..b76aad104 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -45,8 +45,14 @@ bin_PROGRAMS = curl
include Makefile.inc
-curl_LDADD = ../lib/libcurl.la @CURL_LIBS@
-curl_DEPENDENCIES = ../lib/libcurl.la
+if USE_EMBEDDED_ARES
+EMBEDDEDARES = ../ares/libcares.la
+else
+EMBEDDEDARES =
+endif
+
+curl_LDADD = ../lib/libcurl.la $(EMBEDDEDARES) @CURL_LIBS@
+curl_DEPENDENCIES = ../lib/libcurl.la $(EMBEDDEDARES)
BUILT_SOURCES = hugehelp.c
CLEANFILES = hugehelp.c
# Use the C locale to ensure that only ASCII characters appear in the
diff --git a/tests/libtest/Makefile.am b/tests/libtest/Makefile.am
index 770abf6ca..228ae6b49 100644
--- a/tests/libtest/Makefile.am
+++ b/tests/libtest/Makefile.am
@@ -42,9 +42,15 @@ LIBDIR = $(top_builddir)/lib
EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl \
test1022.pl Makefile.inc
+if USE_EMBEDDED_ARES
+EMBEDDEDARES = $(top_builddir)/ares/libcares.la
+else
+EMBEDDEDARES =
+endif
+
# Dependencies (may need to be overriden)
-LDADD = $(LIBDIR)/libcurl.la
-DEPENDENCIES = $(LIBDIR)/libcurl.la
+LDADD = $(LIBDIR)/libcurl.la $(EMBEDDEDARES)
+DEPENDENCIES = $(LIBDIR)/libcurl.la $(EMBEDDEDARES)
# Makefile.inc provides the source defines (TESTUTIL, SUPPORTFILES, noinst_PROGRAMS, lib*_SOURCES, and lib*_CFLAGS)
include Makefile.inc