Openembedded Devel Discussions
 help / color / mirror / Atom feed
From: pieterg <pieterg@gmx.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: AUTOREV and SRCPV
Date: Thu, 3 Jun 2010 09:15:56 +0200	[thread overview]
Message-ID: <201006030915.57362.pieterg@gmx.com> (raw)
In-Reply-To: <20100603043505.GJ16035@jama>

On Thursday 03 June 2010 06:35:05 Martin Jansa wrote:
> On Wed, Jun 02, 2010 at 11:51:37PM +0200, pieterg wrote:
> > I have only a handful of (git) packages for which I need to use
> > AUTOREV, but when I define
> >
> > BB_GIT_CLONE_FOR_SRCREV = "1"
> > BB_LOCALCOUNT_OVERRIDE = ""
> >
> > the sideeffect is that hundreds of other packages (which I don't need)
> > are suddenly having their repositories cloned as well, when their bb
> > files are parsed. Even though these packages are not using AUTOREV,
> > they have fixed SRCREV's (either in their bb files, or in my distro).
> >
> > This is obviously taking a long time, consuming a lot of diskspace,
> > generating error messages for invalid git urls, and eventually bitbake
> > will fail because it encountered 'parsing errors' because of those
> > invalid git urls.
>
> If you use bitbake-1.10 it will do it just once for git revision (it
> will cache the result of "git list-rev | wc -l" which is used by
> BB_GIT_CLONE_FOR_SRCREV.

Probably, but I don't get that far, bitbake quits at the end, with several 
parsing errors (problems with git repositories which I have no control 
over, and which I don't even want anything to do with)

> > I guess this is because all of these packages are using ${SRCPV} in
> > their PV, instead of ${SRCREV} (probably in order to find the correct
> > LOCALCOUNT for the gitrev).
> >
> > But argueing that people who don't use BB_GIT_CLONE_FOR_SRCREV will not
> > get these LOCALCOUNT's in their PV anyway, and people that do use
> > BB_GIT_CLONE_FOR_SRCREV will use SRCREV = ${AUTOREV} for the packages
> > which they want to be automatically updated, so SRCREV would equal
> > SRCPV, wouldn't it make sense to just use ${SRCREV} instead of ${SRCPV}
> > in PV?
>
> No they won't be the same. They will have the same format
> git${LOCALCOUNT}+${HASH} as when AUTOREV+SRCREV is used.

My point is that I don't think they have to be the same.
There are two sorts of people, those with BB_GIT_CLONE_FOR_SRCREV, and those 
without.
(or in my case, this is controlled by the distro, an 'unstable', 
or 'release').
As long as the versioning is consistent for each group of people (or in my 
case, each distro), I don't need the versioning to stay consistent when 
toggling BB_GIT_CLONE_FOR_SRCREV.

> in short: why do you insist on BB_GIT_CLONE_FOR_SRCREV? autoincremented
> LOCALCOUNT works good in most cases (as long as you keep cache dir), only
> case for which we introduced BB_LOCALCOUNT_OVERRIDE is for multiple
> builders sharing feed, but not cache directory.

And that's indeed what we have, many people are building the same distro, 
and they should end up with the exact same version (or LOCALCOUNT), and I 
don't think there is a way without clearing BB_LOCALCOUNT_OVERRIDE and 
setting BB_GIT_CLONE_FOR_SRCREV.

My point is, before the big SRCPV change, you only suffered for the 
carefully picked number of packages for which you wanted to use AUTOSRC.
But now, you suffer for hundreds of packages, which you might not even want 
to have anything to do with, packages which use fixed SRCREV's, so they 
shouldn't even need dynamically generated PVs.

For now, I've made this change in bitbake.conf, which pretty much reverts 
the behaviour to what it was before, so at least my build will complete
(don't mean to propose this patch of course, just as demonstration how I 
have to work around it at the moment)
Hopefully there is a better way to make AUTOREV work again for our 
situation.

From 30a9c042d65b32dc1d76a757f493659b556c6a62 Mon Sep 17 00:00:00 2001
From: pieterg <pieterg@users.sourceforge.net>
Date: Thu, 3 Jun 2010 00:23:51 +0200
Subject: [PATCH] bitbake.conf: work around AUTOREV problems

As long as many packages are using SRCPV in their PV,
we cannot use the current AUTOREV / SRCPV strategy
---
 conf/bitbake.conf |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index 12a5522..1d2c123 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -576,8 +576,8 @@ UPDATECOMMAND_cvs = "/usr/bin/env 'PATH=${PATH}' 
cvs -d${CVSROOT} update -d -P $
 UPDATECOMMAND_svn = "/usr/bin/env svn update ${SVNCOOPTS}"
 SRCDATE = "${DATE}"
 SRCREV = "1"
-SRCPV = "${@bb.fetch.get_srcrev(d)}"
-AUTOREV = "${SRCPV}"
+SRCPV = "${SRCREV}"
+AUTOREV = "${@bb.fetch.get_srcrev(d)}"
 
 # For now disable autoincrement of revision counter in SRCPV, whoever wants 
it, should enable it in local.conf or distro config
 # Revision counter is incremented only locally (bad for multiple builders 
filling shared feeds), LOCALCOUNT can be used to maintain
-- 
1.6.5.rc1.44.ga1675



  reply	other threads:[~2010-06-03  7:20 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-02 21:51 AUTOREV and SRCPV pieterg
2010-06-03  4:35 ` Martin Jansa
2010-06-03  7:15   ` pieterg [this message]
2010-06-03  7:37     ` Martin Jansa
2010-06-03  8:02       ` pieterg
2010-06-03  8:27         ` Martin Jansa
2010-06-03  8:44           ` pieterg
2010-06-03  9:22           ` pieterg
2010-06-03  8:13       ` Phil Blundell
2010-06-03  8:30         ` Martin Jansa
2010-06-03  8:37           ` Phil Blundell
2010-06-03  8:46             ` Martin Jansa
2010-06-03  8:55               ` Phil Blundell
2010-06-03 16:35                 ` Phil Blundell
2010-06-04  8:24                   ` pieterg
2010-06-04  8:30                     ` Phil Blundell
2010-06-04  8:44                       ` pieterg
2010-06-04 11:03                         ` Phil Blundell
2010-06-05 10:36                           ` pieterg
2010-06-06 21:00                             ` Phil Blundell
2010-06-07  0:13                               ` Khem Raj
2010-06-08 10:09                               ` Phil Blundell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201006030915.57362.pieterg@gmx.com \
    --to=pieterg@gmx.com \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox