The original implementation of CURL_CONFIG support did not match the
original behavior of using -lcurl when CURLDIR was not set. This broke
implementations that were lacking curl-config but did have libcurl
installed along system libraries, such as MSysGit. In other words, the
assumption that curl-config is always installed was incorrect.
Instead, if CURL_CONFIG is empty or returns an empty result (e.g. due
to curl-config being missing), use the old behavior of falling back to
-lcurl.
---
Makefile | 36 +++++++++++++++++++++++++-----------
1 file changed, 25 insertions(+), 11 deletions(-)
diff --git a/Makefile b/Makefile
index 74a929b..79b7442 100644
--- a/Makefile
+++ b/Makefile
@@ -35,7 +35,9 @@ all::
# transports (neither smart nor dumb).
#
# Define CURL_CONFIG to the path to a curl-config binary other than the
-# default 'curl-config'.
+# default 'curl-config'. If CURL_CONFIG is unset or points to a binary that
+# is not found, defaults to the CURLDIR behavior, or if CURLDIR is not set,
+# uses -lcurl with no additional library detection.
#
# Define CURL_STATIC to statically link libcurl. Only applies if
# CURL_CONFIG is used.
@@ -1127,9 +1129,27 @@ ifdef NO_CURL
REMOTE_CURL_NAMES =
else
ifdef CURLDIR
- # Try "-Wl,-rpath=$(CURLDIR)/$(lib)" in such a case.
- BASIC_CFLAGS += -I$(CURLDIR)/include
- CURL_LIBCURL = -L$(CURLDIR)/$(lib)
$(CC_LD_DYNPATH)$(CURLDIR)/$(lib) -lcurl
+ CURL_LIBCURL=
+ else
+ CURL_CONFIG ?= curl-config
+ ifeq "$(CURL_CONFIG)" ""
+ CURL_LIBCURL =
+ else
+ CURL_LIBCURL := $(shell $(CURL_CONFIG) --libs)
+ endif
+ endif
+
+ ifeq "$(CURL_LIBCURL)" ""
+ ifdef CURL_STATIC
+ $(error "CURL_STATIC must be used with CURL_CONFIG")
+ endif
+ ifdef CURLDIR
+ # Try "-Wl,-rpath=$(CURLDIR)/$(lib)" in such a case.
+ BASIC_CFLAGS += -I$(CURLDIR)/include
+ CURL_LIBCURL = -L$(CURLDIR)/$(lib)
$(CC_LD_DYNPATH)$(CURLDIR)/$(lib) -lcurl
+ else
+ CURL_LIBCURL = -lcurl
+ endif
ifdef NEEDS_SSL_WITH_CURL
CURL_LIBCURL += -lssl
ifdef NEEDS_CRYPTO_WITH_SSL
@@ -1140,17 +1160,11 @@ else
CURL_LIBCURL += -lidn
endif
else
- CURL_CONFIG ?= curl-config
BASIC_CFLAGS += $(shell $(CURL_CONFIG) --cflags)
ifdef CURL_STATIC
CURL_LIBCURL = $(shell $(CURL_CONFIG) --static-libs)
ifeq "$(CURL_LIBCURL)" ""
- $(error libcurl not detected or not compiled
with static support)
- endif
- else
- CURL_LIBCURL = $(shell $(CURL_CONFIG) --libs)
- ifeq "$(CURL_LIBCURL)" ""
- $(error libcurl not detected; try setting
CURLDIR)
+ $(error libcurl not detected or not compiled
with static support)
endif
endif
endif
--
1.9.1.423.g4596e3a
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html