summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2020-02-14ltp: Fix tescases with 64bit time_t using 32bit archesKhem Raj
This helps it compile on musl Fixes | tst_clocks.c:31:17: error: 'SYS_clock_getres' undeclared (first use in this function); did you mean 'tst_clock_getres Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-14oeqa: Use --disable-maintainer-mode configure optionKhem Raj
since the versions of autotools might differ on target and build host, plus difference in timestamps for configure and system can result in reconfigure lets avoid that by disabling maintainer mode Avoids error: newly created file is older than distributed files! [YOCTO #13779] Suggested-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-14qemuarm: Disable highmem when QB_MACHINE is virtKhem Raj
running ptests on qemuarm returns fails since it finds errors in kernel logs like below *********************** Central error: [ 4.338465] pci-host-generic 4010000000.pcie: ECAM ioremap failed *********************** Since its a 32bit kernel 4010000000 address is truncated to 10000000 and ends up in conflicts with VIRT_PCIE_MMIO, which ranges from 0x10000000 to 0x3efeffff This is happening because the linux-yocto kernel is not compiled with LPAE support, however, virt machine for qemuarm assumes that by default Should LPAE be enabled by default in kernel config is a separate question Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13package_ipk: Minor import tweak + ensure packages regeneratedRichard Purdie
The recent opkg-utils change didn't update all the packages since its marked as ABISAFE (and has to be due to update-alternatives). Fix a minor import issue to avoid multiple imports of glob which also causes packages to re-generate. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13pkgconf: Remove pointless DEFAULT_PREFERENCERichard Purdie
There is no other version of pkgconfig to have a preference against, remove the unneeded variable. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13scripts/lib/resulttool/report: Enable report selected test case resultYeoh Ee Peng
Enable reporting selected test case result given the user provided the selected test case id. If both test result id and test case id were provided, report the selected test case result from the selected test result id. Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13meta/recipes-graphics/waffle: Add python3 dependencyAníbal Limón
The python3native.bbclass set PYTHON_{LIBRARY, INCLUDE_DIR} pointing to python target build, a patch was add to use target _sysconfigdata too [1] but is not available without python3 dependency. Fixes waffle build when trying to find _sysconfigdata module, ... | Program python3 found: YES (/home/anibal.limon/linaro/oe-rpb-master/build-410c/tmp-rpb-glibc/work/aarch64-linaro-linux/waffle/1.6.0-r0/recipe-sysroot-native/usr/bin/python3-native/python3) | | meson.build:36:0: ERROR: <ExternalProgram 'python3' -> ['/home/anibal.limon/linaro/oe-rpb-master/build-410c/tmp-rpb-glibc/work/aarch64-linaro-linux/waffle/1.6.0-r0/recipe-sysroot-native/usr/bin/python3-native/python3']> is not a valid python or it is missing setuptools | | A full log can be found at /home/anibal.limon/linaro/oe-rpb-master/build-410c/tmp-rpb-glibc/work/aarch64-linaro-linux/waffle/1.6.0-r0/build/meson-logs/meson-log.txt | WARNING: exit code 1 from a shell command. ... [1] http://git.openembedded.org/openembedded-core/commit/?id=02714c105426b0d687620913c1a7401b386428b6 Signed-off-by: Aníbal Limón <anibal.limon@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13libubootenv: Split binaries to a libubootenv-bin packageOtavio Salvador
The fw_setenv and fw_printenv binaries should be on a specific package as some systems may require just the library. The upgrade path was kept using the RPROVIDES for the -bin package. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13populate_sdk_base: if the SDKIMAGE_FEATURES changes, refresh the SDKMark Hatle
Since the features are processed by a python fragment, we need to explicitly list the variables that should affect the resulting hash, and thus sstate re-use. Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13kernel-fitimage: Handle overlays in EXTERNAL_KERNEL_DEVICETREEAlex Kiernan
When using EXTERNAL_KERNEL_DEVICETREE, collect DTB overlays too (*.dtbo) as well as iterating down into sub-directories so using the behaviour for naming which matches KERNEL_DEVICETREE. Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13xserver-nodm-init: Fix the start failure for non-root userKevin Hao
In order to start the xserver, a non-root user should have the cap_sys_admin capability to set the drm master. We try to get the cap_sys_admin capability by setting it in both the thread and file inheritable set. The side effect of this is that we would have to add the "pam" to the distro features if we want use the xserver-nodm-init for a non-root user. [Yocto #11526] Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13testimage: Extend runtime testing infrastructure to allow unconventional ↵Alejandro Hernandez Samaniego
booting processes to be tested The current runtime infrastructure contains hardcoded values which Ill refer to as patterns, these patterns are either searched through or sent via the serial terminal to communicate between HOST and TARGET. These patterns are required since they allow us to check when a device has finished booting, to log in, and to check whether a command sent from our tests has returned, this way we are able to check both the status of the commands that were sent along with its output. The testing process goes somewhat as follows: 1. Launch QEMU and start booting. 2. Check when the device has booted by looking for the pattern login:. 3. Log in as the root user (default for our images). 4. Check that we were able to log in succesfully. 5. Start running the runtime test cases defined by TEST_SUITES. 6. One of such test cases could send a command to the QEMU target. 7. Check whether that command returned. 8. Check its output and status, return whether the test case passed or failed. This patch allows this set of patterns to be defined instead of being hardcoded, but it also automatically sets the defaults that we have been using in the past if they have not been manually defined, for this reason, the patch is less invasive and should not affect in any way how tests are currently being run. Cases that can be enabled with this patch: - A customized image that does not use the root user (or maybe we want to check what happens if we dont use the root user). - An image where the PS1 env variable has been modified, and the prompt pattern wouldnt match the default. - Baremetal applications, which do not follow the conventional way of booting Linux and would probably not show a prompt for a user to log in, same applies for testing bootloaders. - poky-tiny: Using DISTRO=poky-tiny and an image such as the core-image-tiny from meta-intel, which boots directly to RAM, and does not show a log in prompt since it does not contain a conventional init process. The code itself contains comments that should be self explanatory but here is an example on how these patterns can be defined in a hypothetical case where we want to run test cases as the webserver user instead: TESTIMAGE_BOOT_PATTERNS = "send_login_user search_login_succeeded" TESTIMAGE_BOOT_PATTERNS[send_login_user] = "webserver\n" TESTIMAGE_BOOT_PATTERNS[search_login_succeeded] = "webserver@[a-zA-Z0-9\-]+:~#" The variable TESTIMAGE_BOOT_PATTERNS defines which patterns to override when used to communicate with the target when booting, anyone familiar with the PACKAGECONFIG syntax should have no trouble setting these. Other patterns would still be set up as default, e.g. search_reached_prompt would still be login: The accepted flags for TESTIMAGE_BOOT_PATTERNS are the following: search_reached_prompt, send_login_user, search_login_succeeded, search_cmd_finished. They are prefixed with either search/send, to differentiate if the pattern is meant to be sent or searched to/from the target terminal. A working example of this code that falls under the baremetal case mentioned above along with a test case is present on the meta-freertos layer, which tests an RTOS image built with OpenEmbedded and automatically runs a test case on it after booting such image: As usual, INHERIT += "testimage" needs to be present on local.conf $ bitbake freertos-demo -c testimage RESULTS: RESULTS - freertos_echo.FreeRTOSTest.test_freertos_echo: PASSED (2.00s) SUMMARY: freertos-demo () - Ran 1 test in 2.006s freertos-demo - OK - All required tests passed (successes=1, skipped=0, failures=0, errors=0) Signed-off-by: Alejandro Hernandez Samaniego <aehs29@gmail.com> Signed-off-by: Alejandro Hernandez Samaniego <alejandro@enedino.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13testimage: Allow testing on QEMU machines with a single serial portAlejandro Hernandez Samaniego
commmit 6cde67d0a84 enables the use of qemurunner on machines that only have a single serial port, but still sets the default value as serial_ports=2 if not provided. The testimage class does not call qemurunner with a serial_ports argument, hence always defaulting to two. Pass the serial_ports argument from the testimage class to allow tests to run on QEMU machines with a single serial port. Signed-off-by: Alejandro Hernandez Samaniego <alejandro@enedino.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-13pciutils: upgrade 3.6.2 -> 3.6.4Wang Mingyu
refresh the following patch: configure.patch Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08systemd: upgrade 243.4 -> 244.1Alex Kiernan
Drop 0002-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch a variant on which was introduced in 2c1047310970 ("Upgrade to systemd 211+") in 2014. The oldest supported build machine is now CentOS 7 which has --relative support in ln, so there no longer appears to be any need for this change. Rebase/refresh musl patches: - replace missing.h with specific missing_... header - fix additional WRITE_STRING_FILE_DISABLE_BUFFER - fix more places that need netinet/if_ether.h Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08dhcp: upgrade 4.4.1 -> 4.4.2Wang Mingyu
0001-Fix-a-NSUPDATE-compiling-issue.patch 0001-master-Added-includes-of-new-BIND9-compatibility-hea.patch Removed since they are included in 4.4.2. refresh the following patch: 0004-Fix-out-of-tree-builds.patch Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08lighttpd: upgrade 1.4.54 -> 1.4.55Wang Mingyu
Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08procps: upgrade 3.3.15 -> 3.3.16Yi Zhao
Drop 0001-Fix-out-of-tree-builds.patch since it has been merged upstream. Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08python3: Do not hardcode "lib" for distutilsChangqing Li
Get the sys.lib from python3 itself and do not use hardcoded value of 'lib' for distutils. Solve the error below that occurs when run "python3 setup.py install" on lib64 multilib platform: [Errno 2] No such file or directory: '/usr/lib/python3.7/site-packages/test-easy-install-1828.write-test' Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08python3: fix the installation path of libpython3.7m.a for multilibChangqing Li
Fix the installation path of libpython3.7m.a on mulitlib lib64 platform to lib64 instead of lib Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08mesa: upgrade 19.3.1 -> 19.3.3Wang Mingyu
Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08xserver-xorg: upgrade 1.20.6 -> 1.20.7Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08bison: Upgrade to 3.5.1Khem Raj
Minor upgrade on 3.5 release series Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08cryptodev: update to Jan.23, 2020Scott Branden via Openembedded-core
* Remove backported patches: 0001-Fix-module-loading-with-Linux-v5.0-rc5.patch Update to latest cryptodev dated Jan.23, 2020. Fixes build on kernel v5.5+ Signed-off-by: Scott Branden <scott.branden@broadcom.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08sstate.bbclass: fix issue while handling long sstate filenamesJaewon Lee
When moving to python3, divison using '/' now returns float instead of an integer. In upstream commit b8025e972081b70960ffcbcbe43a7118041556a1 sstate filenames longer than the limit are changed to just include necessary info + 3 fields just for information. The space left over after the necessary info is divided into 3 for each of the fields. Using '//' instead to do the division to solve the following error message: avail = (254 - len(hash + "_" + taskname + extension) - len(components[0]) - len(components[1]) - len(components[5]) - len(components[6]) - 7) / 3 > components[2] = components[2][:avail] components[3] = components[3][:avail] TypeError: slice indices must be integers or None or have an __index__ method Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com> Signed-off-by: Mark Hatle <mark.hatle@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08package.bbclass: Support stripping and debug copy of static librariesMark Hatle
By default, we won't copy and strip static libraries. However, this functionality can be useful in some cases where people are doing development on the target, and don't generally want the larger debug capable static libraries. To enable the new functionality set: PACKAGE_DEBUG_STATIC_SPLIT = '1' Add a new function splitstaticdebuginfo. Thus function will copy the unmodified static library into the specific debug directory location. By keeping an unmodified version, it is possible for a user trying to debug something to use -L /usr/lib/.debug-static and their existing build commands to switch from stripped to full debug versions. The PACKAGE_DEBUG_SPLIT_STYLE will select between two different approaches, /usr/lib/debug-static or <path>/.debug-static. Additionally you can now choose to strip static libraries to conserve space. If either 'PACKAGE_DEBUG_STATIC_SPLIT' or 'PACKAGE_STRIP_STATIC' is set to 1, the static library will be stripped. (This is not on by default, as it could make diagnosing static library usage difficult in some cases.) Add to insane.bbclass a skip to the staticdev warning for the specific -dbg package versions. Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08package.bbclass: Allow INHIBIT_PACKAGE_STRIP_FILES to skip .ko and static libsMark Hatle
Change the order of the skip processing to happen before any .ko and static library processing. This will allow these types of files to be individually skipped if necessary. Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08package.bbclass: Fix debug source processing for static librariesMark Hatle
Format of the sources list is the [ (file, [source, ...]), ... ] before this change, the static libraries were processed but the items were included incorrectly causing no sources for static libraries to be included. Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08chkconfig: remove the recipeAlexander Kanavin
chkconfig is one of the options for virtual/update-alternatives, however opkg-utils have been used as the default for a very long time, while chkconfig isn't anymore tested in any way, and is stuck at a very old version due to newer versions requiring selinux. [YOCTO #11264] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08qemurunner.py: add try/except for pid handling raceTrevor Gamblin
In some instances, attempts to remove the qemu pidfile within the stop() method fail despite the os.path.exists() call immediately before implying that the file is present. Add a try/except block to log a warning if this occurs, rather than failing outright, since the process simply appears to be exiting at an inconvenient time. [YOCTO #13675] Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08oeqa: Use cpio 2.13 as testcaseKhem Raj
cpio 2.12 was released in 2015 and might have used older autotools which could result in errors like https://bugzilla.yoctoproject.org/show_bug.cgi?id=13779 Bumping to 2.13 will help in matching the tool versions A good change on top would be to run aclocal -I .; autoheader; autoconf; automake --add-missing -c before running configure step perhaps [YOCTO #13779] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kern-tools: fix merge_config when LD contains parametersBruce Ashfield
To ensure that the kernel linker is used when allno/mod/yes config merge_config steps were executed, the call to make was tweaked to explicitly pass LD. But since the variable wasn't quoted, any parameters to LD (like the sysroot) were mistakenly passed to make, and hence could trigger an error on some architectures. We also tweak the logging to hightlight errors like this in the future and avoid losing it in the noise of merge configs sometimes overly verbose output. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kernel-yocto: fix defconfig detection in find_sccs()Gavin Li
The current code would cause a file like "config.bin" to added to the config sources list. I am sure the intention was to add any files with defconfig in its name and not the other way around. Signed-off-by: Gavin Li <gavinli@thegavinli.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kernel-yocto.bbclass: do_kernel_configme: don't use +errexit, ↵Martin Jansa
merge_config_build.log and fail when /.config wasn't created * for whatever reason, instead of silently continuing to build default kernel config Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kernel-yocto.bbclass: set KERNEL_LD also for merge_config.shMartin Jansa
* when ld-is-gold is used, merge_config.sh silently fails and doesn't generate anything useful in .config (and also include directory isn't created): tmp-glibc-bfd-qemux86-do_kernel_configme/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build: total 164K drwxr-xr-x 4 martin martin 4.0K Feb 5 02:27 . drwxrwxr-x 7 martin martin 4.0K Feb 5 02:27 .. -rw-rw-r-- 1 martin martin 133K Feb 5 02:28 .config -rw-rw-r-- 1 martin martin 39 Feb 5 02:27 .gitignore drwxr-xr-x 4 martin martin 4.0K Feb 5 02:27 include -rw-rw-r-- 1 martin martin 201 Feb 5 02:27 Makefile drwxrwxr-x 4 martin martin 4.0K Feb 5 02:27 scripts lrwxrwxrwx 1 martin martin 61 Feb 5 02:27 source -> /OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source tmp-glibc-gold-qemux86-do_kernel_configme/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build: total 28K drwxr-xr-x 3 martin martin 4.0K Feb 5 02:26 . drwxrwxr-x 7 martin martin 4.0K Feb 5 02:26 .. -rw-rw-r-- 1 martin martin 74 Feb 5 02:26 .config -rw-rw-r-- 1 martin martin 39 Feb 5 02:26 .gitignore -rw-rw-r-- 1 martin martin 201 Feb 5 02:26 Makefile drwxrwxr-x 4 martin martin 4.0K Feb 5 02:26 scripts lrwxrwxrwx 1 martin martin 61 Feb 5 02:26 source -> /OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source $ cat tmp-glibc-gold-qemux86-do_kernel_configme/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/.config CONFIG_LOCALVERSION="-yocto-standard" * and because the failure is silent, it will happily start building kernel with default defconfig, which even builds OK for qemux86-64 but on qemux86 I've noticed this issue, because incorrectly configured kernel build fails with: $ tail -n 20 tmp-glibc-gold-qemux86/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/temp/log.do_compile LD /OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/tools/objtool/libsubcmd-in.o AR /OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/tools/objtool/libsubcmd.a HOSTCC scripts/mod/mk_elfconfig CC scripts/mod/devicetable-offsets.s CC scripts/mod/empty.o cc1: error: code model 'kernel' not supported in the 32 bit mode cc1: sorry, unimplemented: 64-bit mode not compiled in make[2]: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/scripts/Makefile.build:99: scripts/mod/devicetable-offsets.s] Error 1 make[2]: *** Waiting for unfinished jobs.... cc1: error: code model 'kernel' not supported in the 32 bit mode cc1: sorry, unimplemented: 64-bit mode not compiled in make[2]: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/scripts/Makefile.build:266: scripts/mod/empty.o] Error 1 make[1]: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/Makefile:1111: prepare0] Error 2 make[1]: *** Waiting for unfinished jobs.... LD /OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/tools/objtool/objtool-in.o /OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/tools/objtool LINK /OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/tools/objtool/objtool make: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/Makefile:179: sub-make] Error 2 WARNING: exit code 1 from a shell command. * the issue happens in log.do_kernel_configme, but the log is completely useless: cat tmp-glibc-gold-qemux86-do_kernel_configme/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/temp/log.do_kernel_configme DEBUG: Executing python function extend_recipe_sysroot NOTE: Direct dependencies are ['virtual:native:/OE/build/oe-core/openembedded-core/meta/recipes-devtools/bison/bison_3.5.bb:do_populate_sysroot', '/OE/build/oe-core/openembedded-core/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb:do_populate_sysroot', 'virtual:native:/OE/build/oe-core/openembedded-core/meta/recipes-extended/bc/bc_1.07.1.bb:do_populate_sysroot', '/OE/build/oe-core/openembedded-core/meta/recipes-devtools/binutils/binutils-cross_2.33.bb:do_populate_sysroot', '/OE/build/oe-core/openembedded-core/meta/recipes-devtools/quilt/quilt-native_0.66.bb:do_populate_sysroot', '/OE/build/oe-core/openembedded-core/meta/recipes-devtools/gcc/gcc-cross_9.2.bb:do_populate_sysroot'] NOTE: Installed into sysroot: ['bison-native', 'bc-native', 'binutils-cross-i686', 'gcc-cross-i686', 'autoconf-native', 'xz-native', 'flex-native', 'gnu-config-native', 'automake-native', 'libtool-native', 'texinfo-dummy-native', 'gettext-minimal-native', 'readline-native', 'zlib-native', 'gmp-native', 'libmpc-native', 'mpfr-native', 'linux-libc-headers', 'm4-native', 'ncurses-native', 'pkgconfig-native'] NOTE: Skipping as already exists in sysroot: ['kern-tools-native', 'quilt-native'] DEBUG: sed -e 's:^[^/]*/:/OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native/:g' /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/bison-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/gcc-cross-i686/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/autoconf-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/gnu-config-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/automake-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/libtool-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/gmp-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/ncurses-native/fixmepath /OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/pkgconfig-native/fixmepath | xargs sed -i -e 's:FIXMESTAGINGDIRTARGET:/OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot:g; s:FIXMESTAGINGDIRHOST:/OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/recipe-sysroot-native:g' -e 's:FIXME_PSEUDO_SYSROOT:/OE/build/oe-core/tmp-glibc/sysroots-components/x86_64/pseudo-native:g' -e 's:FIXME_HOSTTOOLS_DIR:/OE/build/oe-core/tmp-glibc/hosttools:g' -e 's:FIXME_PKGDATA_DIR:/OE/build/oe-core/tmp-glibc/pkgdata/qemux86:g' -e 's:FIXME_PSEUDO_LOCALSTATEDIR:/OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/pseudo/:g' -e 's:FIXME_LOGFIFO:/OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/temp/fifo.10476:g' DEBUG: Python function extend_recipe_sysroot finished DEBUG: Executing shell function do_kernel_configme DEBUG: Shell function do_kernel_configme finished ]because merge_config.sh is redirected to work-shared/qemux86/kernel-source/.kernel-meta/cfg/merge_config_build.log and bbfatal_log called in do_kernel_configme only when merge_config.sh fails which it should in this case but doesn't. The merge_config_build.log shows 5.4 specific error: scripts/Kconfig.include:39: gold linker 'i686-oe-linux-ld' not supported but then it happily continues reporting what isn't applied in not created .config file --- tmp-glibc-bfd-qemux86-do_kernel_configme/work-shared/qemux86/kernel-source/.kernel-meta/cfg/merge_config_build.log 2020-02-05 02:28:01.455520207 +0100 +++ tmp-glibc-gold-qemux86-do_kernel_configme/work-shared/qemux86/kernel-source/.kernel-meta/cfg/merge_config_build.log 2020-02-05 02:26:30.656470909 +0100 @@ -171,586 +171,5113 @@ HOSTCC scripts/kconfig/symbol.o HOSTLD scripts/kconfig/conf scripts/kconfig/conf --alldefconfig Kconfig -./.tmp.config.jDjIEYi9Yq:2208:warning: unexpected data: # -./.tmp.config.jDjIEYi9Yq:2209:warning: unexpected data: # Generic Driver Options -./.tmp.config.jDjIEYi9Yq:2210:warning: unexpected data: # -./.tmp.config.jDjIEYi9Yq:3102:warning: symbol value 'm' invalid for SAMPLE_SECCOMP -./.tmp.config.jDjIEYi9Yq:3119:warning: symbol value 'm' invalid for NF_CT_PROTO_GRE -./.tmp.config.jDjIEYi9Yq:3120:warning: symbol value 'm' invalid for NF_CT_PROTO_SCTP -./.tmp.config.jDjIEYi9Yq:3121:warning: symbol value 'm' invalid for NF_CT_PROTO_UDPLITE -# -# configuration written to .config -# +scripts/Kconfig.include:39: gold linker 'i686-oe-linux-ld' not supported +make[2]: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/scripts/kconfig/Makefile:73: alldefconfig] Error 1 +make[1]: *** [/OE/build/oe-core/tmp-glibc/work-shared/qemux86/kernel-source/Makefile:567: alldefconfig] Error 2 make[1]: Leaving directory '/OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build' +make: *** [Makefile:179: sub-make] Error 2 +grep: /OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/.config: No such file or directory +Value requested for CONFIG_LOCALVERSION not in final .config +Requested value: CONFIG_LOCALVERSION="" +Actual value: + +grep: /OE/build/oe-core/tmp-glibc/work/qemux86-oe-linux/linux-yocto/5.4.15-r0/linux-qemux86-standard-build/.config: No such file or directory +Value requested for CONFIG_LOCALVERSION_AUTO not in final .config +Requested value: # CONFIG_LOCALVERSION_AUTO is not set +Actual value: * I don't know why merge_config.sh uses separate more difficult to find merge_config_build.log instead of leaving the output to end in log.do_kernel_configme, I'll send it as separate commit so that it can be discussed there. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kernel-yocto: Only override CONFIG_LOCALVERSION if LINUX_VERSION_EXTENSION ↵Paul Barker
is set CONFIG_LOCALVERSION may already be set in a defconfig or config fragment and this should not be unconditionally overridden. Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kernel-yocto: Drop setting of unused variables in do_kernel_metadataPaul Barker
The machine_branch and machine_srcrev variables were set but not used in do_kernel_metadata. Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kernel-yocto: Move defaults and tasks from linux-yocto.inc into bbclassPaul Barker
This allows the kernel-yocto bbclass to be inherited in a recipe without needing to include linux-yocto.inc. The bbclass should stand on its own and linux-yocto.inc does a few things which may not be desired in other kernel recipes (such as modifying KERNEL_FEATURES). The LINUX_VERSION_EXTENSION default is not moved as other kernel recipes may not want this setting in place. Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kern-tools-native: use more common S value and oe_runmakeMartin Jansa
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kern-tools: integrate merge_config fix for gold linkerBruce Ashfield
Bumping the SRCREV to pickup the following fix: Author: Martin Jansa <Martin.Jansa@gmail.com> Date: Wed Feb 5 03:26:57 2020 +0100 merge_config.sh: pass LD variable from shell environment to make * since 5.4 kernel Kconfig will fail immediately when it detects that LD points to gold linker: scripts/Kconfig.include:39: gold linker 'i686-oe-linux-ld' not supported * in OE we already pass bfd linker in KERNEL_LD variable to merge_config.sh but we need to pass it also into the make call here Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08kern-tools: tweak symbol_why to be python safeBruce Ashfield
Updating the SRCREV to pickup tweaks to symbol_why.py to be python3 safe: - we explicitly call /usr/bin/env python3 - we full specifiy our symbols - do not assume that 'None' can be converted to a string Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08ncurses: Fix reproducibility issueRichard Purdie
The build was deciding whether to rename manpages based upon the presence of /etc/debian_version. Be explicit about the configuration instead and ensure determinism. [YOCTO #13781] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08libevdev: Fix determinism issueRichard Purdie
We need to sort python dict output to be deterministic and generate consistent header files. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08sysvinit: Fix Reproducibility issueRichard Purdie
With a sequence like: bitbake sysvinit bitbake sysvinit -c clean bitbake sysvinit -c package_write_ipk -f then the resulting package has two files with group "root/70" rather than "root/shutdown". The issue is that of do_package is a setscene task, base-passwd isn't present. This patch fixes that dependency but there may be other cases of this problem around. [YOCTO #13776] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08sudo: specify where target tools areRoss Burton
sudo uses AC_PATH_PROG to find target paths, which means at best potential host-contamination (and reproducible issues) and at worst it thinks sh is at /your/build/path/hosttools/sh. Solve this by explicitly passing the correct paths to configure. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08libgcrypt: Fix determinism issueRichard Purdie
The build was injection git information from the wrong git tree, stop this to allow reproducible builds. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08libinput: Fix determinism issueRichard Purdie
The build was injection git information from the wrong git tree, stop this to allow reproducible builds. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08iputils: Fix build determinismRichard Purdie
The suid/setcap code depends on whether setcap is on the host system or not with suid as a fallback. Disable this functionality to be deterministic. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08openssl: Fix reproducibility issueRichard Purdie
There was a build architecture leaking into the target ptest which could vary depending upon host. Remove it as its cosmetic. [YOCTO #13770] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08perl: Fix various reproducibile build issuesRichard Purdie
Add a patch which handles the following issues: a) Remove the \n from configure_attr.sh since it gets quoted differently depending on whether the shell is bash or dash which can cause the test result to be incorrect. Reported upstream: https://github.com/arsv/perl-cross/issues/87 b) Sort the order of the module lists from configure_mods.sh since otherwise the result isn't the same leading to makefile differences. Reported upstream: https://github.com/arsv/perl-cross/issues/88 c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst there for good measure) This needs to go to upstream perl (not done) d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash and "" with dash Reported upstream: https://github.com/arsv/perl-cross/issues/87 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>