]> code.ossystems Code Review - openembedded-core.git/commitdiff
grub: Further reproducibility fix
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 31 Dec 2020 17:12:27 +0000 (17:12 +0000)
committerAnuj Mittal <anuj.mittal@intel.com>
Thu, 7 Jan 2021 07:01:22 +0000 (15:01 +0800)
Fix the ordering in the generated unidata.c file to aid reproducibility.

[YOCTO #14167]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6d9c9f7604fd32ef926726a46ae053bbab6ccb4f)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
meta/recipes-bsp/grub/files/determinism.patch

index fac80e7b544641de9897ddae26567c891b3e3a11..3c1f562c717b47eedbb37e0ca1832760345ef17b 100644 (file)
@@ -8,6 +8,9 @@ Also, the output of the SOURCES lines in grub-core/Makefile.core.am, generated
 from grub-core/Makefile.core.def with gentpl.py is not deterministic due to
 missing sorting of the list used to generate it. Add such a sort.
 
+Also ensure the generated unidata.c file is deterministic by sorting the
+keys of the dict.
+
 Upstream-Status: Pending
 Richard Purdie <richard.purdie@linuxfoundation.org>
 
@@ -38,3 +41,16 @@ Index: grub-2.04/gentpl.py
      return ''.join(r)
  
  def platform_conditional(platform, closure):
+Index: grub-2.04/util/import_unicode.py
+===================================================================
+--- grub-2.04.orig/util/import_unicode.py
++++ grub-2.04/util/import_unicode.py
+@@ -174,7 +174,7 @@ infile.close ()
+ outfile.write ("struct grub_unicode_arabic_shape grub_unicode_arabic_shapes[] = {\n ")
+-for x in arabicsubst:
++for x in sorted(arabicsubst):
+     try:
+         if arabicsubst[x]['join'] == "DUAL":
+             outfile.write ("{0x%x, 0x%x, 0x%x, 0x%x, 0x%x},\n " % (arabicsubst[x][0], arabicsubst[x][1], arabicsubst[x][2], arabicsubst[x][3], arabicsubst[x][4]))