summaryrefslogtreecommitdiff
path: root/sys-auth/elogind
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-09-19 11:05:22 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-09-19 11:05:22 +0100
commitc716cfc75e7763e5c8437bc805590da510b9c450 (patch)
tree5551ea2b01b69e067f271284e3e18559fb2f222a /sys-auth/elogind
parent661702c5c03ed18d204a4d9d3be9a1f10f981fb1 (diff)
sys-auth/elogind : revision bump, enable cgroup-hybrid
Diffstat (limited to 'sys-auth/elogind')
-rw-r--r--sys-auth/elogind/elogind-246.10-r3.ebuild (renamed from sys-auth/elogind/elogind-246.10-r10.ebuild)18
-rw-r--r--sys-auth/elogind/files/elogind-246.10-clang-undefined-symbol.patch20
2 files changed, 29 insertions, 9 deletions
diff --git a/sys-auth/elogind/elogind-246.10-r10.ebuild b/sys-auth/elogind/elogind-246.10-r3.ebuild
index 2ebfefdd..9b6bcc1a 100644
--- a/sys-auth/elogind/elogind-246.10-r10.ebuild
+++ b/sys-auth/elogind/elogind-246.10-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -9,7 +9,7 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
inherit linux-info meson pam udev xdg-utils
@@ -19,7 +19,8 @@ HOMEPAGE="https://github.com/elogind/elogind"
LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
SLOT="0"
-IUSE="+acl audit debug doc +pam +policykit selinux"
+IUSE="+acl audit +cgroup-hybrid debug doc +pam +policykit selinux test"
+RESTRICT="!test? ( test )"
BDEPEND="
app-text/docbook-xml-dtd:4.2
@@ -52,6 +53,7 @@ PATCHES=(
"${FILESDIR}/${PN}-243.7-nodocs.patch"
"${FILESDIR}/${PN}-241.4-broken-test.patch" # bug 699116
"${FILESDIR}/${P}-revert-polkit-automagic.patch"
+ "${FILESDIR}/${P}-clang-undefined-symbol.patch"
)
pkg_setup() {
@@ -66,12 +68,9 @@ src_prepare() {
}
src_configure() {
- local rccgroupmode="$(grep rc_cgroup_mode ${EPREFIX}/etc/rc.conf | cut -d '"' -f 2)"
- local cgroupmode="legacy"
-
- if [[ "xhybrid" = "x${rccgroupmode}" ]] ; then
+ if use cgroup-hybrid; then
cgroupmode="hybrid"
- elif [[ "xunified" = "x${rccgroupmode}" ]] ; then
+ else
cgroupmode="unified"
fi
@@ -96,6 +95,7 @@ src_configure() {
-Dhtml=$(usex doc auto false)
-Dpam=$(usex pam true false)
-Dselinux=$(usex selinux true false)
+ -Dtests=$(usex test true false)
-Dutmp=$(usex elibc_musl false true)
)
@@ -109,7 +109,7 @@ src_install() {
newinitd "${FILESDIR}"/${PN}.init-r1 ${PN}
- sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ sed -e "s|@libdir@|$(get_libdir)|" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
newconfd ${PN}.conf ${PN}
rm -rf ${ED}/lib/udev/rules.d/73-seat-late.rules
diff --git a/sys-auth/elogind/files/elogind-246.10-clang-undefined-symbol.patch b/sys-auth/elogind/files/elogind-246.10-clang-undefined-symbol.patch
new file mode 100644
index 00000000..3a157615
--- /dev/null
+++ b/sys-auth/elogind/files/elogind-246.10-clang-undefined-symbol.patch
@@ -0,0 +1,20 @@
+--- a/src/libelogind/sd-bus/bus-error.h
++++ b/src/libelogind/sd-bus/bus-error.h
+@@ -28,11 +28,17 @@ int bus_error_set_errnofv(sd_bus_error *e, int error, const char *format, va_lis
+ * the bus error table, and BUS_ERROR_MAP_ELF_USE has to be used at
+ * least once per compilation unit (i.e. per library), to ensure that
+ * the error map is really added to the final binary.
++ *
++ * In addition, set the retain attribute so that the section cannot be
++ * discarded by ld --gc-sections -z start-stop-gc. Older compilers would
++ * warn for the unknown attribute, so just disable -Wattributes.
+ */
+
+ #define BUS_ERROR_MAP_ELF_REGISTER \
++ _Pragma("GCC diagnostic ignored \"-Wattributes\"") \
+ _section_("SYSTEMD_BUS_ERROR_MAP") \
+ _used_ \
++ __attribute__((retain)) \
+ _alignptr_ \
+ _variable_no_sanitize_address_
+