Skip to contentSkip to conversation

Decide whether to build http-push in the Makefile

PATCH New Nick Hengeveld 1 participant 1 message Jun 15, 2016 Kbuild

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Decide whether to build http-push in the Makefile

The decision about whether to build http-push or not belongs in the Makefile. This follows Junio's suggestion to determine whether curl is new enough to support http-push.

---

I should have thought this through better before I posted the HTTP refactoring patch set. Apologies.

I've confirmed that http-push will not build unless
- curl-config is executable from the current PATH
- the --vernum flag is a valid option
- --vernum returns a value at least as recent as 070908

 Makefile    |    9 ++++++---
 http-push.c |    9 ---------
 2 files changed, 6 insertions(+), 12 deletions(-)

applies-to: 769e3c5498df32db6fc5ee764cd999608c6f1d9a 6d56bf9f18c029e15fcfd59fdd65f652961913af

Makefile +6 -3
index 285b3ed..0efb0b6 100644
@@ -242,9 +242,12 @@ ifndef NO_CURL
 		CURL_LIBCURL = -lcurl
 	endif
 	PROGRAMS += git-http-fetch$X
-	ifndef NO_EXPAT
-		EXPAT_LIBEXPAT = -lexpat
-		PROGRAMS += git-http-push$X
+	curl_check := $(shell (echo 070908; curl-config --vernum) | sort -r | sed -ne 2p)
+	ifeq "$(curl_check)" "070908"
+		ifndef NO_EXPAT
+			EXPAT_LIBEXPAT = -lexpat
+			PROGRAMS += git-http-push$X
+		endif
 	endif
 endif
 
http-push.c +0 -9
index f3c92c9..76c7886 100644
@@ -6,8 +6,6 @@
 #include "blob.h"
 #include "http.h"
 
-#ifdef USE_CURL_MULTI
-
 #include <expat.h>
 
 static const char http_push_usage[] =
@@ -1426,10 +1424,3 @@ int main(int argc, char **argv)
 
 	return rc;
 }
-#else /* ifdef USE_CURL_MULTI */
-int main(int argc, char **argv)
-{
-	fprintf(stderr, "http-push requires curl 7.9.8 or higher.\n");
-	return 1;
-}
-#endif

---
0.99.9.GIT