summaryrefslogtreecommitdiff
path: root/package
diff options
context:
space:
mode:
authorThomas De Schampheleire <patrickdepinguin+buildroot@gmail.com>2012-06-22 07:42:36 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2012-07-22 16:53:24 +0200
commit77e26972187b9cda1a8f22ca74da154687c9ab1a (patch)
treebdea2960281f41c7b2894c562dba09047cc19458 /package
parentd57669271d079b3bf09c5ae81f42871260d60c49 (diff)
pkg-download.mk: support detection of URI schemes in DOWNLOAD
When using one of the package infrastructures, the DOWNLOAD function uses $(PKG)_SITE_METHOD to determine the appropriate download method, which is autodetected based on the URI if none was explicitly set. When the DOWNLOAD function is called directly, for example when downloading a toolchain, or from a package that does not use one of the package infrastructures, the SITE_METHOD is not autodetected, and thus the download defaults to wget. This patch adds URI scheme detection directly to the DOWNLOAD method, in case no SITE_METHOD was detected yet. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package')
-rw-r--r--package/pkg-download.mk7
1 files changed, 6 insertions, 1 deletions
diff --git a/package/pkg-download.mk b/package/pkg-download.mk
index ca5b40466..e93875988 100644
--- a/package/pkg-download.mk
+++ b/package/pkg-download.mk
@@ -214,7 +214,12 @@ define DOWNLOAD_INNER
esac ; \
fi ; \
if test -n "$(1)" ; then \
- case "$($(PKG)_SITE_METHOD)" in \
+ if test -z "$($(PKG)_SITE_METHOD)" ; then \
+ scheme="$(call geturischeme,$(1))" ; \
+ else \
+ scheme="$($(PKG)_SITE_METHOD)" ; \
+ fi ; \
+ case "$$scheme" in \
git) $($(DL_MODE)_GIT) && exit ;; \
svn) $($(DL_MODE)_SVN) && exit ;; \
bzr) $($(DL_MODE)_BZR) && exit ;; \