summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/fetch2/__init__.py
diff options
context:
space:
mode:
authorChristopher Larson <chris_larson@mentor.com>2015-08-26 09:37:46 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-04 16:24:00 +0100
commitba50c2f4b9619d355abddc19624b7a7798c71c6f (patch)
treed88476a15d6c5478d4bd5fb50947f0dc61795000 /bitbake/lib/bb/fetch2/__init__.py
parentabba11daf9e8e20fec723f3497cd7ce257b9bfed (diff)
downloadpoky-ba50c2f4b9619d355abddc19624b7a7798c71c6f.tar.gz
bitbake: bb.fetch: handle checksums consistently for mirrors
If the main fetch method doesn't support checksums, the user will not be defining them in the recipe, so we don't want to check them for premirrors/mirrors either. This ensures that we never error due to missing checksums on a git mirror tarball. (Bitbake rev: 24c79bbed361b37f12d3351af13602e3d4386f4c) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/fetch2/__init__.py')
-rw-r--r--bitbake/lib/bb/fetch2/__init__.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
index ec0c31ae21..e229c30f61 100644
--- a/bitbake/lib/bb/fetch2/__init__.py
+++ b/bitbake/lib/bb/fetch2/__init__.py
@@ -628,7 +628,7 @@ def verify_checksum(ud, d, precomputed={}):
628 } 628 }
629 629
630 630
631def verify_donestamp(ud, d): 631def verify_donestamp(ud, d, origud=None):
632 """ 632 """
633 Check whether the done stamp file has the right checksums (if the fetch 633 Check whether the done stamp file has the right checksums (if the fetch
634 method supports them). If it doesn't, delete the done stamp and force 634 method supports them). If it doesn't, delete the done stamp and force
@@ -640,7 +640,8 @@ def verify_donestamp(ud, d):
640 if not os.path.exists(ud.donestamp): 640 if not os.path.exists(ud.donestamp):
641 return False 641 return False
642 642
643 if not ud.method.supports_checksum(ud): 643 if (not ud.method.supports_checksum(ud) or
644 (origud and not origud.method.supports_checksum(origud))):
644 # done stamp exists, checksums not supported; assume the local file is 645 # done stamp exists, checksums not supported; assume the local file is
645 # current 646 # current
646 return True 647 return True
@@ -922,7 +923,7 @@ def try_mirror_url(fetch, origud, ud, ld, check = False):
922 923
923 os.chdir(ld.getVar("DL_DIR", True)) 924 os.chdir(ld.getVar("DL_DIR", True))
924 925
925 if not verify_donestamp(ud, ld) or ud.method.need_update(ud, ld): 926 if not verify_donestamp(ud, ld, origud) or ud.method.need_update(ud, ld):
926 ud.method.download(ud, ld) 927 ud.method.download(ud, ld)
927 if hasattr(ud.method,"build_mirror_data"): 928 if hasattr(ud.method,"build_mirror_data"):
928 ud.method.build_mirror_data(ud, ld) 929 ud.method.build_mirror_data(ud, ld)