Add patch for ppc64le grub2
This commit is contained in:
parent
1708966d77
commit
c17b8d9f76
69
0001-grub2-Use-linux16-only-on-x86-x86_64.patch
Normal file
69
0001-grub2-Use-linux16-only-on-x86-x86_64.patch
Normal file
@ -0,0 +1,69 @@
|
||||
From 13ea6852c33caecaf64b43e0018536e5aa29eaca Mon Sep 17 00:00:00 2001
|
||||
From: Colin Walters <walters@verbum.org>
|
||||
Date: Thu, 2 Mar 2017 21:30:10 -0500
|
||||
Subject: [PATCH] grub2: Use "linux16" only on x86/x86_64
|
||||
|
||||
Got a report that a Fedora Atomic Host built for ppc64le didn't work with the
|
||||
`linux16`, it needed `linux`. See the comments for more links.
|
||||
---
|
||||
src/libostree/ostree-bootloader-grub2.c | 30 ++++++++++++++++++++++++++++--
|
||||
1 file changed, 28 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/libostree/ostree-bootloader-grub2.c b/src/libostree/ostree-bootloader-grub2.c
|
||||
index 0fbb098..e70517f 100644
|
||||
--- a/src/libostree/ostree-bootloader-grub2.c
|
||||
+++ b/src/libostree/ostree-bootloader-grub2.c
|
||||
@@ -29,6 +29,20 @@
|
||||
|
||||
#include <string.h>
|
||||
|
||||
+/* I only did some cursory research here, but it appears
|
||||
+ * that we only want to use "linux16" for x86 platforms.
|
||||
+ * At least, I got a report that "linux16" is definitely wrong
|
||||
+ * for ppc64. See
|
||||
+ * http://pkgs.fedoraproject.org/cgit/rpms/grub2.git/tree/0036-Use-linux16-when-appropriate-880840.patch?h=f25
|
||||
+ * https://bugzilla.redhat.com/show_bug.cgi?id=1108296
|
||||
+ * among others.
|
||||
+ */
|
||||
+#if defined(__i386__) || defined(__x86_64__)
|
||||
+#define GRUB2_USES_16 1
|
||||
+#else
|
||||
+#define GRUB2_USES_16 0
|
||||
+#endif
|
||||
+
|
||||
struct _OstreeBootloaderGrub2
|
||||
{
|
||||
GObject parent_instance;
|
||||
@@ -203,7 +217,13 @@ _ostree_bootloader_grub2_generate_config (OstreeSysroot *sysroot
|
||||
if (is_efi)
|
||||
g_string_append (output, "linuxefi ");
|
||||
else
|
||||
- g_string_append (output, "linux16 ");
|
||||
+ {
|
||||
+#if GRUB2_USES_16
|
||||
+ g_string_append (output, "linux16 ");
|
||||
+#else
|
||||
+ g_string_append (output, "linux ");
|
||||
+#endif
|
||||
+ }
|
||||
g_string_append (output, kernel);
|
||||
|
||||
options = ostree_bootconfig_parser_get (config, "options");
|
||||
@@ -220,7 +240,13 @@ _ostree_bootloader_grub2_generate_config (OstreeSysroot *sysroot
|
||||
if (is_efi)
|
||||
g_string_append (output, "initrdefi ");
|
||||
else
|
||||
- g_string_append (output, "initrd16 ");
|
||||
+ {
|
||||
+#if GRUB2_USES_16
|
||||
+ g_string_append (output, "initrd16 ");
|
||||
+#else
|
||||
+ g_string_append (output, "initrd ");
|
||||
+#endif
|
||||
+ }
|
||||
g_string_append (output, initrd);
|
||||
g_string_append_c (output, '\n');
|
||||
}
|
||||
--
|
||||
2.9.3
|
||||
|
@ -1,7 +1,7 @@
|
||||
Summary: Tool for managing bootable, immutable filesystem trees
|
||||
Name: ostree
|
||||
Version: 2017.2
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?dist}
|
||||
#VCS: git:git://git.gnome.org/ostree
|
||||
Source0: https://github.com/ostreedev/%{name}/releases/download/v%{version}/libostree-%{version}.tar.xz
|
||||
Source1: 91-ostree.preset
|
||||
@ -9,6 +9,7 @@ License: LGPLv2+
|
||||
URL: https://ostree.readthedocs.io/en/latest/
|
||||
|
||||
Patch0: libmount-unref.patch
|
||||
Patch1: 0001-grub2-Use-linux16-only-on-x86-x86_64.patch
|
||||
|
||||
BuildRequires: git
|
||||
# We always run autogen.sh
|
||||
@ -139,6 +140,9 @@ install -D -m 0644 %{SOURCE1} %{buildroot}%{_prefix}/lib/systemd/system-preset/9
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Fri Mar 03 2017 Colin Walters <walters@verbum.org> - 2017.2-4
|
||||
- Add patch for ppc64le grub2
|
||||
|
||||
* Thu Feb 23 2017 Colin Walters <walters@verbum.org> - 2017.2-3
|
||||
- Backport libmount unref patch
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user