diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/patch.bbclass | 44 |
1 files changed, 23 insertions, 21 deletions
diff --git a/meta/classes/patch.bbclass b/meta/classes/patch.bbclass index 68a71754c8..5263089916 100644 --- a/meta/classes/patch.bbclass +++ b/meta/classes/patch.bbclass | |||
@@ -458,33 +458,35 @@ python patch_do_patch() { | |||
458 | else: | 458 | else: |
459 | pname = os.path.basename(unpacked) | 459 | pname = os.path.basename(unpacked) |
460 | 460 | ||
461 | if "mindate" in parm: | 461 | if "mindate" in parm or "maxdate" in parm: |
462 | mindate = parm["mindate"] | 462 | pn = bb.data.getVar('PN', d, 1) |
463 | else: | 463 | srcdate = bb.data.getVar('SRCDATE_%s' % pn, d, 1) |
464 | mindate = 0 | 464 | if not srcdate: |
465 | 465 | srcdate = bb.data.getVar('SRCDATE', d, 1) | |
466 | if "maxdate" in parm: | ||
467 | maxdate = parm["maxdate"] | ||
468 | else: | ||
469 | maxdate = "20711226" | ||
470 | |||
471 | pn = bb.data.getVar('PN', d, 1) | ||
472 | srcdate = bb.data.getVar('SRCDATE_%s' % pn, d, 1) | ||
473 | 466 | ||
474 | if not srcdate: | 467 | if srcdate == "now": |
475 | srcdate = bb.data.getVar('SRCDATE', d, 1) | 468 | srcdate = bb.data.getVar('DATE', d, 1) |
476 | 469 | ||
477 | if srcdate == "now": | 470 | if "maxdate" in parm and parm["maxdate"] < srcdate: |
478 | srcdate = bb.data.getVar('DATE', d, 1) | ||
479 | |||
480 | if (maxdate < srcdate) or (mindate > srcdate): | ||
481 | if (maxdate < srcdate): | ||
482 | bb.note("Patch '%s' is outdated" % pname) | 471 | bb.note("Patch '%s' is outdated" % pname) |
472 | continue | ||
483 | 473 | ||
484 | if (mindate > srcdate): | 474 | if "mindate" in parm and parm["mindate"] > srcdate: |
485 | bb.note("Patch '%s' is predated" % pname) | 475 | bb.note("Patch '%s' is predated" % pname) |
476 | continue | ||
486 | 477 | ||
487 | continue | 478 | |
479 | if "minrev" in parm: | ||
480 | srcrev = bb.data.getVar('SRCREV', d, 1) | ||
481 | if srcrev and srcrev < parm["minrev"]: | ||
482 | bb.note("Patch '%s' applies to later revisions" % pname) | ||
483 | continue | ||
484 | |||
485 | if "maxrev" in parm: | ||
486 | srcrev = bb.data.getVar('SRCREV', d, 1) | ||
487 | if srcrev and srcrev > parm["maxrev"]: | ||
488 | bb.note("Patch '%s' applies to earlier revisions" % pname) | ||
489 | continue | ||
488 | 490 | ||
489 | bb.note("Applying patch '%s'" % pname) | 491 | bb.note("Applying patch '%s'" % pname) |
490 | try: | 492 | try: |