diff options
Diffstat (limited to 'bitbake')
| -rw-r--r-- | bitbake/lib/bb/fetch/__init__.py | 3 | ||||
| -rw-r--r-- | bitbake/lib/bb/fetch2/__init__.py | 34 | ||||
| -rw-r--r-- | bitbake/lib/bb/fetch2/bzr.py | 6 | ||||
| -rw-r--r-- | bitbake/lib/bb/fetch2/git.py | 8 | ||||
| -rw-r--r-- | bitbake/lib/bb/fetch2/hg.py | 10 | ||||
| -rw-r--r-- | bitbake/lib/bb/fetch2/svn.py | 10 | 
6 files changed, 18 insertions, 53 deletions
| diff --git a/bitbake/lib/bb/fetch/__init__.py b/bitbake/lib/bb/fetch/__init__.py index f7153ebce9..07eb77dbfc 100644 --- a/bitbake/lib/bb/fetch/__init__.py +++ b/bitbake/lib/bb/fetch/__init__.py @@ -360,6 +360,9 @@ def localpaths(d):  srcrev_internal_call = False +def get_autorev(d): +    return get_srcrev(d) +  def get_srcrev(d):      """      Return the version string for the current package diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 16cf1fa2be..b9cca91684 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py @@ -358,7 +358,8 @@ def localpaths(d):      return local -srcrev_internal_call = False +def get_autorev(d): +    return "AUTOINC"  def get_srcrev(d):      """ @@ -369,18 +370,6 @@ def get_srcrev(d):      have been set.      """ -    # -    # Ugly code alert. localpath in the fetchers will try to evaluate SRCREV which -    # could translate into a call to here. If it does, we need to catch this -    # and provide some way so it knows get_srcrev is active instead of being -    # some number etc. hence the srcrev_internal_call tracking and the magic -    # "SRCREVINACTION" return value. -    # -    # Neater solutions welcome! -    # -    if bb.fetch2.srcrev_internal_call: -        return "SRCREVINACTION" -      scms = []      # Only call setup_localpath on URIs which supports_srcrev() @@ -548,6 +537,8 @@ class FetchData(object):                  self.method = m                  if hasattr(m,"urldata_init"):                      m.urldata_init(self, d) +                if m.supports_srcrev(): +                    self.revision = Fetch.srcrev_internal_helper(self, d);                  return          raise NoMethodError("Missing implementation for url %s" % url) @@ -572,11 +563,7 @@ class FetchData(object):                              local = ""                  self.localpath = local              if not local: -                try: -                    bb.fetch2.srcrev_internal_call = True -                    self.localpath = self.method.localpath(self.url, self, d) -                finally: -                    bb.fetch2.srcrev_internal_call = False +                self.localpath = self.method.localpath(self.url, self, d)                  # We have to clear data's internal caches since the cached value of SRCREV is now wrong.                  # Horrible...                  bb.data.delVar("ISHOULDNEVEREXIST", d) @@ -682,8 +669,8 @@ class Fetch(object):          """          Return:              a) a source revision if specified -            b) True if auto srcrev is in action -            c) False otherwise +            b) latest revision if SREREV="AUTOINC" +            c) None if not specified          """          if 'rev' in ud.parm: @@ -704,10 +691,9 @@ class Fetch(object):              rev = data.getVar("SRCREV", d, 1)          if rev == "INVALID":              raise InvalidSRCREV("Please set SRCREV to a valid value") -        if not rev: -            return False -        if rev is "SRCREVINACTION": -            return True +        if rev == "AUTOINC": +            rev = ud.method.latest_revision(ud.url, ud, d) +          return rev      srcrev_internal_helper = staticmethod(srcrev_internal_helper) diff --git a/bitbake/lib/bb/fetch2/bzr.py b/bitbake/lib/bb/fetch2/bzr.py index 1368f172d3..97b042b2a5 100644 --- a/bitbake/lib/bb/fetch2/bzr.py +++ b/bitbake/lib/bb/fetch2/bzr.py @@ -43,12 +43,6 @@ class Bzr(Fetch):          ud.pkgdir = os.path.join(data.expand('${BZRDIR}', d), ud.host, relpath)      def localpath (self, url, ud, d): -        revision = Fetch.srcrev_internal_helper(ud, d) -        if revision is True: -            ud.revision = self.latest_revision(url, ud, d) -        elif revision: -            ud.revision = revision -          if not ud.revision:              ud.revision = self.latest_revision(url, ud, d) diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index 58ed1f4108..c62145770f 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -62,13 +62,7 @@ class Git(Fetch):          ud.basecmd = data.getVar("FETCHCMD_git", d, True) or "git"      def localpath(self, url, ud, d): - -        tag = Fetch.srcrev_internal_helper(ud, d) -        if tag is True: -            ud.tag = self.latest_revision(url, ud, d) -        elif tag: -            ud.tag = tag - +        ud.tag = ud.revision          if not ud.tag or ud.tag == "master":              ud.tag = self.latest_revision(url, ud, d) diff --git a/bitbake/lib/bb/fetch2/hg.py b/bitbake/lib/bb/fetch2/hg.py index 80a155108c..0ba84330a5 100644 --- a/bitbake/lib/bb/fetch2/hg.py +++ b/bitbake/lib/bb/fetch2/hg.py @@ -64,14 +64,8 @@ class Hg(Fetch):      def localpath(self, url, ud, d):          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) +        elif not ud.revision: +            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) diff --git a/bitbake/lib/bb/fetch2/svn.py b/bitbake/lib/bb/fetch2/svn.py index c0a7a548cc..1116795e87 100644 --- a/bitbake/lib/bb/fetch2/svn.py +++ b/bitbake/lib/bb/fetch2/svn.py @@ -73,15 +73,9 @@ class Svn(Fetch):              if "DATE" in pv:                  ud.revision = ""              else: -                rev = Fetch.srcrev_internal_helper(ud, d) -                if rev is True: -                    ud.revision = self.latest_revision(url, ud, d) +                # use the initizlied revision +                if ud.revision:                      ud.date = "" -                elif rev: -                    ud.revision = rev -                    ud.date = "" -                else: -                    ud.revision = ""          ud.localfile = data.expand('%s_%s_%s_%s_%s.tar.gz' % (ud.module.replace('/', '.'), ud.host, ud.path.replace('/', '.'), ud.revision, ud.date), d) | 
