[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 01/11] Fix base64 module to work with grub codebase
From: |
Simon Josefsson |
Subject: |
Re: [PATCH 01/11] Fix base64 module to work with grub codebase |
Date: |
Wed, 27 Oct 2021 13:15:52 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Robbie Harwood <rharwood@redhat.com> writes:
> The gnulib module makes use of booleans via the <stdbool.h> header. As
> GRUB does not provide any POSIX wrapper header for this, but instead
> implements support for bool in <sys/types.h>, we need to patch
> base64.h to not use <stdbool.h> anymore. We unfortunately cannot include
> <sys/types.h> instead, as it would then use gnulib's internal header
> while compiling the gnulib object but our own <sys/types.h> when
> including it in a GRUB module. Because of this, the patch replaces the
> include with a direct typedef.
Thanks for trying to upstream diverged gnulib code!
I think this patch is wrong -- gnulib includes a stdbool.h replacement
you can you use, and the base64 module depends on the stdbool module
already. Is there a problem with the stdbool module? If so, let's fix
that.
> A second fix is required to make available _GL_ATTRIBUTE_CONST, which
> is provided by the configure script. As base64.h does not include
> <config.h>, it is thus not available and results in a compile error.
> This is fixed by adding an include of <config-util.h>.
I think I agree that this is a problem, but your solutions seems wrong.
There are plenty of header files in gnulib that relies on definitions in
config.h created by the m4 macro that came with the hader file, yet the
header file do not #include config.h as usually that is supposed to be
done by the .c file that include the (say) base64.h header file. I'm
not sure assumption is documented anywhere, and if so we should document
it. I think this is how it is supposed to work, but if it isn't, we
should try to come up with a solution for it and document that.
/Simon
signature.asc
Description: PGP signature
- [PATCH 00/11] Code hygiene fixes from grub, Robbie Harwood, 2021/10/25
- [PATCH 08/11] Fix __argp_fmtstream_point()'s return type and comparisons with it, Robbie Harwood, 2021/10/25
- [PATCH 07/11] Make CFLAGS less painful, Robbie Harwood, 2021/10/25
- [PATCH 02/11] argp-parse.c (__argp_input): Don't crash if pstate is NULL, Robbie Harwood, 2021/10/25
- [PATCH 05/11] Fix width computation, Robbie Harwood, 2021/10/25
- [PATCH 01/11] Fix base64 module to work with grub codebase, Robbie Harwood, 2021/10/25
- Re: [PATCH 01/11] Fix base64 module to work with grub codebase,
Simon Josefsson <=
- [PATCH 06/11] Make gnulib's regcomp not abort(), Robbie Harwood, 2021/10/25
- [PATCH 03/11] gnulib/regexec: Fix possible null-dereference, Robbie Harwood, 2021/10/25
- [PATCH 11/11] Fixup for -Werror=ignored-qualifiers issues, Robbie Harwood, 2021/10/25
- [PATCH 04/11] gnulib/regexec: Resolve unused variable, Robbie Harwood, 2021/10/25
- [PATCH 09/11] Fix up a bunch of "gcc -Werror=sign-compare" complaints, Robbie Harwood, 2021/10/25
- [PATCH 10/11] Paper over a stringop-overflow warning about wide char handling, Robbie Harwood, 2021/10/25