Buildhistory in action
We've recently added the buildhistory class and I wanted to illustrate how it can help us improve the quality of what we're doing. I appreciate elements of this have been around for a while as part of testlab but I do want to raise the profile of these tools. I added:
INHERIT += "buildhistory"BUILDHISTORY_COMMIT = "1"
to my local.conf, then ran "bitbake gst-openmax liba52 js". I then applied the staticdev patches from Saul, which should only move the .a files to the -staticdev package. I then ran the bitbake command again.
If I change into tmp/buildhistory and show the last commit the result is included below. Since the version changed, the diff isn't as readable as would be ideal, however reading through it clearly shows the .a files moving to the staticdev packages with no unintended changes as far as I could tell.
One of my big worries with the staticdev changes is any unintended packaging changes. This lets me view the changes more precisely which can only lead to higher quality regression spotting for the project. I'd like to suggest more people start enabling this and using it to check the changes they're making.
I know Paul is working on tools to better display these changes too and those will help make these diffs easier to read.
Cheers,
Richard
packages/i586-poky-linux/gst-openmax/gst-openmax-dbg/latest +3 -3
@@ -1,7 +1,7 @@ PV = 0.10.1 -PR = r2 +PR = r3 RDEPENDS = -RRECOMMENDS = zlib-dbg gst-openmax-dbg gstreamer-dbg libffi-dbg eglibc-dbg glib-2.0-dbg libomxil-dbg gst-openmax (= 0.10.1-r2) libxml2-dbg +RRECOMMENDS = zlib-dbg gst-openmax-dbg gstreamer-dbg libffi-dbg eglibc-dbg glib-2.0-dbg libomxil-dbg gst-openmax (= 0.10.1-r3) libxml2-dbg PKGSIZE = 916082 FILES = /usr/bin/.debug /usr/sbin/.debug /usr/libexec/.debug /usr/lib/.debug /bin/.debug /sbin/.debug /lib/.debug /usr/lib/gst-openmax/.debug /usr/lib/matchbox-panel/.debug /usr/src/debug /usr/lib/gstreamer-0.10/.debug/ -FILELIST = /usr/lib/gstreamer-0.10/.debug/libgstomx.so /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_h264dec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_videoenc.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_audiosink.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_volume.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_sink.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_conf.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_h264enc.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_h263dec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_mpeg4enc.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_audiodec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_videoenc.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_videodec.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_h263enc.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_wmvdec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_filter.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_dummy.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_mp3dec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_videodec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_filter.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_interface.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_util.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_audiodec.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_vorbisdec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_mpeg4dec.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_base_sink.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/gstomx_util.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Index.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Image.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Types.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Video.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Audio.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Core.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_IVCommon.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Component.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/omx/headers/OMX_Other.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/util/sem.h /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/util/async_queue.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/util/sem.c /usr/src/debug/gst-openmax-0.10.1-r2/gst-openmax-0.10.1/util/async_queue.h +FILELIST = /usr/lib/gstreamer-0.10/.debug/libgstomx.so /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_h264dec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_videoenc.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_audiosink.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_volume.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_sink.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_conf.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_h264enc.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_h263dec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_mpeg4enc.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_audiodec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_videoenc.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_videodec.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_h263enc.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_wmvdec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_filter.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_dummy.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_mp3dec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_videodec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_filter.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_interface.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_util.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_audiodec.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_vorbisdec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_mpeg4dec.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_base_sink.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/gstomx_util.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Index.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Image.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Types.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Video.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Audio.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Core.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_IVCommon.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Component.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/omx/headers/OMX_Other.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/util/sem.h /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/util/async_queue.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/util/sem.c /usr/src/debug/gst-openmax-0.10.1-r3/gst-openmax-0.10.1/util/async_queue.h
packages/i586-poky-linux/gst-openmax/gst-openmax-dev/latest +5 -5
@@ -1,7 +1,7 @@ PV = 0.10.1 -PR = r2 -RDEPENDS = gst-openmax (= 0.10.1-r2) +PR = r3 +RDEPENDS = gst-openmax (= 0.10.1-r3) RRECOMMENDS = gstreamer-dev gst-openmax-dev libomxil-dev libffi-dev glib-2.0-dev libxml2-dev eglibc-dev zlib-dev -PKGSIZE = 1084517 -FILES = /usr/include /usr/lib/lib*.so /usr/lib/*.la /usr/lib/*.o /usr/lib/pkgconfig /usr/share/pkgconfig /usr/share/aclocal /lib/*.o /usr/lib/gstreamer-0.10/libgstomx.*a -FILELIST = /usr/lib/gstreamer-0.10/libgstomx.a /usr/lib/gstreamer-0.10/libgstomx.la +PKGSIZE = 1391 +FILES = /usr/include /usr/lib/lib*.so /usr/lib/*.la /usr/lib/*.o /usr/lib/pkgconfig /usr/share/pkgconfig /usr/share/aclocal /lib/*.o /usr/lib/gstreamer-0.10/libgstomx.la +FILELIST = /usr/lib/gstreamer-0.10/libgstomx.la
packages/i586-poky-linux/gst-openmax/gst-openmax-doc/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.10.1 -PR = r2 +PR = r3 RDEPENDS = RRECOMMENDS = PKGSIZE = 0
packages/i586-poky-linux/gst-openmax/gst-openmax-locale/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.10.1 -PR = r2 +PR = r3 RDEPENDS = RRECOMMENDS = PKGSIZE = 0
packages/i586-poky-linux/gst-openmax/gst-openmax-staticdev/latest +5 -5
@@ -1,7 +1,7 @@ PV = 0.10.1 -PR = r2 -RDEPENDS = gst-openmax-dev (= 0.10.1-r2) +PR = r3 +RDEPENDS = gst-openmax-dev (= 0.10.1-r3) RRECOMMENDS = -PKGSIZE = 0 -FILES = /usr/lib/*.a /lib/*.a -FILELIST = +PKGSIZE = 1083126 +FILES = /usr/lib/*.a /lib/*.a /usr/lib/gstreamer-0.10/libgstomx.a +FILELIST = /usr/lib/gstreamer-0.10/libgstomx.a
packages/i586-poky-linux/gst-openmax/gst-openmax/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.10.1 -PR = r2 +PR = r3 RDEPENDS = zlib (>= 1.2.5) libffi (>= 3.0.10) eglibc (>= 2.13) glib-2.0 (>= 2.30.2) libomxil libxml2 (>= 2.7.8) gstreamer (>= 0.10.35) RRECOMMENDS = PKGSIZE = 80228
packages/i586-poky-linux/gst-openmax/latest +1 -1
@@ -1,4 +1,4 @@ PV = 0.10.1 -PR = r2 +PR = r3 DEPENDS = autoconf-native automake-native libtool-native libtool-cross gnu-config-native virtual/i586-poky-linux-gcc virtual/i586-poky-linux-compilerlibs virtual/libc gstreamer PACKAGES = gst-openmax-dbg gst-openmax gst-openmax-doc gst-openmax-dev gst-openmax-staticdev gst-openmax-locale
packages/i586-poky-linux/js/js-dbg/latest +3 -3
@@ -1,7 +1,7 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 +PR = r3 RDEPENDS = -RRECOMMENDS = eglibc-dbg js-dbg js (= 1.7.0+1.8.0rc1-r2) +RRECOMMENDS = eglibc-dbg js-dbg js (= 1.7.0+1.8.0rc1-r3) PKGSIZE = 5396086 FILES = /usr/bin/.debug /usr/sbin/.debug /usr/libexec/.debug /usr/lib/.debug /bin/.debug /sbin/.debug /lib/.debug /usr/lib/js/.debug /usr/lib/matchbox-panel/.debug /usr/src/debug -FILELIST = /usr/lib/.debug/libjs.so /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsprf.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsatom.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdbgapi.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsbool.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsmath.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsprf.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsopcode.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsxml.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jspubtd.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsscope.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsregexp.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/prmjtime.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsproto.tbl /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jstypes.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsatom.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsscan.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsxdrapi.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsarena.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsemit.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdtoa.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jshash.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdhash.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsclist.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsstr.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsobj.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsgc.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jscompat.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsstr.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdbgapi.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsparse.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/prmjtime.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsobj.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsopcode.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdate.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdtoa.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsapi.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsutil.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsbit.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsparse.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsbool.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsfun.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsscript.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jslog2.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jskeyword.tbl /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsarray.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdate.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jscntxt.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsnum.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsarena.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsxdrapi.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsinterp.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jshash.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsscan.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsapi.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsnum.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsregexp.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsotypes.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsfun.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsiter.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsxml.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsarray.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jscntxt.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsexn.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsinterp.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsscope.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsmath.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsiter.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsemit.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsscript.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsgc.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsprvtd.h /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsdhash.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/jsexn.c /usr/src/debug/js-1.7.0+1.8.0rc1-r2/js/src/Linux_All_OPT.OBJ/jsautokw.h +FILELIST = /usr/lib/.debug/libjs.so /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsprf.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsatom.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdbgapi.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsbool.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsmath.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsprf.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsopcode.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsxml.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jspubtd.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsscope.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsregexp.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/prmjtime.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsproto.tbl /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jstypes.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsatom.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsscan.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsxdrapi.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsarena.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsemit.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdtoa.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jshash.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdhash.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsclist.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsstr.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsobj.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsgc.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jscompat.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsstr.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdbgapi.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsparse.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/prmjtime.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsobj.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsopcode.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdate.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdtoa.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsapi.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsutil.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsbit.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsparse.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsbool.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsfun.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsscript.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jslog2.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jskeyword.tbl /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsarray.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdate.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jscntxt.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsnum.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsarena.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsxdrapi.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsinterp.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jshash.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsscan.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsapi.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsnum.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsregexp.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsotypes.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsfun.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsiter.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsxml.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsarray.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jscntxt.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsexn.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsinterp.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsscope.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsmath.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsiter.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsemit.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsscript.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsgc.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsprvtd.h /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsdhash.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/jsexn.c /usr/src/debug/js-1.7.0+1.8.0rc1-r3/js/src/Linux_All_OPT.OBJ/jsautokw.h
packages/i586-poky-linux/js/js-dev/latest +5 -5
@@ -1,7 +1,7 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 -RDEPENDS = js (= 1.7.0+1.8.0rc1-r2) +PR = r3 +RDEPENDS = js (= 1.7.0+1.8.0rc1-r3) RRECOMMENDS = js-dev eglibc-dev -PKGSIZE = 4761147 -FILES = /usr/include /usr/lib/lib*.a -FILELIST = /usr/include/js/jsprf.h /usr/include/js/jsatom.h /usr/include/js/resource.h /usr/include/js/jsbool.h /usr/include/js/jsmath.h /usr/include/js/jsopcode.h /usr/include/js/jsxml.h /usr/include/js/jspubtd.h /usr/include/js/jsproto.tbl /usr/include/js/jstypes.h /usr/include/js/jsdtracef.h /usr/include/js/jsarena.h /usr/include/js/jshash.h /usr/include/js/jsdhash.h /usr/include/js/jsutil.h /usr/include/js/jsclist.h /usr/include/js/jsobj.h /usr/include/js/jscompat.h /usr/include/js/jsstr.h /usr/include/js/jsfile.h /usr/include/js/jsdbgapi.h /usr/include/js/jsparse.h /usr/include/js/prmjtime.h /usr/include/js/jsdtoa.h /usr/include/js/jsbit.h /usr/include/js/jsfun.h /usr/include/js/jslong.h /usr/include/js/jsarray.h /usr/include/js/jsdate.h /usr/include/js/jsnum.h /usr/include/js/conf.h /usr/include/js/jsconfig.h /usr/include/js/jsxdrapi.h /usr/include/js/jsscan.h /usr/include/js/jsapi.h /usr/include/js/jsautocfg.h /usr/include/js/jslock.h /usr/include/js/jsregexp.h /usr/include/js/jsotypes.h /usr/include/js/jscntxt.h /usr/include/js/jsexn.h /usr/include/js/jslibmath.h /usr/include/js/jsinterp.h /usr/include/js/jsstddef.h /usr/include/js/jsscope.h /usr/include/js/jsiter.h /usr/include/js/jsemit.h /usr/include/js/jscpucfg.h /usr/include/js/jsscript.h /usr/include/js/jsgc.h /usr/include/js/jsprvtd.h /usr/lib/libjs.a +PKGSIZE = 681827 +FILES = /usr/include /usr/lib/lib*.so /usr/lib/*.la /usr/lib/*.o /usr/lib/pkgconfig /usr/share/pkgconfig /usr/share/aclocal /lib/*.o +FILELIST = /usr/include/js/jsprf.h /usr/include/js/jsatom.h /usr/include/js/resource.h /usr/include/js/jsbool.h /usr/include/js/jsmath.h /usr/include/js/jsopcode.h /usr/include/js/jsxml.h /usr/include/js/jspubtd.h /usr/include/js/jsproto.tbl /usr/include/js/jstypes.h /usr/include/js/jsdtracef.h /usr/include/js/jsarena.h /usr/include/js/jshash.h /usr/include/js/jsdhash.h /usr/include/js/jsutil.h /usr/include/js/jsclist.h /usr/include/js/jsobj.h /usr/include/js/jscompat.h /usr/include/js/jsstr.h /usr/include/js/jsfile.h /usr/include/js/jsdbgapi.h /usr/include/js/jsparse.h /usr/include/js/prmjtime.h /usr/include/js/jsdtoa.h /usr/include/js/jsbit.h /usr/include/js/jsfun.h /usr/include/js/jslong.h /usr/include/js/jsarray.h /usr/include/js/jsdate.h /usr/include/js/jsnum.h /usr/include/js/conf.h /usr/include/js/jsconfig.h /usr/include/js/jsxdrapi.h /usr/include/js/jsscan.h /usr/include/js/jsapi.h /usr/include/js/jsautocfg.h /usr/include/js/jslock.h /usr/include/js/jsregexp.h /usr/include/js/jsotypes.h /usr/include/js/jscntxt.h /usr/include/js/jsexn.h /usr/include/js/jslibmath.h /usr/include/js/jsinterp.h /usr/include/js/jsstddef.h /usr/include/js/jsscope.h /usr/include/js/jsiter.h /usr/include/js/jsemit.h /usr/include/js/jscpucfg.h /usr/include/js/jsscript.h /usr/include/js/jsgc.h /usr/include/js/jsprvtd.h
packages/i586-poky-linux/js/js-doc/latest +1 -1
@@ -1,5 +1,5 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 +PR = r3 RDEPENDS = RRECOMMENDS = PKGSIZE = 0
packages/i586-poky-linux/js/js-locale/latest +1 -1
@@ -1,5 +1,5 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 +PR = r3 RDEPENDS = RRECOMMENDS = PKGSIZE = 0
packages/i586-poky-linux/js/js-staticdev/latest +4 -4
@@ -1,7 +1,7 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 -RDEPENDS = js-dev (= 1.7.0+1.8.0rc1-r2) +PR = r3 +RDEPENDS = js-dev (= 1.7.0+1.8.0rc1-r3) RRECOMMENDS = -PKGSIZE = 0 +PKGSIZE = 4079320 FILES = /usr/lib/*.a /lib/*.a -FILELIST = +FILELIST = /usr/lib/libjs.a
packages/i586-poky-linux/js/js/latest +1 -1
@@ -1,5 +1,5 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 +PR = r3 RDEPENDS = eglibc (>= 2.13) RRECOMMENDS = PKGSIZE = 873240
packages/i586-poky-linux/js/latest +1 -1
@@ -1,4 +1,4 @@ PV = 1.7.0+1.8.0rc1 -PR = r2 +PR = r3 DEPENDS = autoconf-native automake-native libtool-native libtool-cross gnu-config-native virtual/i586-poky-linux-gcc virtual/i586-poky-linux-compilerlibs virtual/libc PACKAGES = js-dbg js js-doc js-dev js-staticdev js-locale
packages/i586-poky-linux/liba52/a52dec-doc/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.7.4 -PR = r3 +PR = r4 RDEPENDS = RRECOMMENDS = PKGSIZE = 2151
packages/i586-poky-linux/liba52/a52dec/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.7.4 -PR = r3 +PR = r4 RDEPENDS = liba52 (>= 0.7.4) eglibc (>= 2.13) RRECOMMENDS = PKGSIZE = 25496
packages/i586-poky-linux/liba52/latest +1 -1
@@ -1,4 +1,4 @@ PV = 0.7.4 -PR = r3 +PR = r4 DEPENDS = autoconf-native automake-native libtool-native libtool-cross gnu-config-native virtual/i586-poky-linux-gcc virtual/i586-poky-linux-compilerlibs virtual/libc PACKAGES = a52dec a52dec-doc liba52-dbg liba52 liba52-doc liba52-dev liba52-staticdev liba52-locale
packages/i586-poky-linux/liba52/liba52-dbg/latest +3 -3
@@ -1,7 +1,7 @@ PV = 0.7.4 -PR = r3 +PR = r4 RDEPENDS = -RRECOMMENDS = eglibc-dbg liba52 (= 0.7.4-r3) liba52-dbg +RRECOMMENDS = eglibc-dbg liba52 (= 0.7.4-r4) liba52-dbg PKGSIZE = 266136 FILES = /usr/bin/.debug /usr/sbin/.debug /usr/libexec/.debug /usr/lib/.debug /bin/.debug /sbin/.debug /lib/.debug /usr/lib/liba52/.debug /usr/lib/matchbox-panel/.debug /usr/src/debug -FILELIST = /usr/bin/.debug/extract_a52 /usr/bin/.debug/a52dec /usr/lib/.debug/liba52.so.0 /usr/lib/.debug/liba52.so.0.0.0 /usr/lib/.debug/liba52.so /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out_null.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out_oss.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/float2s16.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out_aif.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out_wav.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out_peak.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/libao/audio_out_float.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/bitstream.h /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/imdct.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/bitstream.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/tables.h /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/parse.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/a52_internal.h /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/bit_allocate.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/liba52/downmix.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/include/a52.h /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/include/audio_out.h /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/src/getopt.h /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/src/extract_a52.c /usr/src/debug/liba52-0.7.4-r3/a52dec-0.7.4/src/a52dec.c +FILELIST = /usr/bin/.debug/extract_a52 /usr/bin/.debug/a52dec /usr/lib/.debug/liba52.so.0 /usr/lib/.debug/liba52.so.0.0.0 /usr/lib/.debug/liba52.so /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out_null.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out_oss.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/float2s16.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out_aif.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out_wav.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out_peak.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/libao/audio_out_float.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/bitstream.h /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/imdct.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/bitstream.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/tables.h /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/parse.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/a52_internal.h /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/bit_allocate.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/liba52/downmix.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/include/a52.h /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/include/audio_out.h /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/src/getopt.h /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/src/extract_a52.c /usr/src/debug/liba52-0.7.4-r4/a52dec-0.7.4/src/a52dec.c
packages/i586-poky-linux/liba52/liba52-dev/latest +5 -5
@@ -1,7 +1,7 @@ PV = 0.7.4 -PR = r3 -RDEPENDS = liba52 (= 0.7.4-r3) +PR = r4 +RDEPENDS = liba52 (= 0.7.4-r4) RRECOMMENDS = eglibc-dev liba52-dev -PKGSIZE = 133650 -FILES = /usr/include/a52dec/*.h /usr/lib/liba52.so /usr/lib/liba52.la /usr/lib/liba52.a -FILELIST = /usr/include/a52dec/mm_accel.h /usr/include/a52dec/a52.h /usr/include/a52dec/attributes.h /usr/include/a52dec/audio_out.h /usr/lib/liba52.a /usr/lib/liba52.la /usr/lib/liba52.so +PKGSIZE = 7360 +FILES = /usr/include /usr/lib/lib*.so /usr/lib/*.la /usr/lib/*.o /usr/lib/pkgconfig /usr/share/pkgconfig /usr/share/aclocal /lib/*.o +FILELIST = /usr/include/a52dec/mm_accel.h /usr/include/a52dec/a52.h /usr/include/a52dec/attributes.h /usr/include/a52dec/audio_out.h /usr/lib/liba52.la /usr/lib/liba52.so
packages/i586-poky-linux/liba52/liba52-doc/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.7.4 -PR = r3 +PR = r4 RDEPENDS = RRECOMMENDS = PKGSIZE = 0
packages/i586-poky-linux/liba52/liba52-locale/latest +1 -1
@@ -1,5 +1,5 @@ PV = 0.7.4 -PR = r3 +PR = r4 RDEPENDS = RRECOMMENDS = PKGSIZE = 0
packages/i586-poky-linux/liba52/liba52-staticdev/latest +4 -4
@@ -1,7 +1,7 @@ PV = 0.7.4 -PR = r3 -RDEPENDS = liba52-dev (= 0.7.4-r3) +PR = r4 +RDEPENDS = liba52-dev (= 0.7.4-r4) RRECOMMENDS = -PKGSIZE = 0 +PKGSIZE = 126290 FILES = /usr/lib/*.a /lib/*.a -FILELIST = +FILELIST = /usr/lib/liba52.a
packages/i586-poky-linux/liba52/liba52/latest +2 -2
@@ -1,7 +1,7 @@ PV = 0.7.4 -PR = r3 +PR = r4 RDEPENDS = eglibc (>= 2.13) RRECOMMENDS = PKGSIZE = 37067 -FILES = /usr/lib/liba52.so.0 /usr/lib/liba52.so.0.0.0 +FILES = /usr/bin/* /usr/sbin/* /usr/libexec/* /usr/lib/lib*.so.* /etc /com /var /bin/* /sbin/* /lib/*.so.* /usr/share/liba52 /usr/lib/liba52/* /usr/share/pixmaps /usr/share/applications /usr/share/idl /usr/share/omf /usr/share/sounds /usr/lib/bonobo/servers FILELIST = /usr/lib/liba52.so.0 /usr/lib/liba52.so.0.0.0
Op 19 jan. 2012, om 14:08 heeft Richard Purdie het volgende geschreven:
Quoted 3 lines
We've recently added the buildhistory class and I wanted to illustrate how it can help us improve the quality of what we're doing. I appreciate elements of this have been around for a while as part of testlab
About 4 years: http://dominion.thruhere.net/koen/cms/the-testlab-strikes-again :D
Quoted 16 lines
but I
do want to raise the profile of these tools. I added:INHERIT += "buildhistory"
BUILDHISTORY_COMMIT= "1"to my local.conf, then ran "bitbake gst-openmax liba52 js". I then applied the staticdev patches from Saul, which should only move the .a files to the -staticdev package. I then ran the bitbake command again.
If I change into tmp/buildhistory and show the last commit the result is included below. Since the version changed, the diff isn't as readable as would be ideal, however reading through it clearly shows the .a files moving to the staticdev packages with no unintended changes as far as I could tell.
Quoted 5 lines
One of my big worries with the staticdev changes is any unintended packaging changes. This lets me view the changes more precisely which can only lead to higher quality regression spotting for the project. I'd like to suggest more people start enabling this and using it to check the changes they're making.
If you want to see a longer history, have a look at https://github.com/Angstrom-distribution/buildhistory/commits/master, I've been using it heavily today when working on udev 177 which changed its default filesystem layout. One thing to keep in mind:
$ du -hs /data/ssd/OE/buildhistory/ 548M /data/ssd/OE/buildhistory/
I keep it on an SSD to avoid needing to wait a few minutes after every bitbake invocation.
regards,
Koen
Quoted 7 lines · On Thursday 19 January 2012 15:37:38 Koen Kooi wrote:
If you want to see a longer history, have a look at
https://github.com/Angstrom-distribution/buildhistory/commits/master, I've been using it heavily today when working on udev 177 which changed its default filesystem layout. One thing to keep in mind:$ du -hs /data/ssd/OE/buildhistory/ 548M /data/ssd/OE/buildhistory/
Hmm, I wouldn't have expected it to be quite that large, but I guess it depends what you're doing with it, and I'd imagine given the number of builds you run you probably stress it more than most (which is good :). In the end 500M is just a drop in the bucket compared to the rest of TMPDIR...
Quoted 2 lines
I keep it on an SSD to avoid needing to wait a few minutes after every bitbake invocation.
Good advice :) It's also worth noting it will noticeably increase the do_rootfs time (especially for RPM) and probably do_package as well.
Cheers,
Paul
Signature · 2 lines
Paul Eggleton Intel Open Source Technology Centre
Op 19 jan. 2012, om 15:45 heeft Paul Eggleton het volgende geschreven:
Quoted 14 lines · On Thursday 19 January 2012 15:37:38 Koen Kooi wrote:
Quoted 7 lines
If you want to see a longer history, have a look at
https://github.com/Angstrom-distribution/buildhistory/commits/master, I've been using it heavily today when working on udev 177 which changed its default filesystem layout. One thing to keep in mind:$ du -hs /data/ssd/OE/buildhistory/ 548M /data/ssd/OE/buildhistory/Hmm, I wouldn't have expected it to be quite that large, but I guess it depends what you're doing with it, and I'd imagine given the number of builds you run you probably stress it more than most (which is good :). In the end 500M is just a drop in the bucket compared to the rest of TMPDIR...
Quoted 5 lines
Quoted 2 lines
I keep it on an SSD to avoid needing to wait a few minutes after every bitbake invocation.
Good advice :) It's also worth noting it will noticeably increase the
do_rootfstime (especially for RPM) and probablydo_packageas well.
The cloud9-image incremental build takes ~45 minutes with testlab and ~120 minutes with testlab + buildhistory. The base 45 minutes are ~10 minutes redoing the opkg indices (as reported earlier) and the rest is just mkfs.ext2 being stupid when it comes to using 4GB /dev/loopN files for images.
regards,
Koen
Quoted 6 lines · On Thursday 19 January 2012 13:08:03 Richard Purdie wrote:
If I change into tmp/buildhistory and show the last commit the result is included below. Since the version changed, the diff isn't as readable as would be ideal, however reading through it clearly shows the .a files moving to the staticdev packages with no unintended changes as far as I could tell.
Quoted 8 lines
One of my big worries with the staticdev changes is any unintended packaging changes. This lets me view the changes more precisely which can only lead to higher quality regression spotting for the project. I'd like to suggest more people start enabling this and using it to check the changes they're making.
I know Paul is working on tools to better display these changes too and those will help make these diffs easier to read.
There's the command line buildhistory-diff tool (in scripts/) already, and this will query the git repository and report just the changes that might represent regressions, in a form that's a bit easier to read than git diff. For example (simulated):
paul@helios:~/poky/poky/build/tmp/buildhistory$ ~/poky/poky/scripts/buildhistory-diff . HEAD^^ Changes to images/qemux86_64/eglibc/core-image-minimal (files-in-image.txt): /etc/anotherpkg.conf was added /sbin/anotherpkg was added * (installed-package-names.txt): * anotherpkg was added Changes to images/qemux86_64/eglibc/core-image-minimal (installed-package-names.txt): anotherpkg was added packages/qemux86_64-poky-linux/v86d: PACKAGES: added "v86d-extras" * PR changed from "r0" to "r1" * PV changed from "0.1.10" to "0.1.12" packages/qemux86_64-poky-linux/v86d/v86d: PKGSIZE changed from 110579 to 144381 (+30%) * PR changed from "r0" to "r1" * PV changed from "0.1.10" to "0.1.12"
For those that may not be aware I'm also working on a web frontend to view/manage these changes more effectively (utilising the same backend code), however it still needs quite a bit of work.
Cheers,
Paul
Signature · 2 lines
Paul Eggleton Intel Open Source Technology Centre
Quoted 36 lines · Paul Eggleton
Quoted 6 lines · On Thursday 19 January 2012 13:08:03 Richard Purdie wrote:
If I change into tmp/buildhistory and show the last commit the result is included below. Since the version changed, the diff isn't as readable as would be ideal, however reading through it clearly shows the .a files moving to the staticdev packages with no unintended changes as far as I could tell.
Quoted 8 lines
One of my big worries with the staticdev changes is any unintended packaging changes. This lets me view the changes more precisely which can only lead to higher quality regression spotting for the project. I'd like to suggest more people start enabling this and using it to check the changes they're making.
I know Paul is working on tools to better display these changes too and those will help make these diffs easier to read.
There's the command line buildhistory-diff tool (in
scripts/) already, and this will query the git repository and report just the changes that might represent regressions, in a form that's a bit easier to read than git diff. For example (simulated):paul@helios:~/poky/poky/build/tmp/buildhistory$ ~/poky/poky/scripts/buildhistory-diff . HEAD^^ Changes to images/qemux86_64/eglibc/core-image-minimal (files-in-image.txt): /etc/anotherpkg.conf was added /sbin/anotherpkg was added * (installed-package-names.txt): * anotherpkg was added Changes to images/qemux86_64/eglibc/core-image-minimal (installed-package-names.txt): anotherpkg was added packages/qemux86_64-poky-linux/v86d: PACKAGES: added "v86d-extras" * PR changed from "r0" to "r1" * PV changed from "0.1.10" to "0.1.12" packages/qemux86_64-poky-linux/v86d/v86d: PKGSIZE changed from 110579 to 144381 (+30%) * PR changed from "r0" to "r1" * PV changed from "0.1.10" to "0.1.12"
Quoted 3 lines
For those that may not be aware I'm also working on a web frontend to view/manage these changes more effectively (utilising the same backend code), however it still needs quite a bit of work.
Does the build history due any scanning of either package or shared library dependencies?
I hit a case recently working on a custom layer, where everything built properly, I made a few changes and I happened to notice by accident that it was no longer linking to the shared library, but instead the static library. This changed both the package (runtime) dependencies and the shared library usage in the problem... the resulting binary suddenly jumped in size as well.
--Mark
Quoted 2 lines · On Thursday 19 January 2012 10:06:24 Mark Hatle wrote:
Does the build history due any scanning of either package or shared library dependencies?
For packages, it relies on the output of do_package, however this includes the final value of RDEPENDS which is influenced by shared library dependencies.
Quoted 6 lines
I hit a case recently working on a custom layer, where everything built properly, I made a few changes and I happened to notice by accident that it was no longer linking to the shared library, but instead the static library. This changed both the package (runtime) dependencies and the shared library usage in the problem... the resulting binary suddenly jumped in size as well.
If the runtime package dependency doesn't change as a result then we wouldn't notice the change the way it currently works; however for this specific issue it did so we would have. We would also have picked up the jump in package size if it was over a specified threshold (currently 20%, it's possible this value may need some tweaking).
Cheers,
Paul
Signature · 2 lines
Paul Eggleton Intel Open Source Technology Centre