pkg-download: Allow packages to pass generic options to download methods
authorRomain Perier <romain.perier@free-electrons.com>
Tue, 23 Aug 2016 12:19:45 +0000 (14:19 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 23 Aug 2016 12:59:01 +0000 (14:59 +0200)
Introduce a new package variable $(PKG)_DL_OPTS. When this variable
is defined, its value is passed to the downloader as options to
the underlying command. Packages can now retrieve archives from server
expecting logins and passwords, use referer url, proxy or specific
options for cloning a repository.

Signed-off-by: Romain Perier <romain.perier@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/pkg-download.mk

index 315203f3314a8c42efdc08a5e6badc16dd24e75e..3b6561bd1e3f79b151e1e61270b062b107fa9cab 100644 (file)
@@ -81,7 +81,8 @@ define DOWNLOAD_GIT
                -- \
                $($(PKG)_SITE) \
                $($(PKG)_DL_VERSION) \
-               $($(PKG)_BASE_NAME)
+               $($(PKG)_BASE_NAME) \
+               $($(PKG)_DL_OPTS)
 endef
 
 # TODO: improve to check that the given PKG_DL_VERSION exists on the remote
@@ -97,7 +98,8 @@ define DOWNLOAD_BZR
                -- \
                $($(PKG)_SITE) \
                $($(PKG)_DL_VERSION) \
-               $($(PKG)_BASE_NAME)
+               $($(PKG)_BASE_NAME) \
+               $($(PKG)_DL_OPTS)
 endef
 
 define SOURCE_CHECK_BZR
@@ -112,7 +114,8 @@ define DOWNLOAD_CVS
                $(call stripurischeme,$(call qstrip,$($(PKG)_SITE))) \
                $($(PKG)_DL_VERSION) \
                $($(PKG)_RAWNAME) \
-               $($(PKG)_BASE_NAME)
+               $($(PKG)_BASE_NAME) \
+               $($(PKG)_DL_OPTS)
 endef
 
 # Not all CVS servers support ls/rls, use login to see if we can connect
@@ -127,7 +130,8 @@ define DOWNLOAD_SVN
                -- \
                $($(PKG)_SITE) \
                $($(PKG)_DL_VERSION) \
-               $($(PKG)_BASE_NAME)
+               $($(PKG)_BASE_NAME) \
+               $($(PKG)_DL_OPTS)
 endef
 
 define SOURCE_CHECK_SVN
@@ -143,7 +147,8 @@ define DOWNLOAD_SCP
                -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \
                $(QUIET) \
                -- \
-               '$(call stripurischeme,$(call qstrip,$(1)))'
+               '$(call stripurischeme,$(call qstrip,$(1)))' \
+               $($(PKG)_DL_OPTS)
 endef
 
 define SOURCE_CHECK_SCP
@@ -157,7 +162,8 @@ define DOWNLOAD_HG
                -- \
                $($(PKG)_SITE) \
                $($(PKG)_DL_VERSION) \
-               $($(PKG)_BASE_NAME)
+               $($(PKG)_BASE_NAME) \
+               $($(PKG)_DL_OPTS)
 endef
 
 # TODO: improve to check that the given PKG_DL_VERSION exists on the remote
@@ -172,7 +178,8 @@ define DOWNLOAD_WGET
                -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \
                $(QUIET) \
                -- \
-               '$(call qstrip,$(1))'
+               '$(call qstrip,$(1))' \
+               $($(PKG)_DL_OPTS)
 endef
 
 define SOURCE_CHECK_WGET
@@ -185,7 +192,8 @@ define DOWNLOAD_LOCALFILES
                -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \
                $(QUIET) \
                -- \
-               $(call stripurischeme,$(call qstrip,$(1)))
+               $(call stripurischeme,$(call qstrip,$(1))) \
+               $($(PKG)_DL_OPTS)
 endef
 
 define SOURCE_CHECK_LOCALFILES