Commit Graph

351 Commits

Author SHA1 Message Date
Kai Kang
53d8896c5b systemd: fix compile error for x32
Backport patch to fix systemd compile error for x32:

| ../git/src/timesync/timesyncd-manager.c:607:19: error: format '%lli'
| expects argument of type 'long long int', but argument 11 has type
| 'long int' [-Werror=format=]

[YOCTO #13074]

(From OE-Core rev: 7201df413616cab8d7f3257f86dd7a0a5c7719ee)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-14 17:10:59 +00:00
Adrian Freihofer
d0b2cedfb0 systemd: fix PN-container package splitting
- Fix package splitting for services installed with
  systemd-container. Some files have been installed with systemd
  package instead of systemd-container package. (*.service,
  *.socket, *.html...)
- Split journal-upload, journal-remote, journal-gatewayd into
  separate packages. These services are not strictly related to
  nspawn containers. Remote logging is now possible without
  installing all the container stuff.
- systemd-container package rrecommends journal-upload, journal-
  remote, journal-gatewayd packages.

(From OE-Core rev: d31ff84a5f4723700ed48fd14ace81d3c707065e)

Signed-off-by: Adrian Freihofer <adrian.freihofer@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-27 22:13:11 +00:00
Alex Kiernan
9d0e83fdec systemd: backport fix to stop enabling ECN
>From upstream:

  Turning on ECN still causes slow or broken network on linux. Our tcp
  is not yet ready for wide spread use of ECN.

https://github.com/systemd/systemd/issues/9748

(From OE-Core rev: f951aa6f9fcf318f108ecdc3371498ee2e919e68)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-20 10:32:16 +00:00
Brad Bishop
17726d0834 systemd-systemctl-native: handle Install wildcards
Handle the %i wildcard appearing in a dependency in the Install section
of a template unit, e.g.

  $ cat foo@.service

  [Install]
  WantedBy=bar@%i.target

Using the real systemctl something like:

  $ systemctl enable foo@baz.service

will create a symlink in /etc/systemd/system/bar@baz.target.wants.
Detect wildcards in templates and make the appropriate substitution.

(From OE-Core rev: 22ed19292d160461042d4a2294fe2ec0b953873e)

Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-14 11:14:39 +00:00
Chen Qi
d6d723665d systemd: fix CVE-2018-15688
Backport patch to fix the following CVE.

CVE: CVE-2018-15688

(From OE-Core rev: 13591d7224393dc0ae529a03cdf74aceb3540ce9)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 23:08:54 +00:00
Chen Qi
3eab300ce3 systemd: fix CVE-2018-15687
Backport patch to fix the following CVE.

CVE: CVE-2018-15687

(From OE-Core rev: eeb621aa19f690971caf862290a172a115578ba1)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 23:08:54 +00:00
Chen Qi
89b142f7da systemd: fix CVE-2018-15686
Backport patch to fix the following CVE.

CVE: CVE-2018-15686

(From OE-Core rev: 0ef70603bc983315eb0e8a97958d995a31198c35)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 23:08:54 +00:00
Chen Qi
360bba5cc9 systemd: add back alternatives for init utitilies
Add back alternatives for init utilities to avoid regression.

These alternatives were removed when upgradeing systemd to 239.
They were removed out of the logic that init utitilies should be
bound to init manager. However, it turned out that two use cases
were not covered.

1) initramfs using commands like 'reboot' from busybox.
2) Users use customized busybox defconfig which enables init utilities.

The first use case caused a regression bug in yocto.
  https://bugzilla.yoctoproject.org/show_bug.cgi?id=12914
Patches were sent to fix the reboot problem.

But this is not enough. As we may have the second use case. In such
situation, users will find themselves having regression error when
using 'busybox + systemd' (and busybox is installed after systemd,
overriding the systemd symlinks).

So in order to avoid regression, add back these alternatives.

(From OE-Core rev: 43ef422d80e0544232a9361187ac1c608304c969)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-28 08:31:57 +00:00
Mark Hatle
4046716c2f systemd-conf: Fix clean support
(From OE-Core rev: ed335e201c878ab4518675f57ce0d12cdc60e02e)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-28 08:31:57 +00:00
Kai Kang
60bdb3d6a1 udev-hwdb: fix postinstall scripts failures when multilib enabled
When multilib is enabled and both udev-hwdb and ${MLPREFIX}udev-hwdb are
installed to image, it fails to run one of their postinstall scripts
that they both call ${base_bindir}/udevadm with same user mode qemu.

Duplicate udevadm and add postinst-intercept update_udev_hwdb to fix the
failures.

(From OE-Core rev: d6b737a31a8842cdc770b05e28503c81a691d10d)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-25 14:53:44 +01:00
Mark Hatle
28c2f0dfe3 systemd: Remove items that made this machine (qemu) specific
Create a new systemd-conf recipe to contain the specific system/machine
configuration items.  This new package is now machine specific.

Without doing this trying to create a single system with multiple BSPs,
one of which was qemu based, would result in the systemd -and- everything that
dependend upon systemd to have their hash changed.  The hash changing means
lots of rebuilds, but worse if it's a package based system each different
machine ends with a new PR value and a newly generated package.

(From OE-Core rev: d3395418758ed414eee3e95e13d2d8bc5dca88cc)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-21 21:30:35 +01:00
Anuj Mittal
8421aede4f systemd: add ALTERNATIVE for reboot
reboot is provided by busybox too. Add ALTERNATIVE to ensure that there
are no conflicts when both are installed.

(From OE-Core rev: a27a197ad4bb32fa93aa95e685e9e70ffe755811)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-12 16:57:21 +01:00
Alex Kiernan
b6eeccc881 systemd: Add util-linux-fsck to RDEPENDS
systemd-fsck expects util-linux-fsck passing a number of options that
busybox fsck doesn't interpret. It then continues silently when run, so
disks end up not having fsck run at all.

Move util-linux-fsck from RRECOMMENDS to RDEPENDS to ensure we have the
fsck which systemd expects.

(From OE-Core rev: 409c3424250d55d1c5549841ddae22288aaa4859)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Anton Gerasimov
e6277eb17b systemd: set split-bin to true by default
Not doing so will make meson chose where to install init binary
based on irrelevant features of the build machine.

PACKAGECONFIG option is defined to override this behavior.

(From OE-Core rev: 4ff2282a7dc421c3ea6578c73fbbba768eeed146)

Signed-off-by: Anton Gerasimov <tossel@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Khem Raj
4ec1eede9f systemd: Fix qsort_r patch for function return mismatch
clang is fussy and complains that a valueless return is used from  a
function which should return a value

(From OE-Core rev: 301d9801a43b2173c83a2296553abd53f152a145)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Andrej Valek
956278f4ec systemd: fixes for the compatibility interface
Use a heap allocated string to set arg_ifname, since a stack allocated
one would be lost after the function returns. (This last one broke the
case where an interface name was suffixed with a dot, such as in
`resolvconf -a tap0.dhcp`.)

(From OE-Core rev: 48775d2f02d6d4024403796b81d6398f3028b965)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Simon Ausserlechner <simon.ausserlechner@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:34 +01:00
Maciej Pijanowski
23a9cdba16 meta: replace deprecated "SERIAL_CONSOLE"
SERIAL_CONSOLE was already deprecated in 2013, yet still some
machine configuration files were using it. This patch replaces
it with SERIAL_CONSOLES, which is the successor.

The default value in systemd-serialgetty.bb can also be safely
transitioned from SERIAL_CONSOLE to SERIAL_CONSOLES, as this
recipe already uses SERIAL_CONSOLES within do_install().

The documentation seems to be already up do date.
beaglebone-yocto.conf in the bsp-guide already uses
SERIAL_CONSOLES. The ref-manual redirects from SERIAL_CONSOLE
to SERIAL_CONSOLES.

[YOCTO #12653]

(From OE-Core rev: e5bde3d466869df9fce559e49842ac245153d045)

Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-14 11:36:31 +01:00
Khem Raj
f13c32446f systemd: Detect if statx struct is defined in sys/stat.h
Fixed build with glibc 2.28+

(From OE-Core rev: 776d14db9589eb2e2bca35da862ad0e260e3584c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-08 10:51:59 +01:00
Chen Qi
983c24aa23 systemd: backport patch to allow setting dbus calls timeout
Backport 0001-sd-bus-make-BUS_DEFAULT_TIMEOUT-configurable.patch
which allows setting dbus calls timeout via SYSTEMD_BUS_TIMEOUT
environment variable.

This is needed as we are meeting timeout failures from the oeqa
runtime test case systemd.py.

(From OE-Core rev: caa4fa5e6ce7d50bdcd04e199d61401b3e8b9ff7)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-31 22:47:36 +01:00
Khem Raj
ae1dbbbfb5 systemd: Explicitly add hidden attribute to __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP
These symbols appear in dynsyms of libsystemd.so and musl loader
doesnt like it

Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __start_BUS_ERROR_MAP: symbol not found
Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __stop_BUS_ERROR_MAP: symbol not found

[YOCTO #12577]

(From OE-Core rev: a13d3314cd4ddc812c3ac2904c8f563f7462878a)

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>
2018-07-26 13:16:41 +01:00
Chen Qi
b0f2f690a3 systemd-boot: upgrade to 239
Upgrade systemd-boot to 239.

The following patch is removed due to recent fix about meson's cpu family
mapping and validation.

  0001-Also-check-i386-i586-and-i686-for-ia32.patch

(From OE-Core rev: ff0b682b807959521c85716296de7a1d26d7d18f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Chen Qi
ada8a5d917 systemd: upgrade to 239
Upgrade systemd to 239.

1. Patch Changes
* Rebased Patches
  0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
  0003-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch
  0006-Make-root-s-home-directory-configurable.patch
  0027-remove-nobody-user-group-checking.patch
  0011-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
  0013-add-fallback-parse_printf_format-implementation.patch
  0014-src-basic-missing.h-check-for-missing-strndupa.patch
  0015-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
  0016-src-basic-missing.h-check-for-missing-__compar_fn_t-.patch
  0017-Include-netinet-if_ether.h.patch
  0019-Do-not-enable-nss-tests-if-nss-systemd-is-not-enable.patch
  0022-don-t-use-glibc-specific-qsort_r.patch
  0024-comparison_fn_t-is-glibc-specific-use-raw-signature-.patch
  0026-Use-uintmax_t-for-handling-rlim_t.patch
  0030-fix-missing-of-__register_atfork-for-non-glibc-build.patch
  0031-fix-missing-ULONG_LONG_MAX-definition-in-case-of-mus.patch
  0001-core-device.c-Change-the-default-device-timeout-to-2.patch
  0001-Remove-fstack-protector-flags-to-workaround-musl-bui.patch

* Dropped Patches and Reasons
  0001-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
    This patch is dropped because the problem has been fixed by
    binutils upstream. And this workaround could be dropped.
    https://sourceware.org/bugzilla/show_bug.cgi?id=18548

  0007-Revert-rules-remove-firmware-loading-rules.patch
  0008-Revert-udev-remove-userspace-firmware-loading-suppor.patch
    These two patches are dropped because they are for kernel < 3.7.
    But the current minimal requirement of kernel to build systemd
    is as below.
    REQUIREMENTS:
        Linux kernel >= 3.13
        Linux kernel >= 4.2 for unified cgroup hierarchy support
    So these two patches no long make any sense.
    Also remove non-exist firmware-path option

  0009-remove-duplicate-include-uchar.h.patch
  0010-check-for-uchar.h-in-meson.build.patch
    These two patches are dropped because musl has implemented
    uchar.h. See commit below from musl repo.
    """
    ab9672ae73248f51e30f4553c4b8878525e46383
    implement uchar.h (C11 UTF-16/32 conversion) interfaces
    """

  0018-check-for-missing-canonicalize_file_name.patch
    The above patch is dropped because current systemd does not need
    canonicalize_file_name.

  0025-Define-_PATH_WTMPX-and-_PATH_UTMPX-if-not-defined.patch
    The above patch is dropped because utmp makes no sense in musl.
    Check code below from musl.
    include/utmp.h:#define _PATH_UTMP "/dev/null/utmp"
    And utmp PACKAGECONFIG has been explicitly disabled for musl.
    So we don't need this patch.

  0032-memfd.patch
  0033-basic-macros-rename-noreturn-into-_noreturn_-8456.patch
  libmount.patch
  0034-Fix-format-truncation-compile-failure-by-typecasting.patch
    The above patches are dropped because they are backported patches.
    And current systemd has contained these patches.

  0036-time-util-fix-build-with-gcc8-Werror-format-truncati.patch
    The above patch is dropped because it has been merged and is now
    in new version.

* Newly Added Patch
  0005-include-gshadow-only-if-ENABLE_GSHADOW-is-1.patch
    This patch is added to fix build for musl.

  0019-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
    This patch is added to fix the following error which caused system
    unable to boot up.
      systemd-udevd.service: Failed to adjust OOM setting: Invalid argument
      dbus.service: Failed to adjust OOM setting: Invalid argument

  0020-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
    This patch is added to fix segment fault error on musl systems.

  0001-login-use-parse_uid-when-unmounting-user-runtime-dir.patch
    This patch is backported to solve a race condition between
    user-runtime-dir@xxx.service stop and user deletion.

2. PACKAGECONFIG and Dependency Changes
* Add a new PACKAGECONFIG item 'gshadow'. Enable it by default for glibc
  but disable it by default for musl. This is because musl does not provide
  gshadow.h.

* Add a new PACKAGECONFIG item 'portabled'. Default to disable it because
  it's still experimental, according to the announcement letter.
  """
  Currently, the support is still experimental, but this is expected to
  change soon. Reflecting this experimental state, the "portablectl" binary
  is not installed into /usr/bin yet.
  """

* Change 'kmod' from a hard dependency to a PACKAGECONFIG item. Default
  to enable it.

* Change 'acl' from a hard dependency to a PACKAGECONFIG item. Default
  to enable it.

* Remove 'readline' from DEPENDS. systemd does not need it.

* Remove 'libcgroup' from DEPENDS. The dependency on libcgroup has been
  removed from systemd a long time ago. We now remove this unnecessary
  dependency from DEPENDS.

3. update-alternatives changes
  The utilities like shutdown, poweroff, etc. are now created as symlinks
  at do_install. So there's no need to use update-alternatives mechanism
  anymore to create the symlinks now. In addtion, I don't think we now
  support multiple init systems at one running system, so there's really
  no need to use update-alternatives mechanism here.

  Also update the FILES_${PN} to include these files to avoid QA issue.

(From OE-Core rev: 597f4645faf61486eb1d2ab73f3d974460ab9466)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-18 10:18:42 +01:00
Hannu Lounento
8c81752681 systemd: remove the group 'lock'
The upstream commit 61f32bff6130a44d077886d38cff89ad161bf177 included in
the release v229 removed the use of the group:

    commit 61f32bff6130a44d077886d38cff89ad161bf177
    Author: Martin Pitt <martin.pitt@ubuntu.com>
    Date:   Mon Feb 1 12:09:34 2016 +0100

        tmpfiles: drop /run/lock/lockdev

        Hardly any software uses that any more, and better locking mechanisms like
        flock() have been available for many years.

        Also drop the corresponding "lock" group from sysusers.d/basic.conf.in, as
        nothing else is using this.

    [...]
    diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in
    index 823d6cb20..b2dc5ebd4 100644
    --- a/sysusers.d/basic.conf.in
    +++ b/sysusers.d/basic.conf.in
    @@ -19,7 +19,6 @@ g wheel   -     -            -

     # Access to certain kernel and userspace facilities
     g kmem    -     -            -
    -g lock    -     -            -
     g tty     @TTY_GID@     -            -
     g utmp    -     -            -
    [...]

The upstream documentation doc/UIDS-GIDS.md says that basic.conf.in is "the
precise list of the currently defined groups":

    ## Special `systemd` GIDs

    `systemd` defines no special UIDs beyond what Linux already defines (see
    above). However, it does define some special group/GID assignments, which are
    primarily used for `systemd-udevd`'s device management. The precise list of the
    currently defined groups is found in this `sysusers.d` snippet:
    [basic.conf](https://raw.githubusercontent.com/systemd/systemd/master/sysusers.d/basic.conf.in)

    It's strongly recommended that downstream distributions include these groups in
    their default group databases.

Removing the creation of the group also avoids the need to define a GID
for it when using static ids.

(From OE-Core rev: da3659155cd1825a4a8d3d7c5288b4273714de15)

Signed-off-by: Hannu Lounento <hannu.lounento@vaisala.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00
Alexander Kanavin
e67551e80e udev: only run qemu from postinst scripts if qemu usermode is supported
Otherwise, there would be a failure at image creation time; avoid
that by postponing to first boot explicitly.

(From OE-Core rev: f3247720dc4b1c49e8fad734e20b17ba55843b97)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-18 11:07:58 +01:00
Dan McGregor
927db5db26 systemd: allow setting time-epoch to epoch
systemd by default sets the system time at boot to the date of its NEWS
file. It provides the option to change that at build time, and some
projects need to come up at a particular date if no RTC is present.

Provide the option to set the time at boot to the epoch instead of the
date of the NEWS file.

(From OE-Core rev: bf1847cd369fe72b8f8e04e2661bb7d2d3524ea2)

Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Martin Jansa
982b07cd0c systemd: fix build with gcc8
(From OE-Core rev: b0fdaedc6e9c233f357022b0fb706cb19757f5c4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-12 23:34:24 +01:00
Khem Raj
43f7ea8d0d systemd: Define basename() for musl
(From OE-Core rev: 167098cdd875a02221ff6d15f443c02c1bcdc33f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 21:07:17 +01:00
Khem Raj
bed11ee92a systemd: Fix build with gcc8
(From OE-Core rev: 6a3805f06cd7832d70d5b652ec1be612f5f027e6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 21:07:17 +01:00
Ross Burton
6dee5da9db systemd: fix build with util-linux 2.32
(From OE-Core rev: 12b4fc15f6919d7573bea5d913fb805993e8640a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-11 07:49:38 +01:00
Andrea Galbusera
5945fffebc systemd: backport patch to fix build when gcrypt is enabled
When gcrypt support is present in PACKAGECONFIG, build fails due to the bug
reported in [1]. Since this is already solved upstream, this commit backports
the corresponding patch.

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=893602

(From OE-Core rev: 4f68722e37d28b5fdd30409570405bf65445eef2)

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-11 07:49:38 +01:00
Chen Qi
9e3a9637b8 systemd: fix typo in sulogin-path setting
Fix typo in sulogin-path setting. It should be ${base_sbindir} instead of
just {base_sbindir}.

(From OE-Core rev: c168f6fe35ada66f7d6d6b5151fa248230c38676)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-04-04 08:51:02 +01:00
Alexander Kanavin
7cd6442613 systemd: link udev statically with systemd internal libraries
This was the default behavior with autotools, but is not with meson.
Otherwise, udev package will pull in the rest of systemd even
that is not desired.

[YOCTO #12618]

(From OE-Core rev: 7409d2d48b69adcdf039fb4aa8bd9ed62460daa9)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-25 09:40:42 +01:00
Chen Qi
7d5acd8573 systemd: change PACKAGECONFIG 'resolve' back to 'resolved'
When systemd was upgraded from 234 to 237, the PACKAGECONFIG item
'resolved' is changed to 'resolve', this is because meson_options.txt
uses the word 'resolve' instead of 'resolved'.

However, this causes trouble for users. Backward compatibility is obviously
more important, because we might have bbappend files in other layers
using this PACKAGECONFIG item.

So change the name back to 'resolved'.

(From OE-Core rev: da7fc569e547b4105b00c11a0b41b70230bacc50)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-25 09:40:42 +01:00
Khem Raj
12392552b2 systemd: Fix build failures with glibc 2.27 + kernels without memfd
Backport a fix that is needed for systemd to build with latest glibc
and kernel being old.

see
https://github.com/systemd/systemd/issues/8099

(From OE-Core rev: 169d061b313ebb91bf18f09d998a42c4ae165bf8)

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>
2018-03-25 09:40:42 +01:00
Chen Qi
f49ee61422 systemd-boot: upgrade to 237
Upgrade systemd-boot to 237.

As systemd has dropped autotools support, fix configure and compile
failures related to meson.

(From OE-Core rev: 086308aa2a5e332de6f00ed397c4a55d132f158f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-20 09:59:33 +00:00
Chen Qi
aacaf836ba systemd: fix build failure for qemux86 and qemuppc with musl
Remove the 'fstack-protector' and 'fstack-protector-strong' flags
as a workaround to fix the following error when building for qemux86
and qemuppc with musl.

  undefined reference to `__stack_chk_fail_local'

(From OE-Core rev: 4871d3c2b6dd6c07a2adcfbc9ecfb22e4afa2d0d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-20 09:59:33 +00:00
Chen Qi
40db00818e systemd: upgrade to 237
Upgrade systemd to 237.

Note that this version has dropped autotools support.

The following patches are rebased:
0004-Use-getenv-when-secure-versions-are-not-available.patch
0005-binfmt-Don-t-install-dependency-links-at-install-tim.patch
0007-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch
0015-Revert-udev-remove-userspace-firmware-loading-suppor.patch
0018-check-for-uchar.h-in-configure.patch
0019-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
0001-add-fallback-parse_printf_format-implementation.patch
0002-src-basic-missing.h-check-for-missing-strndupa.patch
0007-check-for-missing-canonicalize_file_name.patch
0008-Do-not-enable-nss-tests.patch
0010-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
0011-nss-mymachines-Build-conditionally-when-HAVE_MYHOSTN.patch

The following backported patches are dropped:
0001-core-evaluate-presets-after-generators-have-run-6526.patch
0001-main-skip-many-initialization-steps-when-running-in-.patch
0001-meson-update-header-file-to-detect-memfd_create.patch
0003-fileio-include-sys-mman.h.patch

The following patch is dropped as autotools support is dropped:
0002-configure.ac-Check-if-memfd_create-is-already-define.patch

The following patches are newly added to fix problems:
0027-remove-nobody-user-group-checking.patch
0028-add-missing-FTW_-macros-for-musl.patch
0030-fix-missing-of-__register_atfork-for-non-glibc-build.patch
0031-fix-missing-ULONG_LONG_MAX-definition-in-case-of-mus.patch

Other changes are mostly autotools/meson related.

This new version has dropped ptest support, as there's no easy
way to do this in the framework of meson.

(From OE-Core rev: 906230a73b3ccfa4afd2a19a6b0aa18cd1d5fa08)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-20 09:59:33 +00:00
Khem Raj
be2982a630 systemd: Explicitly add hidden attribute to __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP
These symbols appear in dynsyms of libsystemd.so and musl loader
doesnt like it

Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __start_BUS_ERROR_MAP: symbol not found
Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __stop_BUS_ERROR_MAP: symbol not found

[YOCTO #12577]

(From OE-Core rev: a54b025bfde774353aa278ca78fa0116c52b6d71)

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>
2018-03-08 10:39:32 -08:00
California Sullivan
8cc106d403 systemd-boot: add package that installs to boot
If the EFI_PROVIDER is systemd-boot, install as boot(x64|ia32) as per
convention. If its not the EFI_PROVIDER, install as
systemd-boot(x64|ia32), as to not collide with other possible
bootloaders.

(From OE-Core rev: 551925bc49707821d0d621369fd33fde6b836d8c)

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-06 06:35:42 -08:00
California Sullivan
b84b422340 systemd: add systemd-bootconf recipe
Reuses our systemd-boot-cfg bbclass to generate systemd-boot
configuration files.

(From OE-Core rev: 8bf86db982b4304c47b1d83ea8b2fc63eaa64b20)

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-06 06:35:42 -08:00
Khem Raj
2c09f9722a systemd: Fix build with glibc 2.27
(From OE-Core rev: cf4fc7804f093f5b570eaeaa39cb5dce5db1e379)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-30 11:50:11 +00:00
Robert Yang
a91b286291 systemd: inherit distro_features_check
Use distro_features_check so that we can have a uniform controller.

(From OE-Core rev: 9daf88713dedfb29fe926e18d76090a6b2582ac8)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-04 12:57:43 +00:00
Anuj Mittal
b58354d8f5 systemd-boot: fix build with musl and x32
systemd-boot shouldn't be built for x32. Make sure that this is the
case when TCLIBC is set to something other than glibc.

Fixes [YOCTO #12122]

(From OE-Core rev: feed576321dcba2d75c067d6ee8b8dad817e9bba)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-04 12:57:42 +00:00
Andre McCurdy
e8e6dbbe9a systemd: drop obsolete workaround for ARM + gcc 5.2
(From OE-Core rev: 6e27bd4876bea2c02a6554d3f53b7461e74a192b)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-02 17:24:39 +00:00
Joe Slater
e76779d77e systemd: fix segfault when terminating systemd --test
Currently, if "systemd --test" is not allowed to complete
sending output, it will segfault.

(From OE-Core rev: 7e4632f17ba92ac71351e45acf11f0d7dfe14e0c)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-12-18 18:03:57 +00:00
Hongxu Jia
bfd899ae34 systemd: fix formatting IDE storage does not trigger "change" uevents
Formatting IDE storage does not trigger "change" uevents. As a result
clients using udev API don't get any updates afterwards and get outdated
information about the device.
...
root@qemux86-64:~# mkfs.ext4 -F /dev/hda1
Creating filesystem with 262144 4k blocks and 65536 inodes
Filesystem UUID: 98791eb2-2bf3-47ad-b4d8-4cf7e914eee2

root@qemux86-64:~# ls /dev/disk/by-uuid/98791eb2-2bf3-47ad-b4d8-4cf7e914eee2
ls: cannot access '/dev/disk/by-uuid/98791eb2-2bf3-47ad-b4d8-4cf7e914eee2': No such file or directory
...
Include hd* in a match for watch option assignment.

(From OE-Core rev: c0df31a593ce94b66100b5d4a64b38568494d56e)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-12-02 11:25:32 +00:00
Andre McCurdy
15a24f1e10 systemd: fix duplication of CACHED_CONFIGUREVARS
Fix historical duplication that appears to have been caused by
merging two independent fixes for the same issue:

  http://git.openembedded.org/openembedded-core/commit/?id=294adc0907a359d9c0ad260823188145aab294ad
  http://git.openembedded.org/openembedded-core/commit/?id=b30d7b1b97ffd1d44083d93ed0e572d80fcebc54

Also minor reformatting of EXTRA_OECONF values.

(From OE-Core rev: 94bc5910ebdf7bb4677fa06150ba1219295e5eda)

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-11-30 10:49:21 +00:00
Andre McCurdy
da2e7e006d systemd: use consistent indenting and coding style in do_install()
Make the polkit fixup etc at the end of do_install() more consistent
with the rest of the function. Also indent do_install_ptest() with
tabs instead of spaces to make do_install_ptest() consistent with
do_install().

(From OE-Core rev: 7a188e646a7a713ec5eab73580de624dc61f2936)

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-11-30 10:49:21 +00:00
Andre McCurdy
974ee3d707 systemd: sort PACKAGECONFIG options
Also fix some minor formatting inconsistencies (extra spaces or
commas etc). No functional changes.

(From OE-Core rev: 4caf480c8d824575e970ec8ba15e4ee221166954)

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-11-30 10:49:21 +00:00
Andre McCurdy
654cbd4cc8 systemd: use consistent approach for musl PACKAGECONFIG options
Consistently use PACKAGECONFIG_remove_libc-musl to disable options
which are not compatible with musl.

Also sort the default PACKAGECONFIG list.

(From OE-Core rev: 8fb362d90628d0dbc9a5073a0d75296eab569d44)

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-11-30 10:49:21 +00:00