summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2022-06-03 18:45:39 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2022-06-03 18:45:39 +0200
commitbba8599ac86f715bb4736a7cbf6fa8bc5c02c2d8 (patch)
tree7e4ab8489fa07f946a3d9a3e669364271fc2d84c
parentd8c48b3859ed73765063eb7e0c574c4c4e9c2a9d (diff)
downloadpackages-bba8599ac86f715bb4736a7cbf6fa8bc5c02c2d8.tar.xz
core/systemd: small patch for efi-ia32 sha256 false clash, also disabled gnu-efi on 486
-rw-r--r--core/systemd/PKGBUILD13
-rw-r--r--core/systemd/fix-23609-efi-ia32.patch12
2 files changed, 25 insertions, 0 deletions
diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD
index 223a7cb8..6b71579b 100644
--- a/core/systemd/PKGBUILD
+++ b/core/systemd/PKGBUILD
@@ -7,12 +7,25 @@ eval "$(
)"
# disabling LTO on i486 in EFI, fails with undefined entry point efi_main
+# => didn't help, disabling gnu-efi now on i486
if [ "${CARCH}" = "i486" ]; then
eval "$(
declare -f build | \
sed '
/local _meson_options.*/ a \
_meson_options+=(-Db_lto=false)
+ s/-Dgnu-efi=true/-Dgnu-efi=false/
'
)"
fi
+
+# see upstream https://github.com/systemd/systemd/pull/23609 and
+# https://github.com/systemd/systemd/commit/38c87ca2ab96d085158485ecfc46c7cb6af0f166
+source+=('fix-23609-efi-ia32.patch')
+sha512sums+=('1ebcfd699894d62520f9a02a05e966b24e8152b9ab72646e8d0a47212244bd83202bffb4a019f610ace64deaffee24c359d991d08c2e45eae413a55b576b940f')
+eval "$(
+ declare -f prepare | \
+ sed '
+ $ i patch -Np1 < ../fix-23609-efi-ia32.patch
+ '
+)"
diff --git a/core/systemd/fix-23609-efi-ia32.patch b/core/systemd/fix-23609-efi-ia32.patch
new file mode 100644
index 00000000..7bfd421a
--- /dev/null
+++ b/core/systemd/fix-23609-efi-ia32.patch
@@ -0,0 +1,12 @@
+diff -rauN a/src/fundamental/sha256.c b/src/fundamental/sha256.c
+--- a/src/fundamental/sha256.c 2022-06-03 18:23:03.582446505 +0200
++++ b/src/fundamental/sha256.c 2022-06-03 18:23:13.382479050 +0200
+@@ -58,7 +58,7 @@
+ # define UNALIGNED_P(p) (((size_t) p) % sizeof(uint32_t) != 0)
+ # endif
+ #else
+-# define UNALIGNED_P(p) false
++# define UNALIGNED_P(p) sd_false
+ #endif
+
+ /* This array contains the bytes used to pad the buffer to the next