diff options
| author | Johannes Schneider <johannes.schneider@leica-geosystems.com> | 2025-06-21 22:46:28 +0200 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2025-06-25 06:44:54 -0700 |
| commit | e9430c91fac0dee0a6f0467958ddd491a60a6064 (patch) | |
| tree | 666a927cedb0b3998a16adb687c9d4bee2f74e36 | |
| parent | 5c6cc78fab0a0a99aeeeb2dd6b862d76a236eba9 (diff) | |
| download | meta-openembedded-e9430c91fac0dee0a6f0467958ddd491a60a6064.tar.gz | |
systemd: add recipe for systemd-repart-native 257.6
Add a recipe to build systemd-repart-native.
The chosen version is a relatively recent one, to support:
1) PKCS#11 uris [1] to pass in the private key when creating a
discoverable disk image (asĀ·--private-key-source).
2) setting Compression=/CompressionLevel= in the configuration [2],
which is then passed over to a (recent version of) mkfs.erofs
The recipe was adapted from an incomplete 'systemd-tools' patch [3]
that is floating upstream.
Link: [1]: https://github.com/systemd/systemd/commit/0a8264080a5d4b5e13e65eed80ac98a476f7fe43
Link: [2]: https://github.com/systemd/systemd/commit/27cacec939a46f61706d7b48a51b6f5880be4662
Link: [3]: https://lists.openembedded.org/g/openembedded-core/topic/108223984#msg204065
Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
| -rw-r--r-- | meta-oe/recipes-core/systemd/systemd-repart-native_257.6.bb | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/meta-oe/recipes-core/systemd/systemd-repart-native_257.6.bb b/meta-oe/recipes-core/systemd/systemd-repart-native_257.6.bb new file mode 100644 index 0000000000..15b60af02e --- /dev/null +++ b/meta-oe/recipes-core/systemd/systemd-repart-native_257.6.bb | |||
| @@ -0,0 +1,59 @@ | |||
| 1 | # SPDX-License-Identifier: MIT | ||
| 2 | # | ||
| 3 | # Copyright Leica Geosystems AG | ||
| 4 | # | ||
| 5 | |||
| 6 | SUMMARY = "systemd-repart" | ||
| 7 | DESCRIPTION = "systemd-repart grows and adds partitions to a partition table, based on the configuration files described in repart.d(5), or generates a Discoverable Disk Image (DDI) for a system extension (sysext, see systemd-sysext(8))." | ||
| 8 | HOMEPAGE = "http://www.freedesktop.org/wiki/Software/systemd" | ||
| 9 | |||
| 10 | LICENSE = "GPL-2.0-only & LGPL-2.1-or-later" | ||
| 11 | LICENSE:libsystemd = "LGPL-2.1-or-later" | ||
| 12 | LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \ | ||
| 13 | file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c" | ||
| 14 | |||
| 15 | SRCREV = "00a12c234e2506f5cab683460199575f13c454db" | ||
| 16 | SRCBRANCH = "v257-stable" | ||
| 17 | SRC_URI = "git://github.com/systemd/systemd.git;protocol=https;branch=${SRCBRANCH}" | ||
| 18 | |||
| 19 | S = "${WORKDIR}/git" | ||
| 20 | |||
| 21 | DEPENDS = " \ | ||
| 22 | cryptsetup-native \ | ||
| 23 | gperf-native \ | ||
| 24 | libcap \ | ||
| 25 | python3-jinja2-native \ | ||
| 26 | util-linux \ | ||
| 27 | " | ||
| 28 | |||
| 29 | inherit meson pkgconfig gettext native | ||
| 30 | |||
| 31 | MESON_TARGET = "systemd-repart" | ||
| 32 | |||
| 33 | # Helper variables to clarify locations. This mirrors the logic in systemd's | ||
| 34 | # build system. | ||
| 35 | rootprefix ?= "${root_prefix}" | ||
| 36 | rootlibdir ?= "${base_libdir}" | ||
| 37 | rootlibexecdir = "${rootprefix}/lib" | ||
| 38 | |||
| 39 | EXTRA_OEMESON += "-Dnobody-user=nobody \ | ||
| 40 | -Dnobody-group=nogroup \ | ||
| 41 | -Drootlibdir=${rootlibdir} \ | ||
| 42 | -Drootprefix=${rootprefix} \ | ||
| 43 | -Ddefault-locale=C \ | ||
| 44 | -Dmode=release \ | ||
| 45 | -Dsystem-alloc-uid-min=101 \ | ||
| 46 | -Dsystem-uid-max=999 \ | ||
| 47 | -Dsystem-alloc-gid-min=101 \ | ||
| 48 | -Dsystem-gid-max=999 \ | ||
| 49 | " | ||
| 50 | |||
| 51 | do_install() { | ||
| 52 | install -d ${D}${bindir}/ | ||
| 53 | install -m 0755 ${B}/systemd-repart ${D}${bindir}/systemd-repart | ||
| 54 | install -d ${D}${libdir}/ | ||
| 55 | install -m 0644 ${B}/src/shared/libsystemd-shared-257.so ${D}${libdir}/libsystemd-shared-257.so | ||
| 56 | |||
| 57 | install -d ${D}${libdir}/systemd/repart/ | ||
| 58 | cp -r ${S}/src/repart/definitions ${D}${libdir}/systemd/repart/ | ||
| 59 | } | ||
