bitbake cache.py: When SRCREV autorevisioning for a recipe is in use, don't cache the recipe. Based on work from Heikki Paajanen

git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5352 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
Richard Purdie 2008-09-30 21:54:47 +00:00
parent e2d321075a
commit 979f987c44
18 changed files with 70 additions and 8 deletions

View File

@ -154,6 +154,7 @@ Changes in Bitbake 1.9.x:
all variable from the environment. If BB_ENV_WHITELIST is set, that whitelist will be
used instead of the internal bitbake one. Alternatively, BB_ENV_EXTRAWHITE can be used
to extend the internal whitelist.
- When SRCREV autorevisioning for a recipe is in use, don't cache the recipe
Changes in Bitbake 1.8.0:
- Release 1.7.x as a stable series

View File

@ -259,6 +259,7 @@ class Cache:
Save the cache
Called from the parser when complete (or exiting)
"""
import copy
if not self.has_cache:
return
@ -271,8 +272,14 @@ class Cache:
version_data['CACHE_VER'] = __cache_version__
version_data['BITBAKE_VER'] = bb.__version__
cache_data = copy.deepcopy(self.depends_cache)
for fn in self.depends_cache:
if '__BB_DONT_CACHE' in self.depends_cache[fn] and self.depends_cache[fn]['__BB_DONT_CACHE']:
bb.msg.debug(2, bb.msg.domain.Cache, "Not caching %s, marked as not cacheable" % fn)
del cache_data[fn]
p = pickle.Pickler(file(self.cachefile, "wb" ), -1 )
p.dump([self.depends_cache, version_data])
p.dump([cache_data, version_data])
def mtime(self, cachefile):
return bb.parse.cached_mtime_noerror(cachefile)
@ -373,6 +380,8 @@ class Cache:
if not self.getVar('BROKEN', file_name, True) and not self.getVar('EXCLUDE_FROM_WORLD', file_name, True):
cacheData.possible_world.append(file_name)
# Touch this to make sure its in the cache
self.getVar('__BB_DONT_CACHE', file_name, True)
def load_bbfile( self, bbfile , config):
"""

View File

@ -232,6 +232,8 @@ def get_srcrev(d):
bb.msg.error(bb.msg.domain.Fetcher, "SRCREV was used yet no valid SCM was found in SRC_URI")
raise ParameterError
bb.data.setVar('__BB_DONT_CACHE','1', d)
if len(scms) == 1:
return urldata[scms[0]].method.sortable_revision(scms[0], urldata[scms[0]], d)

View File

@ -59,6 +59,7 @@ Changes in BitBake 1.8.x:
all variable from the environment. If BB_ENV_WHITELIST is set, that whitelist will be
used instead of the internal bitbake one. Alternatively, BB_ENV_EXTRAWHITE can be used
to extend the internal whitelist.
- When SRCREV autorevisioning for a recipe is in use, don't cache the recipe
Changes in BitBake 1.8.10:
- Psyco is available only for x86 - do not use it on other architectures.

View File

@ -259,6 +259,7 @@ class Cache:
Save the cache
Called from the parser when complete (or exiting)
"""
import copy
if not self.has_cache:
return
@ -271,8 +272,14 @@ class Cache:
version_data['CACHE_VER'] = __cache_version__
version_data['BITBAKE_VER'] = bb.__version__
cache_data = copy.deepcopy(self.depends_cache)
for fn in self.depends_cache:
if '__BB_DONT_CACHE' in self.depends_cache[fn] and self.depends_cache[fn]['__BB_DONT_CACHE']:
bb.msg.debug(2, bb.msg.domain.Cache, "Not caching %s, marked as not cacheable" % fn)
del cache_data[fn]
p = pickle.Pickler(file(self.cachefile, "wb" ), -1 )
p.dump([self.depends_cache, version_data])
p.dump([cache_data, version_data])
def mtime(self, cachefile):
return bb.parse.cached_mtime_noerror(cachefile)
@ -373,6 +380,8 @@ class Cache:
if not self.getVar('BROKEN', file_name, True) and not self.getVar('EXCLUDE_FROM_WORLD', file_name, True):
cacheData.possible_world.append(file_name)
# Touch this to make sure its in the cache
self.getVar('__BB_DONT_CACHE', file_name, True)
def load_bbfile( self, bbfile , config):
"""

View File

@ -232,6 +232,8 @@ def get_srcrev(d):
bb.msg.error(bb.msg.domain.Fetcher, "SRCREV was used yet no valid SCM was found in SRC_URI")
raise ParameterError
bb.data.setVar('__BB_DONT_CACHE','1', d)
if len(scms) == 1:
return urldata[scms[0]].method.sortable_revision(scms[0], urldata[scms[0]], d)

View File

@ -1,3 +1,9 @@
PREMIRRORS_append () {
ftp://.*/.* http://pokylinux.org/sources/
http://.*/.* http://pokylinux.org/sources/
https://.*/.* http://pokylinux.org/sources/
}
MIRRORS_append () {
ftp://.*/.* http://pokylinux.org/sources/
http://.*/.* http://pokylinux.org/sources/

View File

@ -47,7 +47,8 @@ dirs755 = "/bin /boot /dev ${sysconfdir} ${sysconfdir}/default \
/mnt /media /media/card /media/cf /media/net /media/ram \
/media/union /media/realroot /media/hdd \
/media/mmc1"
volatiles = "cache run log lock tmp"
volatiles = "log lock tmp"
volatiles2 = "cache run"
conffiles = "${sysconfdir}/debian_version ${sysconfdir}/host.conf \
${sysconfdir}/inputrc ${sysconfdir}/issue /${sysconfdir}/issue.net \
${sysconfdir}/nsswitch.conf ${sysconfdir}/profile \
@ -75,6 +76,10 @@ do_install () {
for d in ${volatiles}; do
ln -sf volatile/$d ${D}/${localstatedir}/$d
done
for d in ${volatiles2}; do
install -d ${D}/${localstatedir}/$d
done
for d in card cf net ram; do
ln -sf /media/$d ${D}/mnt/$d
done

View File

@ -72,5 +72,6 @@ do_configure_append () {
do_install () {
autotools_do_install
rm -fr ${D}/var/cache
}

View File

@ -2,7 +2,6 @@ SECTION = "x11/wm"
DESCRIPTION = "Matchbox window manager"
LICENSE = "GPL"
DEPENDS = "libmatchbox virtual/libx11 libxext libxrender startup-notification expat gconf"
PROVIDES = "matchbox-wm"
PV = "1.2+svnr${SRCREV}"
PR = "r4"

View File

@ -0,0 +1,4 @@
require ncurses_${PV}.bb
inherit native
EXTRA_OEMAKE = '"BUILD_CCFLAGS=${BUILD_CCFLAGS}"'
DEPENDS = ""

View File

@ -0,0 +1,3 @@
require ncurses_${PV}.bb
inherit sdk
EXTRA_OEMAKE = '"BUILD_CCFLAGS=${BUILD_CCFLAGS}"'

View File

@ -15,7 +15,7 @@ inherit autotools
# clear/reset are in already busybox
FILES_ncurses-tools = "${bindir}/tic ${bindir}/toe ${bindir}/infotocap ${bindir}/captoinfo ${bindir}/infocmp ${bindir}/clear.${PN} ${bindir}/reset.${PN} ${bindir}/tack "
FILES_ncurses-terminfo = "${datadir}/terminfo"
FILES_${PN} = "${bindir}/tput ${bindir}/tset ${libdir}/lib*.so.* usr/share/tabset etc/terminfo"
FILES_${PN} = "${bindir}/tput ${bindir}/tset ${libdir}/lib*.so.* /usr/share/tabset /etc/terminfo"
PARALLEL_MAKE=""

View File

@ -0,0 +1,11 @@
PR = "r0"
SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz \
file://makefile_tweak.patch;patch=1 \
file://configure_fix.patch;patch=1"
# file://visibility.patch;patch=1"
S = "${WORKDIR}/ncurses-${PV}"
DEFAULT_PREFERENCE = "-1"
require ncurses.inc

View File

@ -2,7 +2,7 @@ DESCRIPTION = "The RPM Package Manager."
HOMEPAGE = "http://rpm.org/"
LICENSE = "LGPL GPL"
DEPENDS = "zlib beecrypt file popt python"
PR = "r9"
PR = "r8"
SRC_URI = "http://www.rpm.org/releases/rpm-4.4.x/rpm-4.4.2.3.tar.gz \
file://external-tools.patch;patch=1 \

View File

@ -1,5 +1,9 @@
require shared-mime-info.inc
PR = "r1"
inherit native
DEPENDS = "libxml2-native intltool-native glib-2.0-native"
S = "${WORKDIR}/shared-mime-info-${PV}"

View File

@ -3,7 +3,7 @@
#
DESCRIPTION = "Tools tasks for Poky"
PR = "r1"
PR = "r2"
PACKAGES = "\
task-poky-tools-debug \
@ -55,3 +55,5 @@ RDEPENDS_task-poky-tools-testapps = "\
xwininfo \
xprop \
xvideo-tests"
RDEPENDS_task-poky-tools-testapps_append_beagleboard = " omapfbplay ffmpeg"

View File

@ -3,7 +3,7 @@
#
DESCRIPTION = "Tasks for OpenedHand Poky"
PR = "r30"
PR = "r31"
PACKAGES = "\
task-poky-apps-console \
@ -38,6 +38,9 @@ RDEPENDS_task-poky-apps-console = "\
RDEPENDS_task-poky-x11-base = "\
dbus \
pointercal \
fontconfig \
freetype \
shared-mime-info \
matchbox-wm \
matchbox-keyboard \
matchbox-keyboard-applet \