summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-03-24wic: use kernel_dir to find systemd-efi bootloaderEd Bartosh
Fixed test failure caused by using bootimg_dir path instead of kernel_dir to find systemd-efi bootloader: FAIL: test_systemd_bootdisk (oeqa.selftest.wic.Wic) ... FileNotFoundError: [Errno 2] No such file or directory: 'tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/recipe-sysroot/usr/share' Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23staging: Remove uninstalled dependencies from sysrootsRichard Purdie
Currently, if something is added to a sysroot, its hash remains unchanged, and it continues to be buildable, it doesn't get removed from the sysroot. This patch handles the case where something is removed from DEPENDS or [depends]. It does introduce its own issue where something could get removed even though some other task in parallel may have the same requirement. This case should be extrememly rare and fixing the more common DEPENDS removal is likely the bigger win though. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23staging: Update extend_recipe_sysroot vardepsexclude after code changesRichard Purdie
Changed were made to the code but not reflected in vardepsexclude, fix this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23staging: Drop BB_SETSCENE_VERIFY_FUNCTION2Richard Purdie
The original description for this was: """ Since we clean out do_populate_sysroot if do_configure runs, don't allow do_populate_sysroot_setscene functions if we're going to run do_configure. """ With RSS, we don't need to clean do_populate_sysroot any more. Since we no longer do that, this function also has no purpose any longer and can also be removed. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23staging: Drop do_configure clean prefuncRichard Purdie
With recipe specific sysroots its now pointless to do this, may as well save the cpu cycles. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23staging: Drop BB_SETSCENE_VERIFY_FUNCTION since it was replacedRichard Purdie
BB_SETSCENE_VERIFY_FUNCTION2 replaced BB_SETSCENE_VERIFY_FUNCTION and due to our minimum bitbake requirements there is no point in retaining the older version any more. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23musl: Fix issues in relative symlink creationAmarnath Valluri
Make use of lnr/ln -r while creating relative symlinks than guessing the relalive path. Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-23base-files: Replace hardcoded root paths with appropriate bitbake variablesAmarnath Valluri
/bin, /sbin, /lib are replaced with ${base_bindir}, ${base_sbindir} and ${base_libdir}. Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-23runqemu-gen-tapdevs: fix file path in exampleChen Qi
Fix the path in example so that '/usr/bin/tunctl' could be found under this path. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-23libvorbis: Contain gcc specific compiler flags using configure optionKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-23db: Fix atomic function namespace clash with clang builtinsKhem Raj
Rename local function to avoid conflicts with compiler intrinsics Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-23native.bbclass: clear MACHINE_FEATURESAndre McCurdy
Try to avoid native recipes accidentally being dependent on MACHINE_FEATURES. This simple change doesn't prevent MACHINE_FEATURES set via MACHINE_FEATURES_BACKFILL sneaking through, but it's better than nothing. 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>
2017-03-23core-image.bbclass: update available IMAGE_FEATURESTrevor Woerner
Update the list of available IMAGE_FEATURES with the sub-features of 'debug-tweaks' and add 'splash'. Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23firmware: use ${nonarch_base_libdir} for firmware installation.Amarnath Valluri
Replace hardcoded '/lib' in kernel firmware installation path with ${nonarch_base_libdir}. Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23expect: resolve string formatting issuesAlexander Kanavin
[YOCTO #9542] Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23package_manager.py: respect OPKGLIBDIRMartin Jansa
* respect it for incremental rootfs generation * add lists_dir option to opkg.conf * also fix setting info_dir and status_file when they use default value, the problem is that self.opkg_dir is already prefixed with rootfs directory, comparing it with /var/lib/opkg always returned false and the options were appended to config file unnecessary * with opkg 0.3.4 we can use VARDIR prefix added in: commit d2a8e23dc669adc398f4bb8bcfcabfcf925708f7 Author: Florin Gherendi <floring2502@gmail.com> Date: Mon Dec 19 12:25:38 2016 +0200 libopkg: make the /var and /etc directories configurable at compile time. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23rootfs.py: Respect OPKGLIBDIR variableMartin Jansa
* when OPKGLIBDIR doesn't have the default /var/lib value it will silently fail to copy package database from normal rootfs to debugfs rootfs and then when trying to install *-dbg complimentary packages it won't install anything, because installed_pkgs.txt file generated from debugfs is empty Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-23uninative-tarball: glibc-gconv-{utf-16, cp1252} for binutils windresNathan Rossi
The windres binutils binary which is used for Windows resource files requires utf-16 and cp1252 encoding support in order to correctly generate resource files with strings. As such when using uninative to build mingw resources for a nativesdk target the windres binary is executed on the native host, thus using the uninative libc and gconv modules. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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>