aboutsummaryrefslogtreecommitdiffstats
path: root/include/download.mk
diff options
context:
space:
mode:
Diffstat (limited to 'include/download.mk')
-rw-r--r--include/download.mk22
1 files changed, 14 insertions, 8 deletions
diff --git a/include/download.mk b/include/download.mk
index 1627b4fdfb..33141910fc 100644
--- a/include/download.mk
+++ b/include/download.mk
@@ -19,17 +19,23 @@ endif
DOWNLOAD_RDEP=$(STAMP_PREPARED) $(HOST_STAMP_PREPARED)
+define dl_method_git
+$(if $(filter https://github.com/% git://github.com/%,$(1)),github_archive,git)
+endef
+
# Try to guess the download method from the URL
define dl_method
$(strip \
- $(if $(2),$(2), \
- $(if $(filter @APACHE/% @GITHUB/% @GNOME/% @GNU/% @KERNEL/% @SF/% @SAVANNAH/% ftp://% http://% https://% file://%,$(1)),default, \
- $(if $(filter git://%,$(1)),git, \
- $(if $(filter svn://%,$(1)),svn, \
- $(if $(filter cvs://%,$(1)),cvs, \
- $(if $(filter hg://%,$(1)),hg, \
- $(if $(filter sftp://%,$(1)),bzr, \
- unknown \
+ $(if $(filter git,$(2)),$(call dl_method_git,$(1),$(2)),
+ $(if $(2),$(2), \
+ $(if $(filter @APACHE/% @GITHUB/% @GNOME/% @GNU/% @KERNEL/% @SF/% @SAVANNAH/% ftp://% http://% https://% file://%,$(1)),default, \
+ $(if $(filter git://%,$(1)),$(call dl_method_git,$(1),$(2)), \
+ $(if $(filter svn://%,$(1)),svn, \
+ $(if $(filter cvs://%,$(1)),cvs, \
+ $(if $(filter hg://%,$(1)),hg, \
+ $(if $(filter sftp://%,$(1)),bzr, \
+ unknown \
+ ) \
) \
) \
) \