diff options
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/fetch2/__init__.py | 4 | ||||
-rw-r--r-- | bitbake/lib/bb/fetch2/git.py | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 9df91001d..886d49afa 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py @@ -294,6 +294,8 @@ def download(d, urls = None): # Next try fetching from the original uri, u try: m.download(u, ud, d) + if hasattr(m, "build_mirror_data"): + m.build_mirror_data(u, ud, d) localpath = ud.localpath except FetchError: # Remove any incomplete file @@ -500,6 +502,8 @@ def try_mirrors(d, uri, mirrors, check = False, force = False): return found else: ud.method.download(newuri, ud, ld) + if hasattr(ud.method,"build_mirror_data"): + ud.method.build_mirror_data(newuri, ud, ld) return ud.localpath except (bb.fetch2.MissingParameterError, bb.fetch2.FetchError, diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index c962acb10..d47191e57 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -116,9 +116,6 @@ class Git(Fetch): repofile = os.path.join(data.getVar("DL_DIR", d, 1), ud.mirrortarball) - coname = '%s' % (ud.tag) - codir = os.path.join(ud.clonedir, coname) - # If we have no existing clone and no mirror tarball, try and obtain one if not os.path.exists(ud.clonedir) and not os.path.exists(repofile): try: @@ -149,7 +146,12 @@ class Git(Fetch): runfetchcmd("%s prune-packed" % ud.basecmd, d) runfetchcmd("%s pack-redundant --all | xargs -r rm" % ud.basecmd, d) + def build_mirror_data(self, url, ud, d): # Generate a mirror tarball if needed + coname = '%s' % (ud.tag) + codir = os.path.join(ud.clonedir, coname) + repofile = os.path.join(data.getVar("DL_DIR", d, 1), ud.mirrortarball) + os.chdir(ud.clonedir) mirror_tarballs = data.getVar("BB_GENERATE_MIRROR_TARBALLS", d, True) if mirror_tarballs != "0" or 'fullclone' in ud.parm: |