aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
Commit message (Collapse)AuthorAgeFilesLines
* busybox.inc: handle empty DEBUG_PREFIX_MAPMikko Rapeli2019-09-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | DEBUG_PREFIX_MAP can be empty if e.g. old clang toolchain doesn't support the default poky values for gcc. Fixes build failure: ERROR: Logfile of failure stored in: /home/builder/src/base/build/tmp/work/aarch64-poky-linux/busybox/1.31.0-r 0/temp/log.do_configure.14451 Log data follows: | DEBUG: Executing shell function do_configure | sed: -e expression #1, char 0: no previous regular expression | WARNING: exit code 1 from a shell command. | ERROR: Execution of '/home/builder/src/base/build/tmp/work/aarch64-poky-linux/busybox/1.31.0-r0/temp/run.do_configure.14451' failed with exit code 1: | sed: -e expression #1, char 0: no previous regular expression | WARNING: exit code 1 from a shell command. | This log entry is really useless for debugging problems so add "set -x" to the configure script so that details can be seen if something isn't working. (From OE-Core rev: 20f1a454317ddff8a2e321c1fe55d086ff6fa286) Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: upgrade to 243Scott Murray2019-09-1621-361/+507
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PATCH REBASED: ============== 0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch 0001-do-not-disable-buffer-in-writing-files.patch 0002-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch 0004-add-fallback-parse_printf_format-implementation.patch 0004-rules-whitelist-hd-devices.patch 0005-rules-watch-metadata-changes-in-ide-devices.patch 0005-src-basic-missing.h-check-for-missing-strndupa.patch 0006-Include-netinet-if_ether.h.patch 0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch 0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch PATCH DROPPED: ============== 0001-Replace-the-legacy-ULONG_LONG_MAX-with-the-C99-ULLON.patch 0001-src-udev-udev-event.c-must-include-sys-wait.h.patch 0023-socket-util.h-include-string.h.patch 0025-fs-utilh-add-missing-sys-stat-include.patch PATCH ADDED: ============ 0002-src-login-brightness.c-include-sys-wait.h.patch 0003-src-basic-copy.c-include-signal.h.patch 0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch Also applied libc-glibc over-ride to pkg_postinst and pkg_prerm function definitions, as musl does not provide nsswitch.conf. (From OE-Core rev: cd735ab1df78f7d21b6bb18bdf4707aec68a0295) Signed-off-by: Scott Murray <scott.murray@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Move DISTRO_FEATURE specific do_install code for target recipe onlyKhem Raj2019-09-161-19/+20
| | | | | | | | | | | | | | | | | | | | | nativesdk-glibc should be spared of recompile when the distro features are changed e.g. ldconfig is not in DISTRO_FEATURES, this happens when sdk with musl and another one with glibc is built Fixes Variable do_install value changed: ... -DISTRO_FEATURES{ldconfig} = Set +DISTRO_FEATURES{ldconfig} = Unset (From OE-Core rev: e7af0204e6051489ef5646fbca2509a42e04bb72) Signed-off-by: Khem Raj <raj.khem@gmail.com> s Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* expat: update to 2.2.8Oleksandr Kravchuk2019-09-161-2/+2
| | | | | | | (From OE-Core rev: a5cc0a051b5a7871ab646c055883167315a32417) Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* musl: Update to latest masterKhem Raj2019-09-161-1/+1
| | | | | | | | | | | | | | | | | * Added copy_file_range posix_spawn_file_actions_add[f]chdir API * optreset is added to getopt * pthread fixes * Conditionally add legacy long definition of wchar_t Details [1] [1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=6ad514e4e278f0c3b18eb2db1d45638c9af1c07f..1f0e9f9cc2e3fa354f94e18b3b362de5f1ec7272 (From OE-Core rev: 030b44af19268ae4a72bb25aa77526f7e39bd4a3) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* busybox-inittab: minor formatting tweaksAndre McCurdy2019-09-161-9/+10
| | | | | | | | | | | | Add an empty line to inittab before the line(s) which start getty. Also cleanup indent in recipe do_install(). (From OE-Core rev: d1955596080f8261efe3b21c5df005648ce207c9) 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>
* busybox: drop inittab from SRC_URI ( now moved to busybox-inittab )Andre McCurdy2019-09-161-1/+0
| | | | | | | | | | | | | The reference to inittab should have been removed from busybox SRC_URI when the file was moved into the busybox-inittab recipe: http://git.openembedded.org/openembedded-core/commit/?id=afb09abd2f0f7555ba156260a87fd3867f591310 (From OE-Core rev: 1840523749ae7cbc39d89363662641fdda15d7d4) 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>
* busybox: drop unused mount.busybox and umount.busybox wrappersAndre McCurdy2019-09-163-8/+0
| | | | | | | | (From OE-Core rev: 7e999dce323a97a3924cb10158d5151ea43e777a) 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>
* glibc-testsuite: SkipRecipe if libc is not glibcNathan Rossi2019-09-161-0/+7
| | | | | | | | | | | To prevent issues with parsing or dependencies, limit this recipe to use only when the libc is glibc (and libc-locale is glibc-locale). (From OE-Core rev: 88849a0652f1a9cffd5c1b5caae2878b3a438273) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glib-networking:enable glib-networking build as native packageJiang Lu2019-09-161-0/+2
| | | | | | | | | | | | Enable glib-networking build as a native package, for it is depended by libsoup. (From OE-Core rev: bfcc9680fbc8a79f114fd66b8a6f9befb4676817) Signed-off-by: Jiang Lu <lu.jiang@windriver.com> Signed-off-by: Liwei Song <liwei.song@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: provides ${base_sbindir}/udevadmKai Kang2019-09-161-0/+4
| | | | | | | | | | | | | | | | | In some udev rules files such as 97-hid2hci.rules from bluez5, it calls /sbin/udevadm in a rule. eudev provides /usr/bin/udevadm and /sbin/udevadm which is a link to /usr/bin/udevadm. But systemd only provides /bin/udevadm. It is not convenient to update the rule file that udevadm reside in different directories for eudev and system. So create link file ${base_sbindir}/udevadm in systemd just the same as eudev to fix such kind of issues. (From OE-Core rev: c8bf23349af4972a76cb4b13179dac844812d75f) Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxcrypt: update to 4.4.8Oleksandr Kravchuk2019-09-072-4/+2
| | | | | | | | | | LICENSE file checksum changed because few contributors were mentioned (see @edbdbbc50beced9c723e7405334583c60a702796). (From OE-Core rev: 06eb03ad1c0357731496531b290a0a2fdfd10f48) Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dropbear: don't create invalid symlinks if ssh, scp, etc are disabledAndre McCurdy2019-09-071-2/+9
| | | | | | | (From OE-Core rev: 703e3faaec8c5a22fe3bc9a2a040c960862136c7) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: ensure reproducible builds by clearly exposing the time epoch supportRoss Burton2019-09-061-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | systemd has the ability to check the time on boot and if it's earlier than an epoch determined at build time, set the time to that epoch. This is useful for systems where the system time is January 1st 1970 (because the unix timestamp was 0 at boot) as then at least the time is reset to something approximating the right year at least. By default systemd uses the mtime of the NEWS file, which is static for tarballs and corresponds to the time the release was made, but for git checkouts this is simply the time do_unpack() was executed. Thus, rebuilding systemd will cause this embedded timestamp to change. Remove the PACKAGECONFIG time-epoch which has the logic reversed: enabling time-epoch will set the epoch to the unix timestamp 0). Replace with set-time-epoch with the following semantics: - When disabled, the time epoch is set to 0 (1st January 1970), so there is no time manipulation on boot. - When enabled, if reproducible builds are configured by setting SOURCE_DATE_EPOCH then that timestamp is used for the time epoch. If reproducible builds are not configured then the timestamp of NEWS (thus the build time) is used. The set-time-epoch flag is enabled by default. [ YOCTO #13473 ] (From OE-Core rev: 29afbd4f02354de7103ee3a88f4ce5336b95b88a) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* musl: Update to latest masterKhem Raj2019-09-061-1/+1
| | | | | | | | | | | | | | sys/user.h related API fixed on ppc/ppc64 Detailed log [1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=29e8737f81ccc9fbadcf61a75318aa3d0516aafa..6ad514e4e278f0c3b18eb2db1d45638c9af1c07f (From OE-Core rev: 961312512fa80622143c35c4edaa19287be01bbb) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* binutils/glibc-testsuite: inherit nopackages to fix world buildsRichard Purdie2019-09-061-0/+2
| | | | | | | | | | | | These recipes don't need to generate packages but did contain the packaging tasks which would be triggered by a world build. They showed warnings or errors. Simplest fix is to remove the unneeded tasks with the nopackages class. Also don't attempt stash_locales task (From OE-Core rev: a34420e1bdb9a695fe7abd3b26426d7ae6113349) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc-testsuite: Create a recipe to implement glibc test suiteNathan Rossi2019-09-062-0/+122
| | | | | | | | | | | | | | | | | | | A recipe needs to be created for the test suite due to the dependency chain between libgcc -> glibc -> libgcc-initial, and the requirements of the test suite to have libgcc for compilation and execution. The glibc test suite does not use dejagnu like the gcc test suites do. Instead a test wrapper script is used along with the assumed dependency of having the same filesystem available on build host and target. For qemu linux-user the same filesystem is inherently available, for remote targets NFS is used. Separate test wrapper scripts are created for qemu linux-user or ssh targets, with the same TOOLCHAIN_TEST_* variables used for configuration. (From OE-Core rev: 6c4d581c35ebd51c4b080ac38175d93f0480f97d) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Update to the latest 242 branchAdrian Bunk2019-09-063-43/+1
| | | | | | | | | Remove patch for issue fixed upstream. (From OE-Core rev: 8f06385bb4a8244ca51daeef0018bfbdd0a93161) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Clean up remnants of glibc-initialNathan Rossi2019-09-061-8/+1
| | | | | | | | | Remove remnants of the glibc-initial recipe. (From OE-Core rev: 332b1e21db3e0cbeeb14f12dd6aeedb89b76d761) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: explicitly set the path to nologinRoss Burton2019-09-061-0/+1
| | | | | | | | | | | Set the path to nologin as with sulogin etc so we don't try to execute binaries from the build path on the target (as the build finds a nologin in the sysroot at build time). (From OE-Core rev: 15d57de00a5c2763cc9ddb71d3e6b52a57f3fcd1) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxcrypt: Fix the build with -OsAdrian Bunk2019-09-011-2/+2
| | | | | | | | | | | | | | | | | In file included from ../git/lib/alg-des.c:66: | ../git/lib/alg-des.c: In function '_crypt_des_set_key': | ../git/lib/byteorder.h:24:1: error: inlining failed in call to 'be32_to_cpu': call is unlikely and code size would grow [-Werror=inline] | be32_to_cpu (const unsigned char *buf) | ^~~~~~~~~~~ | ../git/lib/alg-des.c:81:13: note: called from here | rawkey1 = be32_to_cpu (&key[4]); | ^~~~~~~~~~~~~~~~~~~~~ (From OE-Core rev: 5d4720dfc8ec29ff3f487f84c5c874678ba20851) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* serial-getty@.service: Allow device to fast fail if it does not existJason Wessel2019-09-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some BSPs use a USB serial port which may or may not actually be plugged all the time. It is quite useful to have a USB serial port have a getty running but it does not make sense to wait for it for 90 seconds before completing the system startup if it might never get plugged in. The typical example is that a USB serial device might only need to be plugged in when debugging, upgrading, or initially configuring a device. This change is somewhat subtle. Systemd uses the "BindsTo" directive to ensure existence of the device in order to start the service as well as to terminate the service if the device goes away. The "After" directive makes that same relationship stronger. When used together this has the undesired side effect that systemd will wait until its internal time out value of 90 seconds for the device to come on line before executing a fail operation or letting other tasks and groups continue. This is certainly the kind of behavior we want for a disk, but not for serial ports in general. The "BindsTo" directive is replaced by the combination of the "PartOf" and the "ConditionPathExists" directives. The "After" directive is unchanged because that will wait for the udev rules to process. The "PartOf" directive will issue a stop to the getty service if the device goes away, similar to the "BindsTo" directive. The "ConditionPathExists" is what allows the service to fail fast vs waiting for the timeout. When a USB device is not plugged in at boot you would find a message in the system journal like: systemd[1]: Condition check resulted in Serial Getty on \ ttyUSB0 being skipped. If you want to observe the problem with qemu, it is easy to replicate. Simply add the following line to your local.conf for a x86-64 qemu build. SERIAL_CONSOLES="115200;ttyS0 115200;ttyUSB0" Login right after the system boots and observe: root@qemux86-64:~# systemctl list-jobs |cat JOB UNIT TYPE STATE 1 multi-user.target start waiting 69 serial-getty@ttyUSB0.service start waiting 64 getty.target start waiting 71 dev-ttyUSB0.device start running 62 systemd-update-utmp-runlevel.service start waiting 5 jobs listed. You can see above that the dev-ttyUSB0.device will block for 1min 30 seconds. While that might not be a problem for this reference build. It is certainly a problem for images that have software watchdogs that verify the system booted up all the way to systemd completion in less than 90 seconds. This other nice effect of this change is that the fast fail device extend to additional serial ports that may not exist on ARM BSPs or that might be configured in or out by the dtb files on different boards. (From OE-Core rev: f0f359ec9210759f6b4dbfb35d3fba8af208c43a) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ell: update to 0.22Oleksandr Kravchuk2019-09-011-2/+2
| | | | | | | | | | | | Changelog: - Fix issue with DHCP and T1 timeout handling. - Fix issue with escape characters in peer identity string. - Add support for setting peer certificate's subject CN mask. (From OE-Core rev: cbf84908716c867b8bf530460a4eb0dff81da9f4) Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Remove LSB supportAdrian Bunk2019-08-291-1/+1
| | | | | | | | | | | | | | | | LSB as a standard isn't current and isn't well suited to embedded anyway. Its putting artifical constraints on the system and with modern layer technology, would now be better off as its own layer. As such its time to split it out. The only part with some (marginal) usage is lsb_release, which is split from the lsb package into an own lsb-release package. (From OE-Core rev: fb064356af615d67d85b65942103bf943d84d290) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Update to the latest 242 branchAdrian Bunk2019-08-286-247/+1
| | | | | | | | | Remove backported patches applied upstream. (From OE-Core rev: 5919729f1bd21ba8bf08ce02edb7cc3624c5d4b9) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Print a buildtime warning about the status with muslAdrian Bunk2019-08-281-0/+6
| | | | | | | | | It is possible if a user really has to use it, but not recommended. (From OE-Core rev: 10c1a27501a32740a03c3c6c0684c7d24374af08) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base-files: nsswitch.conf is glibc specificAndre McCurdy2019-08-281-1/+4
| | | | | | | (From OE-Core rev: e9f751a6fd6a4fc1cfac74202e1b71291aade705) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* packagegroup-core-boot: drop duplicate MACHINE_ESSENTIAL_EXTRA_RDEPENDS, etcAndre McCurdy2019-08-281-6/+0
| | | | | | | | | | | Default values for MACHINE_ESSENTIAL_EXTRA_RDEPENDS and MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS are set from bitbake.conf and so don't need to be duplicated in the packagegroup-core-boot recipe. (From OE-Core rev: 82983c94da2446ab86b189a0278156ee884d0976) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glib-networking: Upgrade 2.60.2 -> 2.60.3Adrian Bunk2019-08-281-2/+2
| | | | | | | (From OE-Core rev: d0dcbf1f52e5754dfa3c17e132c6354d730a5e75) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initscripts: remove warnings on read-only-rootfs (again)Martin Hundebøll2019-08-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the populate-volatile.sh initscript tests if a configured symlink is already in place, it uses readlink with the '-f' (follow) option: > [ "$(readlink -f $source)" = "$dest" ] If the test fails, it proceeds to delete the exisiting folder/file, and create the configured symlink. However, the '-f' option to readlink makes it follow symlinks pointing at symlinks. If the $dest argument is a symlink, the above test fails, and warnings are printed due to changing a read-only rootfs. This is the case for /tmp, and /etc/resolv.conf: > /tmp -> /var/tmp -> /var/volatile/tmp > /etc/resolv.conf -> /var/run/resolv.conf -> /run/resolv.conf Fix the warnings by removing the '-f' option, so that the test matches the configuration. [ YOCTO #10814 ] (From OE-Core rev: fb028a0a25c02ab56ad262afd8e6e9495a44673d) Signed-off-by: Martin Hundebøll <martin@geanix.com> Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* images: use 512M of RAM in qemu if 'opengl" is in DISTRO_FEATURESAlexander Kanavin2019-08-281-0/+2
| | | | | | | | | | | | 256M was found to be no longer sufficient, as the X server fails to start with the modesetting driver and 3D enabled. Only images that actually include X11 are adjusted. (From OE-Core rev: 9dd0812acc73287287b48d28e0935baf7f545b58) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ncurses: upgrade 6.1+20181013 -> 6.1+20190803Hongxu Jia2019-08-221-1/+1
| | | | | | (From OE-Core rev: 8c5dc072b24c1b82b9254a80efde91aff8e8fa76) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: add PACKAGECONFIG for gnu-efiRoss Burton2019-08-211-0/+1
| | | | | | | | | | | | | | | Add a PACKAGECONFIG for gnu-efi, by default the meson.build looks explicitly in /usr/include and /usr/lib for gnu-efi, and if it is present on the host the build will fail. [ YOCTO #13487 ] Original patch by Chin Huat Ang. (From OE-Core rev: 050cda9f02c6a5c773edf092514b173839569a48) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cross-localedef-native: Add hardlink resolver from util-linuxJason Wessel2019-08-213-0/+1344
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The hard link resolver that is built into localedef cannot be run in parallel. It will search sibling directories (which are be processed in parallel) and perform a creation of a .tmp file and remove the original and move the .tmp file in. The problem is that if a probe occurs a hard link can be requested to the file that is being removed. This will lead to a stray copy or potentially, on a loaded system cause race condition which pseudo cannot deal with, where it is left with a hard link request to a file that no longer exists. In this situation psuedo will inherit the permissions of what ever the target inode had to offer. In short, there are two problems: 1) You will be left with stray copies when using the hard link resolution that is built in while running in parallel with localedef. 2) When running under pseudo the possibility exists for uid/gid leakage when the source file is removed before the hard link can be completed. The solution is to call localedef with --no-hard-links and separately process the hardlinks at a later point. To do this requires the inclusion of the hardlink utility found in modern versions of util-linux. Most host systems do not have this, so it will be included with the cross-localedef binary. There are two patches here. The first imports the raw version of hardlink.c and a couple of header files directly from util-linux. The second patch applies the fix-ups to make it compile, along with a change to recipe to package the new binary. [YOCTO #11299] [YOCTO #12434] (From OE-Core rev: 57e2e498ffb675d274aa95b10c14bd81742d2761) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* psplash: Avoid mount the psplash tmpfs twiceKevin Hao2019-08-211-1/+3
| | | | | | | | | | | | | | | | | | The /etc/init.d/psplash.sh will be invoked both in boot and shutdown/reboot. And the psplash tmpfs will be mounted twice. This will trigger a bug in umount and let the system hang when shutdown/reboot. I already made a patch [1] to fix the issue in umount, but there is no reason for the psplash to do the twice mount. So also fix it. [Yocto 13461] [1] https://lore.kernel.org/util-linux/20190819083022.12289-1-kexin.hao@windriver.com/T/#u (From OE-Core rev: 5cea0448c5c75b9defc5fc2582e9b0c14e26a4e9) Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* target-sdk-provides-dummy: extend packages for multilib caseChen Qi2019-08-211-4/+8
| | | | | | | | | | | | | | | | | | | | | | If we have installed some lib32 package which depends on perl/bash, then populating sdk for that image would fail with the following error. Error: Problem: package lib32-libxml-namespacesupport-perl-1.12-r0.corei7_32 requires lib32-perl, but none of the providers can be installed package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with /usr/bin/perl provided by lib32-perl-5.30.0-r0.corei7_32 package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with libperl.so.5 provided by lib32-perl-5.30.0-r0.corei7_32 This could be produced by the following steps: 1. IMAGE_INSTALL_append = " lib32-valgrind" 2. bitbake core-image-minimal -c populate_sdk We need to extend all packages in DUMMYPROVIDES to avoid such problems. (From OE-Core rev: 6a38c6aafc2956bb6f7824eff4ac0f630f02da75) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dbus: disable test-busChangqing Li2019-08-211-1/+2
| | | | | | | | | | | | test-bus take long time to finish, sometimes longer than ptest-runner's timeout limit 300s, so skipped it for now [YOCTO #13409] (From OE-Core rev: 76caa7aece5cc8513989f77bb15944a22d17edf5) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Refresh patch after removal of __secure_getenv patchKhem Raj2019-08-211-1/+1
| | | | | | | (From OE-Core rev: 5268ee5b0ae1a11bf3c6cf673c8c17932ba630d4) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* util-linux: Make pam specific logic apply to target recipe aloneKhem Raj2019-08-211-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This helps with a case where a distro builds one image with systemd and another with sysvinit, it ends up recompiling almost everything since python3-native gets rebuilt and tracing dependencies with bitbake-diffsigs shows that the chain ends at util-linux-native being recompiled because distro features now does or does not have 'pam' Hash for dependent task python/python3_3.7.4.bb:do_prepare_recipe_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-devt ools/python/python3_3.7.4.bb changed from 8befaac4f995aaff3f95d27c9caaf1006f86e1344b02c1ae82f5d12f885f2240 to 2a45fe0cd0d3640a88c4a5c8b1880c4e9 a089cc7446a91d2a920c1cef6fa916a Hash for dependent task util-linux/util-linux_2.34.bb:do_populate_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes- core/util-linux/util-linux_2.34.bb changed from 0db292cb2e37d5788bdcf51038b2802d748b719d860aca3a26d7a793b0cf3905 to 15d6e165f025f10c2c455df8a87 5cafe021eaed4214c793e708d4827a58ca89d Hash for dependent task util-linux/util-linux_2.34.bb:do_install:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-core/util-linux/util-linux_2.34.bb changed from 54bb4ee6bdb5c7fc260dabddb4932cb0e554a62cd92aba080a18306291fb470b to e25b1119ce8dd7ca43fbd2db771e04fa 6ff6b9d701fd78ac6c443224b036ed9f basehash changed from 8e8687a866689a697001dedc0a43f478e68e6efe270bd77362f24c6000f9e882 to 62df6610eab9c1b1a17d7132943507641c8538690 f26186843c86144d4598e64 Variable do_install value changed: rm -f ${D}${bindir}/chkdupexe - if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then + if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then install -d ${D}${sysconfdir}/pam.d install -m 0644 ${WORKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser install -m 0644 ${WORKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l @@ -47,5 +47,4 @@ rm -f ${D}${base_sbindir}/nologin rm -f ${D}${base_bindir}/kill -DISTRO_FEATURES{pam} = Unset PACKAGECONFIG{pam} = Unset So far it seems this pam conditional code in util-linux is target specific and would not apply to native or nativesdk recipes (From OE-Core rev: a57f56576eda4b3ad5496e375b432e06e34ad8b9) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Drop musl __secure_getenv patchKhem Raj2019-08-212-33/+1
| | | | | | | | | | | This API is now implemented in musl [1] [1] https://git.musl-libc.org/cgit/musl/commit/?id=7844ecb590893f8344324837956718001402d297 (From OE-Core rev: 46e49b14b52ebc9c7076488ad858083f8270ce9f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* musl: Update to latest tipKhem Raj2019-08-211-1/+1
| | | | | | | | | | | | Fixes build regressions on risc-v Detailed changelog is here [1] [1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=d0b547dfb5f7678cab6bc39dd736ed6454357ca4..29e8737f81ccc9fbadcf61a75318aa3d0516aafa (From OE-Core rev: 0e590898134e3a9ae971ab0c5c570c6de3e162bd) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* musl: Delete GLIBC_LDSO before creating symlink with lnrKhem Raj2019-08-141-1/+1
| | | | | | | | | | | | | | | Fixes rebuild failures after say do_compile fails | ./tools/install.sh -D -r /mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/image/usr/lib/libc.so /mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/image/lib/ld-musl-riscv64.so.1 || true | Traceback (most recent call last): | File "/mnt/a/yoe/sources/openembedded-core/scripts/lnr", line 24, in <module> | os.symlink(target, linkname) | FileExistsError: [Errno 17] File exists: 'image/usr/lib/libc.so' -> '/mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/imageNone' (From OE-Core rev: 78a75d240083a80d624074e058c9a222a8a7b5e7) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ovmf: fix upstream version checkAlexander Kanavin2019-08-141-0/+1
| | | | | | | (From OE-Core rev: 7ec9997c86df11a9a08e1531269435010b12e8da) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ovmf: Generate test Platform key and first Key Exchange KeyRicardo Neri2019-08-121-0/+8
| | | | | | | | | | | | | | | | | | | | | Commit from EDK2 be9470b3c91f ("OvmfPkg/EnrollDefaultKeys: enroll PK/KEK1 from the Type 11 SMBIOS table") mandates that a Platform Key and first Key Exchange Key certificate is provided to the EnrollDefaultKeys application. Previously, the application was using a hard-coded certificate from Red Hat embedded in the application. Create a certificate that can QEMU can subsequently pass to EnrollDefaultKeys when running qemu-shell-image. Cc: Ross Burton <ross.burton@intel.com> Cc: Patrick Ohly <patrick.ohly@intel.com> Cc: Alexander Kanavin <alex.kanavin@gmail.com> (From OE-Core rev: daaf9d7bd8c3586609ab0eccf49af38dbdb0b02e) Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ovmf: Use HOSTTOOLS' python3Ricardo Neri2019-08-121-0/+2
| | | | | | | | | | | | | | | | | Use the variable PYTHON_COMMAND to let know EDK2 base tools that python3 in the host shall be used. In order build successfully, the host must have installed the python3-distutils package or equivalent. Based on an original patch by Ross Burton. Cc: Ross Burton <ross.burton@intel.com> Cc: Patrick Ohly <patrick.ohly@intel.com> (From OE-Core rev: 435d1f8ffe9df86367316d25cb6def2ea2041642) Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ovmf: Set PVRicardo Neri2019-08-121-1/+1
| | | | | | | | | | | | Now that EDK2 has been tagging stable releases, we can also set PV and drop UPSTREAM_VERSION_UNKNOWN. Cc: Ross Burton <ross.burton@intel.com> Cc: Patrick Ohly <patrick.ohly@intel.com> (From OE-Core rev: b9851d612be842d35ebd78f5f21158beaaed8e64) Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ovmf: Update to version edk2-stable201905Ricardo Neri2019-08-129-1502/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #13438] Update OVMF to edk2-stable201905. Since the last update, several things have changed. Many of the patches we were carrying have now been taken upstream in EDK2 or become obsolete. See below for details. Also, as of commit 0c1ffb9504c3("CryptoPkg: Adding OpenSSL as one submodule of EDKII repo"), openssl is not embedded into EDK2 using a patching script but a git submodule. Then, use the gitsm bitbabke fetcher and drop the extra SRC_URI from openssl when building with secureboot enabled. Also remove all related variables. OVMF switched to BSD+Patent license as detailed in https://bugzilla.tianocore.org/show_bug.cgi?id=1373. Hence, update LIC_FILES_CHKSUM accordingly to reflect this change. Patches are updated as follows: Drop 0001-ia32-Dont-use-pie.patch as it is implemented in upstream EDK2 in commits are 11d0cd23dd1b ("BaseTools/tools_def IA32: drop -no-pie linker option for GCC49" and c25d3905523a ("BaseTools/tools_def IA32: disable PIE code generation explicitly") for the applicable GCC versions. Rebase 0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch to edk2-stable201905. Drop VfrCompile-increase-path-length-limit.patch as it has been taken upstream in EDK2 in commit ba78032bc8c9f("BaseTools/VfrCompile: Remove the MAX_PATH limitation"). Rebase no-stack-protector-all-archs.patch to keep behavior on not using stack protector on all archs. Drop 0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch, 0002-BaseTools-header.makefile-add-Wno-restrict.patch, and 0003-BaseTools-header.makefile-revert-gcc-8-Wno-xxx-optio.patch. These patches have been taken in upstream EDK2 in commits 9222154ae7b3("BaseTools /header.makefile: add "-Wno-restrict"), 1d212a83df0e("BaseTools/ header.makefile: add "-Wno-stringop-truncation"), and 777f4aa083e9 ("BaseTools/header.makefile: revert gcc-8 '-Wno-xxx' options on OSX"), respectively. Also, drop 0004-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch. GenVtf has been removed from EDK2 in commit 64ab2c82e8f6("BaseTools: Remove GenVtf"). Also, this patch had been taken in EDK2 upstream in commit 9de306701312("BaseTools/GenVtf: silence false 'stringop-overflow' warning with memcpy()"). Drop patch 0007-OvmfPkg-EnrollDefaultKeys-application-for-enrolling-.patch as it also has been taken by EDK2. Patches 0002-ovmf-update-path-to-native-BaseTools.patch and 0004-ovmf-enable-long-path-file.patch did not need any update. Lastly, add a needed dependency on bc. Cc: Ross Burton <ross.burton@intel.com> Cc: Patrick Ohly <patrick.ohly@intel.com> (From OE-Core rev: 1f64ecf92fa77b682b18efe72fb6b27ff64ee052) Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* musl: Update to master tipKhem Raj2019-08-121-1/+1
| | | | | | | | | | | | | | | Fix for RISC-V build regression 64bit time syscall plumbing Changes are here [1] [1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=0ce49d0a301b4142741b32773492af90f66ed3ca..d0b547dfb5f7678cab6bc39dd736ed6454357ca4 (From OE-Core rev: 34196d2913027d1fc8c080ea0c392a387e70a162) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ell: update to 0.21Oleksandr Kravchuk2019-08-071-2/+2
| | | | | | | | | | | Changelog: - Fix issue with resetting DHCP lease on client stop. - Add support for GPIO helper functionality. (From OE-Core rev: ca881bcad40e461e93a71f05b65967e7906cf2e1) Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc-package.inc: Add linux-libc-headers-dev to glibc-devMark Hatle2019-08-071-0/+1
| | | | | | | | | | | | | | | | | | | | | Without linux-libc-headers-dev being added to the libc6-dev as a RDEPENDS, the system may fail to install the necessary libc headers. This can happen when NO_RECOMMENDATIONS = "1" is defined. During the 'testsdk' this results in failures that look like: fatal error: linux/errno.h: No such file or directory # include <linux/errno.h> ^~~~~~~~~~~~~~~ This also matches the behavior of musl, which does not suffer from this problem. (From OE-Core rev: ad31c908c8267166ce6cce9d5085ef2ac099a6c5) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>