diff options
| author | Richard Purdie <rpurdie@linux.intel.com> | 2009-10-19 17:46:09 +0100 | 
|---|---|---|
| committer | Richard Purdie <rpurdie@linux.intel.com> | 2009-10-19 17:46:09 +0100 | 
| commit | 717d71b8e9a5c516ba9b3cc4dadd4d3897ffa9bd (patch) | |
| tree | c445cda31ea276beed67f91bd10f75efabbe7615 /bitbake/lib | |
| parent | 96fc6f45bcf4368e5992f5a78cecd403b0f42b96 (diff) | |
| download | openembedded-core-717d71b8e9a5c516ba9b3cc4dadd4d3897ffa9bd.tar.gz openembedded-core-717d71b8e9a5c516ba9b3cc4dadd4d3897ffa9bd.tar.bz2 openembedded-core-717d71b8e9a5c516ba9b3cc4dadd4d3897ffa9bd.zip | |
bitbake: Add hg fetcher auto revisioning, patch from Carl Simonson <simonsonc@gmail.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'bitbake/lib')
| -rw-r--r-- | bitbake/lib/bb/fetch/hg.py | 32 | 
1 files changed, 32 insertions, 0 deletions
| diff --git a/bitbake/lib/bb/fetch/hg.py b/bitbake/lib/bb/fetch/hg.py index 7643e159ec..2b0438a26d 100644 --- a/bitbake/lib/bb/fetch/hg.py +++ b/bitbake/lib/bb/fetch/hg.py @@ -57,6 +57,14 @@ class Hg(Fetch):          if 'rev' in ud.parm:              ud.revision = ud.parm['rev'] +        else: +            tag = Fetch.srcrev_internal_helper(ud, d) +            if tag is True: +                ud.revision = self.latest_revision(url, ud, d) +            elif tag: +                ud.revision = tag +            else: +                ud.revision = self.latest_revision(url, ud, d)          ud.localfile = data.expand('%s_%s_%s_%s.tar.gz' % (ud.module.replace('/', '.'), ud.host, ud.path.replace('/', '.'), ud.revision), d) @@ -148,3 +156,27 @@ class Hg(Fetch):              except OSError:                  pass              raise t, v, tb + +    def suppports_srcrev(self): +        import bb +        bb.error("here") +        return True + +    def _latest_revision(self, url, ud, d): +        """ +        Compute tip revision for the url +        """ +        import bb +        bb.error(self._buildhgcommand(ud, d, "info")) +        output = runfetchcmd(self._buildhgcommand(ud, d, "info"), d) +        return output.strip() + +    def _build_revision(self, url, ud, d): +        return ud.revision + +    def _revision_key(self, url, ud, d): +        """ +        Return a unique key for the url +        """ +        return "hg:" + ud.moddir + | 
