diff options
author | Thomas De Schampheleire <patrickdepinguin+buildroot@gmail.com> | 2012-06-22 07:42:36 +0200 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2012-07-22 16:53:24 +0200 |
commit | 77e26972187b9cda1a8f22ca74da154687c9ab1a (patch) | |
tree | bdea2960281f41c7b2894c562dba09047cc19458 /package | |
parent | d57669271d079b3bf09c5ae81f42871260d60c49 (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.mk | 7 |
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 ;; \ |