summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/fetch/wget.py
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2010-02-01 16:56:16 +0000
committerJoshua Lock <josh@linux.intel.com>2010-02-04 00:18:29 +0000
commit0737552c1de18c64db8a5a52248a3e7b217f30aa (patch)
treed556e058c5e3b85dde0b3c13f5e9e25e472a5ed8 /bitbake/lib/bb/fetch/wget.py
parent0b52537f5ce39a6025a2a8de381792accc333b8e (diff)
downloadpoky-0737552c1de18c64db8a5a52248a3e7b217f30aa.tar.gz
bitbake: unify mirror support and make it independant of the fetcher
This patch serves two purposes. Firstly it unifies the concept of mirrors into PREMIRRORS and MIRRORS. PREMIRRORS are tried before the SRC_URI defined in the recipe whereas MIRRORS are tried only if that fails. The tarball stash was conceptually inline with a PREMIRROR only with special handling within the wget fetcher and therefore only worked with certain fetch types. Secondly the patch removes the need for individual fetch implementations to worry about mirror handling. With this patch, the base fetch implementation will first try to use a PREMIRROR to fetch the desired object, if this fails the native fetch method for the object will be tried and if this fails will try to fetch a copy from one of the MIRRORS. Signed-off-by: Joshua Lock <josh@linux.intel.com>
Diffstat (limited to 'bitbake/lib/bb/fetch/wget.py')
-rw-r--r--bitbake/lib/bb/fetch/wget.py16
1 files changed, 0 insertions, 16 deletions
diff --git a/bitbake/lib/bb/fetch/wget.py b/bitbake/lib/bb/fetch/wget.py
index fd93c7ec46..ae1c6ad136 100644
--- a/bitbake/lib/bb/fetch/wget.py
+++ b/bitbake/lib/bb/fetch/wget.py
@@ -30,7 +30,6 @@ import bb
30from bb import data 30from bb import data
31from bb.fetch import Fetch 31from bb.fetch import Fetch
32from bb.fetch import FetchError 32from bb.fetch import FetchError
33from bb.fetch import uri_replace
34 33
35class Wget(Fetch): 34class Wget(Fetch):
36 """Class to fetch urls via 'wget'""" 35 """Class to fetch urls via 'wget'"""
@@ -105,24 +104,9 @@ class Wget(Fetch):
105 data.setVar('OVERRIDES', "wget:" + data.getVar('OVERRIDES', localdata), localdata) 104 data.setVar('OVERRIDES', "wget:" + data.getVar('OVERRIDES', localdata), localdata)
106 data.update_data(localdata) 105 data.update_data(localdata)
107 106
108 premirrors = [ i.split() for i in (data.getVar('PREMIRRORS', localdata, 1) or "").split('\n') if i ]
109 for (find, replace) in premirrors:
110 newuri = uri_replace(uri, find, replace, d)
111 if newuri != uri:
112 if fetch_uri(newuri, ud, localdata):
113 return True
114
115 if fetch_uri(uri, ud, localdata): 107 if fetch_uri(uri, ud, localdata):
116 return True 108 return True
117 109
118 # try mirrors
119 mirrors = [ i.split() for i in (data.getVar('MIRRORS', localdata, 1) or "").split('\n') if i ]
120 for (find, replace) in mirrors:
121 newuri = uri_replace(uri, find, replace, d)
122 if newuri != uri:
123 if fetch_uri(newuri, ud, localdata):
124 return True
125
126 raise FetchError(uri) 110 raise FetchError(uri)
127 111
128 112