aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/utility-tasks.bbclass72
-rw-r--r--meta/conf/distro/include/private/distro_base_utils_1.inc8
-rw-r--r--meta/conf/distro/include/private/distro_x11_libs.inc2
-rw-r--r--meta/conf/distro/poky.conf2
4 files changed, 70 insertions, 14 deletions
diff --git a/meta/classes/utility-tasks.bbclass b/meta/classes/utility-tasks.bbclass
index c3001ecfc8..a4db4f8beb 100644
--- a/meta/classes/utility-tasks.bbclass
+++ b/meta/classes/utility-tasks.bbclass
@@ -276,7 +276,6 @@ python do_checkpkg() {
"""generate package information from .bb file"""
pname = bb.data.getVar('PN', d, 1)
- pcurver = bb.data.getVar('PV', d, 1)
pdesc = bb.data.getVar('DESCRIPTION', d, 1)
pgrp = bb.data.getVar('SECTION', d, 1)
@@ -296,6 +295,11 @@ python do_checkpkg() {
(type, host, path, user, pswd, parm) = bb.decodeurl(uri)
if type in ['http', 'https', 'ftp']:
+ pcurver = bb.data.getVar('PV', d, 1)
+ else:
+ pcurver = bb.data.getVar("SRCREV", d, 1)
+
+ if type in ['http', 'https', 'ftp']:
newver = pcurver
altpath = path
dirver = "-"
@@ -342,12 +346,52 @@ python do_checkpkg() {
if re.match("Err", newver):
pstatus = newver + ":" + altpath + ":" + dirver + ":" + curname
elif type == 'git':
- """N.B. Now hardcode UPDATE for git/svn/cvs."""
- pupver = "master"
- pstatus = "UPDATE"
+ if user:
+ gituser = user + '@'
+ else:
+ gituser = ""
+
+ if 'protocol' in parm:
+ gitproto = parm['protocol']
+ else:
+ gitproto = "rsync"
+
+ gitcmd = "git ls-remote %s://%s%s%s HEAD 2>&1" % (gitproto, gituser, host, path)
+ print gitcmd
+ ver = os.popen(gitcmd).read()
+ if ver and re.search("HEAD", ver):
+ pupver = ver.split("\t")[0]
+ if pcurver == pupver:
+ pstatus = "MATCH"
+ else:
+ pstatus = "UPDATE"
+ else:
+ pstatus = "ErrGitAccess"
elif type == 'svn':
- pupver = "HEAD"
- pstatus = "UPDATE"
+ options = []
+ if user:
+ options.append("--username %s" % user)
+ if pswd:
+ options.append("--password %s" % pswd)
+ svnproto = 'svn'
+ if 'proto' in parm:
+ svnproto = parm['proto']
+ if 'rev' in parm:
+ pcurver = parm['rev']
+
+ svncmd = "svn info %s %s://%s%s/%s/ 2>&1" % (" ".join(options), svnproto, host, path, parm["module"])
+ print svncmd
+ svninfo = os.popen(svncmd).read()
+ for line in svninfo.split("\n"):
+ if re.search("^Last Changed Rev:", line):
+ pupver = line.split(" ")[-1]
+ if pcurver == pupver:
+ pstatus = "MATCH"
+ else:
+ pstatus = "UPDATE"
+
+ if re.match("Err", pstatus):
+ pstatus = "ErrSvnAccess"
elif type == 'cvs':
pupver = "HEAD"
pstatus = "UPDATE"
@@ -360,10 +404,22 @@ python do_checkpkg() {
if re.match("Err", pstatus):
pstatus += ":%s%s" % (host, path)
+
+ """Read from manual distro tracking fields as alternative"""
+ pmver = bb.data.getVar("RECIPE_LATEST_VERSION", d, 1)
+ if not pmver:
+ pmver = "N/A"
+ pmstatus = "ErrNoRecipeData"
+ else:
+ if pmver == pcurver:
+ pmstatus = "MATCH"
+ else:
+ pmstatus = "UPDATE"
+
lf = bb.utils.lockfile(logfile + ".lock")
f = open(logfile, "a")
- f.write("\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n" % \
- (pname, pgrp, pproto, pcurver, pupver, pstatus, pdesc))
+ f.write("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n" % \
+ (pname, pgrp, pproto, pcurver, pmver, pupver, pmstatus, pstatus, pdesc))
f.close()
bb.utils.unlockfile(lf)
}
diff --git a/meta/conf/distro/include/private/distro_base_utils_1.inc b/meta/conf/distro/include/private/distro_base_utils_1.inc
index b36eec7e40..8f7559ac83 100644
--- a/meta/conf/distro/include/private/distro_base_utils_1.inc
+++ b/meta/conf/distro/include/private/distro_base_utils_1.inc
@@ -47,7 +47,7 @@ RECIPE_COMMENTS_pn-initramfs-live-install = "local scripts follow Poky's MIT lic
RECIPE_STATUS_pn-initscripts = "green"
DEPENDENCY_CHECK_pn-initscripts = "not done"
RECIPE_LATEST_VERSION_pn-initscripts = "1.0"
-RECIPE_PATCH_pn-initscripts+* = "many local scripts"
+RECIPE_PATCH_pn-initscripts = "many local scripts"
RECIPE_INTEL_SECTION_pn-initscripts = "base utils"
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-initscripts = "n/a"
RECIPE_LATEST_RELEASE_DATE_pn-initscripts = "n/a"
@@ -56,7 +56,7 @@ RECIPE_COMMENTS_pn-initscripts = "local scripts follow Poky's MIT license"
RECIPE_STATUS_pn-keymaps = "yellow" # LICENSE
DEPENDENCY_CHECK_pn-keymaps = "not done"
RECIPE_LATEST_VERSION_pn-keymaps = "1.0"
-RECIPE_PATCH_pn-keymaps+* = "many local keymap files"
+RECIPE_PATCH_pn-keymaps = "many local keymap files"
RECIPE_INTEL_SECTION_pn-keymaps = "base utils"
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-keymaps = "n/a"
RECIPE_LATEST_RELEASE_DATE_pn-keymaps = "n/a"
@@ -74,7 +74,7 @@ RECIPE_COMMENTS_pn-modutils-initscripts = "local scripts follow Poky's MIT licen
RECIPE_STATUS_pn-network-suspend-scripts = "yellow" # no PV
DEPENDENCY_CHECK_pn-network-suspend-scripts = "not done"
RECIPE_LATEST_VERSION_pn-network-suspend-scripts = "1.0"
-RECIPE_PATCH_pn-network-suspend-scripts+* = "local scripts"
+RECIPE_PATCH_pn-network-suspend-scripts = "local scripts"
RECIPE_INTEL_SECTION_pn-network-suspend-scripts = "base utils"
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-network-suspend-scripts = "n/a"
RECIPE_LATEST_RELEASE_DATE_pn-network-suspend-scripts = "n/a"
@@ -83,7 +83,7 @@ RECIPE_COMMENTS_pn-network-suspend-scripts = "local scripts follow Poky's MIT li
RECIPE_STATUS_pn-opkg-collateral = "yellow" # license
DEPENDENCY_CHECK_pn-opkg-collateral = "not done"
RECIPE_LATEST_VERSION_pn-opkg-collateral = "1.0"
-RECIPE_PATCH_pn-opkg-collateral+* = "local"
+RECIPE_PATCH_pn-opkg-collateral = "local"
RECIPE_INTEL_SECTION_pn-opkg-collateral = "base utils"
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-opkg-collateral = "n/a"
RECIPE_LATEST_RELEASE_DATE_pn-opkg-collateral = "n/a"
diff --git a/meta/conf/distro/include/private/distro_x11_libs.inc b/meta/conf/distro/include/private/distro_x11_libs.inc
index 3fbc582f61..73e89be099 100644
--- a/meta/conf/distro/include/private/distro_x11_libs.inc
+++ b/meta/conf/distro/include/private/distro_x11_libs.inc
@@ -426,7 +426,7 @@ RECIPE_COMMENTS_pn-libxau = ""
RECIPE_STATUS_pn-libxcalibrate = "yellow"
DEPENDENCY_CHECK_pn-libxcalibrate = "not done"
-RECIPE_LATEST_VERSION_pn-libxcalibrate = "0.0+git0+209d83af61ed38a002c8096377deac292b3e396c"
+RECIPE_LATEST_VERSION_pn-libxcalibrate = "209d83af61ed38a002c8096377deac292b3e396c"
RECIPE_NO_OF_PATCHES_pn-libxcalibrate = "1"
RECIPE_PATCH_pn-libxcalibrate+fix-xcb = "There is no extra reply data and if we say not to disgard it, xcb throws fatal asserts. RP - 26/11/09"
RECIPE_INTEL_SECTION_pn-libxcalibrate = "x11/libs"
diff --git a/meta/conf/distro/poky.conf b/meta/conf/distro/poky.conf
index 951e156c25..a99aba7966 100644
--- a/meta/conf/distro/poky.conf
+++ b/meta/conf/distro/poky.conf
@@ -116,4 +116,4 @@ IMAGE_FEATURES ?= ""
EXTRAOPKGCONFIG = "poky-feed-config-opkg"
require conf/distro/include/world-broken.inc
-
+require conf/distro/include/distro_tracking_fields.inc