Delegate c-ares linking magic on libtool and auto-makefiles when using

the uninstalled c-ares libtool archive built from the CVS embedded tree.
This commit is contained in:
Yang Tse 2009-05-30 15:56:42 +00:00
parent 2091fe530f
commit cd5e6743f7
4 changed files with 33 additions and 12 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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