74 lines
2.3 KiB
Diff
74 lines
2.3 KiB
Diff
diff -ruN mkinitcpio-39.2.orig/functions mkinitcpio-39.2/functions
|
|
--- mkinitcpio-39.2.orig/functions 2024-07-16 11:15:26.634313139 +0200
|
|
+++ mkinitcpio-39.2/functions 2024-07-16 11:15:56.515344147 +0200
|
|
@@ -161,6 +161,14 @@
|
|
printf '%s' "$kver"
|
|
}
|
|
|
|
+kver_powerpc() {
|
|
+ local kver
|
|
+
|
|
+ read -r kver _ < \
|
|
+ <(strings "$1" | grep '^Linux version [0-9]' | awk '{print $3}' | head -n1)
|
|
+ printf '%s' "$kver"
|
|
+}
|
|
+
|
|
detect_compression() {
|
|
# Detect standard compressed files. Not Linux-kernel specific.
|
|
|
|
@@ -456,11 +464,17 @@
|
|
|
|
local arch
|
|
arch="$(uname -m)"
|
|
- if [[ $arch == @(i?86|x86_64) ]]; then
|
|
- kver="$(kver_x86 "$1")"
|
|
- else
|
|
+ case "$arch" in
|
|
+ i?86|x86_64)
|
|
+ kver="$(kver_x86 "$1")"
|
|
+ ;;
|
|
+ ppc*)
|
|
+ kver="$(kver_powerpc "$1")"
|
|
+ ;;
|
|
+ *)
|
|
kver="$(kver_generic "$1")"
|
|
- fi
|
|
+ ;;
|
|
+ esac
|
|
|
|
[[ "$kver" =~ $re ]] || return 1
|
|
|
|
@@ -1169,7 +1183,7 @@
|
|
ln -s "../run" "$root/var/run"
|
|
|
|
case "$arch" in
|
|
- x86_64)
|
|
+ riscv64|ppc64*|x86_64)
|
|
ln -s "lib" "$root/usr/lib64"
|
|
ln -s "usr/lib" "$root/lib64"
|
|
;;
|
|
diff -ruN mkinitcpio-39.2.orig/mkinitcpio mkinitcpio-39.2/mkinitcpio
|
|
--- mkinitcpio-39.2.orig/mkinitcpio 2024-07-16 11:15:26.634313139 +0200
|
|
+++ mkinitcpio-39.2/mkinitcpio 2024-07-16 11:15:33.777603348 +0200
|
|
@@ -135,7 +135,7 @@
|
|
error "invalid kernel specified: '%s'" "$1"
|
|
|
|
arch="$(uname -m)"
|
|
- if [[ "$arch" != @(i?86|x86_64) ]]; then
|
|
+ if [[ "$arch" != @(i?86|x86_64|ppc|ppc64|ppc64le|riscv64) ]]; then
|
|
error "kernel version extraction from image not supported for '%s' architecture" "$arch"
|
|
error "there's a chance the generic version extractor may work with a valid uncompressed kernel image"
|
|
fi
|
|
--- mkinitcpio-39.2.orig/test/cases/zsh-completion.bats 2024-07-16 11:26:02.735159982 +0200
|
|
+++ mkinitcpio-39.2/test/cases/zsh-completion.bats 2024-07-16 11:33:46.005417563 +0200
|
|
@@ -13,6 +13,9 @@
|
|
}
|
|
|
|
@test "_detect_kver" {
|
|
+ if [ "$(uname -m)" != 'x86_64' ]; then
|
|
+ skip "$(uname -m) unsupported"
|
|
+ fi
|
|
local kernel_ver tmp_knl
|
|
kernel_ver="6.0.9-arch1-1 #1 SMP PREEMPT_DYNAMIC Wed, 16 Nov 2022 17:01:17 +0000 x86_64 GNU/Linux"
|
|
tmp_knl=$(__gen_test_kernel "$kernel_ver")
|