summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa
AgeCommit message (Collapse)Author
2021-03-01systemd-bootchart: Disable LTO to fix reproducibilityRichard Purdie
LTO likely doesn't buy us much here, disable it to allow the binaries to be reproducible. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-01efivar: Fix reproducibility issueRichard Purdie
Add sorting to the globbing within the Makefile to make the output reproducible. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-01swig: Fix reproducibility issueRichard Purdie
Remove hardcoding the build configuration into the help/version output from swig to make the binaries reproducible. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-01syslinux: Fix reproducibility issuesRichard Purdie
Add sorting to wildcard expansion in the makefile to make builds reproducible. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-01gstreamer1.0-python: Set internal python library path correctyRichard Purdie
The library hardcodes paths to the python library internally and currently these are build paths. Fix this to use the correct target path and fix reproducibility in the process. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-01apr-util: Fix CFLAGS used in buildRichard Purdie
We need to use CFLAGS with the correct WORKDIR in them, replace those in the sysroot file with the ones appropriate to the current recipe. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-27libid3tag: Fix reproducibility issueRichard Purdie
Configure was swallowing our cflags meaning the resulting binaries were not reproducible. Tweak configure not to do that and fix reproducibility. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-27igt-gpu-tools: Fix reproducibility issueRichard Purdie
Add a configuration option to pass in srcdir, removing hard coded build paths from the binaries. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-27bootchart2: Fix manpage reproducibility issueRichard Purdie
The compressed docs contained a timestamp of the original file which meant the SDE clamping during package creation didn't work. The benefits of compression are minor, decompress the files to avoid the reproducibility issues. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-27oeqa/pam: Need shadow installed for the testsKhem Raj
Distros may not use shadow for login manager secondly login --help returns 1 only with shadow provided login utility, with busybox it returns normal 0, the testcase clearly assumes shadow being part of image, therefore add needed checks to ensure the pre-requisites are met Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26selftest/reproducible: Don't call sync between each file compareRichard Purdie
Calling sync between each file compare is horrible performance wise as we compare thousands of files. We don't care about IO latency here so disable. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26libhandy: Fix reproducibility issueRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26libsecret: Improve determimismRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26parted: Fix reproducibility issueRichard Purdie
We don't use tbe BUILDINFO line of host information in the Makefile so remove it for reproducibility. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26gst-devtools: Fix reproducibility issueRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26epiphany: Fix reproducibility issueRichard Purdie
We don't want to encide BUILD_ROOT into target packages. This is used for build time tests but in our case those would be on target anyway do use the target paths. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26gtk-doc: Fix reproducibility issueRichard Purdie
config_data was including a build system path to pkg-config, fix this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26gcr: Fix reproducibility issueRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26cups: Fix reproducibility issuesRichard Purdie
configure inspects the host's /etc/group for these configuration options, fix this to the correct values by using configure options. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26oe-selftests: add rpm to reproducible build selftestJan-Simon Möller
rpm packaging has shown good numbers wrt reproducible builds as well when testing core-image-minimal locally: Reproducibility summary for rpm: same=4671 different=0 missing=0 total=4671 Thus enable it in the autobuilder to be more widely tested. (From OE-Core rev: 84d3a90557444d8cd83d780b1c3f2b278ab07af2) Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26reproduce: Fix exclusion list for rpmRichard Purdie
rpm uses "XXX-VERSION" compared to deb/ipk which use "XXX_VERSION" which breaks the go package exclusion. Work around with both go_ and go- for now. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26selftest: Replace building dep tool with direnvKhem Raj
dep tool is now deprecated and its replaced with go modules so using this as sample for testing is also getting arcane. Replace it with another project direnv[1] which is quite active and uptodate [1] https://github.com/direnv/direnv Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-24selftest/reproducible: Remove exclusions for recipes which now reproduceRichard Purdie
git, libproxy, libcap-ng(-python), babeltrace2, rsync and groff have their reproducibility issues fixed, remove from the exclusion list. Also fix whitespace. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-23kernel-fitimage: Don't use unit addresses on FITKlaus Heinrich Kiwi
Das U-Boot 2021.4-rc1 has the following commit: commit 3f04db891a353f4b127ed57279279f851c6b4917 Author: Simon Glass <sjg@chromium.org> Date: Mon Feb 15 17:08:12 2021 -0700 image: Check for unit addresses in FITs Using unit addresses in a FIT is a security risk. Add a check for this and disallow it. CVE-2021-27138 Adjust the kernel-fitimage.bbclass accordingly to not use unit addresses. This changte is required before we can bump U-Boot to 2021.4. Signed-off-by: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-21selftest/incompatible_lic: Update the tests after the 'or-later' license ↵Richard Purdie
handling changes With the separate of the "-only" and "-or-later" licenses, we need to update the tests to match the messages now given in the output. Also use a mix of canonicalised and non-canonlised names in the reference recipes to help test those cases and ensure coverage. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-19df.py: Add feature check for read-only-rootfsWes Lindauer
If the target is using a read-only rootfs, the available space on '/' will be zero. This will cause the test to incorrectly fail and skipping seems appropriate in this case. Signed-off-by: Wes Lindauer <wesley.lindauer@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-19oeqa/runlevel : add test for runlevelsTeoh Jay Shen
This test mimic the boot_from_runlevel_3 and boot_from_runlevel_5 test cases from oeqa/manual/bsp-hw.json. The boot_from_runlevel_3 and boot_from_runlevel_5 manual test cases should be remove from oeqa/manual/bsp-hw.json if this patch get merged. Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-17Revert "oe-selftests: add rpm to reproducible build selftest"Richard Purdie
This reverts commit 84d3a90557444d8cd83d780b1c3f2b278ab07af2. This shouldn't have been merged, its not ready yet.
2021-02-17oe-selftests: add rpm to reproducible build selftestJan-Simon Möller
rpm packaging has shown good numbers wrt reproducible builds as well when testing core-image-minimal locally: Reproducibility summary for rpm: same=4671 different=0 missing=0 total=4671 Thus enable it in the autobuilder to be more widely tested. Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-17acpica: Fix reproducibility issuesJoshua Watt
Fixes reproducibility when build acpica yacc sources by instructing bison on how to do the file prefix mapping Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-16selftest/reproducible: Update exclusionsRichard Purdie
Add ruby-ri-docs and meson back as not reproducible, remove watchdog, xorg-minimal-fonts and xmlto as issues fixed. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-16oeqa: reproducible: Add more loggingJoshua Watt
The reproducible build tests can take a long time, so having more logging messages at various points in the build can help debug where the build is taking a long time. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-16oeqa: reproducible: Fix SSTATE_MIRRORS variableJoshua Watt
The SSTATE_MIRRORS variable was misspelled, which allowed the "clean" test build to pull from the mirror. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-13selftest/reproducible: Remove no longer needed exclusionsRichard Purdie
It appears these exclusions are no longer needed with master, drop them and improve our reproducibilty metrics. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-13selftest/reproducible: Sort the unused exclusion listRichard Purdie
This makes comparisions between lists easier. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-13selftest/reproducible: track unusued entries in the exclusion listAlexander Kanavin
This helps with trimming down the list, and towards 100% reproducibility :) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-10Fix up bitbake logging compatibilityRichard Purdie
Bitbake changed the debug() logging call to make it compatible with standard python logging by no longer including a debug level as the first argument. Fix up the few places this was being used. Tweaked version of a patch from Joshua Watt. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-09wic: debug mode to keep tmp directoryLee Chee Yang
files in wic tmp directory can be usefull for debugging, so do not remove tmp directory when wic create run with debugging mode (-D or --debug). also update wic.Wic.test_debug_short and wic.Wic.test_debug_long to check for tmp directory. [YOCTO#14216] Signed-off-by: Lee Chee Yang <Chee.Yang.Lee@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-08selftest/reproducible: remove spirv-tools-dev from exclusion listJose Quaresma
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-05wic/selftest: test_permissions also test bitbake imageLee Chee Yang
existing test case test_permissions use Wic command as standalone tools to create wic image and check that wic image for permissions. add extra steps to the test case to also check against image build using bitbake do_image_wic. Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-03oeqa/usb_hid.py : add test to check the usb/human interface device status ↵Teoh Jay Shen
after suspend state This test mimic the Test_if_usb_hid_device_works_well_after_resume_from_suspend_state manual test case from oeqa/manual/bsp-hw.json. Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-30cve_check: add CVE_VERSION_SUFFIX to indicate suffix in versioningLee Chee Yang
add CVE_VERSION_SUFFIX to indicate the version suffix type, currently works in two value, "alphabetical" if the version string uses single alphabetical character suffix as incremental release, blank to not consider the unidentified suffixes. This can be expand when more suffix pattern identified. refactor cve_check.Version class to use functools and add parameter to handle suffix condition. Also update testcases to cover new changes. Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-28oeqa/ethernet_ip_connman : add test for network connectionsTeoh Jay Shen
This test mimic the ethernet_static_ip_set_in_connman and ethernet_get_IP_in_connman_via_DHCP test case from oeqa/manual/bsp-hw.json. The ethernet_static_ip_set_in_connman and ethernet_get_IP_in_connman_via_DHCP manual test case should be remove from oeqa/manual/bsp-hw.json if this patch get merged. Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-27selftest/devtool: Add modify_localfiles_only test checking symlink pathTomasz Dziendzielski
If recipe uses only file:// fetcher devtool unpacks sources under oe-local-files/ and adds symlink in source root directory. We need to verify if the symlink in subdirectory has correct path. See [YOCTO #13738] for details. Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-23cve-check: replace Looseversion with custom version classLee Chee Yang
The way distutils.version.LooseVersion compare version are tricky, it treat all these ( "1.0-beta2", "1.0-rc1", "1.0A", "1.0p2" and "1.0pre1") as greater version than "1.0". This might be right for "1.0A" and "1.0p1" but not for the rest, also these version could be confusing, the "p" in "1.0p1" can be "pre" or "patched" version or even other meaning. Replace Looseversion with custom class, it uses regex to capture common version format like "1.1.1" or tag format using date like "2020-12-12" as release section, check for following known string/tags ( beta, rc, pre, dev, alpha, preview) as pre-release section, any other trailing characters are difficult to understand/define so ignore them. Compare release section and pre-release section saperately. included selftest for the version class. [YOCTO#14127] Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-23oeqa/selftest/cases/tinfoil.py: increase timeout 10->60s test_wait_eventYi Fan Yu
The test would timeout on autobuilders. This patch increases the timeout to 60s The test will now also exit as soon as we receive the 2 expected events Expected runtime is around 1s if successful Bug 14158 Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20oeqa/selftest: binutils-cross-x86_64 -> libgcc-initialRobert Yang
The binutils-cross-x86_64 is not avaliable for non x86-64 machines. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20runtime_test.py: correct output check for bash 5.1Alexander Kanavin
Bash 5.1 inserts escape sequences into its output (specifically disabling bracketed paste mode via \x1b[?2004l). I am not sure if somehow terminal detection isn't working correctly there, but in any case the marker is still in the output, but needs to be checked by 'in' rather than exact equivalence. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20oeqa/selftest/imagefeatures: adding fitImage initramfs bundle testcaseAbdellatif El Khlifi
This commit provides a testcase for the initramfs bundle support implemented in kernel-fitimage.bbclass The testcase verifies the content of the initramfs bundle node in the FIT Image Tree Source (its). The testcase is self-contained and the configurations are set by the test case itself. To verify the initramfs bundle support, the testcase uses beaglebone-yocto machine. This testcase can be run through the following command: oe-selftest -r fitimage.FitImageTests.test_initramfs_bundle Change-Id: I8ab8abf2c150ea515fd439784eb20c6b092bfbc5 Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20ccache.bbclass: Use ccache-native and disable ccache for native recipesRobert Yang
Since host's ccache is not reliable, so disable ccache for native recipes and use ccache-native for other types of recipes. We need disable ccache for native recipes is because ccache-native now depends on cmake-native which causes circular dependencies, and it's not easy to break the circular. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>