diff options
| author | Richard Purdie <richard@openedhand.com> | 2008-09-30 21:54:47 +0000 | 
|---|---|---|
| committer | Richard Purdie <richard@openedhand.com> | 2008-09-30 21:54:47 +0000 | 
| commit | 979f987c44928f2d47d319cf5fc34e7f3d2113b7 (patch) | |
| tree | b49dca768f15cc67c1fa2ff499552a2c67baa7c1 | |
| parent | e2d321075a6c1aecd09a705d97f2347863a685f9 (diff) | |
| download | openembedded-core-979f987c44928f2d47d319cf5fc34e7f3d2113b7.tar.gz openembedded-core-979f987c44928f2d47d319cf5fc34e7f3d2113b7.tar.bz2 openembedded-core-979f987c44928f2d47d319cf5fc34e7f3d2113b7.zip | |
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
| -rw-r--r-- | bitbake-dev/ChangeLog | 1 | ||||
| -rw-r--r-- | bitbake-dev/lib/bb/cache.py | 11 | ||||
| -rw-r--r-- | bitbake-dev/lib/bb/fetch/__init__.py | 2 | ||||
| -rw-r--r-- | bitbake/ChangeLog | 1 | ||||
| -rw-r--r-- | bitbake/lib/bb/cache.py | 11 | ||||
| -rw-r--r-- | bitbake/lib/bb/fetch/__init__.py | 2 | ||||
| -rw-r--r-- | meta/classes/poky.bbclass | 6 | ||||
| -rw-r--r-- | meta/packages/base-files/base-files_3.0.14.bb | 7 | ||||
| -rw-r--r-- | meta/packages/fontconfig/fontconfig_2.6.0.bb | 1 | ||||
| -rw-r--r-- | meta/packages/matchbox-wm/matchbox-wm_svn.bb | 1 | ||||
| -rw-r--r-- | meta/packages/ncurses/ncurses-native_5.6.bb | 4 | ||||
| -rw-r--r-- | meta/packages/ncurses/ncurses-sdk_5.6.bb | 3 | ||||
| -rw-r--r-- | meta/packages/ncurses/ncurses.inc | 2 | ||||
| -rw-r--r-- | meta/packages/ncurses/ncurses_5.6.bb | 11 | ||||
| -rw-r--r-- | meta/packages/rpm/rpm_4.4.2.3.bb | 2 | ||||
| -rw-r--r-- | meta/packages/shared-mime-info/shared-mime-info-native_0.51.bb | 4 | ||||
| -rw-r--r-- | meta/packages/tasks/task-poky-tools.bb | 4 | ||||
| -rw-r--r-- | meta/packages/tasks/task-poky.bb | 5 | 
18 files changed, 70 insertions, 8 deletions
| diff --git a/bitbake-dev/ChangeLog b/bitbake-dev/ChangeLog index a0018d1519..6f068be19f 100644 --- a/bitbake-dev/ChangeLog +++ b/bitbake-dev/ChangeLog @@ -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 diff --git a/bitbake-dev/lib/bb/cache.py b/bitbake-dev/lib/bb/cache.py index fe38ea0aee..e0ba1de38e 100644 --- a/bitbake-dev/lib/bb/cache.py +++ b/bitbake-dev/lib/bb/cache.py @@ -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):          """ diff --git a/bitbake-dev/lib/bb/fetch/__init__.py b/bitbake-dev/lib/bb/fetch/__init__.py index 721eb4d646..9300d0c234 100644 --- a/bitbake-dev/lib/bb/fetch/__init__.py +++ b/bitbake-dev/lib/bb/fetch/__init__.py @@ -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) diff --git a/bitbake/ChangeLog b/bitbake/ChangeLog index ceb7e648b7..2d50c0e364 100644 --- a/bitbake/ChangeLog +++ b/bitbake/ChangeLog @@ -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. diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py index fe38ea0aee..e0ba1de38e 100644 --- a/bitbake/lib/bb/cache.py +++ b/bitbake/lib/bb/cache.py @@ -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):          """ diff --git a/bitbake/lib/bb/fetch/__init__.py b/bitbake/lib/bb/fetch/__init__.py index 721eb4d646..9300d0c234 100644 --- a/bitbake/lib/bb/fetch/__init__.py +++ b/bitbake/lib/bb/fetch/__init__.py @@ -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) diff --git a/meta/classes/poky.bbclass b/meta/classes/poky.bbclass index ba81f9e22c..ffda5c0a15 100644 --- a/meta/classes/poky.bbclass +++ b/meta/classes/poky.bbclass @@ -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/ diff --git a/meta/packages/base-files/base-files_3.0.14.bb b/meta/packages/base-files/base-files_3.0.14.bb index aa61a1d39a..b4e2b665de 100644 --- a/meta/packages/base-files/base-files_3.0.14.bb +++ b/meta/packages/base-files/base-files_3.0.14.bb @@ -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 diff --git a/meta/packages/fontconfig/fontconfig_2.6.0.bb b/meta/packages/fontconfig/fontconfig_2.6.0.bb index 3f7eca4b4e..f3b11b2c76 100644 --- a/meta/packages/fontconfig/fontconfig_2.6.0.bb +++ b/meta/packages/fontconfig/fontconfig_2.6.0.bb @@ -72,5 +72,6 @@ do_configure_append () {  do_install () {  	autotools_do_install +	rm -fr ${D}/var/cache  } diff --git a/meta/packages/matchbox-wm/matchbox-wm_svn.bb b/meta/packages/matchbox-wm/matchbox-wm_svn.bb index 1b79e09942..b4b137325e 100644 --- a/meta/packages/matchbox-wm/matchbox-wm_svn.bb +++ b/meta/packages/matchbox-wm/matchbox-wm_svn.bb @@ -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" diff --git a/meta/packages/ncurses/ncurses-native_5.6.bb b/meta/packages/ncurses/ncurses-native_5.6.bb new file mode 100644 index 0000000000..310a4bb27c --- /dev/null +++ b/meta/packages/ncurses/ncurses-native_5.6.bb @@ -0,0 +1,4 @@ +require ncurses_${PV}.bb +inherit native +EXTRA_OEMAKE = '"BUILD_CCFLAGS=${BUILD_CCFLAGS}"' +DEPENDS = "" diff --git a/meta/packages/ncurses/ncurses-sdk_5.6.bb b/meta/packages/ncurses/ncurses-sdk_5.6.bb new file mode 100644 index 0000000000..fb69c1ec7d --- /dev/null +++ b/meta/packages/ncurses/ncurses-sdk_5.6.bb @@ -0,0 +1,3 @@ +require ncurses_${PV}.bb +inherit sdk +EXTRA_OEMAKE = '"BUILD_CCFLAGS=${BUILD_CCFLAGS}"' diff --git a/meta/packages/ncurses/ncurses.inc b/meta/packages/ncurses/ncurses.inc index fd0885356b..b4ec69d92b 100644 --- a/meta/packages/ncurses/ncurses.inc +++ b/meta/packages/ncurses/ncurses.inc @@ -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="" diff --git a/meta/packages/ncurses/ncurses_5.6.bb b/meta/packages/ncurses/ncurses_5.6.bb new file mode 100644 index 0000000000..f09de84653 --- /dev/null +++ b/meta/packages/ncurses/ncurses_5.6.bb @@ -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 diff --git a/meta/packages/rpm/rpm_4.4.2.3.bb b/meta/packages/rpm/rpm_4.4.2.3.bb index ef6087893c..8a783c7b72 100644 --- a/meta/packages/rpm/rpm_4.4.2.3.bb +++ b/meta/packages/rpm/rpm_4.4.2.3.bb @@ -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 \ diff --git a/meta/packages/shared-mime-info/shared-mime-info-native_0.51.bb b/meta/packages/shared-mime-info/shared-mime-info-native_0.51.bb index 0959cb25d6..d063bf4f34 100644 --- a/meta/packages/shared-mime-info/shared-mime-info-native_0.51.bb +++ b/meta/packages/shared-mime-info/shared-mime-info-native_0.51.bb @@ -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}" diff --git a/meta/packages/tasks/task-poky-tools.bb b/meta/packages/tasks/task-poky-tools.bb index f3f30c0b39..2fc922d179 100644 --- a/meta/packages/tasks/task-poky-tools.bb +++ b/meta/packages/tasks/task-poky-tools.bb @@ -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" diff --git a/meta/packages/tasks/task-poky.bb b/meta/packages/tasks/task-poky.bb index 4e4204345c..1c1507bfe3 100644 --- a/meta/packages/tasks/task-poky.bb +++ b/meta/packages/tasks/task-poky.bb @@ -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 \ | 
