aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-03-24build-perf-test-wrapper.sh: store buildstats under git-notesmarquiz/buildperf/buildstatsMarkus Lehtonen
In order to dramatically reduce the data footprint of the result branches. This makes cloning/pulling result repositories a lot faster. Buildstats can still be accessed, when needed by doing git fetch refs/notes/buildstats/*:refs/notes/buildstats/* [YOCTO #10582] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-03-24scripts/oe-git-archive: implement --notesMarkus Lehtonen
Option for adding git-notes to the commit. [YOCTO #10582] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-03-24scripts/oe-git-archive: implement --excludeMarkus Lehtonen
May be used for excluding certain files from the commit. [YOCTO #10582] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-03-24scripts/oe-git-archive: fix pushingMarkus Lehtonen
Git arguments were badly laid out. Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-03-24oe-build-perf-test: sum rusage in buildstatsMarkus Lehtonen
Instead of separate rusage and child rusage values, only store their sum value in buildstats. This is a big reduction in data footprint without really losing any interesting data. Also, utilize OrderedDict to order data more logically. [YOCTO #10582] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-03-24oe-build-perf-test: pack all buildstat in one fileMarkus Lehtonen
Write out all buildstats into one big json file, instead of using multiple per-measurement files. Individual buildstats will be indexed using "<test_name>.<measurement_name>" as the key. Also, changes the per-testcase working directories into temporary directories that will be removed after test execution as there are no more per-testcase data files to store permanently. [YOCTO #10582] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-03-22rpm: add a "rpm-build" PROVIDESAlexander Kanavin
rpm 5.x was packaging build tools separately, so we need to unbreak things that relied on that. [YOCTO #11167] Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22sign_rpm.bbclass: do not set/use RPM_GPG_PUBKEYAlexander Kanavin
This is entirely unnecessary (we can ask the signer backend to export the key to a file when needed), and was causing confusing selftest failures due to the variable being set from two different places. [YOCTO #11191] Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22oeqa: use WORKDIR/oe-testimage-repo to look for RPM packagesAlexander Kanavin
Using RPM deploy dir was causing errors when pre-built images were used with these steps: https://wiki.yoctoproject.org/wiki/Quality_Assurance_yocto_project [YOCTO #11173] Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22oe-selftest: add test_rawcopy_plugin test caseEd Bartosh
This test case builds wic image using rawcopy plugin running wic directly. [YOCTO #10618] Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22selftest: pylinted wic test suite.Ed Bartosh
Fixed long lines, indentation and one unused variable. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22oe-selftest: test wic rawcopy pluginEd Bartosh
Added test_rawcopy_plugin_qemu test case and wks template. This test builds ext4 rootfs image, copies it to the root partition of the wic image using rawcopy plugin and boots wic image in qemu. [YOCTO #10618] Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: improve getting syslinux pathEd Bartosh
Used wic-tools STAGING_DATADIR if syslinux can't be found in default bootimg_dir. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: remove empty plugin methodsEd Bartosh
Removed do_install_disk and do_configure_partition methods from bootimage-partition, fsimage and rawcopy plugins as they're empy and not used. [YOCTO #10618] Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: use STAGING_DATADIR as a default for bootimg_dirEd Bartosh
Default value for bootimg_dir was not set in main wic script unlike the rest of artifacts: kernel_dir, roofts_dir and native_sysroot. Set it to the value of STAGING_DATADIR for consistency and to avoid confusion of wic plugin developers. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: fix bug in sparse_copyEd Bartosh
sparse_copy creates output file that is smaller than input file when input file ends with unmapped blocks. Used truncate(<input file size>) when output file is created to ensure the size of output file will always be equal to the size of input file. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: use kernel_dir instead of bootimg_dirEd Bartosh
bootimg_dir is usually set to the value of STAGING_DATADIR and kernel_dir - to the value of DEPLOY_DIR_IMAGE, so usage of kernel_dir is more logical in bootimg-efi, bootimg-partition and rawcopy plugins. Replaced usage of bootimg_dir to kernel_dir in 3 above mentioned plugins that use DEPLOY_DIR_IMAGE as a default artifact location. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: don't set creator.bootimg_dir in pluginsEd Bartosh
Changing bootimg_dir in plugins is a dangerous hack as this value comes from wic command line and can be used by multiple plugins. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22wic: remove rootfs_pcbios_ext pluginEd Bartosh
Removed broken unused plugin. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22sstate: Ensure installation directory is empty before executionRichard Purdie
When you enable the systemd DISTRO_FEATURE, opkg-native contains systemd units which have a relocation fixme list. When systemd isn't in DISTRO_FEATURES, there are no fixmes required. Unfortunately as sstate isn't cleaning up its installation directory before use, if you install the systemd version, then install the non-systemd version from sstate, it would leave behind the fixme file from the systemd version and breakage results as it would try and fixup files which don't exist. The solution is to ensure the unpack/install directory is clean before use. It does raise other questions about opkg-native, systemd and DISTRO_FEATURES but there is an underlying sstate issue here too which would cause missing file failures. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-21oeqa/selftest/devtool: Enable missing cleanupRichard Purdie
Not sure why this cleanup is disabled but it clearly should be running so enable it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-21externalsrc: Use git add -A for compatibility with all git versionsRichard Purdie
I've been debugging a selftest failure on Centos7. The problem turns out to be the elderly git version (1.8.3.1) on those systems. It means that the system doesn't correctly checksum changed files in the source tree, which in turn means do_compile fails to run and this leads to the following selftest failure: ====================================================================== FAIL [141.373s]: test_devtool_buildclean (oeqa.selftest.devtool.DevtoolTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/devtool.py", line 530, in test_devtool_buildclean assertFile(tempdir_mdadm, 'mdadm') File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/devtool.py", line 497, in assertFile self.assertTrue(os.path.exists(f), "%r does not exist" % f) AssertionError: False is not true : '/tmp/devtoolqag88s39z8/mdadm' does not exist The solution is to use -A on the git add commandline which matches the behaviour in git 2.0+ versions and resolves the problem. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-21wic: selftest: add tests for --fixed-size partition flagsMaciej Borzecki
wic has a new flag for setting a fixed parition size --fixed-size. Add tests that verify if partition is indeed sized properly and that errors are signaled when there is not enough space to fit partition data. Signed-off-by: Maciej Borzecki <maciej.borzecki@rndity.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21wic: selftest: do not assume bzImage kernel imageMaciej Borzecki
Instead of assuming that bzImage is available, query bitbake enviroment for KERNEL_IMAGETYPE. Signed-off-by: Maciej Borzecki <maciej.borzecki@rndity.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21wic: selftest: avoid COMPATIBLE_HOST issuesMaciej Borzecki
Wic tests will unconditionally attempt to build images that may require dependencies that are incompatible with current target. Resolve this by consulting HOST_ARCH first (which defaults to TARGET_ARCH) before proceeding to build images that may be incompatible. A convenience decorator only_for_arch() can be used to skip test cases for specific architectures. Signed-off-by: Maciej Borzecki <maciej.borzecki@rndity.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21selftest: wic: replace directdisk with wictestdisk where possibleMaciej Borzecki
Use wictestdisk instead of directdisk thus allowing more tests to be run on non-x86 compatible machines. Signed-off-by: Maciej Borzecki <maciej.borzecki@rndity.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21selftest: wictestdisk: machine agnostic WKS for use with selftestMaciej Borzecki
Add a kickstart for an image that is not limited to use on x86 compatible machines. This allows us to run more wic tests on non-x86 architectures. Signed-off-by: Maciej Borzecki <maciej.borzecki@rndity.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scripts/yocto-compat-layer.py: Handle layer dependencies when testAníbal Limón
If some layer depends on other tries to find layer dependency, if the layer dependency isn't found avoid to test the layer and notice the user. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scripts/yocto-compat-layer.py: Add option to disable layer autodiscoveryAníbal Limón
Sometimes there is a need to only analyze the layer specified by the command line, the new option -n will disable autodiscovery of layers and only will try to test specified layers. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scripts/lib/compatlayer: Remove require of meta- in layer dir nameAníbal Limón
The layers isn't required to have a dirctory name start with meta- so remove the validation. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21buildhistory.bbclass: add layer name to source recipe dataMikko Rapeli
It is useful to know which layer provided a given recipe and its binary packages. Many projects combine a number of layers and some of them also provide same recipe names in which case bitbake can prioritize between them. buildhistory can record the decision by saving the layer from where the recipe was taken from. Also, if a project is split to sub projects which maintain recipes in different meta layers, then meta layer specific summaries of e.g. disk usage can be calculated if source recipes meta layer name is recorded for example in buildhistory. If source layer is not in build history, then layer providing the recipe can be exported from build environment using 'bitbake-layers show-recipes', but it takes a long time to execute since all recipes are parsed again and requires full source tree with correct build configuration. This patch exports the name of layer as configured in BBFILE_COLLECTIONS append of its layer.conf. 'bitbake-layers show-recipes' exports the meta layers directory path name. For several open source layers these are different, e.g. meta-openembedded/meta-perl/conf/layer.conf is perl-layer, poky/meta/conf/layer.conf is core, poky/meta-skeleton/conf/layer.conf is skeleton etc. Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21ovmf: fix toolchain selectionPatrick Ohly
For the native tools, a static patch inserted gcc/g++/ld/ar while later adding BUILD_LDFLAGS and BUILD_CFLAGS with sed. Now it's all done with sed, which has the advantage that it uses the actual compile variables. However, in practice those are the same. More importantly, picking the build tools for the target was broken. ovmf-native tried to insert TARGET_PREFIX into the tools definition file, but that variable is empty in a native recipe. As a result, "gcc" was used instead of "${HOST_PREFIX}gcc", leading to an undesirable dependency on the host compiler and potentially (probably?!) causing some of the build issues that were seen for ovmf. The new approach is to override the tool selection in ovmf-native so that the HOST_PREFIX env variable is used, which then gets exported during do_compile for the target. While at it, Python code that gets appened to do_patch only to call shell functions gets replaced with the do_patch[postfuncs] mechanism. Incremental builds now always use the tools definition from the current ovmf-native; previously, only the initial build copied the template file. Probably the entire split into ovmf-native and ovmf could be removed. This merely hasn't been attempted yet. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21libcomps: Fix/optimize building with clangKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scripts/compatlayer: Add exclude of meta-world-pkgdata on get_signaturesAníbal Limón
The meta-world-pkgdata recipe can be modified when a layer is added may be can add recipes to world target, so exclude by default. [YOCTO #11162] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scripts/yocto-compat-layer.py: Make output log argument optionalAníbal Limón
Only create a log file when --output-log option is specified, since logger is dumping to stdout by default is better to let the user decide if a log needs to be created. [YOCTO #11160] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scripts/yocto-compat-layer.py: Dump log to stdout instead of stderrAníbal Limón
The common unix tools uses stdout as standard for log output, by default python logging uses stderr if not stream is specified. [YOCTO #11160] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21scriptutils: Add support for specify stream on logger_createAníbal Limón
It is a good idea to let the script to choose what stream wants to dump the logging output. [YOCTO #11160] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21go-native: Install bootstrap binaries with 1.4 suffixKhem Raj
Currently, bin/go and bin/gofmt collide between go-native and go-bootstrap-native packages, these are scripts anyway which call the go compiler proper from right install, in this case create go1.4 and gofmt1.4 names for these scripts to avoid namespace collision Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21acpitests: Point Makefile CC to use OE synthesized CCKhem Raj
Default CC is same as used here, there is no need to duplicate it, as a plus it helps in compiling acpitests with non-gcc cross compilers Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21openssl: Fix build with clangKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21oeqa/selftest: remove test_sanity_unsafe_binary_referencesRoss Burton
This test was attempting to exercise a broken test, for some reason this broke with patches under review but investigation revealed that the test itself is broken. The test has been removed, so there's no need to test it. Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21insane: remove broken unsafe-references-in-binaries testRoss Burton
This test aims to detect binaries in /bin which link to libraries in /usr/lib, for the case where the user has /usr on a separate filesystem to /. However it doesn't scan both image/ and the sysroot, so if a binary in /bin links to a library in /usr/lib that was built by the same recipe then it will error out. This test isn't enabled by default, and because of this serious bug I suspect nobody else is enabling it either. As /usr being on a separate partition to / is a very rare configuration these days I think we should delete the test: if someone cares sufficiently they should write a test that actually works. Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21package.bbclass: Add PRIVATE_LIBS to list of package specific variablesPeter Kjellerstedt
Changes to PRIVATE_LIBS should change the sstate checksum. To make that happen, it needs to be listed in the list of package specific variables, therefore add it. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21gpgme: Avoid requiring a host C++ compiler with C++11 supportPeter Kjellerstedt
Building the C++ bindings for native requires a host C++ compiler with C++11 support. Since these bindings are currently not needed, we can disable them and thus avoid increasing the requirement for the host C++ compiler. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21image-buildinfo.bbclass: configurable location for build filePatrick Ohly
In a stateless image, /etc is not a good place for the "build" file. By definining the location with a variable it becomes possible to have the file created elsewhere on a per-image basis. The default is the same as before. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21wic: partition.py: Add fsck to avoid corrupt EXT file systemsDaniel Schultz
This patch avoids the creation of a corrupt EXT file system. Since there are no checks if a EXT file system was successfully created, this should add to prevent possible system failures. Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21e2fsprogs: Fix wrong error code after optimizationDaniel Schultz
fsck.ext will return an error code of 1 if a file systems was checked and successfully repaired. Even when an optimization was performed it will return this error code. This patch will change the error code to 0 if only optimizations had changed the file systems. The reason for this patch is a question I asked at the ext4 ML: http://www.spinics.net/lists/linux-ext4/msg55700.html Backport from git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git Based on commit bf9f3b6d5b10d19218b4ed904c12b22e36ec57dd Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21gen-lockedsig-cache: catch os.link errorbrian avery
We do a hard link to speed up sdk creation but if your sstate-cache is across a file system boundary, this tries and fails. This patch catches that error and does a copy instead. Signed-off-by: brian avery <brian.avery@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21python-3.3-multilib.patch: Fixes getpath on multilib configurationsJose Lamego
When using multilib configurations either on arm/arm64 and x86/x86-64 python3 failed to execute due to a failure when looking for its platform independent and dependent libraries. This patch fixes this issue by assigning lib_python to the appropriate macro. [YOCTO #10812] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Jose Lamego <jose.a.lamego@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21devtool: tidy up handling of parse failuresPaul Eggleton
Since the tinfoil2 refactoring, if an error occurred during parsing, we were showing a traceback and not correctly exiting (since we weren't calling shutdown()). Fix both of these issues. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>