commit:     da03d43ec12cb7bba2c0b6c58fe94c56c5cdf428
Author:     Yuan Liao <liaoyuan <AT> gmail <DOT> com>
AuthorDate: Sat Oct 18 15:41:59 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 18 16:46:29 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da03d43e

sys-apps/kexec-tools: Add 2.0.32

Signed-off-by: Yuan Liao <liaoyuan <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/44236
Closes: https://github.com/gentoo/gentoo/pull/44236
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/kexec-tools/Manifest                  |   1 +
 sys-apps/kexec-tools/kexec-tools-2.0.32.ebuild | 100 +++++++++++++++++++++++++
 2 files changed, 101 insertions(+)

diff --git a/sys-apps/kexec-tools/Manifest b/sys-apps/kexec-tools/Manifest
index d46ae9fec39e..f04b250d205f 100644
--- a/sys-apps/kexec-tools/Manifest
+++ b/sys-apps/kexec-tools/Manifest
@@ -1 +1,2 @@
 DIST kexec-tools-2.0.31.tar.xz 318468 BLAKE2B 
075f1457dce9d4d6f0a3fa3cb9ed4cebfc51324fe0f3859b0cb009e1ebdb10d5df83c17d35ec55c479f1416f0836bf263d6ed814732037af6189565685f81afe
 SHA512 
95cb7e7b33685497d72fab74fed2191e476c0574d6ad2333d9e22b95a94543b5fdafe0663282cfaebb8747cf696b7d34c308941ec1074b2b9f1ed440b32d7309
+DIST kexec-tools-2.0.32.tar.xz 325392 BLAKE2B 
9cbd0ac706600ddaceabbffdde262d739394ede16572190ed467c8290495a6ba4921973ed332d26f776580191066f3361ce7c39d8e4af5184eec3f3b7b805be0
 SHA512 
60f120f8e46b9fb5dcf5a5b344ee8b303878ba9f71d58a3eefa1c9f044a6a2192b285154b738970263384c6e7281a854cd48a185334c08141aa4e6cf08230654

diff --git a/sys-apps/kexec-tools/kexec-tools-2.0.32.ebuild 
b/sys-apps/kexec-tools/kexec-tools-2.0.32.ebuild
new file mode 100644
index 000000000000..66a6a76a66fe
--- /dev/null
+++ b/sys-apps/kexec-tools/kexec-tools-2.0.32.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit libtool linux-info systemd
+
+if [[ ${PV} == "9999" ]] ; then
+       inherit git-r3 autotools
+       
EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git";
+else
+       
SRC_URI="https://www.kernel.org/pub/linux/utils/kernel/kexec/${P/_/-}.tar.xz";
+       [[ "${PV}" == *_rc* ]] || \
+       KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Load another kernel from the currently executing Linux kernel"
+HOMEPAGE="https://kernel.org/pub/linux/utils/kernel/kexec/";
+
+S="${WORKDIR}/${P/_/-}"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="booke lzma selinux xen zlib zstd"
+
+REQUIRED_USE="lzma? ( zlib )"
+
+DEPEND="
+       lzma? ( app-arch/xz-utils )
+       zlib? ( sys-libs/zlib )
+       zstd? ( app-arch/zstd:= )
+"
+RDEPEND="
+       ${DEPEND}
+       selinux? ( sec-policy/selinux-kdump )
+"
+
+CONFIG_CHECK="~KEXEC"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch
+       "${FILESDIR}"/${PN}-2.0.4-out-of-source.patch
+)
+
+src_prepare() {
+       default
+
+       if [[ "${PV}" == 9999 ]] ; then
+               eautoreconf
+       else
+               elibtoolize
+       fi
+}
+
+src_configure() {
+       # GNU Make's $(COMPILE.S) passes ASFLAGS to $(CCAS), CCAS=$(CC)
+       export ASFLAGS="${CCASFLAGS}"
+
+       local myeconfargs=(
+               $(use_with booke)
+               $(use_with lzma)
+               $(use_with xen)
+               $(use_with zlib)
+               $(use_with zstd)
+       )
+       econf "${myeconfargs[@]}"
+}
+
+src_install() {
+       default
+
+       dodoc "${FILESDIR}"/README.Gentoo
+
+       newinitd "${FILESDIR}"/kexec-r2.init kexec
+
+       insinto /etc
+       doins "${FILESDIR}"/kexec.conf
+       dosym ../kexec.conf /etc/conf.d/kexec
+
+       dosbin "${FILESDIR}"/kexec-auto-load
+       systemd_newunit "${FILESDIR}"/kexec.service-r1 kexec.service
+}
+
+pkg_postinst() {
+       local n_root_args=$(grep -o -- '\<root=' /proc/cmdline 2>/dev/null | wc 
-l)
+       local has_rootpart_set=no
+       if [[ -f "${EROOT}/etc/conf.d/kexec" ]]; then
+               if grep -q -E -- '^ROOTPART=' "${EROOT}/etc/conf.d/kexec" 
2>/dev/null; then
+                       has_rootpart_set=yes
+               fi
+       fi
+
+       if [[ ${n_root_args} -gt 1 && "${has_rootpart_set}" == "no"  ]]; then
+               ewarn "WARNING: Multiple root arguments (root=) on kernel 
command-line detected!"
+               ewarn "This was probably caused by a previous version of ${PN}."
+               ewarn "Please reboot system once *without* kexec to avoid boot 
problems"
+               ewarn "in case running system and initramfs do not agree on 
detected"
+               ewarn "root device name!"
+       fi
+}

Reply via email to