* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-08-02 23:40 Sam James
0 siblings, 0 replies; 9+ messages in thread
From: Sam James @ 2022-08-02 23:40 UTC (permalink / raw
To: gentoo-commits
commit: a70524f6112e0bd88cbc3c84b77f393e4f6944f5
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 2 23:40:20 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 2 23:40:27 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a70524f6
sys-apps/systemd-utils: fix build w/ glibc 2.36
Closes: https://bugs.gentoo.org/863218
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-apps/systemd-utils/files/251-glibc-2.36.patch | 154 ++++++++++++++++++++++
sys-apps/systemd-utils/systemd-utils-251.3.ebuild | 3 +
2 files changed, 157 insertions(+)
diff --git a/sys-apps/systemd-utils/files/251-glibc-2.36.patch b/sys-apps/systemd-utils/files/251-glibc-2.36.patch
new file mode 100644
index 000000000000..65693d747ca3
--- /dev/null
+++ b/sys-apps/systemd-utils/files/251-glibc-2.36.patch
@@ -0,0 +1,154 @@
+https://bugs.gentoo.org/863218
+https://github.com/systemd/systemd/issues/23984
+https://github.com/systemd/systemd/commit/3657d3a01c7e25ff86d7a4642065b367c4ff7484
+https://github.com/systemd/systemd/commit/0a58cd00454cc7b57b04f3a4a334584d743d7f7a
+
+From: Rudi Heitbaum <rudi@heitbaum.com>
+Date: Sat, 23 Jul 2022 10:38:49 +0000
+Subject: [PATCH] glibc: Remove #include <linux/fs.h> to resolve
+ fsconfig_command/mount_attr conflict with glibc 2.36
+
+--- a/meson.build
++++ b/meson.build
+@@ -511,7 +511,6 @@ decl_headers = '''
+ #include <uchar.h>
+ #include <sys/mount.h>
+ #include <sys/stat.h>
+-#include <linux/fs.h>
+ '''
+
+ foreach decl : ['char16_t',
+@@ -523,6 +522,17 @@ foreach decl : ['char16_t',
+ # We get -1 if the size cannot be determined
+ have = cc.sizeof(decl, prefix : decl_headers, args : '-D_GNU_SOURCE') > 0
+
++ if decl == 'struct mount_attr'
++ if have
++ want_linux_fs_h = false
++ else
++ have = cc.sizeof(decl,
++ prefix : decl_headers + '#include <linux/fs.h>',
++ args : '-D_GNU_SOURCE') > 0
++ want_linux_fs_h = have
++ endif
++ endif
++
+ if decl == 'struct statx'
+ if have
+ want_linux_stat_h = false
+@@ -538,6 +548,7 @@ foreach decl : ['char16_t',
+ endforeach
+
+ conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h)
++conf.set10('WANT_LINUX_FS_H', want_linux_fs_h)
+
+ foreach ident : ['secure_getenv', '__secure_getenv']
+ conf.set10('HAVE_' + ident.to_upper(), cc.has_function(ident))
+--- a/src/basic/fd-util.c
++++ b/src/basic/fd-util.c
+@@ -3,7 +3,9 @@
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <linux/btrfs.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+ #include <linux/magic.h>
+ #include <sys/ioctl.h>
+ #include <sys/resource.h>
+--- a/src/core/namespace.c
++++ b/src/core/namespace.c
+@@ -7,7 +7,9 @@
+ #include <sys/file.h>
+ #include <sys/mount.h>
+ #include <unistd.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+
+ #include "alloc-util.h"
+ #include "base-filesystem.h"
+--- a/src/shared/mount-util.c
++++ b/src/shared/mount-util.c
+@@ -7,7 +7,9 @@
+ #include <sys/statvfs.h>
+ #include <unistd.h>
+ #include <linux/loop.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+
+ #include "alloc-util.h"
+ #include "chase-symlinks.h"
+
+From 0a58cd00454cc7b57b04f3a4a334584d743d7f7a Mon Sep 17 00:00:00 2001
+From: Yu Watanabe <watanabe.yu+github@gmail.com>
+Date: Tue, 26 Jul 2022 20:03:12 +0900
+Subject: [PATCH] home: drop conflicted headers
+
+Fixes #24117.
+--- a/src/basic/missing_fs.h
++++ b/src/basic/missing_fs.h
+@@ -64,3 +64,8 @@
+ #ifndef FS_PROJINHERIT_FL
+ #define FS_PROJINHERIT_FL 0x20000000
+ #endif
++
++/* linux/fscrypt.h */
++#ifndef FS_KEY_DESCRIPTOR_SIZE
++#define FS_KEY_DESCRIPTOR_SIZE 8
++#endif
+--- a/src/home/homework-cifs.c
++++ b/src/home/homework-cifs.c
+@@ -1,5 +1,10 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+
++#include <sys/mount.h>
++#if WANT_LINUX_FS_H
++#include <linux/fs.h>
++#endif
++
+ #include "dirent-util.h"
+ #include "fd-util.h"
+ #include "fileio.h"
+--- a/src/home/homework-luks.c
++++ b/src/home/homework-luks.c
+@@ -4,7 +4,6 @@
+ #include <poll.h>
+ #include <sys/file.h>
+ #include <sys/ioctl.h>
+-#include <sys/mount.h>
+ #include <sys/xattr.h>
+
+ #if HAVE_VALGRIND_MEMCHECK_H
+--- a/src/home/homework-mount.c
++++ b/src/home/homework-mount.c
+@@ -2,7 +2,9 @@
+
+ #include <sched.h>
+ #include <sys/mount.h>
++#if WANT_LINUX_FS_H
+ #include <linux/fs.h>
++#endif
+
+ #include "alloc-util.h"
+ #include "fd-util.h"
+--- a/src/home/homework.h
++++ b/src/home/homework.h
+@@ -1,13 +1,14 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+ #pragma once
+
+-#include <linux/fs.h>
+ #include <sys/vfs.h>
+
+ #include "sd-id128.h"
+
++#include "cryptsetup-util.h"
+ #include "homework-password-cache.h"
+ #include "loop-util.h"
++#include "missing_fs.h" /* for FS_KEY_DESCRIPTOR_SIZE, do not include linux/fs.h */
+ #include "missing_keyctl.h"
+ #include "missing_syscall.h"
+ #include "user-record.h"
+
diff --git a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild b/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
index 21ec7a6de8f9..277f36c6be9c 100644
--- a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
@@ -105,7 +105,10 @@ QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
src_prepare() {
local PATCHES=(
+ # bug #863218
+ "${FILESDIR}/251-glibc-2.36.patch"
)
+
if use elibc_musl; then
PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
# Applied upstream in 251.3
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-09-18 15:52 Mike Gilbert
0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2022-09-18 15:52 UTC (permalink / raw
To: gentoo-commits
commit: e58e5928b9db0e3fab21848ff6916b1d1a00664a
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 18 15:50:02 2022 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Sep 18 15:52:35 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e58e5928
sys-apps/systemd-utils: drop 250.7, 250.8, 251.2-r1, 251.3, 251.4
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd-utils/Manifest | 5 -
.../250.4-test-systemd-tmpfiles.standalone.patch | 40 --
sys-apps/systemd-utils/files/251-glibc-2.36.patch | 154 ------
sys-apps/systemd-utils/systemd-utils-250.7.ebuild | 500 --------------------
sys-apps/systemd-utils/systemd-utils-250.8.ebuild | 500 --------------------
.../systemd-utils/systemd-utils-251.2-r1.ebuild | 511 --------------------
sys-apps/systemd-utils/systemd-utils-251.3.ebuild | 516 ---------------------
sys-apps/systemd-utils/systemd-utils-251.4.ebuild | 514 --------------------
8 files changed, 2740 deletions(-)
diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
index ba1726b9a6b2..00326fafab24 100644
--- a/sys-apps/systemd-utils/Manifest
+++ b/sys-apps/systemd-utils/Manifest
@@ -1,7 +1,2 @@
-DIST systemd-musl-patches-250.4.tar.gz 28065 BLAKE2B b8366c4bb29705e3f41f07d0105c4d252d543aaac178e968663660eeb573da034813aa50a96c74ac78ae5efeea379e00df33c5a039ec828cf93450ed23786252 SHA512 66e41fab1873021913c32e3f43300ea7babd18a36e6543838ab7fab4c44f5590c6a7414dd50c7ee81e5513b0e5aa01cb6df4231e8e06c609d63011a32b524213
DIST systemd-musl-patches-251.2.tar.gz 28512 BLAKE2B 4ac6a5220dab8409962a3954af2fb2484af718d0f282129957236ce241fbe8538a90d507a96c7c3d86f4f408ab784a6888b37486405d3276e7734a1bd5aa9680 SHA512 6e56b62234ac54929faea5a7cad699d0b932f869b48e3ba4e1f349a88653b7c787efec24a09b00290c3dc566614e3c1dc2f3c04f04e943f513108a91eca1be82
-DIST systemd-stable-250.7.tar.gz 11214975 BLAKE2B 5d94b4b1f8b0cd6e8284a89ac0d4bd373eccdad2c3d6e6c453df79c8df47ee0f9cfbde764b72b1f9d172d07e2d9f1f1f41c1ab254cf4abd0722469ebc3ad7cf8 SHA512 99bc6f0c9757b280cb694f3fb4d6fe04d5ce55583eb2bae5ddeb324bb5ee9930c1720fcc27293d90cddba188473653ec541a471ae8115710a5850c26d0ba215d
-DIST systemd-stable-250.8.tar.gz 11215608 BLAKE2B 2a66a2d8cb70f265b59640ace907b8d927018fe11c8977e134a33d67683f06b26c1eb3fd5afe40431bc2c15827ba60c46a37ff1a0a4c716dd24b73aca1583d00 SHA512 653f527f10779a31213da06f7587a3617bd4b823bd3e5a43d626c5a4a7301e4a0fb42cf1fd056d28af6d87e52f258da59d5f0d4a2d98076905f9d3fcda6d18fd
-DIST systemd-stable-251.2.tar.gz 11434645 BLAKE2B a7e118649a7d27b789206ea9f6f2d0314e44561367506ee763a9e98fb97579b3fc49c7a402c8da142945dc98444558f0e311557f52c50863cebc7532c17c651f SHA512 0c4011b685a1e8d535af123cbaf79ab53d59ea665ca5350ab1077ad4e962b49c1fd5b1b5bb3f28c3e28145dfd02aa83023f78de5edec15afe84e3e06e742a67c
-DIST systemd-stable-251.3.tar.gz 11435458 BLAKE2B 544238536848ab390b2476d5ad95d33998674be50020b8db0627bb9d0c86be6576c404ce786b01ceec86f1c75b174c6fc2d7e0d7fbab802a78f48c9d0915c2b8 SHA512 fb5b8dc1742562ef95469e90d406cfb6dfcb337860ad1208b460414b88ff0565071bde797d195faa62761206abc881829de6b1009e5d727cad2dfe0764310d5f
DIST systemd-stable-251.4.tar.gz 11440203 BLAKE2B 58a0ee4adcc9d35b15b9cc98b3da81d1103b61a6c0bee722468a5113cd7d6de1d40c46ef964ba9ecc4746e81b516ae4b2f1d046874d62db066735c652592612e SHA512 7bbfadd80b88a4c3510a5e4e3572e4eab71dafbf6289da038e552988e09ee8da16da3c9bb8a4fbbde6c6236e0e3c352b0a33f9ee0b84f10241f3499383387738
diff --git a/sys-apps/systemd-utils/files/250.4-test-systemd-tmpfiles.standalone.patch b/sys-apps/systemd-utils/files/250.4-test-systemd-tmpfiles.standalone.patch
deleted file mode 100644
index a915cbb43115..000000000000
--- a/sys-apps/systemd-utils/files/250.4-test-systemd-tmpfiles.standalone.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 55bf689308ed00692494d3623bd2064f33c9bbbe Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Sun, 17 Apr 2022 09:48:28 -0400
-Subject: [PATCH] Add test support for systemd-tmpfiles.standalone
-
----
- meson.build | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 458370e83d..d60be1b050 100644
---- a/meson.build
-+++ b/meson.build
-@@ -3451,7 +3451,7 @@ if conf.get('ENABLE_TMPFILES') == 1
- endif
-
- if have_standalone_binaries
-- public_programs += executable(
-+ exe = executable(
- 'systemd-tmpfiles.standalone',
- systemd_tmpfiles_sources,
- include_directories : includes,
-@@ -3463,6 +3463,14 @@ if conf.get('ENABLE_TMPFILES') == 1
- dependencies : [libacl],
- install : true,
- install_dir : rootbindir)
-+ public_programs += exe
-+
-+ if want_tests != 'false'
-+ test('test-systemd-tmpfiles.standalone',
-+ test_systemd_tmpfiles_py,
-+ # https://github.com/mesonbuild/meson/issues/2681
-+ args : exe.full_path())
-+ endif
- endif
- endif
-
---
-2.35.1
-
diff --git a/sys-apps/systemd-utils/files/251-glibc-2.36.patch b/sys-apps/systemd-utils/files/251-glibc-2.36.patch
deleted file mode 100644
index 65693d747ca3..000000000000
--- a/sys-apps/systemd-utils/files/251-glibc-2.36.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-https://bugs.gentoo.org/863218
-https://github.com/systemd/systemd/issues/23984
-https://github.com/systemd/systemd/commit/3657d3a01c7e25ff86d7a4642065b367c4ff7484
-https://github.com/systemd/systemd/commit/0a58cd00454cc7b57b04f3a4a334584d743d7f7a
-
-From: Rudi Heitbaum <rudi@heitbaum.com>
-Date: Sat, 23 Jul 2022 10:38:49 +0000
-Subject: [PATCH] glibc: Remove #include <linux/fs.h> to resolve
- fsconfig_command/mount_attr conflict with glibc 2.36
-
---- a/meson.build
-+++ b/meson.build
-@@ -511,7 +511,6 @@ decl_headers = '''
- #include <uchar.h>
- #include <sys/mount.h>
- #include <sys/stat.h>
--#include <linux/fs.h>
- '''
-
- foreach decl : ['char16_t',
-@@ -523,6 +522,17 @@ foreach decl : ['char16_t',
- # We get -1 if the size cannot be determined
- have = cc.sizeof(decl, prefix : decl_headers, args : '-D_GNU_SOURCE') > 0
-
-+ if decl == 'struct mount_attr'
-+ if have
-+ want_linux_fs_h = false
-+ else
-+ have = cc.sizeof(decl,
-+ prefix : decl_headers + '#include <linux/fs.h>',
-+ args : '-D_GNU_SOURCE') > 0
-+ want_linux_fs_h = have
-+ endif
-+ endif
-+
- if decl == 'struct statx'
- if have
- want_linux_stat_h = false
-@@ -538,6 +548,7 @@ foreach decl : ['char16_t',
- endforeach
-
- conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h)
-+conf.set10('WANT_LINUX_FS_H', want_linux_fs_h)
-
- foreach ident : ['secure_getenv', '__secure_getenv']
- conf.set10('HAVE_' + ident.to_upper(), cc.has_function(ident))
---- a/src/basic/fd-util.c
-+++ b/src/basic/fd-util.c
-@@ -3,7 +3,9 @@
- #include <errno.h>
- #include <fcntl.h>
- #include <linux/btrfs.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
- #include <linux/magic.h>
- #include <sys/ioctl.h>
- #include <sys/resource.h>
---- a/src/core/namespace.c
-+++ b/src/core/namespace.c
-@@ -7,7 +7,9 @@
- #include <sys/file.h>
- #include <sys/mount.h>
- #include <unistd.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
-
- #include "alloc-util.h"
- #include "base-filesystem.h"
---- a/src/shared/mount-util.c
-+++ b/src/shared/mount-util.c
-@@ -7,7 +7,9 @@
- #include <sys/statvfs.h>
- #include <unistd.h>
- #include <linux/loop.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
-
- #include "alloc-util.h"
- #include "chase-symlinks.h"
-
-From 0a58cd00454cc7b57b04f3a4a334584d743d7f7a Mon Sep 17 00:00:00 2001
-From: Yu Watanabe <watanabe.yu+github@gmail.com>
-Date: Tue, 26 Jul 2022 20:03:12 +0900
-Subject: [PATCH] home: drop conflicted headers
-
-Fixes #24117.
---- a/src/basic/missing_fs.h
-+++ b/src/basic/missing_fs.h
-@@ -64,3 +64,8 @@
- #ifndef FS_PROJINHERIT_FL
- #define FS_PROJINHERIT_FL 0x20000000
- #endif
-+
-+/* linux/fscrypt.h */
-+#ifndef FS_KEY_DESCRIPTOR_SIZE
-+#define FS_KEY_DESCRIPTOR_SIZE 8
-+#endif
---- a/src/home/homework-cifs.c
-+++ b/src/home/homework-cifs.c
-@@ -1,5 +1,10 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
-
-+#include <sys/mount.h>
-+#if WANT_LINUX_FS_H
-+#include <linux/fs.h>
-+#endif
-+
- #include "dirent-util.h"
- #include "fd-util.h"
- #include "fileio.h"
---- a/src/home/homework-luks.c
-+++ b/src/home/homework-luks.c
-@@ -4,7 +4,6 @@
- #include <poll.h>
- #include <sys/file.h>
- #include <sys/ioctl.h>
--#include <sys/mount.h>
- #include <sys/xattr.h>
-
- #if HAVE_VALGRIND_MEMCHECK_H
---- a/src/home/homework-mount.c
-+++ b/src/home/homework-mount.c
-@@ -2,7 +2,9 @@
-
- #include <sched.h>
- #include <sys/mount.h>
-+#if WANT_LINUX_FS_H
- #include <linux/fs.h>
-+#endif
-
- #include "alloc-util.h"
- #include "fd-util.h"
---- a/src/home/homework.h
-+++ b/src/home/homework.h
-@@ -1,13 +1,14 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
- #pragma once
-
--#include <linux/fs.h>
- #include <sys/vfs.h>
-
- #include "sd-id128.h"
-
-+#include "cryptsetup-util.h"
- #include "homework-password-cache.h"
- #include "loop-util.h"
-+#include "missing_fs.h" /* for FS_KEY_DESCRIPTOR_SIZE, do not include linux/fs.h */
- #include "missing_keyctl.h"
- #include "missing_syscall.h"
- #include "user-record.h"
-
diff --git a/sys-apps/systemd-utils/systemd-utils-250.7.ebuild b/sys-apps/systemd-utils/systemd-utils-250.7.ebuild
deleted file mode 100644
index 7c1f1c2f6a75..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-250.7.ebuild
+++ /dev/null
@@ -1,500 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
- MY_P="systemd-stable-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
- MY_P="systemd-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-250.4"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- selinux? ( sys-libs/libselinux:0= )
- tmpfiles? (
- acl? ( sys-apps/acl:0= )
- )
- udev? (
- >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- virtual/libcrypt:=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- kmod? ( >=sys-apps/kmod-15:0= )
- )
- !udev? (
- >=sys-apps/util-linux-2.30:0=
- sys-libs/libcap:0=
- virtual/libcrypt:=
- )
-"
-DEPEND="${COMMON_DEPEND}
- boot? (
- >=sys-boot/gnu-efi-3.0.2
- )
- >=sys-kernel/linux-headers-3.11
-"
-RDEPEND="${COMMON_DEPEND}
- boot? ( !<sys-boot/systemd-boot-250 )
- tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
- udev? (
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kmem
- acct-group/kvm
- acct-group/lp
- acct-group/render
- acct-group/sgx
- acct-group/tape
- acct-group/tty
- acct-group/video
- !sys-apps/gentoo-systemd-integration
- !sys-apps/hwids[udev]
- !<sys-fs/udev-250
- !sys-fs/eudev
- )
- !sys-apps/systemd
-"
-PDEPEND="
- udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- >=sys-apps/coreutils-8.16
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
- has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
- local PATCHES=(
- "${FILESDIR}/250.4-test-systemd-tmpfiles.standalone.patch"
- )
- if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
- fi
- default
-
- # Remove install_rpath; we link statically
- local rpath_pattern="install_rpath : rootlibexecdir,"
- grep -q -e "${rpath_pattern}" meson.build || die
- sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
- # When bumping to 251, please keep this, but add the revert patch
- # like in sys-apps/systemd!
- #
- # Broken with FORTIFY_SOURCE=3 without a patch. And the patch
- # wasn't backported to 250.x, but it turns out to break Clang
- # anyway: bug #841770.
- #
- # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
- # to unset F_S first, then explicitly set 2, to negate any default
- # and anything set by the user if they're choosing 3 (or if they've
- # modified GCC to set 3).
- #
- if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
- # We can't unconditionally do this b/c we fortify needs
- # some level of optimisation.
- filter-flags -D_FORTIFY_SOURCE=3
- append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
- fi
-
- local emesonargs=(
- -Drootprefix="${EPREFIX:-/}"
- -Dsysvinit-path=
- $(meson_native_use_bool boot efi)
- $(meson_native_use_bool boot gnu-efi)
- $(meson_native_use_bool selinux)
- $(meson_native_use_bool sysusers)
- $(meson_use test tests)
- $(meson_native_use_bool tmpfiles)
- $(meson_use udev hwdb)
-
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
- # Link staticly with libsystemd-shared
- -Dlink-boot-shared=false
- -Dlink-udev-shared=false
-
- # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
- -Dstandalone-binaries=true
-
- # Disable all optional features
- -Dadm-group=false
- -Danalyze=false
- -Dapparmor=false
- -Daudit=false
- -Dbacklight=false
- -Dbinfmt=false
- -Dbzip2=false
- -Dcoredump=false
- -Ddbus=false
- -Delfutils=false
- -Denvironment-d=false
- -Dfdisk=false
- -Dgcrypt=false
- -Dglib=false
- -Dgshadow=false
- -Dgnutls=false
- -Dhibernate=false
- -Dhostnamed=false
- -Didn=false
- -Dima=false
- -Dinitrd=false
- -Dfirstboot=false
- -Dkernel-install=false
- -Dldconfig=false
- -Dlibcryptsetup=false
- -Dlibcurl=false
- -Dlibfido2=false
- -Dlibidn=false
- -Dlibidn2=false
- -Dlibiptc=false
- -Dlocaled=false
- -Dlogind=false
- -Dlz4=false
- -Dmachined=false
- -Dmicrohttpd=false
- -Dnetworkd=false
- -Dnscd=false
- -Dnss-myhostname=false
- -Dnss-resolve=false
- -Dnss-systemd=false
- -Doomd=false
- -Dopenssl=false
- -Dp11kit=false
- -Dpam=false
- -Dpcre2=false
- -Dpolkit=false
- -Dportabled=false
- -Dpstore=false
- -Dpwquality=false
- -Drandomseed=false
- -Dresolve=false
- -Drfkill=false
- -Dseccomp=false
- -Dsmack=false
- -Dsysext=false
- -Dtimedated=false
- -Dtimesyncd=false
- -Dtpm=false
- -Dqrencode=false
- -Dquotacheck=false
- -Duserdb=false
- -Dutmp=false
- -Dvconsole=false
- -Dwheel-group=false
- -Dxdg-autostart=false
- -Dxkbcommon=false
- -Dxz=false
- -Dzlib=false
- -Dzstd=false
- )
-
- if use tmpfiles || use udev; then
- emesonargs+=( $(meson_native_use_bool acl) )
- else
- emesonargs+=( -Dacl=false )
- fi
-
- if use udev; then
- emesonargs+=( $(meson_native_use_bool kmod) )
- else
- emesonargs+=( -Dkmod=false )
- fi
-
- if use elibc_musl; then
- # Avoid redefinition of struct ethhdr.
- append-cppflags -D__UAPI_DEF_ETHHDR=0
- fi
-
- if multilib_is_native_abi || use udev; then
- meson_src_configure
- fi
-}
-
-efi_arch() {
- case "$(tc-arch)" in
- amd64) echo x64 ;;
- arm) echo arm ;;
- arm64) echo aa64 ;;
- x86) echo x86 ;;
- esac
-}
-
-multilib_src_compile() {
- local targets=()
- if multilib_is_native_abi; then
- if use boot; then
- targets+=(
- bootctl
- man/bootctl.1
- man/kernel-install.8
- src/boot/efi/linux$(efi_arch).{efi,elf}.stub
- src/boot/efi/systemd-boot$(efi_arch).efi
- )
- fi
- if use sysusers; then
- targets+=(
- systemd-sysusers.standalone
- man/sysusers.d.5
- man/systemd-sysusers.8
- )
- if use test; then
- targets+=(
- systemd-runtest.env
- )
- fi
- fi
- if use tmpfiles; then
- targets+=(
- systemd-tmpfiles.standalone
- man/tmpfiles.d.5
- man/systemd-tmpfiles.8
- )
- if use test; then
- targets+=( test-tmpfiles )
- fi
- fi
- if use udev; then
- targets+=(
- udevadm
- systemd-hwdb
- src/udev/ata_id
- src/udev/cdrom_id
- src/udev/fido_id
- src/udev/mtd_probe
- src/udev/scsi_id
- src/udev/udev.pc
- src/udev/v4l_id
- man/udev.conf.5
- man/systemd.link.5
- man/hwdb.7
- man/udev.7
- man/systemd-hwdb.8
- man/systemd-udevd.service.8
- man/udevadm.8
- hwdb.d/60-autosuspend-chromiumos.hwdb
- rules.d/50-udev-default.rules
- rules.d/64-btrfs.rules
- )
- if use test; then
- targets+=(
- # Used by udev-test.pl
- systemd-detect-virt
- test/sys
- test-udev
-
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- fi
- fi
- fi
- if use udev; then
- targets+=(
- udev:shared_library
- src/libudev/libudev.pc
- )
- if use test; then
- targets+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- fi
- if multilib_is_native_abi || use udev; then
- meson_src_compile "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- local tests=()
- if multilib_is_native_abi; then
- if use sysusers; then
- tests+=(
- test-sysusers.standalone
- )
- fi
- if use tmpfiles; then
- tests+=(
- test-systemd-tmpfiles.standalone
- test-tmpfiles
- )
- fi
- if use udev; then
- tests+=(
- rule-syntax-check
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- if [[ -w /dev ]]; then
- tests+=( udev-test )
- else
- ewarn "Skipping udev-test (needs write access to /dev)"
- fi
- fi
- fi
- if use udev; then
- tests+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- if [[ ${#tests[@]} -ne 0 ]]; then
- meson_src_test "${tests[@]}"
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- if use boot; then
- into /usr
- dobin bootctl
- doman man/{bootctl.1,kernel-install.8}
- insinto usr/lib/systemd/boot/efi
- doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
- fi
- if use sysusers; then
- into /
- newbin systemd-sysusers{.standalone,}
- doman man/{systemd-sysusers.8,sysusers.d.5}
- fi
- if use tmpfiles; then
- into /
- newbin systemd-tmpfiles{.standalone,}
- doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
- fi
- if use udev; then
- into /
- dobin udevadm systemd-hwdb
- dosym ../../bin/udevadm /lib/systemd/systemd-udevd
- exeinto /lib/udev
- doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
- insinto /usr/share/pkgconfig
- doins src/udev/udev.pc
- doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
- newman man/systemd-udevd.service.8 systemd-udevd.8
-
- fi
- fi
- if use udev; then
- into /usr
- dolib.so "$(readlink libudev.so.1)" libudev.so{.1,}
- gen_usr_ldscript -a udev
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins src/libudev/libudev.pc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- if use boot; then
- into /usr
- dobin src/kernel-install/kernel-install
- exeinto usr/lib/kernel/install.d
- doexe src/kernel-install/*.install
- dobashcomp shell-completion/bash/bootctl
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/{_bootctl,_kernel-install}
- fi
- if use tmpfiles; then
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_systemd-tmpfiles
- fi
- if use udev; then
- doheader src/libudev/libudev.h
- insinto /etc/udev
- doins src/udev/udev.conf
- keepdir /etc/udev/{hwdb.d,rules.d}
- insinto /lib/systemd/network
- doins network/99-default.link
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- doins "${FILESDIR}"/40-gentoo.rules
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
- dobashcomp shell-completion/bash/udevadm
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_udevadm
- fi
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
- mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
- ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
- eend $?
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- add_service systemd-tmpfiles-setup-dev sysinit
- add_service systemd-tmpfiles-setup boot
- fi
- if use udev; then
- ebegin "Updating hwdb"
- systemd-hwdb --root="${ROOT}" update
- eend $?
- udev_reload
- fi
-}
diff --git a/sys-apps/systemd-utils/systemd-utils-250.8.ebuild b/sys-apps/systemd-utils/systemd-utils-250.8.ebuild
deleted file mode 100644
index 9afc4a2e8c10..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-250.8.ebuild
+++ /dev/null
@@ -1,500 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
- MY_P="systemd-stable-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
- MY_P="systemd-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-250.4"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- selinux? ( sys-libs/libselinux:0= )
- tmpfiles? (
- acl? ( sys-apps/acl:0= )
- )
- udev? (
- >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- virtual/libcrypt:=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- kmod? ( >=sys-apps/kmod-15:0= )
- )
- !udev? (
- >=sys-apps/util-linux-2.30:0=
- sys-libs/libcap:0=
- virtual/libcrypt:=
- )
-"
-DEPEND="${COMMON_DEPEND}
- boot? (
- >=sys-boot/gnu-efi-3.0.2
- )
- >=sys-kernel/linux-headers-3.11
-"
-RDEPEND="${COMMON_DEPEND}
- boot? ( !<sys-boot/systemd-boot-250 )
- tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
- udev? (
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kmem
- acct-group/kvm
- acct-group/lp
- acct-group/render
- acct-group/sgx
- acct-group/tape
- acct-group/tty
- acct-group/video
- !sys-apps/gentoo-systemd-integration
- !sys-apps/hwids[udev]
- !<sys-fs/udev-250
- !sys-fs/eudev
- )
- !sys-apps/systemd
-"
-PDEPEND="
- udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- >=sys-apps/coreutils-8.16
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
- has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
- local PATCHES=(
- "${FILESDIR}/250.4-test-systemd-tmpfiles.standalone.patch"
- )
- if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
- fi
- default
-
- # Remove install_rpath; we link statically
- local rpath_pattern="install_rpath : rootlibexecdir,"
- grep -q -e "${rpath_pattern}" meson.build || die
- sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
- # When bumping to 251, please keep this, but add the revert patch
- # like in sys-apps/systemd!
- #
- # Broken with FORTIFY_SOURCE=3 without a patch. And the patch
- # wasn't backported to 250.x, but it turns out to break Clang
- # anyway: bug #841770.
- #
- # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
- # to unset F_S first, then explicitly set 2, to negate any default
- # and anything set by the user if they're choosing 3 (or if they've
- # modified GCC to set 3).
- #
- if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
- # We can't unconditionally do this b/c we fortify needs
- # some level of optimisation.
- filter-flags -D_FORTIFY_SOURCE=3
- append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
- fi
-
- local emesonargs=(
- -Drootprefix="${EPREFIX:-/}"
- -Dsysvinit-path=
- $(meson_native_use_bool boot efi)
- $(meson_native_use_bool boot gnu-efi)
- $(meson_native_use_bool selinux)
- $(meson_native_use_bool sysusers)
- $(meson_use test tests)
- $(meson_native_use_bool tmpfiles)
- $(meson_use udev hwdb)
-
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
- # Link staticly with libsystemd-shared
- -Dlink-boot-shared=false
- -Dlink-udev-shared=false
-
- # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
- -Dstandalone-binaries=true
-
- # Disable all optional features
- -Dadm-group=false
- -Danalyze=false
- -Dapparmor=false
- -Daudit=false
- -Dbacklight=false
- -Dbinfmt=false
- -Dbzip2=false
- -Dcoredump=false
- -Ddbus=false
- -Delfutils=false
- -Denvironment-d=false
- -Dfdisk=false
- -Dgcrypt=false
- -Dglib=false
- -Dgshadow=false
- -Dgnutls=false
- -Dhibernate=false
- -Dhostnamed=false
- -Didn=false
- -Dima=false
- -Dinitrd=false
- -Dfirstboot=false
- -Dkernel-install=false
- -Dldconfig=false
- -Dlibcryptsetup=false
- -Dlibcurl=false
- -Dlibfido2=false
- -Dlibidn=false
- -Dlibidn2=false
- -Dlibiptc=false
- -Dlocaled=false
- -Dlogind=false
- -Dlz4=false
- -Dmachined=false
- -Dmicrohttpd=false
- -Dnetworkd=false
- -Dnscd=false
- -Dnss-myhostname=false
- -Dnss-resolve=false
- -Dnss-systemd=false
- -Doomd=false
- -Dopenssl=false
- -Dp11kit=false
- -Dpam=false
- -Dpcre2=false
- -Dpolkit=false
- -Dportabled=false
- -Dpstore=false
- -Dpwquality=false
- -Drandomseed=false
- -Dresolve=false
- -Drfkill=false
- -Dseccomp=false
- -Dsmack=false
- -Dsysext=false
- -Dtimedated=false
- -Dtimesyncd=false
- -Dtpm=false
- -Dqrencode=false
- -Dquotacheck=false
- -Duserdb=false
- -Dutmp=false
- -Dvconsole=false
- -Dwheel-group=false
- -Dxdg-autostart=false
- -Dxkbcommon=false
- -Dxz=false
- -Dzlib=false
- -Dzstd=false
- )
-
- if use tmpfiles || use udev; then
- emesonargs+=( $(meson_native_use_bool acl) )
- else
- emesonargs+=( -Dacl=false )
- fi
-
- if use udev; then
- emesonargs+=( $(meson_native_use_bool kmod) )
- else
- emesonargs+=( -Dkmod=false )
- fi
-
- if use elibc_musl; then
- # Avoid redefinition of struct ethhdr.
- append-cppflags -D__UAPI_DEF_ETHHDR=0
- fi
-
- if multilib_is_native_abi || use udev; then
- meson_src_configure
- fi
-}
-
-efi_arch() {
- case "$(tc-arch)" in
- amd64) echo x64 ;;
- arm) echo arm ;;
- arm64) echo aa64 ;;
- x86) echo x86 ;;
- esac
-}
-
-multilib_src_compile() {
- local targets=()
- if multilib_is_native_abi; then
- if use boot; then
- targets+=(
- bootctl
- man/bootctl.1
- man/kernel-install.8
- src/boot/efi/linux$(efi_arch).{efi,elf}.stub
- src/boot/efi/systemd-boot$(efi_arch).efi
- )
- fi
- if use sysusers; then
- targets+=(
- systemd-sysusers.standalone
- man/sysusers.d.5
- man/systemd-sysusers.8
- )
- if use test; then
- targets+=(
- systemd-runtest.env
- )
- fi
- fi
- if use tmpfiles; then
- targets+=(
- systemd-tmpfiles.standalone
- man/tmpfiles.d.5
- man/systemd-tmpfiles.8
- )
- if use test; then
- targets+=( test-tmpfiles )
- fi
- fi
- if use udev; then
- targets+=(
- udevadm
- systemd-hwdb
- src/udev/ata_id
- src/udev/cdrom_id
- src/udev/fido_id
- src/udev/mtd_probe
- src/udev/scsi_id
- src/udev/udev.pc
- src/udev/v4l_id
- man/udev.conf.5
- man/systemd.link.5
- man/hwdb.7
- man/udev.7
- man/systemd-hwdb.8
- man/systemd-udevd.service.8
- man/udevadm.8
- hwdb.d/60-autosuspend-chromiumos.hwdb
- rules.d/50-udev-default.rules
- rules.d/64-btrfs.rules
- )
- if use test; then
- targets+=(
- # Used by udev-test.pl
- systemd-detect-virt
- test/sys
- test-udev
-
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- fi
- fi
- fi
- if use udev; then
- targets+=(
- udev:shared_library
- src/libudev/libudev.pc
- )
- if use test; then
- targets+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- fi
- if multilib_is_native_abi || use udev; then
- meson_src_compile "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- local tests=()
- if multilib_is_native_abi; then
- if use sysusers; then
- tests+=(
- test-sysusers.standalone
- )
- fi
- if use tmpfiles; then
- tests+=(
- test-systemd-tmpfiles.standalone
- test-tmpfiles
- )
- fi
- if use udev; then
- tests+=(
- rule-syntax-check
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- if [[ -w /dev ]]; then
- tests+=( udev-test )
- else
- ewarn "Skipping udev-test (needs write access to /dev)"
- fi
- fi
- fi
- if use udev; then
- tests+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- if [[ ${#tests[@]} -ne 0 ]]; then
- meson_src_test "${tests[@]}"
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- if use boot; then
- into /usr
- dobin bootctl
- doman man/{bootctl.1,kernel-install.8}
- insinto usr/lib/systemd/boot/efi
- doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
- fi
- if use sysusers; then
- into /
- newbin systemd-sysusers{.standalone,}
- doman man/{systemd-sysusers.8,sysusers.d.5}
- fi
- if use tmpfiles; then
- into /
- newbin systemd-tmpfiles{.standalone,}
- doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
- fi
- if use udev; then
- into /
- dobin udevadm systemd-hwdb
- dosym ../../bin/udevadm /lib/systemd/systemd-udevd
- exeinto /lib/udev
- doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
- insinto /usr/share/pkgconfig
- doins src/udev/udev.pc
- doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
- newman man/systemd-udevd.service.8 systemd-udevd.8
-
- fi
- fi
- if use udev; then
- into /usr
- dolib.so "$(readlink libudev.so.1)" libudev.so{.1,}
- gen_usr_ldscript -a udev
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins src/libudev/libudev.pc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- if use boot; then
- into /usr
- dobin src/kernel-install/kernel-install
- exeinto usr/lib/kernel/install.d
- doexe src/kernel-install/*.install
- dobashcomp shell-completion/bash/bootctl
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/{_bootctl,_kernel-install}
- fi
- if use tmpfiles; then
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_systemd-tmpfiles
- fi
- if use udev; then
- doheader src/libudev/libudev.h
- insinto /etc/udev
- doins src/udev/udev.conf
- keepdir /etc/udev/{hwdb.d,rules.d}
- insinto /lib/systemd/network
- doins network/99-default.link
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- doins "${FILESDIR}"/40-gentoo.rules
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
- dobashcomp shell-completion/bash/udevadm
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_udevadm
- fi
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
- mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
- ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
- eend $?
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- add_service systemd-tmpfiles-setup-dev sysinit
- add_service systemd-tmpfiles-setup boot
- fi
- if use udev; then
- ebegin "Updating hwdb"
- systemd-hwdb --root="${ROOT}" update
- eend $?
- udev_reload
- fi
-}
diff --git a/sys-apps/systemd-utils/systemd-utils-251.2-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-251.2-r1.ebuild
deleted file mode 100644
index 357c32eb616c..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.2-r1.ebuild
+++ /dev/null
@@ -1,511 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
- MY_P="systemd-stable-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
- MY_P="systemd-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- elibc_musl? ( >=sys-libs/musl-1.2.3 )
- selinux? ( sys-libs/libselinux:0= )
- tmpfiles? (
- acl? ( sys-apps/acl:0= )
- )
- udev? (
- >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- virtual/libcrypt:=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- kmod? ( >=sys-apps/kmod-15:0= )
- )
- !udev? (
- >=sys-apps/util-linux-2.30:0=
- sys-libs/libcap:0=
- virtual/libcrypt:=
- )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-3.11
- boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
- boot? ( !<sys-boot/systemd-boot-250 )
- tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
- udev? (
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kmem
- acct-group/kvm
- acct-group/lp
- acct-group/render
- acct-group/sgx
- acct-group/tape
- acct-group/tty
- acct-group/video
- !sys-apps/gentoo-systemd-integration
- !sys-apps/hwids[udev]
- !<sys-fs/udev-250
- !sys-fs/eudev
- )
- !sys-apps/systemd
-"
-PDEPEND="
- udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- >=sys-apps/coreutils-8.16
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
- has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
- local PATCHES=(
- )
- if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
- fi
- default
-
- # Remove install_rpath; we link statically
- local rpath_pattern="install_rpath : rootlibexecdir,"
- grep -q -e "${rpath_pattern}" meson.build || die
- sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
- # When bumping to 251, please keep this, but add the revert patch
- # like in sys-apps/systemd!
- #
- # Broken with FORTIFY_SOURCE=3 without a patch. And the patch
- # wasn't backported to 250.x, but it turns out to break Clang
- # anyway: bug #841770.
- #
- # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
- # to unset F_S first, then explicitly set 2, to negate any default
- # and anything set by the user if they're choosing 3 (or if they've
- # modified GCC to set 3).
- #
- if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
- # We can't unconditionally do this b/c we fortify needs
- # some level of optimisation.
- filter-flags -D_FORTIFY_SOURCE=3
- append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
- fi
-
- local emesonargs=(
- -Drootprefix="${EPREFIX:-/}"
- -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
- -Dsysvinit-path=
- $(meson_native_use_bool boot efi)
- $(meson_native_use_bool boot gnu-efi)
- $(meson_native_use_bool boot kernel-install)
- $(meson_native_use_bool selinux)
- $(meson_native_use_bool sysusers)
- $(meson_use test tests)
- $(meson_native_use_bool tmpfiles)
- $(meson_use udev hwdb)
-
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
- # Link staticly with libsystemd-shared
- -Dlink-boot-shared=false
- -Dlink-udev-shared=false
-
- # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
- -Dstandalone-binaries=true
-
- # Disable all optional features
- -Dadm-group=false
- -Danalyze=false
- -Dapparmor=false
- -Daudit=false
- -Dbacklight=false
- -Dbinfmt=false
- -Dbzip2=false
- -Dcoredump=false
- -Ddbus=false
- -Delfutils=false
- -Denvironment-d=false
- -Dfdisk=false
- -Dgcrypt=false
- -Dglib=false
- -Dgshadow=false
- -Dgnutls=false
- -Dhibernate=false
- -Dhostnamed=false
- -Didn=false
- -Dima=false
- -Dinitrd=false
- -Dfirstboot=false
- -Dldconfig=false
- -Dlibcryptsetup=false
- -Dlibcurl=false
- -Dlibfido2=false
- -Dlibidn=false
- -Dlibidn2=false
- -Dlibiptc=false
- -Dlocaled=false
- -Dlogind=false
- -Dlz4=false
- -Dmachined=false
- -Dmicrohttpd=false
- -Dnetworkd=false
- -Dnscd=false
- -Dnss-myhostname=false
- -Dnss-resolve=false
- -Dnss-systemd=false
- -Doomd=false
- -Dopenssl=false
- -Dp11kit=false
- -Dpam=false
- -Dpcre2=false
- -Dpolkit=false
- -Dportabled=false
- -Dpstore=false
- -Dpwquality=false
- -Drandomseed=false
- -Dresolve=false
- -Drfkill=false
- -Dseccomp=false
- -Dsmack=false
- -Dsysext=false
- -Dtimedated=false
- -Dtimesyncd=false
- -Dtpm=false
- -Dqrencode=false
- -Dquotacheck=false
- -Duserdb=false
- -Dutmp=false
- -Dvconsole=false
- -Dwheel-group=false
- -Dxdg-autostart=false
- -Dxkbcommon=false
- -Dxz=false
- -Dzlib=false
- -Dzstd=false
- )
-
- if use tmpfiles || use udev; then
- emesonargs+=( $(meson_native_use_bool acl) )
- else
- emesonargs+=( -Dacl=false )
- fi
-
- if use udev; then
- emesonargs+=( $(meson_native_use_bool kmod) )
- else
- emesonargs+=( -Dkmod=false )
- fi
-
- if use elibc_musl; then
- # Avoid redefinition of struct ethhdr.
- append-cppflags -D__UAPI_DEF_ETHHDR=0
- fi
-
- if multilib_is_native_abi || use udev; then
- meson_src_configure
- fi
-}
-
-efi_arch() {
- case "$(tc-arch)" in
- amd64) echo x64 ;;
- arm) echo arm ;;
- arm64) echo aa64 ;;
- x86) echo x86 ;;
- esac
-}
-
-multilib_src_compile() {
- local targets=()
- if multilib_is_native_abi; then
- if use boot; then
- targets+=(
- bootctl
- kernel-install
- man/bootctl.1
- man/kernel-install.8
- src/boot/efi/linux$(efi_arch).{efi,elf}.stub
- src/boot/efi/systemd-boot$(efi_arch).efi
- )
- fi
- if use sysusers; then
- targets+=(
- systemd-sysusers.standalone
- man/sysusers.d.5
- man/systemd-sysusers.8
- )
- if use test; then
- targets+=(
- systemd-runtest.env
- )
- fi
- fi
- if use tmpfiles; then
- targets+=(
- systemd-tmpfiles.standalone
- man/tmpfiles.d.5
- man/systemd-tmpfiles.8
- )
- if use test; then
- targets+=( test-tmpfiles )
- fi
- fi
- if use udev; then
- targets+=(
- udevadm
- systemd-hwdb
- src/udev/ata_id
- src/udev/cdrom_id
- src/udev/fido_id
- src/udev/mtd_probe
- src/udev/scsi_id
- src/udev/udev.pc
- src/udev/v4l_id
- man/udev.conf.5
- man/systemd.link.5
- man/hwdb.7
- man/udev.7
- man/systemd-hwdb.8
- man/systemd-udevd.service.8
- man/udevadm.8
- hwdb.d/60-autosuspend-chromiumos.hwdb
- rules.d/50-udev-default.rules
- rules.d/64-btrfs.rules
- )
- if use test; then
- targets+=(
- # Used by udev-test.pl
- systemd-detect-virt
- test/sys
- test-udev
-
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- fi
- fi
- fi
- if use udev; then
- targets+=(
- udev:shared_library
- src/libudev/libudev.pc
- )
- if use test; then
- targets+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- fi
- if multilib_is_native_abi || use udev; then
- meson_src_compile "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- local tests=()
- if multilib_is_native_abi; then
- if use sysusers; then
- tests+=(
- test-sysusers.standalone
- )
- fi
- if use tmpfiles; then
- tests+=(
- test-systemd-tmpfiles.standalone
- test-tmpfiles
- )
- fi
- if use udev; then
- tests+=(
- rule-syntax-check
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- if [[ -w /dev ]]; then
- tests+=( udev-test )
- else
- ewarn "Skipping udev-test (needs write access to /dev)"
- fi
- fi
- fi
- if use udev; then
- tests+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- if [[ ${#tests[@]} -ne 0 ]]; then
- meson_src_test "${tests[@]}"
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- if use boot; then
- into /usr
- dobin bootctl kernel-install
- doman man/{bootctl.1,kernel-install.8}
- insinto usr/lib/systemd/boot/efi
- doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
- fi
- if use sysusers; then
- into /
- newbin systemd-sysusers{.standalone,}
- doman man/{systemd-sysusers.8,sysusers.d.5}
- fi
- if use tmpfiles; then
- into /
- newbin systemd-tmpfiles{.standalone,}
- doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
- fi
- if use udev; then
- into /
- dobin udevadm systemd-hwdb
- dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
- exeinto /lib/udev
- doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
-
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- insinto /usr/share/pkgconfig
- doins src/udev/udev.pc
-
- doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
- newman man/systemd-udevd.service.8 systemd-udevd.8
- fi
- fi
- if use udev; then
- meson_install --no-rebuild --tags libudev
- gen_usr_ldscript -a udev
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins src/libudev/libudev.pc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- if use boot; then
- into /usr
- exeinto usr/lib/kernel/install.d
- doexe src/kernel-install/*.install
- dobashcomp shell-completion/bash/bootctl
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/{_bootctl,_kernel-install}
- fi
- if use tmpfiles; then
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_systemd-tmpfiles
- fi
- if use udev; then
- doheader src/libudev/libudev.h
-
- insinto /etc/udev
- doins src/udev/udev.conf
- keepdir /etc/udev/{hwdb.d,rules.d}
-
- insinto /lib/systemd/network
- doins network/99-default.link
-
- # Remove to avoid conflict with elogind
- # https://bugs.gentoo.org/856433
- rm rules.d/70-power-switch.rules || die
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- doins "${FILESDIR}"/40-gentoo.rules
-
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- dobashcomp shell-completion/bash/udevadm
-
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_udevadm
- fi
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
- mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
- ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
- eend $?
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- add_service systemd-tmpfiles-setup-dev sysinit
- add_service systemd-tmpfiles-setup boot
- fi
- if use udev; then
- ebegin "Updating hwdb"
- systemd-hwdb --root="${ROOT}" update
- eend $?
- udev_reload
- fi
-}
diff --git a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild b/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
deleted file mode 100644
index 7aeb8a9076f5..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.3.ebuild
+++ /dev/null
@@ -1,516 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
- MY_P="systemd-stable-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
- MY_P="systemd-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- elibc_musl? ( >=sys-libs/musl-1.2.3 )
- selinux? ( sys-libs/libselinux:0= )
- tmpfiles? (
- acl? ( sys-apps/acl:0= )
- )
- udev? (
- >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- virtual/libcrypt:=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- kmod? ( >=sys-apps/kmod-15:0= )
- )
- !udev? (
- >=sys-apps/util-linux-2.30:0=
- sys-libs/libcap:0=
- virtual/libcrypt:=
- )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-3.11
- boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
- boot? ( !<sys-boot/systemd-boot-250 )
- tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
- udev? (
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kmem
- acct-group/kvm
- acct-group/lp
- acct-group/render
- acct-group/sgx
- acct-group/tape
- acct-group/tty
- acct-group/video
- !sys-apps/gentoo-systemd-integration
- !sys-apps/hwids[udev]
- !<sys-fs/udev-250
- !sys-fs/eudev
- )
- !sys-apps/systemd
-"
-PDEPEND="
- udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- >=sys-apps/coreutils-8.16
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
- has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
- local PATCHES=(
- # bug #863218
- "${FILESDIR}/251-glibc-2.36.patch"
- )
-
- if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
- # Applied upstream in 251.3
- rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
- fi
- default
-
- # Remove install_rpath; we link statically
- local rpath_pattern="install_rpath : rootlibexecdir,"
- grep -q -e "${rpath_pattern}" meson.build || die
- sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
- # When bumping to 251, please keep this, but add the revert patch
- # like in sys-apps/systemd!
- #
- # Broken with FORTIFY_SOURCE=3 without a patch. And the patch
- # wasn't backported to 250.x, but it turns out to break Clang
- # anyway: bug #841770.
- #
- # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
- # to unset F_S first, then explicitly set 2, to negate any default
- # and anything set by the user if they're choosing 3 (or if they've
- # modified GCC to set 3).
- #
- if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
- # We can't unconditionally do this b/c we fortify needs
- # some level of optimisation.
- filter-flags -D_FORTIFY_SOURCE=3
- append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
- fi
-
- local emesonargs=(
- -Drootprefix="${EPREFIX:-/}"
- -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
- -Dsysvinit-path=
- $(meson_native_use_bool boot efi)
- $(meson_native_use_bool boot gnu-efi)
- $(meson_native_use_bool boot kernel-install)
- $(meson_native_use_bool selinux)
- $(meson_native_use_bool sysusers)
- $(meson_use test tests)
- $(meson_native_use_bool tmpfiles)
- $(meson_use udev hwdb)
-
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
- # Link staticly with libsystemd-shared
- -Dlink-boot-shared=false
- -Dlink-udev-shared=false
-
- # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
- -Dstandalone-binaries=true
-
- # Disable all optional features
- -Dadm-group=false
- -Danalyze=false
- -Dapparmor=false
- -Daudit=false
- -Dbacklight=false
- -Dbinfmt=false
- -Dbzip2=false
- -Dcoredump=false
- -Ddbus=false
- -Delfutils=false
- -Denvironment-d=false
- -Dfdisk=false
- -Dgcrypt=false
- -Dglib=false
- -Dgshadow=false
- -Dgnutls=false
- -Dhibernate=false
- -Dhostnamed=false
- -Didn=false
- -Dima=false
- -Dinitrd=false
- -Dfirstboot=false
- -Dldconfig=false
- -Dlibcryptsetup=false
- -Dlibcurl=false
- -Dlibfido2=false
- -Dlibidn=false
- -Dlibidn2=false
- -Dlibiptc=false
- -Dlocaled=false
- -Dlogind=false
- -Dlz4=false
- -Dmachined=false
- -Dmicrohttpd=false
- -Dnetworkd=false
- -Dnscd=false
- -Dnss-myhostname=false
- -Dnss-resolve=false
- -Dnss-systemd=false
- -Doomd=false
- -Dopenssl=false
- -Dp11kit=false
- -Dpam=false
- -Dpcre2=false
- -Dpolkit=false
- -Dportabled=false
- -Dpstore=false
- -Dpwquality=false
- -Drandomseed=false
- -Dresolve=false
- -Drfkill=false
- -Dseccomp=false
- -Dsmack=false
- -Dsysext=false
- -Dtimedated=false
- -Dtimesyncd=false
- -Dtpm=false
- -Dqrencode=false
- -Dquotacheck=false
- -Duserdb=false
- -Dutmp=false
- -Dvconsole=false
- -Dwheel-group=false
- -Dxdg-autostart=false
- -Dxkbcommon=false
- -Dxz=false
- -Dzlib=false
- -Dzstd=false
- )
-
- if use tmpfiles || use udev; then
- emesonargs+=( $(meson_native_use_bool acl) )
- else
- emesonargs+=( -Dacl=false )
- fi
-
- if use udev; then
- emesonargs+=( $(meson_native_use_bool kmod) )
- else
- emesonargs+=( -Dkmod=false )
- fi
-
- if use elibc_musl; then
- # Avoid redefinition of struct ethhdr.
- append-cppflags -D__UAPI_DEF_ETHHDR=0
- fi
-
- if multilib_is_native_abi || use udev; then
- meson_src_configure
- fi
-}
-
-efi_arch() {
- case "$(tc-arch)" in
- amd64) echo x64 ;;
- arm) echo arm ;;
- arm64) echo aa64 ;;
- x86) echo x86 ;;
- esac
-}
-
-multilib_src_compile() {
- local targets=()
- if multilib_is_native_abi; then
- if use boot; then
- targets+=(
- bootctl
- kernel-install
- man/bootctl.1
- man/kernel-install.8
- src/boot/efi/linux$(efi_arch).{efi,elf}.stub
- src/boot/efi/systemd-boot$(efi_arch).efi
- )
- fi
- if use sysusers; then
- targets+=(
- systemd-sysusers.standalone
- man/sysusers.d.5
- man/systemd-sysusers.8
- )
- if use test; then
- targets+=(
- systemd-runtest.env
- )
- fi
- fi
- if use tmpfiles; then
- targets+=(
- systemd-tmpfiles.standalone
- man/tmpfiles.d.5
- man/systemd-tmpfiles.8
- )
- if use test; then
- targets+=( test-tmpfiles )
- fi
- fi
- if use udev; then
- targets+=(
- udevadm
- systemd-hwdb
- src/udev/ata_id
- src/udev/cdrom_id
- src/udev/fido_id
- src/udev/mtd_probe
- src/udev/scsi_id
- src/udev/udev.pc
- src/udev/v4l_id
- man/udev.conf.5
- man/systemd.link.5
- man/hwdb.7
- man/udev.7
- man/systemd-hwdb.8
- man/systemd-udevd.service.8
- man/udevadm.8
- hwdb.d/60-autosuspend-chromiumos.hwdb
- rules.d/50-udev-default.rules
- rules.d/64-btrfs.rules
- )
- if use test; then
- targets+=(
- # Used by udev-test.pl
- systemd-detect-virt
- test/sys
- test-udev
-
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- fi
- fi
- fi
- if use udev; then
- targets+=(
- udev:shared_library
- src/libudev/libudev.pc
- )
- if use test; then
- targets+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- fi
- if multilib_is_native_abi || use udev; then
- meson_src_compile "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- local tests=()
- if multilib_is_native_abi; then
- if use sysusers; then
- tests+=(
- test-sysusers.standalone
- )
- fi
- if use tmpfiles; then
- tests+=(
- test-systemd-tmpfiles.standalone
- test-tmpfiles
- )
- fi
- if use udev; then
- tests+=(
- rule-syntax-check
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- if [[ -w /dev ]]; then
- tests+=( udev-test )
- else
- ewarn "Skipping udev-test (needs write access to /dev)"
- fi
- fi
- fi
- if use udev; then
- tests+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- if [[ ${#tests[@]} -ne 0 ]]; then
- meson_src_test "${tests[@]}"
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- if use boot; then
- into /usr
- dobin bootctl kernel-install
- doman man/{bootctl.1,kernel-install.8}
- insinto usr/lib/systemd/boot/efi
- doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
- fi
- if use sysusers; then
- into /
- newbin systemd-sysusers{.standalone,}
- doman man/{systemd-sysusers.8,sysusers.d.5}
- fi
- if use tmpfiles; then
- into /
- newbin systemd-tmpfiles{.standalone,}
- doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
- fi
- if use udev; then
- into /
- dobin udevadm systemd-hwdb
- dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
- exeinto /lib/udev
- doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
-
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- insinto /usr/share/pkgconfig
- doins src/udev/udev.pc
-
- doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
- newman man/systemd-udevd.service.8 systemd-udevd.8
- fi
- fi
- if use udev; then
- meson_install --no-rebuild --tags libudev
- gen_usr_ldscript -a udev
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins src/libudev/libudev.pc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- if use boot; then
- into /usr
- exeinto usr/lib/kernel/install.d
- doexe src/kernel-install/*.install
- dobashcomp shell-completion/bash/bootctl
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/{_bootctl,_kernel-install}
- fi
- if use tmpfiles; then
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_systemd-tmpfiles
- fi
- if use udev; then
- doheader src/libudev/libudev.h
-
- insinto /etc/udev
- doins src/udev/udev.conf
- keepdir /etc/udev/{hwdb.d,rules.d}
-
- insinto /lib/systemd/network
- doins network/99-default.link
-
- # Remove to avoid conflict with elogind
- # https://bugs.gentoo.org/856433
- rm rules.d/70-power-switch.rules || die
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- doins "${FILESDIR}"/40-gentoo.rules
-
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- dobashcomp shell-completion/bash/udevadm
-
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_udevadm
- fi
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
- mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
- ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
- eend $?
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- add_service systemd-tmpfiles-setup-dev sysinit
- add_service systemd-tmpfiles-setup boot
- fi
- if use udev; then
- ebegin "Updating hwdb"
- systemd-hwdb --root="${ROOT}" update
- eend $?
- udev_reload
- fi
-}
diff --git a/sys-apps/systemd-utils/systemd-utils-251.4.ebuild b/sys-apps/systemd-utils/systemd-utils-251.4.ebuild
deleted file mode 100644
index d66f463cc001..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.4.ebuild
+++ /dev/null
@@ -1,514 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
- MY_P="systemd-stable-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
- MY_P="systemd-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+acl boot +kmod selinux sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- elibc_musl? ( >=sys-libs/musl-1.2.3 )
- selinux? ( sys-libs/libselinux:0= )
- tmpfiles? (
- acl? ( sys-apps/acl:0= )
- )
- udev? (
- >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- virtual/libcrypt:=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- kmod? ( >=sys-apps/kmod-15:0= )
- )
- !udev? (
- >=sys-apps/util-linux-2.30:0=
- sys-libs/libcap:0=
- virtual/libcrypt:=
- )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-3.11
- boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
- boot? ( !<sys-boot/systemd-boot-250 )
- tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
- udev? (
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kmem
- acct-group/kvm
- acct-group/lp
- acct-group/render
- acct-group/sgx
- acct-group/tape
- acct-group/tty
- acct-group/video
- !sys-apps/gentoo-systemd-integration
- !sys-apps/hwids[udev]
- !<sys-fs/udev-250
- !sys-fs/eudev
- )
- !sys-apps/systemd
-"
-PDEPEND="
- udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- >=sys-apps/coreutils-8.16
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
- python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
- local PATCHES=(
- )
-
- if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
- # Applied upstream in 251.3
- rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
- fi
- default
-
- # Remove install_rpath; we link statically
- local rpath_pattern="install_rpath : rootlibexecdir,"
- grep -q -e "${rpath_pattern}" meson.build || die
- sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-multilib_src_configure() {
- # When bumping to 251, please keep this, but add the revert patch
- # like in sys-apps/systemd!
- #
- # Broken with FORTIFY_SOURCE=3 without a patch. And the patch
- # wasn't backported to 250.x, but it turns out to break Clang
- # anyway: bug #841770.
- #
- # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
- # to unset F_S first, then explicitly set 2, to negate any default
- # and anything set by the user if they're choosing 3 (or if they've
- # modified GCC to set 3).
- #
- if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
- # We can't unconditionally do this b/c we fortify needs
- # some level of optimisation.
- filter-flags -D_FORTIFY_SOURCE=3
- append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
- fi
-
- local emesonargs=(
- -Drootprefix="${EPREFIX:-/}"
- -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
- -Dsysvinit-path=
- $(meson_native_use_bool boot efi)
- $(meson_native_use_bool boot gnu-efi)
- $(meson_native_use_bool boot kernel-install)
- $(meson_native_use_bool selinux)
- $(meson_native_use_bool sysusers)
- $(meson_use test tests)
- $(meson_native_use_bool tmpfiles)
- $(meson_use udev hwdb)
-
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
- # Link staticly with libsystemd-shared
- -Dlink-boot-shared=false
- -Dlink-udev-shared=false
-
- # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
- -Dstandalone-binaries=true
-
- # Disable all optional features
- -Dadm-group=false
- -Danalyze=false
- -Dapparmor=false
- -Daudit=false
- -Dbacklight=false
- -Dbinfmt=false
- -Dbzip2=false
- -Dcoredump=false
- -Ddbus=false
- -Delfutils=false
- -Denvironment-d=false
- -Dfdisk=false
- -Dgcrypt=false
- -Dglib=false
- -Dgshadow=false
- -Dgnutls=false
- -Dhibernate=false
- -Dhostnamed=false
- -Didn=false
- -Dima=false
- -Dinitrd=false
- -Dfirstboot=false
- -Dldconfig=false
- -Dlibcryptsetup=false
- -Dlibcurl=false
- -Dlibfido2=false
- -Dlibidn=false
- -Dlibidn2=false
- -Dlibiptc=false
- -Dlocaled=false
- -Dlogind=false
- -Dlz4=false
- -Dmachined=false
- -Dmicrohttpd=false
- -Dnetworkd=false
- -Dnscd=false
- -Dnss-myhostname=false
- -Dnss-resolve=false
- -Dnss-systemd=false
- -Doomd=false
- -Dopenssl=false
- -Dp11kit=false
- -Dpam=false
- -Dpcre2=false
- -Dpolkit=false
- -Dportabled=false
- -Dpstore=false
- -Dpwquality=false
- -Drandomseed=false
- -Dresolve=false
- -Drfkill=false
- -Dseccomp=false
- -Dsmack=false
- -Dsysext=false
- -Dtimedated=false
- -Dtimesyncd=false
- -Dtpm=false
- -Dqrencode=false
- -Dquotacheck=false
- -Duserdb=false
- -Dutmp=false
- -Dvconsole=false
- -Dwheel-group=false
- -Dxdg-autostart=false
- -Dxkbcommon=false
- -Dxz=false
- -Dzlib=false
- -Dzstd=false
- )
-
- if use tmpfiles || use udev; then
- emesonargs+=( $(meson_native_use_bool acl) )
- else
- emesonargs+=( -Dacl=false )
- fi
-
- if use udev; then
- emesonargs+=( $(meson_native_use_bool kmod) )
- else
- emesonargs+=( -Dkmod=false )
- fi
-
- if use elibc_musl; then
- # Avoid redefinition of struct ethhdr.
- append-cppflags -D__UAPI_DEF_ETHHDR=0
- fi
-
- if multilib_is_native_abi || use udev; then
- meson_src_configure
- fi
-}
-
-efi_arch() {
- case "$(tc-arch)" in
- amd64) echo x64 ;;
- arm) echo arm ;;
- arm64) echo aa64 ;;
- x86) echo x86 ;;
- esac
-}
-
-multilib_src_compile() {
- local targets=()
- if multilib_is_native_abi; then
- if use boot; then
- targets+=(
- bootctl
- kernel-install
- man/bootctl.1
- man/kernel-install.8
- src/boot/efi/linux$(efi_arch).{efi,elf}.stub
- src/boot/efi/systemd-boot$(efi_arch).efi
- )
- fi
- if use sysusers; then
- targets+=(
- systemd-sysusers.standalone
- man/sysusers.d.5
- man/systemd-sysusers.8
- )
- if use test; then
- targets+=(
- systemd-runtest.env
- )
- fi
- fi
- if use tmpfiles; then
- targets+=(
- systemd-tmpfiles.standalone
- man/tmpfiles.d.5
- man/systemd-tmpfiles.8
- )
- if use test; then
- targets+=( test-tmpfiles )
- fi
- fi
- if use udev; then
- targets+=(
- udevadm
- systemd-hwdb
- src/udev/ata_id
- src/udev/cdrom_id
- src/udev/fido_id
- src/udev/mtd_probe
- src/udev/scsi_id
- src/udev/udev.pc
- src/udev/v4l_id
- man/udev.conf.5
- man/systemd.link.5
- man/hwdb.7
- man/udev.7
- man/systemd-hwdb.8
- man/systemd-udevd.service.8
- man/udevadm.8
- hwdb.d/60-autosuspend-chromiumos.hwdb
- rules.d/50-udev-default.rules
- rules.d/64-btrfs.rules
- )
- if use test; then
- targets+=(
- # Used by udev-test.pl
- systemd-detect-virt
- test/sys
- test-udev
-
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- fi
- fi
- fi
- if use udev; then
- targets+=(
- udev:shared_library
- src/libudev/libudev.pc
- )
- if use test; then
- targets+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- fi
- if multilib_is_native_abi || use udev; then
- meson_src_compile "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- local tests=()
- if multilib_is_native_abi; then
- if use sysusers; then
- tests+=(
- test-sysusers.standalone
- )
- fi
- if use tmpfiles; then
- tests+=(
- test-systemd-tmpfiles.standalone
- test-tmpfiles
- )
- fi
- if use udev; then
- tests+=(
- rule-syntax-check
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- if [[ -w /dev ]]; then
- tests+=( udev-test )
- else
- ewarn "Skipping udev-test (needs write access to /dev)"
- fi
- fi
- fi
- if use udev; then
- tests+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- if [[ ${#tests[@]} -ne 0 ]]; then
- meson_src_test "${tests[@]}"
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- if use boot; then
- into /usr
- dobin bootctl kernel-install
- doman man/{bootctl.1,kernel-install.8}
- insinto usr/lib/systemd/boot/efi
- doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
- fi
- if use sysusers; then
- into /
- newbin systemd-sysusers{.standalone,}
- doman man/{systemd-sysusers.8,sysusers.d.5}
- fi
- if use tmpfiles; then
- into /
- newbin systemd-tmpfiles{.standalone,}
- doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
- fi
- if use udev; then
- into /
- dobin udevadm systemd-hwdb
- dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
- exeinto /lib/udev
- doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
-
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- insinto /usr/share/pkgconfig
- doins src/udev/udev.pc
-
- doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
- newman man/systemd-udevd.service.8 systemd-udevd.8
- fi
- fi
- if use udev; then
- meson_install --no-rebuild --tags libudev
- gen_usr_ldscript -a udev
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins src/libudev/libudev.pc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- if use boot; then
- into /usr
- exeinto usr/lib/kernel/install.d
- doexe src/kernel-install/*.install
- dobashcomp shell-completion/bash/bootctl
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/{_bootctl,_kernel-install}
- fi
- if use tmpfiles; then
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_systemd-tmpfiles
- fi
- if use udev; then
- doheader src/libudev/libudev.h
-
- insinto /etc/udev
- doins src/udev/udev.conf
- keepdir /etc/udev/{hwdb.d,rules.d}
-
- insinto /lib/systemd/network
- doins network/99-default.link
-
- # Remove to avoid conflict with elogind
- # https://bugs.gentoo.org/856433
- rm rules.d/70-power-switch.rules || die
- insinto /lib/udev/rules.d
- doins rules.d/*.rules
- doins "${FILESDIR}"/40-gentoo.rules
-
- insinto /lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- dobashcomp shell-completion/bash/udevadm
-
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_udevadm
- fi
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
- mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
- ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
- eend $?
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- add_service systemd-tmpfiles-setup-dev sysinit
- add_service systemd-tmpfiles-setup boot
- fi
- if use udev; then
- ebegin "Updating hwdb"
- systemd-hwdb --root="${ROOT}" update
- eend $?
- udev_reload
- fi
-}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-11-06 3:22 Mike Gilbert
0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2022-11-06 3:22 UTC (permalink / raw
To: gentoo-commits
commit: 932a4a03a9e7f147dd4aabbefae58dcafa77ff32
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 6 03:22:00 2022 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Nov 6 03:22:00 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=932a4a03
sys-apps/systemd-utils: fix build with meson-0.64
Closes: https://bugs.gentoo.org/879141
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd-utils/files/251-meson-0.64.patch | 26 +++++++++++++++++++++++
sys-apps/systemd-utils/systemd-utils-251.7.ebuild | 1 +
2 files changed, 27 insertions(+)
diff --git a/sys-apps/systemd-utils/files/251-meson-0.64.patch b/sys-apps/systemd-utils/files/251-meson-0.64.patch
new file mode 100644
index 000000000000..6cc200bbd87d
--- /dev/null
+++ b/sys-apps/systemd-utils/files/251-meson-0.64.patch
@@ -0,0 +1,26 @@
+From cddbc850270415a818aadabd71fe12dc0dddd508 Mon Sep 17 00:00:00 2001
+From: Jan Janssen <medhefgo@web.de>
+Date: Sun, 9 Oct 2022 17:16:12 +0200
+Subject: [PATCH] meson: Fix build with --optimization=plain
+
+Note that -O0 is deliberately filtered out as we have to compile with at
+least -O1 due to #24202.
+
+Fixes: #24323
+---
+ src/boot/efi/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build
+index e0cd4ebad993..395386d3eda7 100644
+--- a/src/boot/efi/meson.build
++++ b/src/boot/efi/meson.build
+@@ -223,7 +223,7 @@ endif
+ if get_option('debug') and get_option('mode') == 'developer'
+ efi_cflags += ['-ggdb', '-DEFI_DEBUG']
+ endif
+-if get_option('optimization') != '0'
++if get_option('optimization') in ['1', '2', '3', 's', 'g']
+ efi_cflags += ['-O' + get_option('optimization')]
+ endif
+ if get_option('b_ndebug') == 'true' or (
diff --git a/sys-apps/systemd-utils/systemd-utils-251.7.ebuild b/sys-apps/systemd-utils/systemd-utils-251.7.ebuild
index 46a55e226ca4..3f1741e3035d 100644
--- a/sys-apps/systemd-utils/systemd-utils-251.7.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-251.7.ebuild
@@ -108,6 +108,7 @@ src_prepare() {
# Breaks Clang. Revert the commit for now and force off F_S=3.
"${FILESDIR}/251-revert-fortify-source-3-fix.patch"
"${FILESDIR}/251-gpt-auto-no-cryptsetup.patch"
+ "${FILESDIR}/251-meson-0.64.patch"
)
if use elibc_musl; then
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2022-11-21 16:14 Mike Gilbert
0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2022-11-21 16:14 UTC (permalink / raw
To: gentoo-commits
commit: 03a3fe32d269fd724751f48c80b8364b98883aa7
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 10 15:32:58 2022 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Nov 21 16:14:04 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03a3fe32
sys-apps/systemd-utils: add cron.daily script for systemd-tmpfiles --clean
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd-utils/files/systemd-tmpfiles-clean | 2 ++
.../{systemd-utils-251.8.ebuild => systemd-utils-251.8-r1.ebuild} | 2 ++
2 files changed, 4 insertions(+)
diff --git a/sys-apps/systemd-utils/files/systemd-tmpfiles-clean b/sys-apps/systemd-utils/files/systemd-tmpfiles-clean
new file mode 100644
index 000000000000..e474f0e61601
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-tmpfiles-clean
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec ionice -c idle -t systemd-tmpfiles --clean
diff --git a/sys-apps/systemd-utils/systemd-utils-251.8.ebuild b/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
similarity index 99%
rename from sys-apps/systemd-utils/systemd-utils-251.8.ebuild
rename to sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
index 46f587532a13..e3565a14d72b 100644
--- a/sys-apps/systemd-utils/systemd-utils-251.8.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
@@ -468,6 +468,8 @@ multilib_src_install_all() {
if use tmpfiles; then
doinitd "${FILESDIR}"/systemd-tmpfiles-setup
doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+ exeinto /etc/cron.daily
+ doexe "${FILESDIR}"/systemd-tmpfiles-clean
insinto /usr/share/zsh/site-functions
doins shell-completion/zsh/_systemd-tmpfiles
fi
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-01-11 7:50 Sam James
0 siblings, 0 replies; 9+ messages in thread
From: Sam James @ 2023-01-11 7:50 UTC (permalink / raw
To: gentoo-commits
commit: 9bfce2326016d4d99f2345a4c6f7627cc561230e
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 11 07:37:06 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 11 07:49:43 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9bfce232
sys-apps/systemd-utils: backport tmpfiles UB fix
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-apps/systemd-utils/files/251-tmpfiles-ub.patch | 71 +++
.../systemd-utils/systemd-utils-251.10-r1.ebuild | 525 +++++++++++++++++++++
2 files changed, 596 insertions(+)
diff --git a/sys-apps/systemd-utils/files/251-tmpfiles-ub.patch b/sys-apps/systemd-utils/files/251-tmpfiles-ub.patch
new file mode 100644
index 000000000000..df190d500e34
--- /dev/null
+++ b/sys-apps/systemd-utils/files/251-tmpfiles-ub.patch
@@ -0,0 +1,71 @@
+https://github.com/systemd/systemd/pull/25957
+https://github.com/systemd/systemd/pull/25959
+https://github.com/systemd/systemd/commit/9f804ab04d566ff745849e1c4ced680a0447cf76
+https://github.com/systemd/systemd/commit/34680637e838415204850f77c93ca6ca219abaf1
+
+From 9f804ab04d566ff745849e1c4ced680a0447cf76 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Fri, 6 Jan 2023 10:58:32 +0000
+Subject: [PATCH] tmpfiles: avoid null free() for acl attributes
+
+When built with ACL support, we might be processing a tmpfiles
+entry where there's no cause for us to call parse_acls_from_arg,
+then we get to the end of parse_line without having ever populated
+i.{acl_access, acl_default}.
+
+Then we pass a null pointer into acl_free().
+
+From UBSAN w/ GCC 13.0.0_pre20230101:
+```
+$ systemd-tmpfiles --clean
+/var/tmp/portage/sys-apps/acl-2.3.1-r1/work/acl-2.3.1/libacl/acl_free.c:44:14: runtime error: applying non-zero offset 18446744073709551608 to null pointer
+ #0 0x7f65d868b482 in acl_free /var/tmp/portage/sys-apps/acl-2.3.1-r1/work/acl-2.3.1/libacl/acl_free.c:44
+ #1 0x55fe7e592249 in item_free_contents ../systemd-9999/src/tmpfiles/tmpfiles.c:2855
+ #2 0x55fe7e5a347a in parse_line ../systemd-9999/src/tmpfiles/tmpfiles.c:3158
+ #3 0x55fe7e5a347a in read_config_file ../systemd-9999/src/tmpfiles/tmpfiles.c:3897
+ #4 0x55fe7e590c61 in read_config_files ../systemd-9999/src/tmpfiles/tmpfiles.c:3985
+ #5 0x55fe7e590c61 in run ../systemd-9999/src/tmpfiles/tmpfiles.c:4157
+ #6 0x55fe7e590c61 in main ../systemd-9999/src/tmpfiles/tmpfiles.c:4218
+ #7 0x7f65d7ebe289 (/usr/lib64/libc.so.6+0x23289)
+ #8 0x7f65d7ebe344 in __libc_start_main (/usr/lib64/libc.so.6+0x23344)
+ #9 0x55fe7e591900 in _start (/usr/bin/systemd-tmpfiles+0x11900)
+```
+--- a/src/tmpfiles/tmpfiles.c
++++ b/src/tmpfiles/tmpfiles.c
+@@ -2852,8 +2852,11 @@ static void item_free_contents(Item *i) {
+ strv_free(i->xattrs);
+
+ #if HAVE_ACL
+- acl_free(i->acl_access);
+- acl_free(i->acl_default);
++ if (i->acl_access)
++ acl_free(i->acl_access);
++
++ if (i->acl_default)
++ acl_free(i->acl_default);
+ #endif
+ }
+
+
+From 34680637e838415204850f77c93ca6ca219abaf1 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 6 Jan 2023 12:30:36 +0100
+Subject: [PATCH] nspawn: guard acl_free() with a NULL check
+
+Inspired by #25957 there's one other place where we don't guard
+acl_free() calls with a NULL check.
+
+Fix that.
+--- a/src/nspawn/nspawn-patch-uid.c
++++ b/src/nspawn/nspawn-patch-uid.c
+@@ -181,7 +181,9 @@ static int patch_acls(int fd, const char *name, const struct stat *st, uid_t shi
+
+ if (S_ISDIR(st->st_mode)) {
+ acl_free(acl);
+- acl_free(shifted);
++
++ if (shifted)
++ acl_free(shifted);
+
+ acl = shifted = NULL;
+
diff --git a/sys-apps/systemd-utils/systemd-utils-251.10-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-251.10-r1.ebuild
new file mode 100644
index 000000000000..bab8984fc18e
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-251.10-r1.ebuild
@@ -0,0 +1,525 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{8..11} )
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+ MY_P="systemd-stable-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+ MY_P="systemd-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-251.2"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+acl boot +kmod selinux split-usr sysusers +tmpfiles test +udev"
+REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ elibc_musl? ( >=sys-libs/musl-1.2.3 )
+ selinux? ( sys-libs/libselinux:0= )
+ tmpfiles? (
+ acl? ( sys-apps/acl:0= )
+ )
+ udev? (
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ )
+ !udev? (
+ >=sys-apps/util-linux-2.30:0=
+ sys-libs/libcap:0=
+ virtual/libcrypt:=
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-3.11
+ boot? ( >=sys-boot/gnu-efi-3.0.2 )
+"
+RDEPEND="${COMMON_DEPEND}
+ boot? ( !<sys-boot/systemd-boot-250 )
+ tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+ udev? (
+ acct-group/audio
+ acct-group/cdrom
+ acct-group/dialout
+ acct-group/disk
+ acct-group/input
+ acct-group/kmem
+ acct-group/kvm
+ acct-group/lp
+ acct-group/render
+ acct-group/sgx
+ acct-group/tape
+ acct-group/tty
+ acct-group/video
+ !sys-apps/gentoo-systemd-integration
+ !sys-apps/hwids[udev]
+ !<sys-fs/udev-250
+ !sys-fs/eudev
+ )
+ !sys-apps/systemd
+"
+PDEPEND="
+ udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+ $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gperf
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+python_check_deps() {
+ python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
+}
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/251-gpt-auto-no-cryptsetup.patch"
+ "${FILESDIR}/251-tmpfiles-ub.patch"
+ )
+
+ if use elibc_musl; then
+ PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
+ # Applied upstream in 251.3
+ rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
+ fi
+ default
+
+ # Remove install_rpath; we link statically
+ local rpath_pattern="install_rpath : rootlibexecdir,"
+ grep -q -e "${rpath_pattern}" meson.build || die
+ sed -i -e "/${rpath_pattern}/d" meson.build || die
+}
+
+src_configure() {
+ # Broken with FORTIFY_SOURCE=3: bug #841770.
+ #
+ # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
+ # to unset F_S first, then explicitly set 2, to negate any default
+ # and anything set by the user if they're choosing 3 (or if they've
+ # modified GCC to set 3).
+ #
+ if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
+ # We can't unconditionally do this b/c we fortify needs
+ # some level of optimisation.
+ filter-flags -D_FORTIFY_SOURCE=3
+ append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ -Dsysvinit-path=
+ $(meson_native_use_bool boot efi)
+ $(meson_native_use_bool boot gnu-efi)
+ $(meson_native_use_bool boot kernel-install)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool sysusers)
+ $(meson_use test tests)
+ $(meson_native_use_bool tmpfiles)
+ $(meson_use udev hwdb)
+
+ -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
+
+ # Link staticly with libsystemd-shared
+ -Dlink-boot-shared=false
+ -Dlink-udev-shared=false
+
+ # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
+ -Dstandalone-binaries=true
+
+ # Disable all optional features
+ -Dadm-group=false
+ -Danalyze=false
+ -Dapparmor=false
+ -Daudit=false
+ -Dbacklight=false
+ -Dbinfmt=false
+ -Dbpf-framework=false
+ -Dbzip2=false
+ -Dcoredump=false
+ -Ddbus=false
+ -Delfutils=false
+ -Denvironment-d=false
+ -Dfdisk=false
+ -Dgcrypt=false
+ -Dglib=false
+ -Dgshadow=false
+ -Dgnutls=false
+ -Dhibernate=false
+ -Dhostnamed=false
+ -Didn=false
+ -Dima=false
+ -Dinitrd=false
+ -Dfirstboot=false
+ -Dldconfig=false
+ -Dlibcryptsetup=false
+ -Dlibcurl=false
+ -Dlibfido2=false
+ -Dlibidn=false
+ -Dlibidn2=false
+ -Dlibiptc=false
+ -Dlocaled=false
+ -Dlogind=false
+ -Dlz4=false
+ -Dmachined=false
+ -Dmicrohttpd=false
+ -Dnetworkd=false
+ -Dnscd=false
+ -Dnss-myhostname=false
+ -Dnss-resolve=false
+ -Dnss-systemd=false
+ -Doomd=false
+ -Dopenssl=false
+ -Dp11kit=false
+ -Dpam=false
+ -Dpcre2=false
+ -Dpolkit=false
+ -Dportabled=false
+ -Dpstore=false
+ -Dpwquality=false
+ -Drandomseed=false
+ -Dresolve=false
+ -Drfkill=false
+ -Dseccomp=false
+ -Dsmack=false
+ -Dsysext=false
+ -Dtimedated=false
+ -Dtimesyncd=false
+ -Dtpm=false
+ -Dqrencode=false
+ -Dquotacheck=false
+ -Duserdb=false
+ -Dutmp=false
+ -Dvconsole=false
+ -Dwheel-group=false
+ -Dxdg-autostart=false
+ -Dxkbcommon=false
+ -Dxz=false
+ -Dzlib=false
+ -Dzstd=false
+ )
+
+ if use tmpfiles || use udev; then
+ emesonargs+=( $(meson_native_use_bool acl) )
+ else
+ emesonargs+=( -Dacl=false )
+ fi
+
+ if use udev; then
+ emesonargs+=( $(meson_native_use_bool kmod) )
+ else
+ emesonargs+=( -Dkmod=false )
+ fi
+
+ if use elibc_musl; then
+ # Avoid redefinition of struct ethhdr.
+ append-cppflags -D__UAPI_DEF_ETHHDR=0
+ fi
+
+ if multilib_is_native_abi || use udev; then
+ meson_src_configure
+ fi
+}
+
+efi_arch() {
+ case "$(tc-arch)" in
+ amd64) echo x64 ;;
+ arm) echo arm ;;
+ arm64) echo aa64 ;;
+ x86) echo x86 ;;
+ esac
+}
+
+multilib_src_compile() {
+ local targets=()
+ if multilib_is_native_abi; then
+ if use boot; then
+ targets+=(
+ bootctl
+ kernel-install
+ man/bootctl.1
+ man/kernel-install.8
+ src/boot/efi/linux$(efi_arch).{efi,elf}.stub
+ src/boot/efi/systemd-boot$(efi_arch).efi
+ )
+ fi
+ if use sysusers; then
+ targets+=(
+ systemd-sysusers.standalone
+ man/sysusers.d.5
+ man/systemd-sysusers.8
+ )
+ if use test; then
+ targets+=(
+ systemd-runtest.env
+ )
+ fi
+ fi
+ if use tmpfiles; then
+ targets+=(
+ systemd-tmpfiles.standalone
+ man/tmpfiles.d.5
+ man/systemd-tmpfiles.8
+ )
+ if use test; then
+ targets+=( test-tmpfiles )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udevadm
+ systemd-hwdb
+ src/udev/ata_id
+ src/udev/cdrom_id
+ src/udev/fido_id
+ src/udev/mtd_probe
+ src/udev/scsi_id
+ src/udev/udev.pc
+ src/udev/v4l_id
+ man/udev.conf.5
+ man/systemd.link.5
+ man/hwdb.7
+ man/udev.7
+ man/systemd-hwdb.8
+ man/systemd-udevd.service.8
+ man/udevadm.8
+ hwdb.d/60-autosuspend-chromiumos.hwdb
+ rules.d/50-udev-default.rules
+ rules.d/64-btrfs.rules
+ )
+ if use test; then
+ targets+=(
+ # Used by udev-test.pl
+ systemd-detect-virt
+ test/sys
+ test-udev
+
+ test-fido-id-desc
+ test-udev-builtin
+ test-udev-event
+ test-udev-netlink
+ test-udev-node
+ test-udev-util
+ )
+ fi
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udev:shared_library
+ src/libudev/libudev.pc
+ )
+ if use test; then
+ targets+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ fi
+ if multilib_is_native_abi || use udev; then
+ meson_src_compile "${targets[@]}"
+ fi
+}
+
+multilib_src_test() {
+ local tests=()
+ if multilib_is_native_abi; then
+ if use sysusers; then
+ tests+=(
+ test-sysusers.standalone
+ )
+ fi
+ if use tmpfiles; then
+ tests+=(
+ test-systemd-tmpfiles.standalone
+ test-tmpfiles
+ )
+ fi
+ if use udev; then
+ tests+=(
+ rule-syntax-check
+ test-fido-id-desc
+ test-udev-builtin
+ test-udev-event
+ test-udev-netlink
+ test-udev-node
+ test-udev-util
+ )
+ if [[ -w /dev ]]; then
+ tests+=( udev-test )
+ else
+ ewarn "Skipping udev-test (needs write access to /dev)"
+ fi
+ fi
+ fi
+ if use udev; then
+ tests+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ if [[ ${#tests[@]} -ne 0 ]]; then
+ meson_src_test "${tests[@]}"
+ fi
+}
+
+src_install() {
+ local rootprefix="$(usex split-usr '' /usr)"
+ meson-multilib_src_install
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ if use boot; then
+ into /usr
+ dobin bootctl kernel-install
+ doman man/{bootctl.1,kernel-install.8}
+ insinto usr/lib/systemd/boot/efi
+ doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
+ fi
+ if use sysusers; then
+ into "${rootprefix:-/}"
+ newbin systemd-sysusers{.standalone,}
+ doman man/{systemd-sysusers.8,sysusers.d.5}
+ fi
+ if use tmpfiles; then
+ into "${rootprefix:-/}"
+ newbin systemd-tmpfiles{.standalone,}
+ doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+ fi
+ if use udev; then
+ into "${rootprefix:-/}"
+ dobin udevadm systemd-hwdb
+ dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
+
+ exeinto "${rootprefix}"/lib/udev
+ doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
+
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ insinto /usr/share/pkgconfig
+ doins src/udev/udev.pc
+
+ doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+ newman man/systemd-udevd.service.8 systemd-udevd.8
+ fi
+ fi
+ if use udev; then
+ meson_install --no-rebuild --tags libudev
+ gen_usr_ldscript -a udev
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins src/libudev/libudev.pc
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ if use boot; then
+ into /usr
+ exeinto usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ dobashcomp shell-completion/bash/bootctl
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/{_bootctl,_kernel-install}
+ fi
+ if use tmpfiles; then
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+ exeinto /etc/cron.daily
+ doexe "${FILESDIR}"/systemd-tmpfiles-clean
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_systemd-tmpfiles
+ fi
+ if use udev; then
+ doheader src/libudev/libudev.h
+
+ insinto /etc/udev
+ doins src/udev/udev.conf
+ keepdir /etc/udev/{hwdb.d,rules.d}
+
+ insinto "${rootprefix}"/lib/systemd/network
+ doins network/99-default.link
+
+ # Remove to avoid conflict with elogind
+ # https://bugs.gentoo.org/856433
+ rm rules.d/70-power-switch.rules || die
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+ doins "${FILESDIR}"/40-gentoo.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ dobashcomp shell-completion/bash/udevadm
+
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_udevadm
+ fi
+}
+
+add_service() {
+ local initd=$1
+ local runlevel=$2
+
+ ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+ mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+ ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+ eend $?
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ add_service systemd-tmpfiles-setup-dev sysinit
+ add_service systemd-tmpfiles-setup boot
+ fi
+ if use udev; then
+ ebegin "Updating hwdb"
+ systemd-hwdb --root="${ROOT}" update
+ eend $?
+ udev_reload
+ fi
+}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-01-13 20:06 Mike Gilbert
0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2023-01-13 20:06 UTC (permalink / raw
To: gentoo-commits
commit: 004f7f8ca01d10d12b3b4e5f018d262684e42f87
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 13 20:05:47 2023 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Jan 13 20:06:54 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=004f7f8c
sys-apps/systemd-utils: drop 251.8-r1
Bug: https://bugs.gentoo.org/887581
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd-utils/Manifest | 1 -
.../files/251-revert-fortify-source-3-fix.patch | 40 --
.../systemd-utils/systemd-utils-251.8-r1.ebuild | 524 ---------------------
3 files changed, 565 deletions(-)
diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
index cd1e7db96718..eb5f1cb21946 100644
--- a/sys-apps/systemd-utils/Manifest
+++ b/sys-apps/systemd-utils/Manifest
@@ -1,3 +1,2 @@
DIST systemd-musl-patches-251.2.tar.gz 28512 BLAKE2B 4ac6a5220dab8409962a3954af2fb2484af718d0f282129957236ce241fbe8538a90d507a96c7c3d86f4f408ab784a6888b37486405d3276e7734a1bd5aa9680 SHA512 6e56b62234ac54929faea5a7cad699d0b932f869b48e3ba4e1f349a88653b7c787efec24a09b00290c3dc566614e3c1dc2f3c04f04e943f513108a91eca1be82
DIST systemd-stable-251.10.tar.gz 11461671 BLAKE2B a351b6dd9fc307e4bdcf0323b16e7f58c714392cfa466180a81196309c289b54767bfe5d03037eb1bd6b273d7eb8f6f42b927aabaa1310be04266675d1a3dd06 SHA512 49e33dbbc1b2ebe123b2f722070c87524b3126d1e605fb3e24a3f9f328ab67de506dc4588a92caf157428c21b9c73c3884726c4a5b1f67bb997d4a68bb871e5b
-DIST systemd-stable-251.8.tar.gz 11457551 BLAKE2B d4ca799a5b22164362fa8948bbec95215d6ebc04380f13f755916c4bfd4e1cc43a82177c21d2c56aa9d8440b44872b773f21682fc127c7f6d2b3542661c27d80 SHA512 c337fad3cf2beef11401850ddd6418efef035d4ec6405049084302738042f77ac1f8bfd7eb3611668a13038878389c9617e63278ec0b37782b3e0242e69c4843
diff --git a/sys-apps/systemd-utils/files/251-revert-fortify-source-3-fix.patch b/sys-apps/systemd-utils/files/251-revert-fortify-source-3-fix.patch
deleted file mode 100644
index bbe45f85dcf2..000000000000
--- a/sys-apps/systemd-utils/files/251-revert-fortify-source-3-fix.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From: Sam James <sam@gentoo.org>
-Date: Tue, 24 May 2022 23:21:50 +0100
-Subject: [PATCH] Revert "Support -D_FORTIFY_SOURCE=3 by using
- __builtin_dynamic_object_size."
-
-Breaks Clang (even without F_S=3).
-
-This reverts commit 0bd292567a543d124cd303f7dd61169a209cae64.
-
-Bug: https://bugs.gentoo.org/841770
-Bug: https://github.com/systemd/systemd/issues/23150
---- a/src/basic/alloc-util.h
-+++ b/src/basic/alloc-util.h
-@@ -174,23 +174,13 @@ void* greedy_realloc0(void **p, size_t need, size_t size);
- * is compatible with _FORTIFY_SOURCES. If _FORTIFY_SOURCES is used many memory operations will take the
- * object size as returned by __builtin_object_size() into account. Hence, let's return the smaller size of
- * malloc_usable_size() and __builtin_object_size() here, so that we definitely operate in safe territory by
-- * both the compiler's and libc's standards. Note that _FORTIFY_SOURCES=3 handles also dynamically allocated
-- * objects and thus it's safer using __builtin_dynamic_object_size if _FORTIFY_SOURCES=3 is used (#22801).
-- * Moreover, when NULL is passed malloc_usable_size() is documented to return zero, and
-+ * both the compiler's and libc's standards. Note that __builtin_object_size() evaluates to SIZE_MAX if the
-+ * size cannot be determined, hence the MIN() expression should be safe with dynamically sized memory,
-+ * too. Moreover, when NULL is passed malloc_usable_size() is documented to return zero, and
- * __builtin_object_size() returns SIZE_MAX too, hence we also return a sensible value of 0 in this corner
- * case. */
--
--#if defined __has_builtin
--# if __has_builtin(__builtin_dynamic_object_size)
--# define MALLOC_SIZEOF_SAFE(x) \
-- MIN(malloc_usable_size(x), __builtin_dynamic_object_size(x, 0))
--# endif
--#endif
--
--#ifndef MALLOC_SIZEOF_SAFE
- #define MALLOC_SIZEOF_SAFE(x) \
- MIN(malloc_usable_size(x), __builtin_object_size(x, 0))
--#endif
-
- /* Inspired by ELEMENTSOF() but operates on malloc()'ed memory areas: typesafely returns the number of items
- * that fit into the specified memory block */
diff --git a/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild b/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
deleted file mode 100644
index 108c86967156..000000000000
--- a/sys-apps/systemd-utils/systemd-utils-251.8-r1.ebuild
+++ /dev/null
@@ -1,524 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..11} )
-
-QA_PKGCONFIG_VERSION=$(ver_cut 1)
-
-inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Utilities split out from systemd for OpenRC users"
-HOMEPAGE="https://systemd.io/"
-
-if [[ ${PV} == *.* ]]; then
- MY_P="systemd-stable-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-else
- MY_P="systemd-${PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-fi
-
-MUSL_PATCHSET="systemd-musl-patches-251.2"
-SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
-
-LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+acl boot +kmod selinux split-usr sysusers +tmpfiles test +udev"
-REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- elibc_musl? ( >=sys-libs/musl-1.2.3 )
- selinux? ( sys-libs/libselinux:0= )
- tmpfiles? (
- acl? ( sys-apps/acl:0= )
- )
- udev? (
- >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
- sys-libs/libcap:0=[${MULTILIB_USEDEP}]
- virtual/libcrypt:=[${MULTILIB_USEDEP}]
- acl? ( sys-apps/acl:0= )
- kmod? ( >=sys-apps/kmod-15:0= )
- )
- !udev? (
- >=sys-apps/util-linux-2.30:0=
- sys-libs/libcap:0=
- virtual/libcrypt:=
- )
-"
-DEPEND="${COMMON_DEPEND}
- >=sys-kernel/linux-headers-3.11
- boot? ( >=sys-boot/gnu-efi-3.0.2 )
-"
-RDEPEND="${COMMON_DEPEND}
- boot? ( !<sys-boot/systemd-boot-250 )
- tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
- udev? (
- acct-group/audio
- acct-group/cdrom
- acct-group/dialout
- acct-group/disk
- acct-group/input
- acct-group/kmem
- acct-group/kvm
- acct-group/lp
- acct-group/render
- acct-group/sgx
- acct-group/tape
- acct-group/tty
- acct-group/video
- !sys-apps/gentoo-systemd-integration
- !sys-apps/hwids[udev]
- !<sys-fs/udev-250
- !sys-fs/eudev
- )
- !sys-apps/systemd
-"
-PDEPEND="
- udev? ( >=sys-fs/udev-init-scripts-34 )
-"
-BDEPEND="
- $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
- app-text/docbook-xml-dtd:4.2
- app-text/docbook-xml-dtd:4.5
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- dev-util/gperf
- >=sys-apps/coreutils-8.16
- sys-devel/gettext
- virtual/pkgconfig
-"
-
-TMPFILES_OPTIONAL=1
-UDEV_OPTIONAL=1
-
-python_check_deps() {
- python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
-QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
-
-src_prepare() {
- local PATCHES=(
- "${FILESDIR}/251-gpt-auto-no-cryptsetup.patch"
- )
-
- if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
- # Applied upstream in 251.3
- rm "${WORKDIR}/${MUSL_PATCHSET}/0001-Add-sys-file.h-for-LOCK_.patch" || die
- fi
- default
-
- # Remove install_rpath; we link statically
- local rpath_pattern="install_rpath : rootlibexecdir,"
- grep -q -e "${rpath_pattern}" meson.build || die
- sed -i -e "/${rpath_pattern}/d" meson.build || die
-}
-
-src_configure() {
- # Broken with FORTIFY_SOURCE=3: bug #841770.
- #
- # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
- # to unset F_S first, then explicitly set 2, to negate any default
- # and anything set by the user if they're choosing 3 (or if they've
- # modified GCC to set 3).
- #
- if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
- # We can't unconditionally do this b/c we fortify needs
- # some level of optimisation.
- filter-flags -D_FORTIFY_SOURCE=3
- append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
- fi
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local emesonargs=(
- $(meson_use split-usr)
- $(meson_use split-usr split-bin)
- -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
- -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
- -Dsysvinit-path=
- $(meson_native_use_bool boot efi)
- $(meson_native_use_bool boot gnu-efi)
- $(meson_native_use_bool boot kernel-install)
- $(meson_native_use_bool selinux)
- $(meson_native_use_bool sysusers)
- $(meson_use test tests)
- $(meson_native_use_bool tmpfiles)
- $(meson_use udev hwdb)
-
- -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-
- # Link staticly with libsystemd-shared
- -Dlink-boot-shared=false
- -Dlink-udev-shared=false
-
- # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
- -Dstandalone-binaries=true
-
- # Disable all optional features
- -Dadm-group=false
- -Danalyze=false
- -Dapparmor=false
- -Daudit=false
- -Dbacklight=false
- -Dbinfmt=false
- -Dbpf-framework=false
- -Dbzip2=false
- -Dcoredump=false
- -Ddbus=false
- -Delfutils=false
- -Denvironment-d=false
- -Dfdisk=false
- -Dgcrypt=false
- -Dglib=false
- -Dgshadow=false
- -Dgnutls=false
- -Dhibernate=false
- -Dhostnamed=false
- -Didn=false
- -Dima=false
- -Dinitrd=false
- -Dfirstboot=false
- -Dldconfig=false
- -Dlibcryptsetup=false
- -Dlibcurl=false
- -Dlibfido2=false
- -Dlibidn=false
- -Dlibidn2=false
- -Dlibiptc=false
- -Dlocaled=false
- -Dlogind=false
- -Dlz4=false
- -Dmachined=false
- -Dmicrohttpd=false
- -Dnetworkd=false
- -Dnscd=false
- -Dnss-myhostname=false
- -Dnss-resolve=false
- -Dnss-systemd=false
- -Doomd=false
- -Dopenssl=false
- -Dp11kit=false
- -Dpam=false
- -Dpcre2=false
- -Dpolkit=false
- -Dportabled=false
- -Dpstore=false
- -Dpwquality=false
- -Drandomseed=false
- -Dresolve=false
- -Drfkill=false
- -Dseccomp=false
- -Dsmack=false
- -Dsysext=false
- -Dtimedated=false
- -Dtimesyncd=false
- -Dtpm=false
- -Dqrencode=false
- -Dquotacheck=false
- -Duserdb=false
- -Dutmp=false
- -Dvconsole=false
- -Dwheel-group=false
- -Dxdg-autostart=false
- -Dxkbcommon=false
- -Dxz=false
- -Dzlib=false
- -Dzstd=false
- )
-
- if use tmpfiles || use udev; then
- emesonargs+=( $(meson_native_use_bool acl) )
- else
- emesonargs+=( -Dacl=false )
- fi
-
- if use udev; then
- emesonargs+=( $(meson_native_use_bool kmod) )
- else
- emesonargs+=( -Dkmod=false )
- fi
-
- if use elibc_musl; then
- # Avoid redefinition of struct ethhdr.
- append-cppflags -D__UAPI_DEF_ETHHDR=0
- fi
-
- if multilib_is_native_abi || use udev; then
- meson_src_configure
- fi
-}
-
-efi_arch() {
- case "$(tc-arch)" in
- amd64) echo x64 ;;
- arm) echo arm ;;
- arm64) echo aa64 ;;
- x86) echo x86 ;;
- esac
-}
-
-multilib_src_compile() {
- local targets=()
- if multilib_is_native_abi; then
- if use boot; then
- targets+=(
- bootctl
- kernel-install
- man/bootctl.1
- man/kernel-install.8
- src/boot/efi/linux$(efi_arch).{efi,elf}.stub
- src/boot/efi/systemd-boot$(efi_arch).efi
- )
- fi
- if use sysusers; then
- targets+=(
- systemd-sysusers.standalone
- man/sysusers.d.5
- man/systemd-sysusers.8
- )
- if use test; then
- targets+=(
- systemd-runtest.env
- )
- fi
- fi
- if use tmpfiles; then
- targets+=(
- systemd-tmpfiles.standalone
- man/tmpfiles.d.5
- man/systemd-tmpfiles.8
- )
- if use test; then
- targets+=( test-tmpfiles )
- fi
- fi
- if use udev; then
- targets+=(
- udevadm
- systemd-hwdb
- src/udev/ata_id
- src/udev/cdrom_id
- src/udev/fido_id
- src/udev/mtd_probe
- src/udev/scsi_id
- src/udev/udev.pc
- src/udev/v4l_id
- man/udev.conf.5
- man/systemd.link.5
- man/hwdb.7
- man/udev.7
- man/systemd-hwdb.8
- man/systemd-udevd.service.8
- man/udevadm.8
- hwdb.d/60-autosuspend-chromiumos.hwdb
- rules.d/50-udev-default.rules
- rules.d/64-btrfs.rules
- )
- if use test; then
- targets+=(
- # Used by udev-test.pl
- systemd-detect-virt
- test/sys
- test-udev
-
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- fi
- fi
- fi
- if use udev; then
- targets+=(
- udev:shared_library
- src/libudev/libudev.pc
- )
- if use test; then
- targets+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- fi
- if multilib_is_native_abi || use udev; then
- meson_src_compile "${targets[@]}"
- fi
-}
-
-multilib_src_test() {
- local tests=()
- if multilib_is_native_abi; then
- if use sysusers; then
- tests+=(
- test-sysusers.standalone
- )
- fi
- if use tmpfiles; then
- tests+=(
- test-systemd-tmpfiles.standalone
- test-tmpfiles
- )
- fi
- if use udev; then
- tests+=(
- rule-syntax-check
- test-fido-id-desc
- test-udev-builtin
- test-udev-event
- test-udev-netlink
- test-udev-node
- test-udev-util
- )
- if [[ -w /dev ]]; then
- tests+=( udev-test )
- else
- ewarn "Skipping udev-test (needs write access to /dev)"
- fi
- fi
- fi
- if use udev; then
- tests+=(
- test-libudev
- test-libudev-sym
- test-udev-device-thread
- )
- fi
- if [[ ${#tests[@]} -ne 0 ]]; then
- meson_src_test "${tests[@]}"
- fi
-}
-
-src_install() {
- local rootprefix="$(usex split-usr '' /usr)"
- meson-multilib_src_install
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
- if use boot; then
- into /usr
- dobin bootctl kernel-install
- doman man/{bootctl.1,kernel-install.8}
- insinto usr/lib/systemd/boot/efi
- doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
- fi
- if use sysusers; then
- into "${rootprefix:-/}"
- newbin systemd-sysusers{.standalone,}
- doman man/{systemd-sysusers.8,sysusers.d.5}
- fi
- if use tmpfiles; then
- into "${rootprefix:-/}"
- newbin systemd-tmpfiles{.standalone,}
- doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
- fi
- if use udev; then
- into "${rootprefix:-/}"
- dobin udevadm systemd-hwdb
- dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
-
- exeinto "${rootprefix}"/lib/udev
- doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
- insinto "${rootprefix}"/lib/udev/rules.d
- doins rules.d/*.rules
-
- insinto "${rootprefix}"/lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- insinto /usr/share/pkgconfig
- doins src/udev/udev.pc
-
- doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
- newman man/systemd-udevd.service.8 systemd-udevd.8
- fi
- fi
- if use udev; then
- meson_install --no-rebuild --tags libudev
- gen_usr_ldscript -a udev
- insinto "/usr/$(get_libdir)/pkgconfig"
- doins src/libudev/libudev.pc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- if use boot; then
- into /usr
- exeinto usr/lib/kernel/install.d
- doexe src/kernel-install/*.install
- dobashcomp shell-completion/bash/bootctl
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/{_bootctl,_kernel-install}
- fi
- if use tmpfiles; then
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup
- doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
- exeinto /etc/cron.daily
- doexe "${FILESDIR}"/systemd-tmpfiles-clean
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_systemd-tmpfiles
- fi
- if use udev; then
- doheader src/libudev/libudev.h
-
- insinto /etc/udev
- doins src/udev/udev.conf
- keepdir /etc/udev/{hwdb.d,rules.d}
-
- insinto "${rootprefix}"/lib/systemd/network
- doins network/99-default.link
-
- # Remove to avoid conflict with elogind
- # https://bugs.gentoo.org/856433
- rm rules.d/70-power-switch.rules || die
- insinto "${rootprefix}"/lib/udev/rules.d
- doins rules.d/*.rules
- doins "${FILESDIR}"/40-gentoo.rules
-
- insinto "${rootprefix}"/lib/udev/hwdb.d
- doins hwdb.d/*.hwdb
-
- dobashcomp shell-completion/bash/udevadm
-
- insinto /usr/share/zsh/site-functions
- doins shell-completion/zsh/_udevadm
- fi
-}
-
-add_service() {
- local initd=$1
- local runlevel=$2
-
- ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
- mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
- ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
- eend $?
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]]; then
- add_service systemd-tmpfiles-setup-dev sysinit
- add_service systemd-tmpfiles-setup boot
- fi
- if use udev; then
- ebegin "Updating hwdb"
- systemd-hwdb --root="${ROOT}" update
- eend $?
- udev_reload
- fi
-}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-01-28 2:47 Mike Gilbert
0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2023-01-28 2:47 UTC (permalink / raw
To: gentoo-commits
commit: 9dbc420dbec5553ac4a1f0ee6e69a8d1f93fb87a
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 02:40:11 2023 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 02:47:29 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9dbc420d
sys-apps/systemd-utils: add 252.4
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd-utils/Manifest | 2 +
sys-apps/systemd-utils/files/legacy.conf | 3 +
sys-apps/systemd-utils/systemd-utils-252.4.ebuild | 536 ++++++++++++++++++++++
3 files changed, 541 insertions(+)
diff --git a/sys-apps/systemd-utils/Manifest b/sys-apps/systemd-utils/Manifest
index eb5f1cb21946..c0b0ebb1d8cd 100644
--- a/sys-apps/systemd-utils/Manifest
+++ b/sys-apps/systemd-utils/Manifest
@@ -1,2 +1,4 @@
DIST systemd-musl-patches-251.2.tar.gz 28512 BLAKE2B 4ac6a5220dab8409962a3954af2fb2484af718d0f282129957236ce241fbe8538a90d507a96c7c3d86f4f408ab784a6888b37486405d3276e7734a1bd5aa9680 SHA512 6e56b62234ac54929faea5a7cad699d0b932f869b48e3ba4e1f349a88653b7c787efec24a09b00290c3dc566614e3c1dc2f3c04f04e943f513108a91eca1be82
+DIST systemd-musl-patches-252.4.tar.gz 25053 BLAKE2B 1d75f85ea0c48c788e9199e2d919bac90edce16a9788a349332cf308c32fb9510ac2883f8e09f21e7f37fbac2e557dc39cdf44dcd7a986587c40dedd2d1b5df5 SHA512 1dc8e220eae1869eb4bb50f9c701392542b053099cf9b6bde13f12a2d26fa29984819a8b4ce1b6c57e38a71f86324469a87cf9e22abe0f6d67ac3e84c6b9a3ba
DIST systemd-stable-251.10.tar.gz 11461671 BLAKE2B a351b6dd9fc307e4bdcf0323b16e7f58c714392cfa466180a81196309c289b54767bfe5d03037eb1bd6b273d7eb8f6f42b927aabaa1310be04266675d1a3dd06 SHA512 49e33dbbc1b2ebe123b2f722070c87524b3126d1e605fb3e24a3f9f328ab67de506dc4588a92caf157428c21b9c73c3884726c4a5b1f67bb997d4a68bb871e5b
+DIST systemd-stable-252.4.tar.gz 11753300 BLAKE2B 8819ca6d3a64c110e5a245ae0369dc431079556e200d13d8edfc64fc35b2b04f1cdc215b81d9bf126245f315be3662ebd2c094167f88d2465f0dce25aa1fd196 SHA512 d4e99a67c59091dae78f654433a6c5e114ae66256b72d9d43292c43a986ee6a58e2d06f12866cbd7ec821b61580ec003af1725f60fd4b038b4a981b3ca839ee2
diff --git a/sys-apps/systemd-utils/files/legacy.conf b/sys-apps/systemd-utils/files/legacy.conf
new file mode 100644
index 000000000000..cbcac747e5d8
--- /dev/null
+++ b/sys-apps/systemd-utils/files/legacy.conf
@@ -0,0 +1,3 @@
+# Based on legacy.conf from systemd
+d /run/lock 0755 root root -
+L /var/lock - - - - ../run/lock
diff --git a/sys-apps/systemd-utils/systemd-utils-252.4.ebuild b/sys-apps/systemd-utils/systemd-utils-252.4.ebuild
new file mode 100644
index 000000000000..191d25923fb0
--- /dev/null
+++ b/sys-apps/systemd-utils/systemd-utils-252.4.ebuild
@@ -0,0 +1,536 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{9..11} )
+
+if [[ ${PV} != 25[12].* ]] ; then
+ # The F_S=3 issues should be fixed in 253.
+ # - https://github.com/systemd/systemd/issues/22801
+ # - https://github.com/systemd/systemd/pull/25967
+ # - https://github.com/systemd/systemd/commit/7929e180aa47a2692ad4f053afac2857d7198758
+ # - https://github.com/systemd/systemd/commit/4f79f545b3c46c358666c9f5f2b384fe50aac4b4
+ die "Please remove the FORTIFY_SOURCE hacks in src_configure."
+fi
+
+QA_PKGCONFIG_VERSION=$(ver_cut 1)
+
+inherit bash-completion-r1 flag-o-matic meson-multilib python-any-r1 toolchain-funcs udev usr-ldscript
+
+DESCRIPTION="Utilities split out from systemd for OpenRC users"
+HOMEPAGE="https://systemd.io/"
+
+if [[ ${PV} == *.* ]]; then
+ MY_P="systemd-stable-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd-stable/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+else
+ MY_P="systemd-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/systemd/systemd/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+fi
+
+MUSL_PATCHSET="systemd-musl-patches-252.4"
+SRC_URI+=" elibc_musl? ( https://dev.gentoo.org/~floppym/dist/${MUSL_PATCHSET}.tar.gz )"
+
+LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+acl boot +kmod selinux split-usr sysusers +tmpfiles test +udev"
+REQUIRED_USE="|| ( boot tmpfiles sysusers udev )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ elibc_musl? ( >=sys-libs/musl-1.2.3 )
+ selinux? ( sys-libs/libselinux:0= )
+ tmpfiles? (
+ acl? ( sys-apps/acl:0= )
+ )
+ udev? (
+ >=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
+ sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+ virtual/libcrypt:=[${MULTILIB_USEDEP}]
+ acl? ( sys-apps/acl:0= )
+ kmod? ( >=sys-apps/kmod-15:0= )
+ )
+ !udev? (
+ >=sys-apps/util-linux-2.30:0=
+ sys-libs/libcap:0=
+ virtual/libcrypt:=
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ >=sys-kernel/linux-headers-3.11
+ boot? ( >=sys-boot/gnu-efi-3.0.2 )
+"
+RDEPEND="${COMMON_DEPEND}
+ boot? ( !<sys-boot/systemd-boot-250 )
+ tmpfiles? ( !<sys-apps/systemd-tmpfiles-250 )
+ udev? (
+ acct-group/audio
+ acct-group/cdrom
+ acct-group/dialout
+ acct-group/disk
+ acct-group/input
+ acct-group/kmem
+ acct-group/kvm
+ acct-group/lp
+ acct-group/render
+ acct-group/sgx
+ acct-group/tape
+ acct-group/tty
+ acct-group/video
+ !sys-apps/gentoo-systemd-integration
+ !sys-apps/hwids[udev]
+ !<sys-fs/udev-250
+ !sys-fs/eudev
+ )
+ !sys-apps/systemd
+"
+PDEPEND="
+ udev? ( >=sys-fs/udev-init-scripts-34 )
+"
+BDEPEND="
+ $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gperf
+ >=sys-apps/coreutils-8.16
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+TMPFILES_OPTIONAL=1
+UDEV_OPTIONAL=1
+
+python_check_deps() {
+ python_has_version "dev-python/jinja[${PYTHON_USEDEP}]"
+}
+
+QA_EXECSTACK="usr/lib/systemd/boot/efi/*"
+QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*"
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/251-tmpfiles-ub.patch"
+ )
+
+ if use elibc_musl; then
+ PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
+ fi
+ default
+
+ # Remove install_rpath; we link statically
+ local rpath_pattern="install_rpath : rootpkglibdir,"
+ grep -q -e "${rpath_pattern}" meson.build || die
+ sed -i -e "/${rpath_pattern}/d" meson.build || die
+}
+
+src_configure() {
+ # Broken with FORTIFY_SOURCE=3: bug #841770.
+ #
+ # Our toolchain sets F_S=2 by default w/ >= -O2, so we need
+ # to unset F_S first, then explicitly set 2, to negate any default
+ # and anything set by the user if they're choosing 3 (or if they've
+ # modified GCC to set 3).
+ #
+ if is-flagq '-O[23]' || is-flagq '-Ofast' ; then
+ # We can't unconditionally do this b/c we fortify needs
+ # some level of optimisation.
+ filter-flags -D_FORTIFY_SOURCE=3
+ append-cppflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_use split-usr)
+ $(meson_use split-usr split-bin)
+ -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
+ -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
+ -Dsysvinit-path=
+ $(meson_native_use_bool boot efi)
+ $(meson_native_use_bool boot gnu-efi)
+ $(meson_native_use_bool boot kernel-install)
+ $(meson_native_use_bool selinux)
+ $(meson_native_use_bool sysusers)
+ $(meson_use test tests)
+ $(meson_native_use_bool tmpfiles)
+ $(meson_use udev hwdb)
+
+ -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
+
+ # Link staticly with libsystemd-shared
+ -Dlink-boot-shared=false
+ -Dlink-udev-shared=false
+
+ # systemd-tmpfiles has a separate "systemd-tmpfiles.standalone" target
+ -Dstandalone-binaries=true
+
+ # Disable all optional features
+ -Dadm-group=false
+ -Danalyze=false
+ -Dapparmor=false
+ -Daudit=false
+ -Dbacklight=false
+ -Dbinfmt=false
+ -Dbpf-framework=false
+ -Dbzip2=false
+ -Dcoredump=false
+ -Ddbus=false
+ -Delfutils=false
+ -Denvironment-d=false
+ -Dfdisk=false
+ -Dgcrypt=false
+ -Dglib=false
+ -Dgshadow=false
+ -Dgnutls=false
+ -Dhibernate=false
+ -Dhostnamed=false
+ -Didn=false
+ -Dima=false
+ -Dinitrd=false
+ -Dfirstboot=false
+ -Dldconfig=false
+ -Dlibcryptsetup=false
+ -Dlibcurl=false
+ -Dlibfido2=false
+ -Dlibidn=false
+ -Dlibidn2=false
+ -Dlibiptc=false
+ -Dlocaled=false
+ -Dlogind=false
+ -Dlz4=false
+ -Dmachined=false
+ -Dmicrohttpd=false
+ -Dnetworkd=false
+ -Dnscd=false
+ -Dnss-myhostname=false
+ -Dnss-resolve=false
+ -Dnss-systemd=false
+ -Doomd=false
+ -Dopenssl=false
+ -Dp11kit=false
+ -Dpam=false
+ -Dpcre2=false
+ -Dpolkit=false
+ -Dportabled=false
+ -Dpstore=false
+ -Dpwquality=false
+ -Drandomseed=false
+ -Dresolve=false
+ -Drfkill=false
+ -Dseccomp=false
+ -Dsmack=false
+ -Dsysext=false
+ -Dtimedated=false
+ -Dtimesyncd=false
+ -Dtpm=false
+ -Dqrencode=false
+ -Dquotacheck=false
+ -Duserdb=false
+ -Dutmp=false
+ -Dvconsole=false
+ -Dwheel-group=false
+ -Dxdg-autostart=false
+ -Dxkbcommon=false
+ -Dxz=false
+ -Dzlib=false
+ -Dzstd=false
+ )
+
+ if use tmpfiles || use udev; then
+ emesonargs+=( $(meson_native_use_bool acl) )
+ else
+ emesonargs+=( -Dacl=false )
+ fi
+
+ if use udev; then
+ emesonargs+=( $(meson_native_use_bool kmod) )
+ else
+ emesonargs+=( -Dkmod=false )
+ fi
+
+ if use elibc_musl; then
+ # Avoid redefinition of struct ethhdr.
+ append-cppflags -D__UAPI_DEF_ETHHDR=0
+ fi
+
+ if multilib_is_native_abi || use udev; then
+ meson_src_configure
+ fi
+}
+
+efi_arch() {
+ case "$(tc-arch)" in
+ amd64) echo x64 ;;
+ arm) echo arm ;;
+ arm64) echo aa64 ;;
+ x86) echo x86 ;;
+ esac
+}
+
+multilib_src_compile() {
+ local targets=()
+ if multilib_is_native_abi; then
+ if use boot; then
+ targets+=(
+ bootctl
+ kernel-install
+ man/bootctl.1
+ man/kernel-install.8
+ src/boot/efi/linux$(efi_arch).{efi,elf}.stub
+ src/boot/efi/systemd-boot$(efi_arch).efi
+ )
+ fi
+ if use sysusers; then
+ targets+=(
+ systemd-sysusers.standalone
+ man/sysusers.d.5
+ man/systemd-sysusers.8
+ )
+ if use test; then
+ targets+=(
+ systemd-runtest.env
+ )
+ fi
+ fi
+ if use tmpfiles; then
+ targets+=(
+ systemd-tmpfiles.standalone
+ man/tmpfiles.d.5
+ man/systemd-tmpfiles.8
+ tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ )
+ if use test; then
+ targets+=( test-tmpfiles )
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udevadm
+ systemd-hwdb
+ src/udev/ata_id
+ src/udev/cdrom_id
+ src/udev/fido_id
+ src/udev/mtd_probe
+ src/udev/scsi_id
+ src/udev/udev.pc
+ src/udev/v4l_id
+ man/udev.conf.5
+ man/systemd.link.5
+ man/hwdb.7
+ man/udev.7
+ man/systemd-hwdb.8
+ man/systemd-udevd.service.8
+ man/udevadm.8
+ hwdb.d/60-autosuspend-chromiumos.hwdb
+ rules.d/50-udev-default.rules
+ rules.d/64-btrfs.rules
+ )
+ if use test; then
+ targets+=(
+ # Used by udev-test.pl
+ systemd-detect-virt
+ test/sys
+ test-udev
+
+ test-fido-id-desc
+ test-udev-builtin
+ test-udev-event
+ test-udev-node
+ test-udev-util
+ )
+ fi
+ fi
+ fi
+ if use udev; then
+ targets+=(
+ udev:shared_library
+ src/libudev/libudev.pc
+ )
+ if use test; then
+ targets+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ fi
+ if multilib_is_native_abi || use udev; then
+ meson_src_compile "${targets[@]}"
+ fi
+}
+
+multilib_src_test() {
+ local tests=()
+ if multilib_is_native_abi; then
+ if use sysusers; then
+ tests+=(
+ test-sysusers.standalone
+ )
+ fi
+ if use tmpfiles; then
+ tests+=(
+ test-systemd-tmpfiles.standalone
+ test-tmpfiles
+ )
+ fi
+ if use udev; then
+ tests+=(
+ rule-syntax-check
+ test-fido-id-desc
+ test-udev-builtin
+ test-udev-event
+ test-udev-netlink
+ test-udev-node
+ test-udev-util
+ )
+ if [[ -w /dev ]]; then
+ tests+=( udev-test )
+ else
+ ewarn "Skipping udev-test (needs write access to /dev)"
+ fi
+ fi
+ fi
+ if use udev; then
+ tests+=(
+ test-libudev
+ test-libudev-sym
+ test-udev-device-thread
+ )
+ fi
+ if [[ ${#tests[@]} -ne 0 ]]; then
+ meson_src_test "${tests[@]}"
+ fi
+}
+
+src_install() {
+ local rootprefix="$(usex split-usr '' /usr)"
+ meson-multilib_src_install
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ if use boot; then
+ into /usr
+ dobin bootctl kernel-install
+ doman man/{bootctl.1,kernel-install.8}
+ insinto usr/lib/systemd/boot/efi
+ doins src/boot/efi/{linux$(efi_arch).{efi,elf}.stub,systemd-boot$(efi_arch).efi}
+ fi
+ if use sysusers; then
+ into "${rootprefix:-/}"
+ newbin systemd-sysusers{.standalone,}
+ doman man/{systemd-sysusers.8,sysusers.d.5}
+ fi
+ if use tmpfiles; then
+ into "${rootprefix:-/}"
+ newbin systemd-tmpfiles{.standalone,}
+ doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/{etc,static-nodes-permissions,var}.conf
+ fi
+ if use udev; then
+ into "${rootprefix:-/}"
+ dobin udevadm systemd-hwdb
+ dosym ../../bin/udevadm "${rootprefix}"/lib/systemd/systemd-udevd
+
+ exeinto "${rootprefix}"/lib/udev
+ doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
+
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ insinto /usr/share/pkgconfig
+ doins src/udev/udev.pc
+
+ doman man/{udev.conf.5,systemd.link.5,hwdb.7,systemd-hwdb.8,udev.7,udevadm.8}
+ newman man/systemd-udevd.service.8 systemd-udevd.8
+ fi
+ fi
+ if use udev; then
+ meson_install --no-rebuild --tags libudev
+ gen_usr_ldscript -a udev
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins src/libudev/libudev.pc
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ if use boot; then
+ into /usr
+ exeinto usr/lib/kernel/install.d
+ doexe src/kernel-install/*.install
+ dobashcomp shell-completion/bash/bootctl
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/{_bootctl,_kernel-install}
+ fi
+ if use tmpfiles; then
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup
+ doinitd "${FILESDIR}"/systemd-tmpfiles-setup-dev
+ exeinto /etc/cron.daily
+ doexe "${FILESDIR}"/systemd-tmpfiles-clean
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_systemd-tmpfiles
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/{tmp,x11}.conf
+ doins "${FILESDIR}"/legacy.conf
+ fi
+ if use udev; then
+ doheader src/libudev/libudev.h
+
+ insinto /etc/udev
+ doins src/udev/udev.conf
+ keepdir /etc/udev/{hwdb.d,rules.d}
+
+ insinto "${rootprefix}"/lib/systemd/network
+ doins network/99-default.link
+
+ # Remove to avoid conflict with elogind
+ # https://bugs.gentoo.org/856433
+ rm rules.d/70-power-switch.rules || die
+ insinto "${rootprefix}"/lib/udev/rules.d
+ doins rules.d/*.rules
+ doins "${FILESDIR}"/40-gentoo.rules
+
+ insinto "${rootprefix}"/lib/udev/hwdb.d
+ doins hwdb.d/*.hwdb
+
+ dobashcomp shell-completion/bash/udevadm
+
+ insinto /usr/share/zsh/site-functions
+ doins shell-completion/zsh/_udevadm
+ fi
+}
+
+add_service() {
+ local initd=$1
+ local runlevel=$2
+
+ ebegin "Adding '${initd}' service to the '${runlevel}' runlevel"
+ mkdir -p "${EROOT}/etc/runlevels/${runlevel}" &&
+ ln -snf "${EPREFIX}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+ eend $?
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ add_service systemd-tmpfiles-setup-dev sysinit
+ add_service systemd-tmpfiles-setup boot
+ fi
+ if use udev; then
+ ebegin "Updating hwdb"
+ systemd-hwdb --root="${ROOT}" update
+ eend $?
+ udev_reload
+ fi
+}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2023-05-10 0:54 Sam James
0 siblings, 0 replies; 9+ messages in thread
From: Sam James @ 2023-05-10 0:54 UTC (permalink / raw
To: gentoo-commits
commit: fc93e053eb3891497a24365d3dd8a0e143e8dd74
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed May 10 00:51:13 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed May 10 00:51:13 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fc93e053
sys-apps/systemd-utils: fix build w/ musl-1.2.4
Closes: https://bugs.gentoo.org/905900
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../files/systemd-utils-253.4-musl-lfs.patch | 52 ++++++++++++++++++++++
sys-apps/systemd-utils/systemd-utils-253.4.ebuild | 7 ++-
2 files changed, 58 insertions(+), 1 deletion(-)
diff --git a/sys-apps/systemd-utils/files/systemd-utils-253.4-musl-lfs.patch b/sys-apps/systemd-utils/files/systemd-utils-253.4-musl-lfs.patch
new file mode 100644
index 000000000000..312232d0b3a5
--- /dev/null
+++ b/sys-apps/systemd-utils/files/systemd-utils-253.4-musl-lfs.patch
@@ -0,0 +1,52 @@
+https://github.com/systemd/systemd/pull/27599
+
+From d096e05c625ea825eb4d781216ded717b7f71cca Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 10 May 2023 01:47:13 +0100
+Subject: [PATCH] dirent: conditionalize dirent assert based on dirent64
+ existence
+
+>=musl-1.2.4 doesn't define dirent64 and its LFS friends as its "native"
+functions are already LFS-aware.
+
+Check for dirent64 in meson.build and only assert if it exists.
+
+Bug: https://bugs.gentoo.org/905900
+Closes: https://github.com/systemd/systemd/pull/25809
+--- a/meson.build
++++ b/meson.build
+@@ -544,6 +544,7 @@ assert(long_max > 100000)
+ conf.set_quoted('LONG_MAX_STR', '@0@'.format(long_max))
+
+ decl_headers = '''
++#include <dirent.h>
+ #include <uchar.h>
+ #include <sys/mount.h>
+ #include <sys/stat.h>
+@@ -553,6 +554,7 @@ foreach decl : ['char16_t',
+ 'char32_t',
+ 'struct mount_attr',
+ 'struct statx',
++ 'struct dirent64',
+ ]
+
+ # We get -1 if the size cannot be determined
+--- a/src/basic/dirent-util.h
++++ b/src/basic/dirent-util.h
+@@ -36,6 +36,7 @@ struct dirent *readdir_no_dot(DIR *dirp);
+ /* Only if 64bit off_t is enabled struct dirent + struct dirent64 are actually the same. We require this, and
+ * we want them to be interchangeable to make getdents64() work, hence verify that. */
+ assert_cc(_FILE_OFFSET_BITS == 64);
++#if HAVE_STRUCT_DIRENT64
+ assert_cc(sizeof(struct dirent) == sizeof(struct dirent64));
+ assert_cc(offsetof(struct dirent, d_ino) == offsetof(struct dirent64, d_ino));
+ assert_cc(sizeof_field(struct dirent, d_ino) == sizeof_field(struct dirent64, d_ino));
+@@ -47,6 +48,7 @@ assert_cc(offsetof(struct dirent, d_type) == offsetof(struct dirent64, d_type));
+ assert_cc(sizeof_field(struct dirent, d_type) == sizeof_field(struct dirent64, d_type));
+ assert_cc(offsetof(struct dirent, d_name) == offsetof(struct dirent64, d_name));
+ assert_cc(sizeof_field(struct dirent, d_name) == sizeof_field(struct dirent64, d_name));
++#endif
+
+ #define FOREACH_DIRENT_IN_BUFFER(de, buf, sz) \
+ for (void *_end = (uint8_t*) ({ (de) = (buf); }) + (sz); \
+
diff --git a/sys-apps/systemd-utils/systemd-utils-253.4.ebuild b/sys-apps/systemd-utils/systemd-utils-253.4.ebuild
index 4dc4e15bbe49..ad372c33f20e 100644
--- a/sys-apps/systemd-utils/systemd-utils-253.4.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-253.4.ebuild
@@ -120,7 +120,12 @@ src_prepare() {
)
if use elibc_musl; then
- PATCHES+=( "${WORKDIR}/${MUSL_PATCHSET}" )
+ PATCHES+=(
+ "${WORKDIR}/${MUSL_PATCHSET}"
+ # The LFS patch should be fine unconditionally but
+ # let's keep it conditional until merged upstream.
+ "${FILESDIR}"/${PN}-253.4-musl-lfs.patch
+ )
fi
default
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/
@ 2024-06-07 18:06 Mike Gilbert
0 siblings, 0 replies; 9+ messages in thread
From: Mike Gilbert @ 2024-06-07 18:06 UTC (permalink / raw
To: gentoo-commits
commit: 34cd105a4b61cdbc9b9d6f722425fbbeaf405f13
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 7 18:03:34 2024 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Jun 7 18:05:58 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34cd105a
sys-apps/systemd-utils: restore patch to fix efi wchar_t on musl
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd-utils/files/musl-efi-wchar.patch | 29 +++++++++++++++++++++++
sys-apps/systemd-utils/systemd-utils-255.7.ebuild | 1 +
2 files changed, 30 insertions(+)
diff --git a/sys-apps/systemd-utils/files/musl-efi-wchar.patch b/sys-apps/systemd-utils/files/musl-efi-wchar.patch
new file mode 100644
index 000000000000..a3681552d33f
--- /dev/null
+++ b/sys-apps/systemd-utils/files/musl-efi-wchar.patch
@@ -0,0 +1,29 @@
+From c4050bd401611f6223c00e58ac9c26b9caccd286 Mon Sep 17 00:00:00 2001
+From: Violet Purcell <vimproved@inventati.org>
+Date: Sat, 9 Sep 2023 13:10:53 -0400
+Subject: [PATCH] efi: append -D__DEFINED_wchar_t to LDFLAGS
+
+This forces systemd-boot to use the wchar_t type defined from
+__WCHAR_TYPE__ in efi.h, instead of the wchar_t defined in musl's
+alltypes.h. Adapted from openembedded's solution.
+
+Signed-off-by: Violet Purcell <vimproved@inventati.org>
+---
+ src/boot/efi/meson.build | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build
+index 2773eaf286..3c1e09c729 100644
+--- a/src/boot/efi/meson.build
++++ b/src/boot/efi/meson.build
+@@ -130,6 +130,7 @@ efi_includes = [fundamental_include, include_directories('.')]
+
+ efi_c_args = [
+ '-DSD_BOOT=1',
++ '-D__DEFINED_wchar_t',
+ '-ffreestanding',
+ '-fno-strict-aliasing',
+ '-fshort-wchar',
+--
+2.42.0
+
diff --git a/sys-apps/systemd-utils/systemd-utils-255.7.ebuild b/sys-apps/systemd-utils/systemd-utils-255.7.ebuild
index 865a3e795381..7a71b20cb498 100644
--- a/sys-apps/systemd-utils/systemd-utils-255.7.ebuild
+++ b/sys-apps/systemd-utils/systemd-utils-255.7.ebuild
@@ -138,6 +138,7 @@ src_prepare() {
if use elibc_musl; then
PATCHES+=(
"${WORKDIR}/${MUSL_PATCHSET}"
+ "${FILESDIR}/musl-efi-wchar.patch"
)
fi
default
^ permalink raw reply related [flat|nested] 9+ messages in thread
end of thread, other threads:[~2024-06-07 18:06 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-06 3:22 [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd-utils/, sys-apps/systemd-utils/files/ Mike Gilbert
-- strict thread matches above, loose matches on Subject: below --
2024-06-07 18:06 Mike Gilbert
2023-05-10 0:54 Sam James
2023-01-28 2:47 Mike Gilbert
2023-01-13 20:06 Mike Gilbert
2023-01-11 7:50 Sam James
2022-11-21 16:14 Mike Gilbert
2022-09-18 15:52 Mike Gilbert
2022-08-02 23:40 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox