There is no prototype of _gcry_sha256_transform_intel_shaext() defined in the header or libgcrypt-grub/cipher/sha256.c, and gcc may complain the missing-prototypes error when compiling sha256-intel-shaext.c.
Declare the prototype in sha256-intel-shaext.c to avoid the error. Signed-off-by: Gary Lin <g...@suse.com> --- conf/Makefile.extra-dist | 1 + .../14_fix_build_shaext.patch | 35 +++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 grub-core/lib/libgcrypt-patches/14_fix_build_shaext.patch diff --git a/conf/Makefile.extra-dist b/conf/Makefile.extra-dist index 012af7288..2c78a9712 100644 --- a/conf/Makefile.extra-dist +++ b/conf/Makefile.extra-dist @@ -48,6 +48,7 @@ EXTRA_DIST += grub-core/lib/libgcrypt-patches/10-kdf-use-GPG-errs.patch EXTRA_DIST += grub-core/lib/libgcrypt-patches/11-kdf-remove-unsupported-kdfs.patch EXTRA_DIST += grub-core/lib/libgcrypt-patches/12-kdf-use-grub_divmod64.patch EXTRA_DIST += grub-core/lib/libgcrypt-patches/13_add_hwfeatures.patch +EXTRA_DIST += grub-core/lib/libgcrypt-patches/14_fix_build_shaext.patch EXTRA_DIST += grub-core/lib/libtasn1-patches/0001-libtasn1-disable-code-not-needed-in-grub.patch EXTRA_DIST += grub-core/lib/libtasn1-patches/0002-libtasn1-replace-strcat-with-strcpy-in-_asn1_str_cat.patch diff --git a/grub-core/lib/libgcrypt-patches/14_fix_build_shaext.patch b/grub-core/lib/libgcrypt-patches/14_fix_build_shaext.patch new file mode 100644 index 000000000..b9d311465 --- /dev/null +++ b/grub-core/lib/libgcrypt-patches/14_fix_build_shaext.patch @@ -0,0 +1,35 @@ +From 5698f7c5055ea481d0040ea4495829e5d02781cc Mon Sep 17 00:00:00 2001 +From: Gary Lin <g...@suse.com> +Date: Fri, 18 Jul 2025 15:34:21 +0800 +Subject: [PATCH 2/4] libgcrypt: Declare the sha256 shaext function + +There is no prototype of _gcry_sha256_transform_intel_shaext() defined +in the header or libgcrypt-grub/cipher/sha256.c, and gcc may complain +the missing-prototypes error when compiling sha256-intel-shaext.c. + +Declare the prototype in sha256-intel-shaext.c to avoid the error. + +Signed-off-by: Gary Lin <g...@suse.com> +--- + grub-core/lib/libgcrypt-grub/cipher/sha256-intel-shaext.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/grub-core/lib/libgcrypt-grub/cipher/sha256-intel-shaext.c b/grub-core/lib/libgcrypt-grub/cipher/sha256-intel-shaext.c +index 48c09eefe..7ec49f05e 100644 +--- a/grub-core/lib/libgcrypt-grub/cipher/sha256-intel-shaext.c ++++ b/grub-core/lib/libgcrypt-grub/cipher/sha256-intel-shaext.c +@@ -95,6 +95,11 @@ typedef struct u128_s + u32 a, b, c, d; + } u128_t; + ++ ++unsigned int ASM_FUNC_ATTR ++_gcry_sha256_transform_intel_shaext(u32 state[8], const unsigned char *data, ++ size_t nblks); ++ + /* + * Transform nblks*64 bytes (nblks*16 32-bit words) at DATA. + */ +-- +2.51.0 + -- 2.51.0 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel