commit:     8af5d3267ae4593548c172a92863a4a20ab2ddd3
Author:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Fri Apr  5 00:13:44 2019 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Fri Apr  5 00:13:44 2019 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=8af5d326

sys-auth/elogind: update to 239.4 wich is working on musl

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Jory Pratt <anarchy <AT> gentoo.org>

 sys-auth/elogind/Manifest                          |   2 +-
 sys-auth/elogind/elogind-234.4.ebuild              | 106 -----------------
 sys-auth/elogind/elogind-239.4.ebuild              | 131 +++++++++++++++++++++
 sys-auth/elogind/files/elogind-226.4-docs.patch    |  15 ---
 sys-auth/elogind/files/elogind-238.1-docs.patch    |  23 ++++
 sys-auth/elogind/files/elogind-239-fix-musl.patch  |  33 ++++++
 .../elogind/files/elogind-239.3-broken-test.patch  |  23 ++++
 sys-auth/elogind/files/elogind-fix-musl.patch      |  38 ------
 sys-auth/elogind/files/elogind.conf                |   8 --
 9 files changed, 211 insertions(+), 168 deletions(-)

diff --git a/sys-auth/elogind/Manifest b/sys-auth/elogind/Manifest
index 9628a6a..e7890c5 100644
--- a/sys-auth/elogind/Manifest
+++ b/sys-auth/elogind/Manifest
@@ -1 +1 @@
-DIST elogind-234.4.tar.gz 973370 SHA256 
ffb465a62c4281c19b07eb7fbb9ad0987f3b726ae1a868a92a3144d7714542f3 SHA512 
2df4fa318074d4f5e5dbba353cf817068a2703ffed40cdeae4cba2dea4ee143d1c5fc076b19419f1c4299392088c2c14b430d8aa1ded03b62117311802305d5e
 WHIRLPOOL 
1b735338cb02ef8cffb5837a0702110117ae1d677a4cbf106180c549485f7fb0604f3134e6ff5e14b23485ddfe4d4415a41e69d93b8f099cee41a220d0ea4a69
+DIST elogind-239.4.tar.gz 1183999 BLAKE2B 
3a0aa216ee565ae8f3311b16af9752a99519254ac8737de2a44821e95d05b3e2d8b82af3d397367e8804d7bc45cb942859516f195848ba0317aa73891d77903b
 SHA512 
84e9765d7c3039478b06a683870b37ec718724f1185b56c1b74885133283ad1678f3ca8a73510cb4b0777d099c54f59e927caaae7ae988abda803150b84cf8fc

diff --git a/sys-auth/elogind/elogind-234.4.ebuild 
b/sys-auth/elogind/elogind-234.4.ebuild
deleted file mode 100644
index 96d5c75..0000000
--- a/sys-auth/elogind/elogind-234.4.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools linux-info pam udev
-
-DESCRIPTION="The systemd project's logind, extracted to a standalone package"
-HOMEPAGE="https://github.com/elogind/elogind";
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE="acl debug pam policykit selinux"
-
-RDEPEND="
-       sys-apps/util-linux
-       sys-libs/libcap
-       virtual/libudev:=
-       acl? ( sys-apps/acl )
-       pam? ( virtual/pam )
-       selinux? ( sys-libs/libselinux )
-       !sys-apps/systemd
-"
-DEPEND="${RDEPEND}
-       app-text/docbook-xml-dtd:4.2
-       app-text/docbook-xml-dtd:4.5
-       app-text/docbook-xsl-stylesheets
-       dev-util/gperf
-       dev-util/intltool
-       sys-devel/libtool
-       virtual/pkgconfig
-"
-PDEPEND="
-       sys-apps/dbus
-       policykit? ( sys-auth/polkit )
-"
-
-PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
-
-pkg_setup() {
-       local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
-               ~SIGNALFD ~TIMERFD"
-
-       if use kernel_linux; then
-               linux-info_pkg_setup
-       fi
-}
-
-src_prepare() {
-       default
-       eapply "${FILESDIR}/${PN}-fix-musl.patch"
-       eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
-}
-
-src_configure() {
-       econf \
-               --with-pamlibdir=$(getpam_mod_dir) \
-               --with-udevrulesdir="$(get_udevdir)"/rules.d \
-               --libdir="${EPREFIX}"/usr/$(get_libdir) \
-               --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
-               --with-rootprefix="${EPREFIX}/" \
-               --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
-               --enable-smack \
-               --with-cgroup-controller=openrc \
-               --disable-lto \
-               $(use_enable debug debug elogind) \
-               $(use_enable acl) \
-               $(use_enable pam) \
-               $(use_enable selinux)
-}
-
-src_install() {
-       default
-       find "${D}" -name '*.la' -delete || die
-
-       newinitd "${FILESDIR}"/${PN}.init ${PN}
-
-       sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > 
${PN}.conf || die
-       newconfd ${PN}.conf ${PN}
-}
-
-pkg_postinst() {
-       if [ "$(rc-config list boot | grep elogind)" != "" ]; then
-               ewarn "elogind is currently started from boot runlevel."
-       elif [ "$(rc-config list default | grep elogind)" != "" ]; then
-               ewarn "elogind is currently started from default runlevel."
-               ewarn "Please remove elogind from the default runlevel and"
-               ewarn "add it to the boot runlevel by:"
-               ewarn "# rc-update del elogind default"
-               ewarn "# rc-update add elogind boot"
-       else
-               ewarn "elogind is currently not started from any runlevel."
-               ewarn "You may add it to the boot runlevel by:"
-               ewarn "# rc-update add elogind boot"
-       fi
-       ewarn "Alternatively you can leave elogind out of any"
-       ewarn "runlevel. It will then be started automatically"
-       if use pam; then
-               ewarn "when the first service calls it via dbus, or the"
-               ewarn "first user logs into the system."
-       else
-               ewarn "when the first service calls it via dbus."
-       fi
-}

diff --git a/sys-auth/elogind/elogind-239.4.ebuild 
b/sys-auth/elogind/elogind-239.4.ebuild
new file mode 100644
index 0000000..2412d11
--- /dev/null
+++ b/sys-auth/elogind/elogind-239.4.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit linux-info meson pam udev xdg-utils
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind";
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+acl debug doc +pam +policykit selinux"
+
+COMMON_DEPEND="
+       sys-apps/util-linux
+       sys-libs/libcap
+       virtual/libudev:=
+       acl? ( sys-apps/acl )
+       pam? ( virtual/pam )
+       selinux? ( sys-libs/libselinux )
+"
+DEPEND="${COMMON_DEPEND}
+       app-text/docbook-xml-dtd:4.2
+       app-text/docbook-xml-dtd:4.5
+       app-text/docbook-xsl-stylesheets
+       dev-util/gperf
+       dev-util/intltool
+       sys-devel/libtool
+       virtual/pkgconfig
+"
+RDEPEND="${COMMON_DEPEND}
+       !sys-apps/systemd
+"
+PDEPEND="
+       sys-apps/dbus
+       policykit? ( sys-auth/polkit )
+"
+
+DOCS=( src/libelogind/sd-bus/GVARIANT-SERIALIZATION )
+
+PATCHES=(
+       "${FILESDIR}/${PN}-238.1-docs.patch"
+       "${FILESDIR}/${PN}-239.3-broken-test.patch" # bug 669862
+       "${FILESDIR}/${PN}-239-fix-musl.patch"
+)
+
+pkg_setup() {
+       local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SIGNALFD ~TIMERFD"
+
+       use kernel_linux && linux-info_pkg_setup
+}
+
+src_prepare() {
+       default
+       xdg_environment_reset
+}
+
+src_configure() {
+       local rccgroupmode="$(grep rc_cgroup_mode /etc/rc.conf | cut -d '"' -f 
2)"
+       local cgroupmode="legacy"
+
+       if [[ "xhybrid" = "x${rccgroupmode}" ]] ; then
+               cgroupmode="hybrid"
+       elif [[ "xunified" = "x${rccgroupmode}" ]] ; then
+               cgroupmode="unified"
+       fi
+
+       local emesonargs=(
+               -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+               -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+               -Dpamlibdir=$(getpam_mod_dir)
+               -Dudevrulesdir="$(get_udevdir)"/rules.d
+               --libdir="${EPREFIX}"/usr/$(get_libdir)
+               -Drootlibdir="${EPREFIX}"/$(get_libdir)
+               -Drootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind
+               -Drootprefix="${EPREFIX}/"
+               
-Dbashcompletiondir="${EPREFIX}/usr/share/bash-completion/completions"
+               -Dman=auto
+               -Dsmack=true
+               -Dcgroup-controller=openrc
+               -Ddefault-hierarchy=${cgroupmode}
+               -Ddefault-kill-user-processes=false
+               -Dacl=$(usex acl true false)
+               --buildtype $(usex debug debug release)
+               -Dhtml=$(usex doc auto false)
+               -Dpam=$(usex pam true false)
+               -Dselinux=$(usex selinux true false)
+               -Dutmp=$(usex elibc_musl false true)
+       )
+
+       meson_src_configure
+}
+
+src_install() {
+       DOCS+=( src/libelogind/sd-bus/GVARIANT-SERIALIZATION )
+
+       meson_src_install
+
+       newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+       sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > 
${PN}.conf || die
+       newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+       if [[ "$(rc-config list boot | grep elogind)" != "" ]]; then
+               elog "elogind is currently started from boot runlevel."
+       elif [[ "$(rc-config list default | grep elogind)" != "" ]]; then
+               ewarn "elogind is currently started from default runlevel."
+               ewarn "Please remove elogind from the default runlevel and"
+               ewarn "add it to the boot runlevel by:"
+               ewarn "# rc-update del elogind default"
+               ewarn "# rc-update add elogind boot"
+       else
+               elog "elogind is currently not started from any runlevel."
+               elog "You may add it to the boot runlevel by:"
+               elog "# rc-update add elogind boot"
+               elog
+               elog "Alternatively, you can leave elogind out of any"
+               elog "runlevel. It will then be started automatically"
+               if use pam; then
+                       elog "when the first service calls it via dbus, or"
+                       elog "the first user logs into the system."
+               else
+                       elog "when the first service calls it via dbus."
+               fi
+       fi
+}

diff --git a/sys-auth/elogind/files/elogind-226.4-docs.patch 
b/sys-auth/elogind/files/elogind-226.4-docs.patch
deleted file mode 100644
index 4161f63..0000000
--- a/sys-auth/elogind/files/elogind-226.4-docs.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/Makefile.am      2017-02-16 13:22:56.764985896 +0100
-+++ b/Makefile.am      2017-02-16 13:23:04.998986057 +0100
-@@ -194,12 +194,6 @@
- bin_PROGRAMS =
- rootlibexec_PROGRAMS =
- 
--dist_doc_DATA = \
--      README \
--      NEWS \
--      LICENSE.LGPL2.1 \
--      LICENSE.GPL2
--
- @INTLTOOL_POLICY_RULE@
- 
- # 
------------------------------------------------------------------------------

diff --git a/sys-auth/elogind/files/elogind-238.1-docs.patch 
b/sys-auth/elogind/files/elogind-238.1-docs.patch
new file mode 100644
index 0000000..2288ddf
--- /dev/null
+++ b/sys-auth/elogind/files/elogind-238.1-docs.patch
@@ -0,0 +1,23 @@
+--- a/meson.build      2018-06-25 16:41:00.000000000 +0200
++++ b/meson.build      2018-06-30 21:45:52.139755680 +0200
+@@ -2928,11 +2928,6 @@
+ # install_data('modprobe.d/systemd.conf',
+ #              install_dir : modprobedir)
+ #endif // 0
+-install_data('LICENSE.GPL2',
+-             'LICENSE.LGPL2.1',
+-             'NEWS',
+-             'README',
+-             'doc/CODING_STYLE',
+ #if 0 /// irrelevant for elogind
+ #              'doc/DISTRO_PORTING',
+ #              'doc/ENVIRONMENT.md',
+@@ -2941,8 +2936,6 @@
+ #              'doc/TRANSLATORS',
+ #              'doc/UIDS-GIDS.md',
+ #endif // 0
+-             'src/libelogind/sd-bus/GVARIANT-SERIALIZATION',
+-             install_dir : docdir)
+ 
+ #if 0 /// UNNEEDED by elogind
+ # meson.add_install_script('sh', '-c', mkdir_p.format(systemdstatedir))

diff --git a/sys-auth/elogind/files/elogind-239-fix-musl.patch 
b/sys-auth/elogind/files/elogind-239-fix-musl.patch
new file mode 100644
index 0000000..ae9442f
--- /dev/null
+++ b/sys-auth/elogind/files/elogind-239-fix-musl.patch
@@ -0,0 +1,33 @@
+From 347c5bb22f8f79f339e578e30a19fed15e7f3e09 Mon Sep 17 00:00:00 2001
+From: Jory Pratt <[email protected]>
+Date: Thu, 4 Apr 2019 18:59:18 -0500
+Subject: [PATCH] fix musl libc compile
+
+---
+ src/test/test-hexdecoct.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/src/test/test-hexdecoct.c b/src/test/test-hexdecoct.c
+index 101a78b..dc4e09b 100644
+--- a/src/test/test-hexdecoct.c
++++ b/src/test/test-hexdecoct.c
+@@ -10,6 +10,16 @@
+ /// Additional includes needed by elogind
+ #include "musl_missing.h"
+ 
++#define strndupa(s, n) \
++      ({ \
++        const char *__in = (s);                       \
++        size_t __len = strnlen(__in, (n));            \
++        char *__out = (char *)alloca(__len + 1);      \
++        __out[__len] = '\0';                          \
++        (char *)memcpy(__out, __in, __len);           \
++      })
++
++
+ static void test_hexchar(void) {
+         assert_se(hexchar(0xa) == 'a');
+         assert_se(hexchar(0x0) == '0');
+-- 
+2.21.0
+

diff --git a/sys-auth/elogind/files/elogind-239.3-broken-test.patch 
b/sys-auth/elogind/files/elogind-239.3-broken-test.patch
new file mode 100644
index 0000000..601d1cb
--- /dev/null
+++ b/sys-auth/elogind/files/elogind-239.3-broken-test.patch
@@ -0,0 +1,23 @@
+--- a/src/test/meson.build     2018-12-07 07:36:50.000000000 +0100
++++ b/src/test/meson.build     2019-02-15 00:50:23.254064681 +0100
+@@ -947,13 +947,13 @@
+ #         [['src/libsystemd/sd-resolve/test-resolve.c'],
+ #          [],
+ #          [threads]],
+-#endif // 0
+-
+-        [['src/libelogind/sd-login/test-login.c'],
+-         [],
+-         []],
+-
+-#if 0 /// UNNEEDED in elogind
++#
++#
++#        [['src/libelogind/sd-login/test-login.c'],
++#         [],
++#         []],
++#
++#
+ #         [['src/libsystemd/sd-device/test-udev-device-thread.c'],
+ #          [libbasic,
+ #           libshared_static,

diff --git a/sys-auth/elogind/files/elogind-fix-musl.patch 
b/sys-auth/elogind/files/elogind-fix-musl.patch
deleted file mode 100644
index 4aba103..0000000
--- a/sys-auth/elogind/files/elogind-fix-musl.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- a/src/test/test-hexdecoct.c
-+++ b/src/test/test-hexdecoct.c
-@@ -22,6 +22,16 @@
- #include "macro.h"
- #include "string-util.h"
- 
-+#define strndupa(s, n) \
-+      ({ \
-+        const char *__in = (s);                       \
-+        size_t __len = strnlen(__in, (n));            \
-+        char *__out = (char *)alloca(__len + 1);      \
-+        __out[__len] = '\0';                          \
-+        (char *)memcpy(__out, __in, __len);           \
-+      })
-+
-+
- static void test_hexchar(void) {
-         assert_se(hexchar(0xa) == 'a');
-         assert_se(hexchar(0x0) == '0');
---- a/src/test/test-sizeof.c
-+++ b/src/test/test-sizeof.c
-@@ -48,8 +48,6 @@
-         info(unsigned);
-         info(long unsigned);
-         info(long long unsigned);
--        info(__syscall_ulong_t);
--        info(__syscall_slong_t);
- 
-         info(float);
-         info(double);
-@@ -59,7 +57,6 @@
-         info(ssize_t);
-         info(time_t);
-         info(usec_t);
--        info(__time_t);
- 
-         info(enum Enum);
-         info(enum BigEnum);

diff --git a/sys-auth/elogind/files/elogind.conf 
b/sys-auth/elogind/files/elogind.conf
deleted file mode 100644
index b66a158..0000000
--- a/sys-auth/elogind/files/elogind.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# /etc/conf.d/elogind: config file for /etc/init.d/elogind
-
-# this is the elogind executable
-ELOGIND_EXEC="/usr/libexec/elogind/elogind"
-
-# this is where elogind will store its pid file
-ELOGIND_PIDFILE="/var/run/elogind.pid"
-

Reply via email to