summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Borowitz <dborowitz@google.com>2014-04-15 03:40:31 -0700
committerJunio C Hamano <gitster@pobox.com>2014-04-15 13:01:51 -0700
commitd5067112db68fcc8c7b13c769c896b17480cb5b0 (patch)
tree7128e5de0f83c2b21519588cecc5393040bdc4df
parent61a64fff4f710f43826c8446d3fd8f3ae78c0411 (diff)
downloadgit-d5067112db68fcc8c7b13c769c896b17480cb5b0.tar.gz
Makefile: allow static linking against libcurl
This requires more flags than can be guessed with the old-style CURLDIR and related options, so is only supported when curl-config is present. Signed-off-by: Dave Borowitz <dborowitz@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Makefile16
1 files changed, 13 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index d6330bc675..e4c93f68ec 100644
--- a/Makefile
+++ b/Makefile
@@ -37,6 +37,9 @@ all::
# Define CURL_CONFIG to the path to a curl-config binary other than the
# default 'curl-config'.
#
+# Define CURL_STATIC to statically link libcurl. Only applies if
+# CURL_CONFIG is used.
+#
# Define CURLDIR=/foo/bar if your curl header and library files are in
# /foo/bar/include and /foo/bar/lib directories. This overrides CURL_CONFIG,
# but is less robust.
@@ -1139,9 +1142,16 @@ else
else
CURL_CONFIG ?= curl-config
BASIC_CFLAGS += $(shell $(CURL_CONFIG) --cflags)
- CURL_LIBCURL = $(shell $(CURL_CONFIG) --libs)
- ifeq "$(CURL_LIBCURL)" ""
- $(error curl not detected; try setting CURLDIR)
+ 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)
+ endif
endif
endif