552c9fd081
When building GRUB with memory management debugging enabled, then the build fails because of `grub_debug_malloc()` and `grub_debug_free()` being undefined in the luks2 module. The cause is that we patch "base64.h" to unconditionaly include "config-util.h", which shouldn't be included for modules at all. As a result, `MM_DEBUG` is defined when building the module, causing it to use the debug memory allocation functions. As these are not built into modules, we end up with a linker error. Fix the issue by removing the <config-util.h> include altogether. The sole reason it was included was for the `_GL_ATTRIBUTE_CONST` macro, which we can simply define as empty in case it's not set. Signed-off-by: Patrick Steinhardt <ps@pks.im> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
21 lines
453 B
Diff
21 lines
453 B
Diff
diff --git a/lib/base64.h b/lib/base64.h
|
|
index 9cd0183b8..185a2afa1 100644
|
|
--- a/lib/base64.h
|
|
+++ b/lib/base64.h
|
|
@@ -21,8 +21,14 @@
|
|
/* Get size_t. */
|
|
# include <stddef.h>
|
|
|
|
-/* Get bool. */
|
|
-# include <stdbool.h>
|
|
+#ifndef GRUB_POSIX_BOOL_DEFINED
|
|
+typedef enum { false = 0, true = 1 } bool;
|
|
+#define GRUB_POSIX_BOOL_DEFINED 1
|
|
+#endif
|
|
+
|
|
+#ifndef _GL_ATTRIBUTE_CONST
|
|
+# define _GL_ATTRIBUTE_CONST /* empty */
|
|
+#endif
|
|
|
|
# ifdef __cplusplus
|
|
extern "C" {
|