Re: [PATCH] powerpc_ieee1275: Excluding the PKS for grub-emu on 32-bit PowerPC

"Vladimir 'phcoder' Serbinenko" <[email protected]> Sat, 28 Feb 2026 01:19:43 +0300
Newsgroups org.gnu.grub-devel
Message-ID <CAEaD8JPrDY4aKZUNmmYEkMjT9no0RVXvDnaAEFC9-3-=GHqsJg@mail.gmail.com>
--===============3356985722464913310==
Content-Type: multipart/alternative; boundary="000000000000e63b86064bd5a263"

--000000000000e63b86064bd5a263
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

The header is under powerpc/ieee1275. How does it get included in the first
place? The problem is with it's including in emu, not its contents

Regards

Le ven. 27 f=C3=A9vr. 2026, 16:42, Sudhakar Kuppusamy <[email protected]=
om> a
=C3=A9crit :

> Configuring the build with --with-platform=3Demu fails on 32-bit PowerPC
> with:
>
> /usr/bin/ld: appendedsig.module: in function `grub_mod_init':
> /home/glaubitz/grub/grub-core/commands/appendedsig/appendedsig.c:1615:(.t=
ext+0x2ab4):
> undefined reference to `grub_pks_get_keystore'
> /usr/bin/ld: appendedsig.module: in function `create_dbs_from_pks':
> /home/glaubitz/grub/grub-core/commands/appendedsig/appendedsig.c:1400:(.t=
ext+0x2c3c):
> undefined reference to `grub_pks_free_data'
> collect2: error: ld returned 1 exit status
>
> Fixing this by excluding the Platform Keystore (PKS) for grub-emu on
> 32-bit PowerPC.
>
> Reported-by: John Paul Adrian Glaubitz <[email protected]>
> Signed-off-by: Sudhakar Kuppusamy <[email protected]>
> ---
>  include/grub/powerpc/ieee1275/platform_keystore.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/grub/powerpc/ieee1275/platform_keystore.h
> b/include/grub/powerpc/ieee1275/platform_keystore.h
> index 931ada224..3bfb594a3 100644
> --- a/include/grub/powerpc/ieee1275/platform_keystore.h
> +++ b/include/grub/powerpc/ieee1275/platform_keystore.h
> @@ -96,7 +96,7 @@ struct grub_pks
>  };
>  typedef struct grub_pks grub_pks_t;
>
> -#if defined(__powerpc__)
> +#if defined(__powerpc__) && !(GRUB_MACHINE_EMU)
>  /* Initialization of the Platform Keystore. */
>  extern void
>  grub_pks_keystore_init (void);
> --
> 2.50.1 (Apple Git-155)
>
>

--000000000000e63b86064bd5a263
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><div dir=3D"auto"><div>The header is under powerpc/ieee12=
75. How does it get included in the first place? The problem is with it&#39=
;s including in emu, not its contents</div><div><br></div><div data-smartma=
il=3D"gmail_signature">Regards</div></div><br><div class=3D"gmail_quote"><d=
iv dir=3D"ltr" class=3D"gmail_attr">Le ven. 27 f=C3=A9vr. 2026, 16:42, Sudh=
akar Kuppusamy &lt;<a href=3D"mailto:[email protected]" target=3D"_bla=
nk" rel=3D"noreferrer">[email protected]</a>&gt; a =C3=A9crit=C2=A0:<b=
r></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border=
-left:1px #ccc solid;padding-left:1ex">Configuring the build with --with-pl=
atform=3Demu fails on 32-bit PowerPC with:<br>
<br>
/usr/bin/ld: appendedsig.module: in function `grub_mod_init&#39;:<br>
/home/glaubitz/grub/grub-core/commands/appendedsig/appendedsig.c:1615:(.tex=
t+0x2ab4): undefined reference to `grub_pks_get_keystore&#39;<br>
/usr/bin/ld: appendedsig.module: in function `create_dbs_from_pks&#39;:<br>
/home/glaubitz/grub/grub-core/commands/appendedsig/appendedsig.c:1400:(.tex=
t+0x2c3c): undefined reference to `grub_pks_free_data&#39;<br>
collect2: error: ld returned 1 exit status<br>
<br>
Fixing this by excluding the Platform Keystore (PKS) for grub-emu on 32-bit=
 PowerPC.<br>
<br>
Reported-by: John Paul Adrian Glaubitz &lt;<a href=3D"mailto:glaubitz@physi=
k.fu-berlin.de" rel=3D"noreferrer noreferrer" target=3D"_blank">glaubitz@ph=
ysik.fu-berlin.de</a>&gt;<br>
Signed-off-by: Sudhakar Kuppusamy &lt;<a href=3D"mailto:[email protected].=
com" rel=3D"noreferrer noreferrer" target=3D"_blank">[email protected]=
</a>&gt;<br>
---<br>
=C2=A0include/grub/powerpc/ieee1275/platform_keystore.h | 2 +-<br>
=C2=A01 file changed, 1 insertion(+), 1 deletion(-)<br>
<br>
diff --git a/include/grub/powerpc/ieee1275/platform_keystore.h b/include/gr=
ub/powerpc/ieee1275/platform_keystore.h<br>
index 931ada224..3bfb594a3 100644<br>
--- a/include/grub/powerpc/ieee1275/platform_keystore.h<br>
+++ b/include/grub/powerpc/ieee1275/platform_keystore.h<br>
@@ -96,7 +96,7 @@ struct grub_pks<br>
=C2=A0};<br>
=C2=A0typedef struct grub_pks grub_pks_t;<br>
<br>
-#if defined(__powerpc__)<br>
+#if defined(__powerpc__) &amp;&amp; !(GRUB_MACHINE_EMU)<br>
=C2=A0/* Initialization of the Platform Keystore. */<br>
=C2=A0extern void<br>
=C2=A0grub_pks_keystore_init (void);<br>
-- <br>
2.50.1 (Apple Git-155)<br>
<br>
</blockquote></div>
<br><br></div>

--000000000000e63b86064bd5a263--


--===============3356985722464913310==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KR3J1Yi1kZXZl
bCBtYWlsaW5nIGxpc3QKR3J1Yi1kZXZlbEBnbnUub3JnCmh0dHBzOi8vbGlzdHMuZ251Lm9yZy9t
YWlsbWFuL2xpc3RpbmZvL2dydWItZGV2ZWwK

--===============3356985722464913310==--