Age | Commit message (Collapse) | Author |
|
If the output is a TTY, add colour to the output in order to make it
easier to read. At the moment this is fairly basic, just add colour to
the "titles" of each change and to the diff output.
I tried to introduce this without changing the code too much - rather
than moving everything over to the new python formatting style, I've
introduced a color_format() function which takes care of the colour
formatting, either accepting additional format arguments or
alternatively leaving the caller to use the old-style formatting (%) to
insert values.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
If a variable value has changed and either the new or old value contains
spaces, a word diff should be appropriate and may be a bit more readable.
Import the "simplediff" module and use it to show a word diff (in the
style of GNU wdiff and git diff --word-diff).
Also use a similar style diff to show changes in the runtaskhashes list.
I didn't use an actual word-diff here since it's a little different - we
can be sure that the list is a list and not simply a free-format string.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Save a file per task listing sha256sums for each file staged, i.e.
the output of the task. Some caveats:
1) This only covers sstate tasks since it uses SSTATEPOSTUNPACKFUNCS,
however those are generally the most interesting in terms of output
anyway.
2) The signature is taken before applying any relocations, so any
relocated files will actually have different signatures, but that's
churn that you probably won't want to see here.
3) At the moment if you run the same build twice without sstate you will
very likely see changes in the output for certain tasks due to things
like timestamps being present in the binary output. Fixing that is
a general Linux ecosystem problem - see this page for our efforts to
resolve it on our side:
https://wiki.yoctoproject.org/wiki/Reproducible_Builds
NOTE: you need to set your BUILDHISTORY_FEATURES value to include
"task" to enable collection of these signatures as it is is disabled by
default.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Append to the value with appendVarFlag() instead of setting it outright,
so that we can also append to it in other places. Accordingly, this
varflag is pipe-separated (since we want to be able to exclude any
string fragment, in this case including the leading space), thus put a
leading pipe character to play nicely with any existing value.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Use the code underpinning bitbake-diffsigs to add an option to
buildhistory-diff to determine and display the differences between the
actual signature inputs, with a twist - we collapse identical
changes across different tasks, showing only the most recent task to
have that difference, meaning that there's less noise to wade through
when you just want to know what changed in order to cause some
rebuilding you're seeing.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
If we just want to drill down to the actual differences then we don't
need to see certain things in the output, e.g. basehash changing or the
signature of dependent tasks.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Having added writing out of the task signature list to buildhistory
(when BUILDHISTORY_FEATURES includes "task"), we now need a way to
compare the list. This just shows which tasks have been added / changed
signature / removed.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
If we want to determine what changed since the last build, one angle
from which to look at it is to check the signatures. However, if we
don't actually have the signatures from the last build we don't have
anywhere to start. Save the signatures on each build in order to give us
the starting point.
NOTE: you need to set your BUILDHISTORY_FEATURES value to include
"task" to enable collection of these signatures as it is is disabled by
default.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
If the cwd is named "buildhistory" and the user hasn't specified an
alternative path on the command line, then assume that the current
directory is the buildhistory directory. This makes it easier to run
buildhistory-diff and also interact with the buildhistory git repository
as you no longer have to jump into the buildhistory directory and up to
the parent again when doing so.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
In find_siginfo(), which is used by bitbake-diffsigs among other things,
avoid adding a siginfo file from the sstate-cache where we've already
collected a sigdata file from the stamps directory with the same hash.
This avoids the possibility that the top two files (as picked by default
using the bitbake-diffsigs -t option) are for the same signature and
thus the tool would report no differences. In order to do that, just use
the hashfiles dict that we already have - we just need to change the
code to populate that even if we're collecting matching files without
looking for a fixed set of hashes (i.e. taskhashlist isn't set).
This replaces previous code in bitbake-diffsigs that attempted to filter
these out with limited success.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
When comparing signatures with bitbake-diffsigs -t or bitbake -S
printdiff, we use this find_siginfo() function implemented in this
module to find the siginfo/sigdata files corresponding to the tasks
we're looking for. However, native sstate files go into a
NATIVELSBSTRING subdirectory and there was no handling for this when
asking about native recipes.
I'm not even sure why we were walking SSTATE_DIR in order to find
this - we don't need to, we just need to run glob.glob() on the filespec
we calculate, which should be a little bit more efficient.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
With the -t option which recurses to find the ultimate cause of a
signature change, it was hardcoded to take the last two executions of
the specified task. On the other hand, if you have two specific task
hashes (say from bitbake output, or some other tool) then you'll want to
pick those, so provide an option to specify those as well. (Note, the
new -s option needs to be specified alongside -t rather than instead of
it.)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Argparse is a bit easier to deal with than optparse, and since we're
about to add some options, migrate this script over.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
If the runtaskdeps list hasn't actually changed (but the signatures of
some of the tasks did) then it doesn't make sense to print out the old
and new lists as they are both the same and may be very long, e.g. for
do_rootfs in OE.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
When dumping changes to signatures e.g. output of bitbake -s printdiff,
if for example a function has changed, it's much more readable to see a
unified diff of the changes rather than just printing the old function
followed by the new function, so use difflib to do that.
Note: I elected to keep to one item in the returned list per change,
rather than one line per line of output, so that the caller can still
look at changes individually if needed. Thus I've added some handling to
bitbake-diffsigs to split the change into lines so that each line is
displayed indented.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
This logic doesn't work in practice, certainly not with current versions
where sigdata files are preserved in the stamps directory and therefore
there will often be multiple sigdata files - you can now easily get
files for the same signature from sstate and the stamps directory with the
result that bitbake-diffsigs reports nothing has changed. Instead, let's
change the find_siginfo function in OE-Core to simply not return
duplicates so we don't have to filter them out here.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
If just one of the two signatures we want to compare aren't available,
report that one rather than misleadingly claiming both are missing.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Printing "pbzip2pbzip2_1.1.13.bb" is ugly, we need to add a separating
slash so that we get "pbzip2/pbzip2_1.1.13.bb" instead.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
We weren't picking the right files to compare here - according to the
order in which the list is sorted (by mtime), we need to be taking the
last two items and not the first two.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Rather than hard-coding the tmpdir for TargetBuildProject to /tmp allow the
parent's default handling to define an appropriate tmpdir.
(From OE-Core rev: 901659a51cd53625a93f57a9c5865e90a07ec09d)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Don't hard-code /tmp as the tmpdir, instead use WORKDIR as the tmpdir if the
instantiater doesn't specify a value.
(From OE-Core rev: c43c966e0ed4ed836bdf90b1d4c3f2f45426f1ec)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Rather than hardcoding /tmp as the default tmpdir make a more unique tmpdir
with tempfile.mkdtemp() when the caller doesn't specify a tmpdir value.
(From OE-Core rev: 9425c2658fea0b45468a04574cd77bffc6668a8d)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Override RTLDLIST for nativesdk, or else ldd would fail to run on
SDK targets.
(From OE-Core rev: 3a1cce659156ef2654a55a6e3c6922fa2dc780e4)
Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The configuration change was already done for -native but
we really want it when USE_NLS is set.
Fixes [YOCTO #11285].
(From OE-Core rev: 95d6910bb5d9331adb7a693fcb4f7b1271c68cc6)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
EXTRA_OEMAKE no longer contains '-e MAKEFLAGS=' so the comment
explaining that it needs to be removed / over-ridden is obsolete.
(From OE-Core rev: 19be2237798f51c01c1c21a68382d114a2f6ead2)
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The md5sum & sha256sum for ethtool-4.8.tar.gz have changed upstream :(
(From OE-Core rev: bb3a0bef3b7e012ba7ce6d31d0470d43e7a21077)
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The recipe being tested (devtoo-test-patch-gz) by devtool has dependencies (at
least libxres and virtual/libx11) that cannot be built with poky-tiny distro so
skip the test for this particular policy.
[YOCTO #10891]
(From OE-Core rev: 03751783cb063bc6a57cd19357bc1016bfa2a814)
Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The library libxml2 can provide its own bindings for python2 in addition
to the third party python-lxml and python3-lxml packages if this
functionality is enabled in PACKAGECONFIG.
But in case the functionality is disabled there's no need to depend
on python2.
Make the dependency on python2 enabled only if the python feature
is added to PACKAGECONFIG. Also add missing run-time dependency on make
to libxml2-ptest.
(From OE-Core rev: 3f1be2c3875fc112d9c67af16759091e007e5b99)
Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This release includes fixes for Windows/Mingw support.
(From OE-Core rev: b5f471b74b2da533abfad2601b221fa806fcf3b2)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
(From OE-Core rev: 02a76f320d3cddbfaae2fc5bee7d3660d95e6b7a)
Signed-off-by: Philip Balister <philip@balister.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
NASM is a x86-specific assembler so it is only required when building for x86
targets. Use x86-architecture and class-target overrides to depend on NASM, but
explicitly disable and don't depend on it for native as complications in the
native overrides meant NASM was enabled for x86-64 but disabled for x86 (this
will be investigated later).
Original patch by Tristan Van Berkom <tristan.vanberkom@codethink.co.uk>, more
work to solve selftest failures by Richard Purdie
<richard.purdie@linuxfoundation.org>. I just wrote a nice commit message.
Also fix some missing whitespace in _appends.
[ YOCTO #11240 ]
(From OE-Core rev: 3b1871b7c6df66d3bf3453668f46566b8af3e6d9)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Currently some shebang lines end up as
#! /usr/bin/env perl -w
env does not like the argument. Also the current sed to insert env
does not cover the copies ptests use. Fix these issues by:
- using --with-perl to insert "env"
- Replacing "-w" in shebang lines with a new "use warning;" line
Remove a EXTRA_OECONF_append_class_target from the native recipe.
Don't overwrite EXTRA_OECONF in native: the values should be correct
for native as well.
--with-patch is used within the gnu patch wrapper only: before this
commit the wrapper contained a (build host) path to native patch.
Also tweak one test so busybox mv output is accepted.
All ptests should now pass: Fixes [YOCTO #11221].
(From OE-Core rev: 4b667d268fe410a21cacaecd1b5e3bfbbe7d53d8)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When using `wic create mkefidisk -e core-image-minimal', the following
error message appeared.
Please bake it with 'bitbake parted-native' and try again.
However, following this command doesn't do any help. The same problem
still appeared.
The problem is that when we 'bitbake parted-native', it doesn't have
anything to do with core-image-minimal. And the required tool 'parted'
is not under core-image-minimal's recipe-sysroot-native directory.
Improve the error message so that following it could get things done.
(From OE-Core rev: f0425c0a0f1c98f65bf61fd9aa7e023ed41a35fa)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
FIEMAP API is not supported by tmpfs file system, but
SEEK_HOLE/SEEK_DATA is supported.
Returned back FilemapSeek class that implements support
of SEEK_HOLE/SEEK_DATA API to make sparse_copy API working
on tmpfs again.
This reverts commit 6b80c13f7a82a312a3b981de5a56c66466ba1fac.
(From OE-Core rev: e75bd6a7dd5c1b4bad039c35cf4a2ffc2f77c60a)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add new '-E' command line option for sending an email report to
specified recipient.
(From OE-Core rev: 46e76ffd460933ab35da4cfd3509f7c5de5ecd93)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Implement new '-P' option for spefifying a Git remote where to push
results after committing to a local Git repository.
(From OE-Core rev: d8e14df29d28bfe805dc746f43c9f3a7726e57ce)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Test of the exit code was accidentally moved to wrong place when
oe-git-archive was taken into use.
(From OE-Core rev: ed43b2dfe019f35086967a0c8dc605bc6629c75b)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Support <branch>:<commit> format for the -c argument. This makes it
possible to test older commits of a certain branch (not just the tip of
it) so that the branch name will still be correctly recorded in the test
report data.
(From OE-Core rev: be3d1718a99e59e636f349586e0a64eb8e2824a4)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
(From OE-Core rev: 0a05ccfeba2f185ef9ea78a23bc376d4b97ec547)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The javascript console log messages are used in scraping, when
converting an html test report to html email. Before this patch a
console message indicating that all charts have been drawn was not
correctly sent if the last test failed (or didn't have chart data for
some other reason) which, in turn, caused oe-build-perf-report-email.py
script to fail with a timeout.
(From OE-Core rev: 79b90ae02257002ea831a48f6798794b7711c1f8)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When getting info from the latest commit, don't search all refs but only
branches. We don't get correct data from refs/tags/* or refs/notest/*,
for example.
(From OE-Core rev: f84d0bd7deb4c19fdb1e821b3a50e8c8f54a731b)
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The initial signatures need to be collected -after- the dependency layers have
been added to the system. Otherwise changes that happen due to dependencies,
outside of the layer being scanned, will show up as signature problems.
The add_layer function was split into two pieces so that we can process
the dependencies first, and then add the layer itself for the comparison.
(From OE-Core rev: 4eb0932e755b7cb582a8db811aeed1397ecb92cc)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When processing a layer for dependencies, you have to process the layer
itself, it's dependencies, the dependencies dependencies and so forth until
all items have been processed.
i.e.: LayerA requires LayerB requires LayerC requires layerD
The end result should be LayerB, LayerC and LayerD are all dependencies of
LayerA.
(From OE-Core rev: 6e0a268b750fb6701604dd936cd2cf3b47a6e804)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When processing a large number of items, there are times that it would be
nice to be able to pass in a series of layers that can be used as dependencies
for the layer that is being scanned. This avoids the significant overhead
of processing all of the layers to compatibility.
(From OE-Core rev: 57fc8a9771174b7d0533a42c045053adefa537a8)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If items were skipped because the dependencies could not be found, we
want to record this was skipped so we can display it later.
(From OE-Core rev: 402ef1c8bd1ea994581a39672f31ab1203a0899d)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This script will be used to create it's own build directory to make
runs of yocto-compat-layer.py againts layers isolated.
Example:
$ source oe-init-build-env
$ yocto-compat-layer-wrapper LAYER_DIR LAYER_DIR_N
[YOCTO #11164]
(From OE-Core rev: 9414382f96d4a5d81cca440c75140950ca515aab)
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Only change the ownership of ${libdir}/gio/modules/giomodule.cache if
it exists.
(From OE-Core rev: df2e1a8fbadffac0f1781a0d07e050356a007327)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
fedorahosted.org was retired on March 1st, 2017. This is to update
the SRC_URI to point to github.com.
[YOCTO #11226]
(From OE-Core rev: 0fb5427937576fe46d463b9c9953d0bcdc1f256a)
Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to github.com.
[YOCTO #11226]
(From OE-Core rev: 9b3c9193d4a04061e64e43d55782a4d73ee166ad)
Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
fedorahosted.org was retired on March 1st, 2017. This is to
update the SRC_URI to point to github.com.
[YOCTO #11226]
(From OE-Core rev: b0703175ed650d89870309e4065cda917199ac93)
Signed-off-by: Choong YinThong <yin.thong.choong@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|