diff options
authorAlejandro Mery <amery@hanoverdisplays.com>2017-06-20 13:13:04 +0100
committerArmin Kuster <akuster808@gmail.com>2017-06-26 11:35:51 -0700
commit6ee7d0642660d8a7510df9832583edcf9b65f137 (patch)
parent718daa97541b2b8570710e7f4e089191ef6477a4 (diff)
gitver: skip packages instead of panic()ing if ${GITVER} fails to expand
`inherit externalsrc gitver` is a very useful combo to get development trees in your workspace having a ${PN}_git.bb with PV=${GITVER} coexisting with a regular ${PN}_${PV}.bb but not everyone wants to checkout all developments sources and managinging different layers for each options is quite troublesome. making `gitver` skip the .bb instead of panic()ing every time EXTERNALSRC is missing allows people to have a single development layer where packages get enabled if the right sources are present or falling back to the last release if not Signed-off-by: Alejandro Mery <amery@hanoverdisplays.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
1 files changed, 10 insertions, 13 deletions
diff --git a/meta-oe/classes/gitver.bbclass b/meta-oe/classes/gitver.bbclass
index 875a3d79de..91541437d9 100644
--- a/meta-oe/classes/gitver.bbclass
+++ b/meta-oe/classes/gitver.bbclass
@@ -27,23 +27,20 @@ def get_git_pv(d, tagadjust=None):
gitdir = os.path.abspath(os.path.join(srcdir, ".git"))
ver = gitrev_run("git describe --tags", gitdir)
- except Exception as exc:
- bb.fatal(str(exc))
- if not ver:
+ except:
ver = gitrev_run("git rev-parse --short HEAD", gitdir)
+ if ver:
+ return "0.0+%s" % ver
+ else:
+ return "0.0"
except Exception as exc:
- bb.fatal(str(exc))
+ raise bb.parse.SkipPackage(str(exc))
- if ver:
- return "0.0+%s" % ver
- else:
- return "0.0"
- else:
- if tagadjust:
- ver = tagadjust(ver)
- return ver
+ if ver and tagadjust:
+ ver = tagadjust(ver)
+ return ver
def get_git_hash(d):
import os