diff options
author | Marek Szuba <marecki@gentoo.org> | 2023-08-21 17:24:32 +0100 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2023-08-21 17:36:27 +0100 |
commit | ee41125693765c77482e542de0d3b2f57df858a7 (patch) | |
tree | 254f5ba579fe76a022e90355565a809b07f4ff8a /sys-power | |
parent | Revert "net-libs/grpc: bundle abseil-cpp" (diff) | |
download | gentoo-ee41125693765c77482e542de0d3b2f57df858a7.tar.gz gentoo-ee41125693765c77482e542de0d3b2f57df858a7.tar.bz2 gentoo-ee41125693765c77482e542de0d3b2f57df858a7.zip |
sys-power/acpid: phase out legacy LFS interfaces
acpid comes with its own implementation of isfdtype() for standard
libraries which do not define it, like musl. This implementation used
LFS interfaces, which are now deprecated and which since musl-1.2.4
no longer are a part of the _GNU_SOURCE feature set. musl documentation
says "just switch to standard interfaces" so let's do just that.
Closes: https://bugs.gentoo.org/906189
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'sys-power')
-rw-r--r-- | sys-power/acpid/acpid-2.0.34-r1.ebuild | 60 | ||||
-rw-r--r-- | sys-power/acpid/files/acpid-2.0.34-lfs.patch | 19 |
2 files changed, 79 insertions, 0 deletions
diff --git a/sys-power/acpid/acpid-2.0.34-r1.ebuild b/sys-power/acpid/acpid-2.0.34-r1.ebuild new file mode 100644 index 000000000000..258a20d571b5 --- /dev/null +++ b/sys-power/acpid/acpid-2.0.34-r1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info systemd + +DESCRIPTION="Daemon for Advanced Configuration and Power Interface" +HOMEPAGE="https://sourceforge.net/projects/acpid2/" +SRC_URI="mirror://sourceforge/${PN}2/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~riscv ~x86" +IUSE="selinux" + +RDEPEND="selinux? ( sec-policy/selinux-apm )" +DEPEND=">=sys-kernel/linux-headers-3" + +PATCHES=( + "${FILESDIR}"/${PN}-2.0.34-lfs.patch +) + +pkg_pretend() { + local CONFIG_CHECK="~INPUT_EVDEV" + local WARNING_INPUT_EVDEV="CONFIG_INPUT_EVDEV is required for ACPI button event support." + [[ ${MERGE_TYPE} != buildonly ]] && check_extra_config +} + +pkg_setup() { :; } + +src_install() { + emake DESTDIR="${D}" install + + newdoc kacpimon/README README.kacpimon + dodoc -r samples + rm -f "${D}"/usr/share/doc/${PF}/COPYING || die + + exeinto /etc/acpi + newexe "${FILESDIR}"/${PN}-1.0.6-default.sh default.sh + exeinto /etc/acpi/actions + newexe samples/powerbtn/powerbtn.sh powerbtn.sh + insinto /etc/acpi/events + newins "${FILESDIR}"/${PN}-1.0.4-default default + + newinitd "${FILESDIR}"/${PN}-2.0.26-init.d ${PN} + newconfd "${FILESDIR}"/${PN}-2.0.16-conf.d ${PN} + + systemd_dounit "${FILESDIR}"/${PN}.{service,socket} +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]]; then + elog + elog "You may wish to read the Gentoo Linux Power Management Guide," + elog "which can be found online at:" + elog "https://wiki.gentoo.org/wiki/Power_management/Guide" + elog + fi +} diff --git a/sys-power/acpid/files/acpid-2.0.34-lfs.patch b/sys-power/acpid/files/acpid-2.0.34-lfs.patch new file mode 100644 index 000000000000..0abca60af422 --- /dev/null +++ b/sys-power/acpid/files/acpid-2.0.34-lfs.patch @@ -0,0 +1,19 @@ +Since version 1.2.4 musl no longer enables legacy LFS interfaces as part +of _GNU_SOURCE, and will remove them altogether in a future release [1]. +Just switch to the standard interfaces. + +[1] https://musl.libc.org/releases.html + +--- a/sock.c ++++ b/sock.c +@@ -54,8 +54,8 @@ + static int + isfdtype(int fd, int fdtype) + { +- struct stat64 st; +- if (fstat64(fd, &st) != 0) ++ struct stat st; ++ if (fstat(fd, &st) != 0) + return -1; + return ((st.st_mode & S_IFMT) == (mode_t)fdtype); + } |