mirror of
https://github.com/flatcar/scripts.git
synced 2026-05-04 19:56:32 +02:00
sys-apps/kexec-tools: Sync with Gentoo
It's from Gentoo commit 815e1282956363277eaf38dca04823931b03cdc3.
This commit is contained in:
parent
e7a79af48e
commit
9d0c2ef20d
@ -1,2 +1,3 @@
|
||||
DIST kexec-tools-2.0.22.tar.xz 303564 BLAKE2B 977c741eabf9b6b882550713ba59b18289b4f997fb382e96338efce6d04a9390fea952fc46ca72fd0a0b782261841ab2002da84b1819f955e63996eac900b0f7 SHA512 7580860f272eee5af52139809f12961e5a5d3a65f4e191183ca9c845410425d25818945ac14ed04a60e6ce474dc2656fc6a14041177b0bf703f450820c7d6aba
|
||||
DIST kexec-tools-2.0.24.tar.xz 303808 BLAKE2B 8188602f1b843c1dccc0307131f8c9ec0426c6cb3de898040352c1fed5f6d4bd7c58a0c2bf54290b91c8fe3401180df682959ee6c41693d07acc199c087c7db2 SHA512 ef7cf78246e2d729d81a3649791a5a23c385353cc75cbe8ef279616329fdaccc876d614c7f51e1456822a13a11520296070d9897467d24310399909e049c3822
|
||||
DIST kexec-tools-2.0.28.tar.xz 312524 BLAKE2B b2ab25c632cd2bad21751940acee1816f9cd930e1bb5af1052f9f6c4979dcd62d82c487a88fa8015e3ce7c843de9f47a3f6ccf7efa9270b5f24c79ba30a82a91 SHA512 889a7bf1d26bb309e4ff7ce1c8dbcf48c01e47221ea3acf1c4ef2a98a652c496e31bddcdb627d3adebd85f7541d1fb9122c60e741e10b3726e31a9733cadc753
|
||||
|
||||
131
sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.28.ebuild
vendored
Normal file
131
sdk_container/src/third_party/portage-stable/sys-apps/kexec-tools/kexec-tools-2.0.28.ebuild
vendored
Normal file
@ -0,0 +1,131 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit libtool linux-info optfeature 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/"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="booke lzma selinux xen zlib"
|
||||
|
||||
REQUIRED_USE="lzma? ( zlib )"
|
||||
|
||||
DEPEND="
|
||||
lzma? ( app-arch/xz-utils )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
selinux? ( sec-policy/selinux-kdump )
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${P/_/-}"
|
||||
|
||||
CONFIG_CHECK="~KEXEC"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.0.4-disable-kexec-test.patch
|
||||
"${FILESDIR}"/${PN}-2.0.4-out-of-source.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# GNU Make's $(COMPILE.S) passes ASFLAGS to $(CCAS), CCAS=$(CC)
|
||||
export ASFLAGS="${CCASFLAGS}"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Append PURGATORY_EXTRA_CFLAGS flags set by configure, instead of overriding them completely.
|
||||
sed -e "/^PURGATORY_EXTRA_CFLAGS =/s/=/+=/" -i Makefile.in || die
|
||||
|
||||
if [[ "${PV}" == 9999 ]] ; then
|
||||
eautoreconf
|
||||
else
|
||||
elibtoolize
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_with booke)
|
||||
$(use_with lzma)
|
||||
$(use_with xen)
|
||||
$(use_with zlib)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Respect CFLAGS for purgatory.
|
||||
# purgatory/Makefile uses PURGATORY_EXTRA_CFLAGS variable.
|
||||
# -mfunction-return=thunk and -mindirect-branch=thunk conflict with
|
||||
# -mcmodel=large which is added by build system.
|
||||
# Replace them with -mfunction-return=thunk-inline and -mindirect-branch=thunk-inline.
|
||||
local flag flags=()
|
||||
for flag in ${CFLAGS}; do
|
||||
[[ ${flag} == -mfunction-return=thunk ]] && flag="-mfunction-return=thunk-inline"
|
||||
[[ ${flag} == -mindirect-branch=thunk ]] && flag="-mindirect-branch=thunk-inline"
|
||||
flags+=("${flag}")
|
||||
done
|
||||
local -x PURGATORY_EXTRA_CFLAGS="${flags[*]}"
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
dodoc "${FILESDIR}"/README.Gentoo
|
||||
|
||||
newinitd "${FILESDIR}"/kexec-r2.init kexec
|
||||
newconfd "${FILESDIR}"/kexec.conf-2.0.4 kexec
|
||||
|
||||
insinto /etc
|
||||
doins "${FILESDIR}"/kexec.conf
|
||||
|
||||
insinto /etc/kernel/postinst.d
|
||||
doins "${FILESDIR}"/90_kexec
|
||||
|
||||
systemd_dounit "${FILESDIR}"/kexec.service
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if systemd_is_booted || has_version sys-apps/systemd; then
|
||||
elog "For systemd support the new config file is"
|
||||
elog " /etc/kexec.conf"
|
||||
elog "Please adopt it to your needs as there is no autoconfig anymore"
|
||||
fi
|
||||
|
||||
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
|
||||
|
||||
optfeature "automatically updating /etc/kexec.conf on each kernel installation" \
|
||||
"sys-kernel/installkernel[-systemd]"
|
||||
}
|
||||
@ -1,7 +1,7 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit libtool linux-info optfeature systemd
|
||||
|
||||
|
||||
@ -5,6 +5,14 @@
|
||||
<email>base-system@gentoo.org</email>
|
||||
<name>Gentoo Base System</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>liaoyuan@gmail.com</email>
|
||||
<name>Yuan Liao</name>
|
||||
</maintainer>
|
||||
<maintainer type="project" proxied="proxy">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="lzma">Enables support for LZMA compressed kernel images</flag>
|
||||
<flag name="booke">Include support for Book-E memory management</flag>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user