]> granicus.if.org Git - curl/commitdiff
Delegate c-ares linking magic on libtool and auto-makefiles when using
authorYang Tse <yangsita@gmail.com>
Sat, 30 May 2009 15:56:42 +0000 (15:56 +0000)
committerYang Tse <yangsita@gmail.com>
Sat, 30 May 2009 15:56:42 +0000 (15:56 +0000)
the uninstalled c-ares libtool archive built from the CVS embedded tree.

configure.ac
lib/Makefile.am
src/Makefile.am
tests/libtest/Makefile.am

index 68cc8d292969968e1f61bd656d11da8ccf3fa85e..16bb0f0644d00332c1717d95f5c60ed93e8b1581 100644 (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
index f7bfadde841f7999cf0333225c4b8db6f8a87031..ec1905745fc5b118ff9eda00436ae0662eaf6b29 100644 (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
 
index a008dcb1ca085ebec6e42382cc7a23e7f3ba7d01..b76aad10436f10bc496fd7432b842d3e23710e44 100644 (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
index 770abf6ca39f6746ed104c2017c3b01b46733b1c..228ae6b49ddbf9c16d6a14844542357006569327 100644 (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