docs: Write how to import new libgcrypt

Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Vladimir Serbinenko 2025-07-07 14:52:21 +00:00 committed by Daniel Kiper
parent b930bfa377
commit 0e367796c0

View File

@ -507,6 +507,7 @@ to update it.
* jsmn::
* minilzo::
* libtasn1::
* libgcrypt::
@end menu
@node Gnulib
@ -631,6 +632,43 @@ please include updated patches as part of the a patch set sent to the list.
If new patches are needed or existing patches are not needed, also please send
additions or removals as part of any patch set upgrading libtasn1.
@node libgcrypt
@section libgcrypt
libgcrypt is a GNU implementation of crypto library. To import a new version
you need to unpack the release tarball into grub-core/lib/libgcrypt. Delete
following files/directories:
* acinclude.m4
* aclocal.m4
* autogen.rc
* autogen.sh
* build-aux
* ChangeLog
* ChangeLog-2011
* doc
* INSTALL
* m4
* Makefile.am
* Makefile.in
* NEWS
* random
* tests
* TODO
* */Makefile.in
* mpi/hppa1.1
Regenerate the file gost-sb.h:
grub-core/lib/libgcrypt/cipher$ gcc -o gost-s-box gost-s-box.c
grub-core/lib/libgcrypt/cipher$ ./gost-s-box gost-sb.h
Then rerun ./bootstrap and pay attention to the errors. Especially to warnings
that a file isn't a module as it means that some file is actually unused by
GRUB. If any, find where it declares its cipher or hash and add a pattern to
import_gcry.py. See commit ``libgcrypt: Import blake family of hashes'' for an
example. If file reallly is useless to GRUB in its current state, add it to
whitelist in import_gcry.py.
Compile and fix any new errors. Put patches into grub-core/lib/libgcrypt-patches
@node Debugging
@chapter Debugging