Accepting request 212604 from home:arvidjaar:grub2-next
I think it is good time to update to 2.02 so it can get more testing. Although internal changes are pretty extensive, externally it should be pretty much the same. The main user visible changes are - autogen is not used anymore, so we can finally simplify patches and recreate files during RPM build. So generated files need not be patched and shipped any more. - GRUB_HIDDEN_TIMEOUT is deprecated, we should use GRUB_TIMEOUT_STYLE instead. This will need perl-Bootloader and YaST changes. Old config is still accpepted so nothing should be broken. - native pvgrub2 support for Xen PV guests. - ARM support (32 and 64 bit), although it has rough edges. OBS-URL: https://build.opensuse.org/request/show/212604 OBS-URL: https://build.opensuse.org/package/show/Base:System/grub2?expand=0&rev=62
This commit is contained in:
parent
618ccb4258
commit
2764c99fe0
@ -1,29 +0,0 @@
|
|||||||
From fd0df6d098b1e6a4f60275c48a3ec88d15ba1fbb Mon Sep 17 00:00:00 2001
|
|
||||||
From: Colin Watson <cjwatson@ubuntu.com>
|
|
||||||
Date: Fri, 29 Nov 2013 12:19:36 +0000
|
|
||||||
Subject: [PATCH] Fix build with FreeType 2.5.1
|
|
||||||
|
|
||||||
* util/grub-gen-asciih.c: Include FT_SYNTHESIS_H rather than
|
|
||||||
<freetype/ftsynth.h>, fixing build with FreeType 2.5.1.
|
|
||||||
* util/grub-gen-widthspec.c: Likewise.
|
|
||||||
* util/grub-mkfont.c: Likewise.
|
|
||||||
---
|
|
||||||
ChangeLog | 7 +++++++
|
|
||||||
util/grub-gen-asciih.c | 2 +-
|
|
||||||
util/grub-gen-widthspec.c | 2 +-
|
|
||||||
util/grub-mkfont.c | 2 +-
|
|
||||||
4 files changed, 10 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
Index: grub-2.00/util/grub-mkfont.c
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/util/grub-mkfont.c
|
|
||||||
+++ grub-2.00/util/grub-mkfont.c
|
|
||||||
@@ -39,7 +39,7 @@
|
|
||||||
#include FT_FREETYPE_H
|
|
||||||
#include FT_TRUETYPE_TAGS_H
|
|
||||||
#include FT_TRUETYPE_TABLES_H
|
|
||||||
-#include <freetype/ftsynth.h>
|
|
||||||
+#include FT_SYNTHESIS_H
|
|
||||||
|
|
||||||
#undef __FTERRORS_H__
|
|
||||||
#define FT_ERROR_START_LIST const char *ft_errmsgs[] = {
|
|
@ -1,85 +0,0 @@
|
|||||||
From: Jeff Mahoney <jeffm@suse.com>
|
|
||||||
Subject: grub2/btrfs: rename skip_default to follow_default
|
|
||||||
|
|
||||||
The skip_default code in find_path uses 1 to indicate that the default
|
|
||||||
should not be skipped, which is confusing. Let's rename that to
|
|
||||||
follow_default.
|
|
||||||
|
|
||||||
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|
||||||
---
|
|
||||||
grub-core/fs/btrfs.c | 20 ++++++++++----------
|
|
||||||
1 file changed, 10 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
--- a/grub-core/fs/btrfs.c 2013-06-16 08:24:05.000000000 -0400
|
|
||||||
+++ b/grub-core/fs/btrfs.c 2013-07-29 09:26:07.421380716 -0400
|
|
||||||
@@ -1208,7 +1208,7 @@ find_path (struct grub_btrfs_data *data,
|
|
||||||
grub_size_t allocated = 0;
|
|
||||||
struct grub_btrfs_dir_item *direl = NULL;
|
|
||||||
struct grub_btrfs_key key_out;
|
|
||||||
- int skip_default;
|
|
||||||
+ int follow_default;
|
|
||||||
const char *ctoken;
|
|
||||||
grub_size_t ctokenlen;
|
|
||||||
char *path_alloc = NULL;
|
|
||||||
@@ -1220,14 +1220,14 @@ find_path (struct grub_btrfs_data *data,
|
|
||||||
key->object_id = data->sblock.root_dir_objectid;
|
|
||||||
key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM;
|
|
||||||
key->offset = 0;
|
|
||||||
- skip_default = 1;
|
|
||||||
+ follow_default = 1;
|
|
||||||
origpath = grub_strdup (path);
|
|
||||||
if (!origpath)
|
|
||||||
return grub_errno;
|
|
||||||
|
|
||||||
while (1)
|
|
||||||
{
|
|
||||||
- if (!skip_default)
|
|
||||||
+ if (!follow_default)
|
|
||||||
{
|
|
||||||
while (path[0] == '/')
|
|
||||||
path++;
|
|
||||||
@@ -1254,9 +1254,9 @@ find_path (struct grub_btrfs_data *data,
|
|
||||||
|
|
||||||
if (ctokenlen == 1 && ctoken[0] == '.')
|
|
||||||
{
|
|
||||||
- if (!skip_default)
|
|
||||||
+ if (!follow_default)
|
|
||||||
path = slash;
|
|
||||||
- skip_default = 0;
|
|
||||||
+ follow_default = 0;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if (ctokenlen == 2 && ctoken[0] == '.' && ctoken[1] == '.')
|
|
||||||
@@ -1287,9 +1287,9 @@ find_path (struct grub_btrfs_data *data,
|
|
||||||
*type = GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY;
|
|
||||||
key->object_id = key_out.offset;
|
|
||||||
|
|
||||||
- if (!skip_default)
|
|
||||||
+ if (!follow_default)
|
|
||||||
path = slash;
|
|
||||||
- skip_default = 0;
|
|
||||||
+ follow_default = 0;
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
@@ -1359,9 +1359,9 @@ find_path (struct grub_btrfs_data *data,
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (!skip_default)
|
|
||||||
+ if (!follow_default)
|
|
||||||
path = slash;
|
|
||||||
- skip_default = 0;
|
|
||||||
+ follow_default = 0;
|
|
||||||
if (cdirel->type == GRUB_BTRFS_DIR_ITEM_TYPE_SYMLINK)
|
|
||||||
{
|
|
||||||
struct grub_btrfs_inode inode;
|
|
||||||
@@ -1416,7 +1416,7 @@ find_path (struct grub_btrfs_data *data,
|
|
||||||
key->object_id = data->sblock.root_dir_objectid;
|
|
||||||
key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM;
|
|
||||||
key->offset = 0;
|
|
||||||
- skip_default = 1;
|
|
||||||
+ follow_default = 1;
|
|
||||||
}
|
|
||||||
continue;
|
|
||||||
}
|
|
@ -21,19 +21,21 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
grub-core/fs/btrfs.c | 529 +++++++++++++++++++++++++++++++++++++++++++++++++--
|
grub-core/fs/btrfs.c | 529 +++++++++++++++++++++++++++++++++++++++++++++++++--
|
||||||
1 file changed, 518 insertions(+), 11 deletions(-)
|
1 file changed, 518 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
--- a/grub-core/fs/btrfs.c 2013-07-29 09:26:01.585376955 -0400
|
Index: grub-2.00/grub-core/fs/btrfs.c
|
||||||
+++ b/grub-core/fs/btrfs.c 2013-07-29 09:26:02.513377553 -0400
|
===================================================================
|
||||||
@@ -28,6 +28,9 @@
|
--- grub-2.00.orig/grub-core/fs/btrfs.c
|
||||||
#include <grub/deflate.h>
|
+++ grub-2.00/grub-core/fs/btrfs.c
|
||||||
|
@@ -29,6 +29,9 @@
|
||||||
#include <minilzo.h>
|
#include <minilzo.h>
|
||||||
#include <grub/i18n.h>
|
#include <grub/i18n.h>
|
||||||
|
#include <grub/btrfs.h>
|
||||||
+#include <grub/command.h>
|
+#include <grub/command.h>
|
||||||
+#include <grub/env.h>
|
+#include <grub/env.h>
|
||||||
+#include <grub/extcmd.h>
|
+#include <grub/extcmd.h>
|
||||||
|
|
||||||
GRUB_MOD_LICENSE ("GPLv3+");
|
GRUB_MOD_LICENSE ("GPLv3+");
|
||||||
|
|
||||||
@@ -63,9 +66,11 @@ struct grub_btrfs_superblock
|
@@ -64,9 +67,11 @@ struct grub_btrfs_superblock
|
||||||
grub_uint64_t generation;
|
grub_uint64_t generation;
|
||||||
grub_uint64_t root_tree;
|
grub_uint64_t root_tree;
|
||||||
grub_uint64_t chunk_tree;
|
grub_uint64_t chunk_tree;
|
||||||
@ -47,33 +49,18 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
struct grub_btrfs_device this_device;
|
struct grub_btrfs_device this_device;
|
||||||
char label[0x100];
|
char label[0x100];
|
||||||
grub_uint8_t dummy4[0x100];
|
grub_uint8_t dummy4[0x100];
|
||||||
@@ -104,6 +109,7 @@ struct grub_btrfs_data
|
@@ -105,6 +110,7 @@ struct grub_btrfs_data
|
||||||
grub_uint64_t exttree;
|
grub_uint64_t exttree;
|
||||||
grub_size_t extsize;
|
grub_size_t extsize;
|
||||||
struct grub_btrfs_extent_data *extent;
|
struct grub_btrfs_extent_data *extent;
|
||||||
+ grub_uint64_t fs_tree;
|
+ grub_uint64_t fs_tree;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum
|
struct grub_btrfs_chunk_item
|
||||||
@@ -113,6 +119,7 @@ enum
|
@@ -171,6 +177,14 @@ struct grub_btrfs_leaf_descriptor
|
||||||
GRUB_BTRFS_ITEM_TYPE_DIR_ITEM = 0x54,
|
} *data;
|
||||||
GRUB_BTRFS_ITEM_TYPE_EXTENT_ITEM = 0x6c,
|
|
||||||
GRUB_BTRFS_ITEM_TYPE_ROOT_ITEM = 0x84,
|
|
||||||
+ GRUB_BTRFS_ITEM_TYPE_ROOT_REF = 0x9c,
|
|
||||||
GRUB_BTRFS_ITEM_TYPE_DEVICE = 0xd8,
|
|
||||||
GRUB_BTRFS_ITEM_TYPE_CHUNK = 0xe4
|
|
||||||
};
|
|
||||||
@@ -195,6 +202,21 @@ struct grub_btrfs_root_item
|
|
||||||
grub_uint64_t inode;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
+struct grub_btrfs_inode_ref
|
|
||||||
+{
|
|
||||||
+ grub_uint64_t index;
|
|
||||||
+ grub_uint16_t name_len;
|
|
||||||
+ const char name[0];
|
|
||||||
+} __attribute__ ((packed));
|
|
||||||
+
|
|
||||||
+struct grub_btrfs_root_ref
|
+struct grub_btrfs_root_ref
|
||||||
+{
|
+{
|
||||||
+ grub_uint64_t dirid;
|
+ grub_uint64_t dirid;
|
||||||
@ -85,7 +72,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
struct grub_btrfs_time
|
struct grub_btrfs_time
|
||||||
{
|
{
|
||||||
grub_int64_t sec;
|
grub_int64_t sec;
|
||||||
@@ -239,6 +261,14 @@ struct grub_btrfs_extent_data
|
@@ -215,6 +229,14 @@ struct grub_btrfs_extent_data
|
||||||
|
|
||||||
#define GRUB_BTRFS_OBJECT_ID_CHUNK 0x100
|
#define GRUB_BTRFS_OBJECT_ID_CHUNK 0x100
|
||||||
|
|
||||||
@ -100,7 +87,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
static grub_disk_addr_t superblock_sectors[] = { 64 * 2, 64 * 1024 * 2,
|
static grub_disk_addr_t superblock_sectors[] = { 64 * 2, 64 * 1024 * 2,
|
||||||
256 * 1048576 * 2, 1048576ULL * 1048576ULL * 2
|
256 * 1048576 * 2, 1048576ULL * 1048576ULL * 2
|
||||||
};
|
};
|
||||||
@@ -854,6 +884,62 @@ grub_btrfs_read_logical (struct grub_btr
|
@@ -830,6 +852,62 @@ grub_btrfs_read_logical (struct grub_btr
|
||||||
return GRUB_ERR_NONE;
|
return GRUB_ERR_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -163,7 +150,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
static struct grub_btrfs_data *
|
static struct grub_btrfs_data *
|
||||||
grub_btrfs_mount (grub_device_t dev)
|
grub_btrfs_mount (grub_device_t dev)
|
||||||
{
|
{
|
||||||
@@ -889,6 +975,13 @@ grub_btrfs_mount (grub_device_t dev)
|
@@ -865,6 +943,13 @@ grub_btrfs_mount (grub_device_t dev)
|
||||||
data->devices_attached[0].dev = dev;
|
data->devices_attached[0].dev = dev;
|
||||||
data->devices_attached[0].id = data->sblock.this_device.device_id;
|
data->devices_attached[0].id = data->sblock.this_device.device_id;
|
||||||
|
|
||||||
@ -177,7 +164,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1197,6 +1290,91 @@ grub_btrfs_extent_read (struct grub_btrf
|
@@ -1216,6 +1301,91 @@ get_root (struct grub_btrfs_data *data,
|
||||||
}
|
}
|
||||||
|
|
||||||
static grub_err_t
|
static grub_err_t
|
||||||
@ -195,7 +182,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
+ char *p = grub_strdup (name);
|
+ char *p = grub_strdup (name);
|
||||||
+ grub_disk_addr_t elemaddr;
|
+ grub_disk_addr_t elemaddr;
|
||||||
+ grub_size_t elemsize;
|
+ grub_size_t elemsize;
|
||||||
+ int alloc = grub_strlen(name) + 1;
|
+ grub_size_t alloc = grub_strlen(name) + 1;
|
||||||
+
|
+
|
||||||
+ err = lower_bound(data, &key, &key_out, fs_root,
|
+ err = lower_bound(data, &key, &key_out, fs_root,
|
||||||
+ &elemaddr, &elemsize, &desc, 0);
|
+ &elemaddr, &elemsize, &desc, 0);
|
||||||
@ -224,28 +211,28 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
+ inode_ref = grub_malloc(elemsize + 1);
|
+ inode_ref = grub_malloc(elemsize + 1);
|
||||||
+ if (!inode_ref)
|
+ if (!inode_ref)
|
||||||
+ return grub_error(GRUB_ERR_OUT_OF_MEMORY,
|
+ return grub_error(GRUB_ERR_OUT_OF_MEMORY,
|
||||||
+ "couldn't allocate memory for inode_ref (%d)\n");
|
+ "couldn't allocate memory for inode_ref (%"PRIuGRUB_SIZE")\n", elemsize);
|
||||||
+
|
+
|
||||||
+ err = grub_btrfs_read_logical(data, elemaddr, inode_ref, elemsize, 0);
|
+ err = grub_btrfs_read_logical(data, elemaddr, inode_ref, elemsize, 0);
|
||||||
+ if (err)
|
+ if (err)
|
||||||
+ return grub_error(err, "read_logical caught %d\n", err);
|
+ return grub_error(err, "read_logical caught %d\n", err);
|
||||||
+
|
+
|
||||||
+ alloc += inode_ref->name_len + 2;
|
+ alloc += inode_ref->n + 2;
|
||||||
+ new = grub_malloc(alloc);
|
+ new = grub_malloc(alloc);
|
||||||
+ if (!new)
|
+ if (!new)
|
||||||
+ return grub_error(GRUB_ERR_OUT_OF_MEMORY,
|
+ return grub_error(GRUB_ERR_OUT_OF_MEMORY,
|
||||||
+ "couldn't allocate memory for name (%d)\n", alloc);
|
+ "couldn't allocate memory for name (%"PRIuGRUB_SIZE")\n", alloc);
|
||||||
+
|
+
|
||||||
+ grub_memcpy(new, inode_ref->name, inode_ref->name_len);
|
+ grub_memcpy(new, inode_ref->name, inode_ref->n);
|
||||||
+ new[inode_ref->name_len] = 0;
|
|
||||||
+ grub_free(inode_ref);
|
|
||||||
+ if (p)
|
+ if (p)
|
||||||
+ {
|
+ {
|
||||||
+ grub_strcat(new, "/");
|
+ new[inode_ref->n] = '/';
|
||||||
+ grub_strcat(new, p);
|
+ grub_strcpy (new + inode_ref->n + 1, p);
|
||||||
+ new[alloc - 1] = 0;
|
|
||||||
+ grub_free(p);
|
+ grub_free(p);
|
||||||
+ }
|
+ }
|
||||||
|
+ else
|
||||||
|
+ new[inode_ref->n] = 0;
|
||||||
|
+ grub_free(inode_ref);
|
||||||
+
|
+
|
||||||
+ p = new;
|
+ p = new;
|
||||||
+
|
+
|
||||||
@ -269,25 +256,63 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
find_path (struct grub_btrfs_data *data,
|
find_path (struct grub_btrfs_data *data,
|
||||||
const char *path, struct grub_btrfs_key *key,
|
const char *path, struct grub_btrfs_key *key,
|
||||||
grub_uint64_t *tree, grub_uint8_t *type)
|
grub_uint64_t *tree, grub_uint8_t *type)
|
||||||
@@ -1222,6 +1400,17 @@ find_path (struct grub_btrfs_data *data,
|
@@ -1233,14 +1403,26 @@ find_path (struct grub_btrfs_data *data,
|
||||||
key->offset = 0;
|
char *origpath = NULL;
|
||||||
follow_default = 1;
|
unsigned symlinks_max = 32;
|
||||||
|
|
||||||
|
- err = get_root (data, key, tree, type);
|
||||||
|
- if (err)
|
||||||
|
- return err;
|
||||||
|
-
|
||||||
origpath = grub_strdup (path);
|
origpath = grub_strdup (path);
|
||||||
+
|
|
||||||
+ if (data->fs_tree)
|
|
||||||
+ {
|
|
||||||
+ *tree = data->fs_tree;
|
|
||||||
+
|
|
||||||
+ follow_default = 0; /* only the toplevel root has a special 'default' */
|
|
||||||
+
|
|
||||||
+ /* This is a tree root, so everything starts at objectid 256 */
|
|
||||||
+ key->object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_OBJECT_ID_CHUNK);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (!origpath)
|
if (!origpath)
|
||||||
return grub_errno;
|
return grub_errno;
|
||||||
|
|
||||||
@@ -1657,6 +1846,20 @@ grub_btrfs_read (grub_file_t file, char
|
+ if (data->fs_tree)
|
||||||
|
+ {
|
||||||
|
+ *type = GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY;
|
||||||
|
+ *tree = data->fs_tree;
|
||||||
|
+ /* This is a tree root, so everything starts at objectid 256 */
|
||||||
|
+ key->object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_OBJECT_ID_CHUNK);
|
||||||
|
+ key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM;
|
||||||
|
+ key->offset = 0;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ err = get_root (data, key, tree, type);
|
||||||
|
+ if (err)
|
||||||
|
+ return err;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
while (1)
|
||||||
|
{
|
||||||
|
while (path[0] == '/')
|
||||||
|
@@ -1413,9 +1595,21 @@ find_path (struct grub_btrfs_data *data,
|
||||||
|
path = path_alloc = tmp;
|
||||||
|
if (path[0] == '/')
|
||||||
|
{
|
||||||
|
- err = get_root (data, key, tree, type);
|
||||||
|
- if (err)
|
||||||
|
- return err;
|
||||||
|
+ if (data->fs_tree)
|
||||||
|
+ {
|
||||||
|
+ *type = GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY;
|
||||||
|
+ *tree = data->fs_tree;
|
||||||
|
+ /* This is a tree root, so everything starts at objectid 256 */
|
||||||
|
+ key->object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_OBJECT_ID_CHUNK);
|
||||||
|
+ key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM;
|
||||||
|
+ key->offset = 0;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ err = get_root (data, key, tree, type);
|
||||||
|
+ if (err)
|
||||||
|
+ return err;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
@@ -1656,6 +1850,20 @@ grub_btrfs_read (grub_file_t file, char
|
||||||
data->tree, file->offset, buf, len);
|
data->tree, file->offset, buf, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -308,7 +333,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
static grub_err_t
|
static grub_err_t
|
||||||
grub_btrfs_uuid (grub_device_t device, char **uuid)
|
grub_btrfs_uuid (grub_device_t device, char **uuid)
|
||||||
{
|
{
|
||||||
@@ -1668,15 +1871,7 @@ grub_btrfs_uuid (grub_device_t device, c
|
@@ -1667,15 +1875,7 @@ grub_btrfs_uuid (grub_device_t device, c
|
||||||
if (!data)
|
if (!data)
|
||||||
return grub_errno;
|
return grub_errno;
|
||||||
|
|
||||||
@ -325,7 +350,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
|
|
||||||
grub_btrfs_unmount (data);
|
grub_btrfs_unmount (data);
|
||||||
|
|
||||||
@@ -1733,6 +1928,242 @@ grub_btrfs_embed (grub_device_t device _
|
@@ -1732,6 +1932,242 @@ grub_btrfs_embed (grub_device_t device _
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -568,7 +593,7 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
static struct grub_fs grub_btrfs_fs = {
|
static struct grub_fs grub_btrfs_fs = {
|
||||||
.name = "btrfs",
|
.name = "btrfs",
|
||||||
.dir = grub_btrfs_dir,
|
.dir = grub_btrfs_dir,
|
||||||
@@ -1748,12 +2179,88 @@ static struct grub_fs grub_btrfs_fs = {
|
@@ -1747,12 +2183,88 @@ static struct grub_fs grub_btrfs_fs = {
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -657,3 +682,15 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
|||||||
}
|
}
|
||||||
+
|
+
|
||||||
+// vim: si et sw=2:
|
+// vim: si et sw=2:
|
||||||
|
Index: grub-2.00/include/grub/btrfs.h
|
||||||
|
===================================================================
|
||||||
|
--- grub-2.00.orig/include/grub/btrfs.h
|
||||||
|
+++ grub-2.00/include/grub/btrfs.h
|
||||||
|
@@ -29,6 +29,7 @@ enum
|
||||||
|
GRUB_BTRFS_ITEM_TYPE_ROOT_ITEM = 0x84,
|
||||||
|
GRUB_BTRFS_ITEM_TYPE_ROOT_BACKREF = 0x90,
|
||||||
|
GRUB_BTRFS_ITEM_TYPE_DEVICE = 0xd8,
|
||||||
|
+ GRUB_BTRFS_ITEM_TYPE_ROOT_REF = 0x9c,
|
||||||
|
GRUB_BTRFS_ITEM_TYPE_CHUNK = 0xe4
|
||||||
|
};
|
||||||
|
|
||||||
|
66653
Makefile.core.am
66653
Makefile.core.am
File diff suppressed because it is too large
Load Diff
21913
Makefile.util.am
21913
Makefile.util.am
File diff suppressed because it is too large
Load Diff
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:e50be331c1aab4bf45c2290e755089c0bb8909ca57b6a1c9da9301e298cbc732
|
|
||||||
size 5025068
|
|
3
grub-2.02~beta2.tar.xz
Normal file
3
grub-2.02~beta2.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f6c702b2a8ea58f27a2b02928bb77973cb5a827af08f63db38c471c0a01b418d
|
||||||
|
size 5798740
|
@ -17,25 +17,25 @@ GRUB_CMDLINE_LINUX_RECOVERY.
|
|||||||
util/grub.d/10_linux.in | 2 +-
|
util/grub.d/10_linux.in | 2 +-
|
||||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in
|
Index: grub-2.00/util/grub-mkconfig.in
|
||||||
index 516be86..f61796f 100644
|
===================================================================
|
||||||
--- a/util/grub-mkconfig.in
|
--- grub-2.00.orig/util/grub-mkconfig.in
|
||||||
+++ b/util/grub-mkconfig.in
|
+++ grub-2.00/util/grub-mkconfig.in
|
||||||
@@ -216,7 +216,8 @@ export GRUB_DEFAULT \
|
@@ -217,7 +217,8 @@ export GRUB_DEFAULT \
|
||||||
GRUB_INIT_TUNE \
|
|
||||||
GRUB_SAVEDEFAULT \
|
|
||||||
GRUB_ENABLE_CRYPTODISK \
|
GRUB_ENABLE_CRYPTODISK \
|
||||||
- GRUB_BADRAM
|
GRUB_BADRAM \
|
||||||
+ GRUB_BADRAM \
|
GRUB_OS_PROBER_SKIP_LIST \
|
||||||
|
- GRUB_DISABLE_SUBMENU
|
||||||
|
+ GRUB_DISABLE_SUBMENU \
|
||||||
+ GRUB_CMDLINE_LINUX_RECOVERY
|
+ GRUB_CMDLINE_LINUX_RECOVERY
|
||||||
|
|
||||||
if test "x${grub_cfg}" != "x"; then
|
if test "x${grub_cfg}" != "x"; then
|
||||||
rm -f "${grub_cfg}.new"
|
rm -f "${grub_cfg}.new"
|
||||||
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
|
Index: grub-2.00/util/grub.d/10_linux.in
|
||||||
index d856481..e7a180e 100644
|
===================================================================
|
||||||
--- a/util/grub.d/10_linux.in
|
--- grub-2.00.orig/util/grub.d/10_linux.in
|
||||||
+++ b/util/grub.d/10_linux.in
|
+++ grub-2.00/util/grub.d/10_linux.in
|
||||||
@@ -243,7 +243,7 @@ while [ "x$list" != "x" ] ; do
|
@@ -244,7 +244,7 @@ while [ "x$list" != "x" ] ; do
|
||||||
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||||||
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
|
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
|
||||||
linux_entry "${OS}" "${version}" recovery \
|
linux_entry "${OS}" "${version}" recovery \
|
||||||
@ -44,6 +44,3 @@ index d856481..e7a180e 100644
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
|
list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
|
||||||
--
|
|
||||||
1.7.3.4
|
|
||||||
|
|
||||||
|
@ -1,50 +0,0 @@
|
|||||||
From: Matthew Garrett <mjg@redhat.com>
|
|
||||||
Date: 2012-07-10 11:58:52 EDT
|
|
||||||
Subject: [PATCH] Add support for crappy cd craparino
|
|
||||||
|
|
||||||
References: fate#314485
|
|
||||||
Patch-Mainline: no
|
|
||||||
|
|
||||||
Signed-off-by: Michael Chang <mchang@suse.com>
|
|
||||||
|
|
||||||
Follow other code in this function and duplicate device path
|
|
||||||
before overwriting it.
|
|
||||||
|
|
||||||
Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
|
|
||||||
|
|
||||||
Index: grub-2.00/grub-core/disk/efi/efidisk.c
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/grub-core/disk/efi/efidisk.c
|
|
||||||
+++ grub-2.00/grub-core/disk/efi/efidisk.c
|
|
||||||
@@ -820,6 +820,31 @@ grub_efidisk_get_device_name (grub_efi_h
|
|
||||||
|
|
||||||
return dev_name;
|
|
||||||
}
|
|
||||||
+ else if (GRUB_EFI_DEVICE_PATH_TYPE (ldp) == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE &&
|
|
||||||
+ (GRUB_EFI_DEVICE_PATH_SUBTYPE (ldp) == GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE))
|
|
||||||
+ {
|
|
||||||
+ grub_efi_device_path_t *dup_dp, *dup_ldp;
|
|
||||||
+
|
|
||||||
+ /* It is necessary to duplicate the device path so that GRUB
|
|
||||||
+ can overwrite it. */
|
|
||||||
+ dup_dp = duplicate_device_path (dp);
|
|
||||||
+ if (! dup_dp)
|
|
||||||
+ return 0;
|
|
||||||
+
|
|
||||||
+ dup_ldp = find_last_device_path (dup_dp);
|
|
||||||
+ dup_ldp->type = GRUB_EFI_END_DEVICE_PATH_TYPE;
|
|
||||||
+ dup_ldp->subtype = GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE;
|
|
||||||
+ dup_ldp->length[0] = 4;
|
|
||||||
+ dup_ldp->length[1] = 0;
|
|
||||||
+
|
|
||||||
+ if (!get_diskname_from_path (dup_dp, device_name))
|
|
||||||
+ {
|
|
||||||
+ grub_free (dup_dp);
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
+ grub_free (dup_dp);
|
|
||||||
+ return grub_strdup (device_name);
|
|
||||||
+ }
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* This should be an entire disk. */
|
|
@ -17,13 +17,13 @@ trigger the config updated prior to the xen package installation.
|
|||||||
util/grub.d/20_linux_xen.in | 13 +++++++++++++
|
util/grub.d/20_linux_xen.in | 13 +++++++++++++
|
||||||
1 files changed, 13 insertions(+), 0 deletions(-)
|
1 files changed, 13 insertions(+), 0 deletions(-)
|
||||||
|
|
||||||
diff --git a/util/grub.d/20_linux_xen.in b/util/grub.d/20_linux_xen.in
|
Index: grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
||||||
index fd103f1..6a7c1e6 100644
|
===================================================================
|
||||||
--- a/util/grub.d/20_linux_xen.in
|
--- grub-2.02~beta2.orig/util/grub.d/20_linux_xen.in
|
||||||
+++ b/util/grub.d/20_linux_xen.in
|
+++ grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
||||||
@@ -171,6 +171,19 @@ file_is_not_sym () {
|
@@ -170,6 +170,19 @@ file_is_not_sym () {
|
||||||
xen_list=`for i in /boot/xen*.gz; do
|
xen_list=`for i in /boot/xen*.gz; do
|
||||||
if grub_file_is_not_garbage "$i" && test ! -L "$i" ; then echo -n "$i " ; fi
|
if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" && test ! -L "$i" ; then echo -n "$i " ; fi
|
||||||
done`
|
done`
|
||||||
+
|
+
|
||||||
+# bnc#774666 - Grub2 does not offer a Xen entry after installing hypervisor and tools
|
+# bnc#774666 - Grub2 does not offer a Xen entry after installing hypervisor and tools
|
||||||
@ -41,6 +41,3 @@ index fd103f1..6a7c1e6 100644
|
|||||||
prepare_boot_cache=
|
prepare_boot_cache=
|
||||||
boot_device_id=
|
boot_device_id=
|
||||||
|
|
||||||
--
|
|
||||||
1.7.3.4
|
|
||||||
|
|
||||||
|
@ -1,92 +0,0 @@
|
|||||||
From: Andrey Borzenkov <arvidjaar@gmail.com>
|
|
||||||
To: grub-devel@gnu.org
|
|
||||||
Subject: [PATCH] fix memory and descriptor leaks in grub_util_is_imsm
|
|
||||||
|
|
||||||
Descriptor leak caused warning from later vgs invocation. Fix memory
|
|
||||||
leak (buffer was not always freed) while on it.
|
|
||||||
|
|
||||||
Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
|
|
||||||
|
|
||||||
---
|
|
||||||
util/getroot.c | 29 +++++++++++++++--------------
|
|
||||||
1 file changed, 15 insertions(+), 14 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/util/getroot.c b/util/getroot.c
|
|
||||||
index 2ad8a55..b30a0d8 100644
|
|
||||||
--- a/util/getroot.c
|
|
||||||
+++ b/util/getroot.c
|
|
||||||
@@ -1455,10 +1455,12 @@ out:
|
|
||||||
static int
|
|
||||||
grub_util_is_imsm (const char *os_dev)
|
|
||||||
{
|
|
||||||
- int try;
|
|
||||||
+ int retry;
|
|
||||||
+ int is_imsm = 0;
|
|
||||||
+ int container_seen = 0;
|
|
||||||
const char *dev = os_dev;
|
|
||||||
|
|
||||||
- for (try = 0; try < 2; try++)
|
|
||||||
+ do
|
|
||||||
{
|
|
||||||
char *argv[5];
|
|
||||||
int fd;
|
|
||||||
@@ -1467,6 +1469,8 @@ grub_util_is_imsm (const char *os_dev)
|
|
||||||
char *buf = NULL;
|
|
||||||
size_t len = 0;
|
|
||||||
|
|
||||||
+ retry = 0; /* We'll do one more pass if device is part of container */
|
|
||||||
+
|
|
||||||
/* execvp has inconvenient types, hence the casts. None of these
|
|
||||||
strings will actually be modified. */
|
|
||||||
argv[0] = (char *) "mdadm";
|
|
||||||
@@ -1499,7 +1503,8 @@ grub_util_is_imsm (const char *os_dev)
|
|
||||||
|
|
||||||
while (getline (&buf, &len, mdadm) > 0)
|
|
||||||
{
|
|
||||||
- if (strncmp (buf, "MD_CONTAINER=", sizeof ("MD_CONTAINER=") - 1) == 0)
|
|
||||||
+ if (strncmp (buf, "MD_CONTAINER=", sizeof ("MD_CONTAINER=") - 1) == 0
|
|
||||||
+ && !container_seen)
|
|
||||||
{
|
|
||||||
char *newdev, *ptr;
|
|
||||||
newdev = xstrdup (buf + sizeof ("MD_CONTAINER=") - 1);
|
|
||||||
@@ -1508,31 +1513,27 @@ grub_util_is_imsm (const char *os_dev)
|
|
||||||
ptr[1] = 0;
|
|
||||||
grub_util_info ("Container of %s is %s", dev, newdev);
|
|
||||||
dev = newdev;
|
|
||||||
- goto out;
|
|
||||||
+ container_seen = retry = 1;
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
if (strncmp (buf, "MD_METADATA=imsm",
|
|
||||||
sizeof ("MD_METADATA=imsm") - 1) == 0)
|
|
||||||
{
|
|
||||||
- close (fd);
|
|
||||||
- waitpid (pid, NULL, 0);
|
|
||||||
+ is_imsm = 1;
|
|
||||||
grub_util_info ("%s is imsm", dev);
|
|
||||||
- if (dev != os_dev)
|
|
||||||
- free ((void *) dev);
|
|
||||||
- return 1;
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
free (buf);
|
|
||||||
-
|
|
||||||
- return 0;
|
|
||||||
-
|
|
||||||
- out:
|
|
||||||
close (fd);
|
|
||||||
waitpid (pid, NULL, 0);
|
|
||||||
}
|
|
||||||
+ while (retry);
|
|
||||||
+
|
|
||||||
if (dev != os_dev)
|
|
||||||
free ((void *) dev);
|
|
||||||
- return 0;
|
|
||||||
+ return is_imsm;
|
|
||||||
}
|
|
||||||
#endif /* __linux__ */
|
|
||||||
|
|
||||||
--
|
|
||||||
tg: (e1a892d..) u/imsm_descriptor_leak (depends on: master)
|
|
@ -14,15 +14,17 @@ Signed-off-by: Michael Chang <mchang@suse.com>
|
|||||||
grub-core/gettext/gettext.c | 8 ++++++++
|
grub-core/gettext/gettext.c | 8 ++++++++
|
||||||
1 files changed, 8 insertions(+), 0 deletions(-)
|
1 files changed, 8 insertions(+), 0 deletions(-)
|
||||||
|
|
||||||
diff --git a/grub-core/gettext/gettext.c b/grub-core/gettext/gettext.c
|
Index: grub-2.00/grub-core/gettext/gettext.c
|
||||||
index 569f985..eb4bb5d 100644
|
===================================================================
|
||||||
--- a/grub-core/gettext/gettext.c
|
--- grub-2.00.orig/grub-core/gettext/gettext.c
|
||||||
+++ b/grub-core/gettext/gettext.c
|
+++ grub-2.00/grub-core/gettext/gettext.c
|
||||||
@@ -412,6 +412,14 @@ grub_gettext_init_ext (struct grub_gettext_context *ctx,
|
@@ -424,9 +424,13 @@ grub_gettext_init_ext (struct grub_gette
|
||||||
|
|
||||||
grub_free (lang);
|
grub_free (lang);
|
||||||
}
|
}
|
||||||
+
|
|
||||||
|
- if (locale[0] == 'e' && locale[1] == 'n'
|
||||||
|
- && (locale[2] == '\0' || locale[2] == '_'))
|
||||||
|
- grub_errno = err = GRUB_ERR_NONE;
|
||||||
+ /* If no translations are available, fall back to untranslated text. */
|
+ /* If no translations are available, fall back to untranslated text. */
|
||||||
+ if (err == GRUB_ERR_FILE_NOT_FOUND)
|
+ if (err == GRUB_ERR_FILE_NOT_FOUND)
|
||||||
+ {
|
+ {
|
||||||
@ -33,6 +35,3 @@ index 569f985..eb4bb5d 100644
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
--
|
|
||||||
1.7.3.4
|
|
||||||
|
|
||||||
|
@ -20,11 +20,11 @@ This patch fixes above three issues.
|
|||||||
util/grub.d/20_linux_xen.in | 6 ++++--
|
util/grub.d/20_linux_xen.in | 6 ++++--
|
||||||
3 files changed, 19 insertions(+), 4 deletions(-)
|
3 files changed, 19 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
Index: grub-2.00/util/grub-mkconfig_lib.in
|
Index: grub-2.02~beta2/util/grub-mkconfig_lib.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/util/grub-mkconfig_lib.in
|
--- grub-2.02~beta2.orig/util/grub-mkconfig_lib.in
|
||||||
+++ grub-2.00/util/grub-mkconfig_lib.in
|
+++ grub-2.02~beta2/util/grub-mkconfig_lib.in
|
||||||
@@ -235,6 +235,11 @@ version_test_gt ()
|
@@ -248,6 +248,11 @@ version_test_gt ()
|
||||||
*.old:*.old) ;;
|
*.old:*.old) ;;
|
||||||
*.old:*) version_test_gt_a="`echo -n "$version_test_gt_a" | sed -e 's/\.old$//'`" ; version_test_gt_cmp=gt ;;
|
*.old:*) version_test_gt_a="`echo -n "$version_test_gt_a" | sed -e 's/\.old$//'`" ; version_test_gt_cmp=gt ;;
|
||||||
*:*.old) version_test_gt_b="`echo -n "$version_test_gt_b" | sed -e 's/\.old$//'`" ; version_test_gt_cmp=ge ;;
|
*:*.old) version_test_gt_b="`echo -n "$version_test_gt_b" | sed -e 's/\.old$//'`" ; version_test_gt_cmp=ge ;;
|
||||||
@ -36,55 +36,11 @@ Index: grub-2.00/util/grub-mkconfig_lib.in
|
|||||||
esac
|
esac
|
||||||
version_test_numeric "$version_test_gt_a" "$version_test_gt_cmp" "$version_test_gt_b"
|
version_test_numeric "$version_test_gt_a" "$version_test_gt_cmp" "$version_test_gt_b"
|
||||||
return "$?"
|
return "$?"
|
||||||
Index: grub-2.00/util/grub.d/10_linux.in
|
Index: grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/util/grub.d/10_linux.in
|
--- grub-2.02~beta2.orig/util/grub.d/20_linux_xen.in
|
||||||
+++ grub-2.00/util/grub.d/10_linux.in
|
+++ grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
||||||
@@ -150,15 +150,37 @@ EOF
|
@@ -165,8 +165,10 @@ file_is_not_sym () {
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
+# bnc#757895 - Grub2 menu items incorrect when "Xen Virtual Machines Host Server" selected
|
|
||||||
+# check kernel's flavor to prevent xen kernel from booting natively without hypervisor
|
|
||||||
+# bnc#825528 - grub2-mkconfig doesn't find kernel in xen domU
|
|
||||||
+# check xen kernel in domU and process it
|
|
||||||
+is_not_xen_kernel_in_dom0 ()
|
|
||||||
+{
|
|
||||||
+ flavor=`echo $1 | sed -e "s,.*-,,g"`
|
|
||||||
+
|
|
||||||
+ if [ "x${flavor}" = "xxen" ] ; then
|
|
||||||
+ # Determining Virtual Machine Identities
|
|
||||||
+ if [ -e /proc/xen -a ! -e /proc/xen/xsd_port ]; then
|
|
||||||
+ # We're in DomU
|
|
||||||
+ return 0
|
|
||||||
+ else
|
|
||||||
+ # We're in Dom0 or No Xen hypervisor present at all
|
|
||||||
+ return 1
|
|
||||||
+ fi
|
|
||||||
+ fi
|
|
||||||
+
|
|
||||||
+ return 0
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
machine=`uname -m`
|
|
||||||
case "x$machine" in
|
|
||||||
xi?86 | xx86_64)
|
|
||||||
list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
|
|
||||||
- if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
|
|
||||||
+ if grub_file_is_not_garbage "$i" && is_not_xen_kernel_in_dom0 "$i" ; then echo -n "$i " ; fi
|
|
||||||
done` ;;
|
|
||||||
*)
|
|
||||||
list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
|
|
||||||
- if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
|
|
||||||
+ if grub_file_is_not_garbage "$i" && is_not_xen_kernel_in_dom0 "$i" ; then echo -n "$i " ; fi
|
|
||||||
done` ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
Index: grub-2.00/util/grub.d/20_linux_xen.in
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/util/grub.d/20_linux_xen.in
|
|
||||||
+++ grub-2.00/util/grub.d/20_linux_xen.in
|
|
||||||
@@ -171,8 +171,10 @@ file_is_not_sym () {
|
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,7 +49,7 @@ Index: grub-2.00/util/grub.d/20_linux_xen.in
|
|||||||
+# bnc#757895 - Grub2 menu items incorrect when "Xen Virtual Machines Host Server" selected
|
+# bnc#757895 - Grub2 menu items incorrect when "Xen Virtual Machines Host Server" selected
|
||||||
+# wildcard expasion with correct suffix (.gz) and exclude symlinks for not generating many duplicated menu entries
|
+# wildcard expasion with correct suffix (.gz) and exclude symlinks for not generating many duplicated menu entries
|
||||||
+xen_list=`for i in /boot/xen*.gz; do
|
+xen_list=`for i in /boot/xen*.gz; do
|
||||||
+ if grub_file_is_not_garbage "$i" && test ! -L "$i" ; then echo -n "$i " ; fi
|
+ if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" && test ! -L "$i" ; then echo -n "$i " ; fi
|
||||||
done`
|
done`
|
||||||
prepare_boot_cache=
|
prepare_boot_cache=
|
||||||
boot_device_id=
|
boot_device_id=
|
||||||
|
@ -1,75 +0,0 @@
|
|||||||
From: Andrey Borzenkov <arvidjaar@gmail.com>
|
|
||||||
To: grub-devel@gnu.org
|
|
||||||
Subject: [PATCH] fix parsing of LVM PV names for short names
|
|
||||||
|
|
||||||
Default format of vgs output is
|
|
||||||
|
|
||||||
- two spaces as standard prefix
|
|
||||||
- PV name left aligned to field width which is 10 characters
|
|
||||||
|
|
||||||
This means that if PV name has less than 10 chacaters it has some spaces at
|
|
||||||
the end.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
linux-chxo:~ # vgs -o pv_name --noheadings | cat -E
|
|
||||||
/dev/md1 $
|
|
||||||
/dev/md101$
|
|
||||||
linux-chxo:~ #
|
|
||||||
|
|
||||||
There is no explicit option to turn off alignment; it is implicitly
|
|
||||||
disabled if one of --separator or --nameprefixes option is used.
|
|
||||||
|
|
||||||
--separator was added in 2007, --nameprefixes - in 2009. So let's use
|
|
||||||
--separator to extend range of versions we are compatible with. Note that
|
|
||||||
one or another must be used, current parsing is broken otherwise.
|
|
||||||
|
|
||||||
Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
|
|
||||||
|
|
||||||
---
|
|
||||||
util/getroot.c | 12 +++++++++---
|
|
||||||
1 file changed, 9 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/util/getroot.c b/util/getroot.c
|
|
||||||
index 2ad8a55..3afcf96 100644
|
|
||||||
--- a/util/getroot.c
|
|
||||||
+++ b/util/getroot.c
|
|
||||||
@@ -1322,7 +1322,7 @@ grub_util_get_dev_abstraction (const char *os_dev)
|
|
||||||
static void
|
|
||||||
pull_lvm_by_command (const char *os_dev)
|
|
||||||
{
|
|
||||||
- char *argv[6];
|
|
||||||
+ char *argv[8];
|
|
||||||
int fd;
|
|
||||||
pid_t pid;
|
|
||||||
FILE *mdadm;
|
|
||||||
@@ -1351,12 +1351,17 @@ pull_lvm_by_command (const char *os_dev)
|
|
||||||
|
|
||||||
/* execvp has inconvenient types, hence the casts. None of these
|
|
||||||
strings will actually be modified. */
|
|
||||||
+ /* by default PV name is left aligned in 10 character field, meaning that
|
|
||||||
+ we do not know where name ends. Using dummy --separator disables
|
|
||||||
+ alignment. We have a single field, so separator itself is not output */
|
|
||||||
argv[0] = (char *) "vgs";
|
|
||||||
argv[1] = (char *) "--options";
|
|
||||||
argv[2] = (char *) "pv_name";
|
|
||||||
argv[3] = (char *) "--noheadings";
|
|
||||||
- argv[4] = vgname;
|
|
||||||
- argv[5] = NULL;
|
|
||||||
+ argv[4] = (char *) "--separator";
|
|
||||||
+ argv[5] = (char *) ":";
|
|
||||||
+ argv[6] = vgname;
|
|
||||||
+ argv[7] = NULL;
|
|
||||||
|
|
||||||
pid = exec_pipe (argv, &fd);
|
|
||||||
free (vgname);
|
|
||||||
@@ -1376,6 +1381,7 @@ pull_lvm_by_command (const char *os_dev)
|
|
||||||
while (getline (&buf, &len, mdadm) > 0)
|
|
||||||
{
|
|
||||||
char *ptr;
|
|
||||||
+ /* LVM adds two spaces as standard prefix */
|
|
||||||
for (ptr = buf; ptr < buf + 2 && *ptr == ' '; ptr++);
|
|
||||||
if (*ptr == '\0')
|
|
||||||
continue;
|
|
||||||
--
|
|
||||||
tg: (ebd40b6..) u/strip-pv-trailing-blanks (depends on: master)
|
|
@ -1,74 +0,0 @@
|
|||||||
From 7c8906e0f3827322469655bb013247f7ce60fcd9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Michael Chang <mchang@suse.com>
|
|
||||||
Date: Tue, 4 Dec 2012 15:24:43 +0800
|
|
||||||
Subject: [PATCH] Fix unquoted string in --class
|
|
||||||
|
|
||||||
References: bnc#788322
|
|
||||||
Patch-Mainline: no
|
|
||||||
|
|
||||||
If GRUB_DISTRIBUTOR contains special character such as '$', it would
|
|
||||||
lead to syntax error by the grub2-script-check even though user
|
|
||||||
correctly quote them in single quotes.
|
|
||||||
|
|
||||||
The cause is that grub2 scripts use not quote the strings from
|
|
||||||
GRUB_DISTRIBUTOR in --class options thus keywords interpreted by the
|
|
||||||
script parser. The fix is to add single quote to the string.
|
|
||||||
---
|
|
||||||
util/grub.d/10_hurd.in | 2 +-
|
|
||||||
util/grub.d/10_kfreebsd.in | 2 +-
|
|
||||||
util/grub.d/10_linux.in | 2 +-
|
|
||||||
util/grub.d/20_linux_xen.in | 2 +-
|
|
||||||
4 files changed, 4 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
Index: grub-2.00/util/grub.d/10_hurd.in
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/util/grub.d/10_hurd.in
|
|
||||||
+++ grub-2.00/util/grub.d/10_hurd.in
|
|
||||||
@@ -32,7 +32,7 @@ if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; th
|
|
||||||
OS=GNU
|
|
||||||
else
|
|
||||||
OS="${GRUB_DISTRIBUTOR} GNU/Hurd"
|
|
||||||
- CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}"
|
|
||||||
+ CLASS="--class '$(echo -n "${GRUB_DISTRIBUTOR}" | sed -r 's/[^[:alnum:]]+/-/g; s/(^-|-$)//g' | tr 'A-Z' 'a-z')' ${CLASS}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
at_least_one=false
|
|
||||||
Index: grub-2.00/util/grub.d/10_kfreebsd.in
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/util/grub.d/10_kfreebsd.in
|
|
||||||
+++ grub-2.00/util/grub.d/10_kfreebsd.in
|
|
||||||
@@ -30,7 +30,7 @@ CLASS="--class os"
|
|
||||||
case "${GRUB_DISTRIBUTOR}" in
|
|
||||||
Debian)
|
|
||||||
OS="${GRUB_DISTRIBUTOR} GNU/kFreeBSD"
|
|
||||||
- CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) --class gnu-kfreebsd --class gnu ${CLASS}"
|
|
||||||
+ CLASS="--class '$(echo -n "${GRUB_DISTRIBUTOR}" | sed -r 's/[^[:alnum:]]+/-/g; s/(^-|-$)//g' | tr 'A-Z' 'a-z')' --class gnu-kfreebsd --class gnu ${CLASS}"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
OS="FreeBSD"
|
|
||||||
Index: grub-2.00/util/grub.d/10_linux.in
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/util/grub.d/10_linux.in
|
|
||||||
+++ grub-2.00/util/grub.d/10_linux.in
|
|
||||||
@@ -32,7 +32,7 @@ if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; th
|
|
||||||
OS=GNU/Linux
|
|
||||||
else
|
|
||||||
OS="${GRUB_DISTRIBUTOR}"
|
|
||||||
- CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}"
|
|
||||||
+ CLASS="--class '$(echo -n "${GRUB_DISTRIBUTOR}" | sed -r 's/[^[:alnum:]]+/-/g; s/(^-|-$)//g' | tr 'A-Z' 'a-z')' ${CLASS}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# loop-AES arranges things so that /dev/loop/X can be our root device, but
|
|
||||||
Index: grub-2.00/util/grub.d/20_linux_xen.in
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/util/grub.d/20_linux_xen.in
|
|
||||||
+++ grub-2.00/util/grub.d/20_linux_xen.in
|
|
||||||
@@ -32,7 +32,7 @@ if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; th
|
|
||||||
OS=GNU/Linux
|
|
||||||
else
|
|
||||||
OS="${GRUB_DISTRIBUTOR} GNU/Linux"
|
|
||||||
- CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}"
|
|
||||||
+ CLASS="--class '$(echo -n "${GRUB_DISTRIBUTOR}" | sed -r 's/[^[:alnum:]]+/-/g; s/(^-|-$)//g' | tr 'A-Z' 'a-z')' ${CLASS}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# loop-AES arranges things so that /dev/loop/X can be our root device, but
|
|
@ -1,146 +0,0 @@
|
|||||||
From 4e42521d8c9232b6ee9eac7d8b4945a7479de781 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Vladimir Serbinenko <phcoder@gmail.com>
|
|
||||||
Date: Fri, 22 Nov 2013 05:40:32 +0100
|
|
||||||
Subject: * grub-core/kern/x86_64/efi/callwrap.S: Fix stack
|
|
||||||
alignment. Previously we misaligned stack by 8 in startup.S and compensated
|
|
||||||
for it in callwrap.S. According to ABI docs (EFI and sysv amd64) right
|
|
||||||
behaviour is to align stack in startup.S and keep it aligned in callwrap.S.
|
|
||||||
startup.S part was committed few commits before. This takes care of
|
|
||||||
callwrap.S. Reported by: Gary Lin.
|
|
||||||
|
|
||||||
References: bnc#841426
|
|
||||||
Patch-Mainline: yes
|
|
||||||
|
|
||||||
Signed-off-by: Gary Ching-Pang Lin <glin@suse.com>
|
|
||||||
---
|
|
||||||
grub-core/kern/x86_64/efi/callwrap.S | 52 ++++++++++++++++++------------------
|
|
||||||
1 file changed, 26 insertions(+), 26 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/grub-core/kern/x86_64/efi/callwrap.S b/grub-core/kern/x86_64/efi/callwrap.S
|
|
||||||
index 2df95dd..1337fd9 100644
|
|
||||||
--- a/grub-core/kern/x86_64/efi/callwrap.S
|
|
||||||
+++ b/grub-core/kern/x86_64/efi/callwrap.S
|
|
||||||
@@ -36,94 +36,94 @@
|
|
||||||
.text
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_0)
|
|
||||||
- subq $48, %rsp
|
|
||||||
+ subq $40, %rsp
|
|
||||||
call *%rdi
|
|
||||||
- addq $48, %rsp
|
|
||||||
+ addq $40, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_1)
|
|
||||||
- subq $48, %rsp
|
|
||||||
+ subq $40, %rsp
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $48, %rsp
|
|
||||||
+ addq $40, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_2)
|
|
||||||
- subq $48, %rsp
|
|
||||||
+ subq $40, %rsp
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $48, %rsp
|
|
||||||
+ addq $40, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_3)
|
|
||||||
- subq $48, %rsp
|
|
||||||
+ subq $40, %rsp
|
|
||||||
mov %rcx, %r8
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $48, %rsp
|
|
||||||
+ addq $40, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_4)
|
|
||||||
- subq $48, %rsp
|
|
||||||
+ subq $40, %rsp
|
|
||||||
mov %r8, %r9
|
|
||||||
mov %rcx, %r8
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $48, %rsp
|
|
||||||
+ addq $40, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_5)
|
|
||||||
- subq $48, %rsp
|
|
||||||
+ subq $40, %rsp
|
|
||||||
mov %r9, 32(%rsp)
|
|
||||||
mov %r8, %r9
|
|
||||||
mov %rcx, %r8
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $48, %rsp
|
|
||||||
+ addq $40, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_6)
|
|
||||||
- subq $64, %rsp
|
|
||||||
- mov 64+8(%rsp), %rax
|
|
||||||
+ subq $56, %rsp
|
|
||||||
+ mov 56+8(%rsp), %rax
|
|
||||||
mov %rax, 40(%rsp)
|
|
||||||
mov %r9, 32(%rsp)
|
|
||||||
mov %r8, %r9
|
|
||||||
mov %rcx, %r8
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $64, %rsp
|
|
||||||
+ addq $56, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_7)
|
|
||||||
- subq $96, %rsp
|
|
||||||
- mov 96+16(%rsp), %rax
|
|
||||||
+ subq $88, %rsp
|
|
||||||
+ mov 88+16(%rsp), %rax
|
|
||||||
mov %rax, 48(%rsp)
|
|
||||||
- mov 96+8(%rsp), %rax
|
|
||||||
+ mov 88+8(%rsp), %rax
|
|
||||||
mov %rax, 40(%rsp)
|
|
||||||
mov %r9, 32(%rsp)
|
|
||||||
mov %r8, %r9
|
|
||||||
mov %rcx, %r8
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $96, %rsp
|
|
||||||
+ addq $88, %rsp
|
|
||||||
ret
|
|
||||||
|
|
||||||
FUNCTION(efi_wrap_10)
|
|
||||||
- subq $96, %rsp
|
|
||||||
- mov 96+40(%rsp), %rax
|
|
||||||
+ subq $88, %rsp
|
|
||||||
+ mov 88+40(%rsp), %rax
|
|
||||||
mov %rax, 72(%rsp)
|
|
||||||
- mov 96+32(%rsp), %rax
|
|
||||||
+ mov 88+32(%rsp), %rax
|
|
||||||
mov %rax, 64(%rsp)
|
|
||||||
- mov 96+24(%rsp), %rax
|
|
||||||
+ mov 88+24(%rsp), %rax
|
|
||||||
mov %rax, 56(%rsp)
|
|
||||||
- mov 96+16(%rsp), %rax
|
|
||||||
+ mov 88+16(%rsp), %rax
|
|
||||||
mov %rax, 48(%rsp)
|
|
||||||
- mov 96+8(%rsp), %rax
|
|
||||||
+ mov 88+8(%rsp), %rax
|
|
||||||
mov %rax, 40(%rsp)
|
|
||||||
mov %r9, 32(%rsp)
|
|
||||||
mov %r8, %r9
|
|
||||||
mov %rcx, %r8
|
|
||||||
mov %rsi, %rcx
|
|
||||||
call *%rdi
|
|
||||||
- addq $96, %rsp
|
|
||||||
+ addq $88, %rsp
|
|
||||||
ret
|
|
||||||
--
|
|
||||||
1.8.1.4
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
|||||||
From 7960d3e1823bd3ea569109dcfe269447c3589fac Mon Sep 17 00:00:00 2001
|
|
||||||
From: Josh Triplett <josh@joshtriplett.org>
|
|
||||||
Date: Tue, 19 Nov 2013 14:31:40 +0100
|
|
||||||
Subject: * grub-core/kern/x86_64/efi/startup.S (_start): Align the
|
|
||||||
stack to a 16-byte boundary, as required by the x86-64 ABI, before calling
|
|
||||||
grub_main. In some cases, GCC emits code that assumes this alignment, which
|
|
||||||
crashes if not aligned. The EFI firmware is also entitled to assume that
|
|
||||||
stack alignment without checking.
|
|
||||||
|
|
||||||
References: bnc#841426
|
|
||||||
Patch-Mainline: yes
|
|
||||||
|
|
||||||
Signed-off-by: Gary Ching-Pang Lin <glin@suse.com>
|
|
||||||
---
|
|
||||||
grub-core/kern/x86_64/efi/startup.S | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/grub-core/kern/x86_64/efi/startup.S b/grub-core/kern/x86_64/efi/startup.S
|
|
||||||
index f86f019..9357e5c 100644
|
|
||||||
--- a/grub-core/kern/x86_64/efi/startup.S
|
|
||||||
+++ b/grub-core/kern/x86_64/efi/startup.S
|
|
||||||
@@ -30,6 +30,6 @@ _start:
|
|
||||||
movq %rcx, EXT_C(grub_efi_image_handle)(%rip)
|
|
||||||
movq %rdx, EXT_C(grub_efi_system_table)(%rip)
|
|
||||||
|
|
||||||
+ andq $~0xf, %rsp
|
|
||||||
call EXT_C(grub_main)
|
|
||||||
- ret
|
|
||||||
-
|
|
||||||
+ /* Doesn't return. */
|
|
||||||
--
|
|
||||||
1.8.1.4
|
|
||||||
|
|
@ -1,45 +0,0 @@
|
|||||||
From: Michael Chang <mchang@suse.com>
|
|
||||||
|
|
||||||
To be able to install grub on an extended partition, user, if they are
|
|
||||||
convinced it is a good idea, has to use --skip-fs-probe for grub-setup.
|
|
||||||
|
|
||||||
For convenience, let us support --skip-fs-probe directly in
|
|
||||||
grub-install and pass it to grub-setup internally.
|
|
||||||
|
|
||||||
Otherwise with such a setup:
|
|
||||||
Device Boot Start End Blocks Id System
|
|
||||||
/dev/sda1 2048 4208639 2103296 82 Linux swap / Solaris
|
|
||||||
/dev/sda2 * 4208640 213921791 104856576 f W95 Ext'd (LBA)
|
|
||||||
/dev/sda5 4210688 46153727 20971520 83 Linux
|
|
||||||
|
|
||||||
This fails:
|
|
||||||
$ grub2-install --force /dev/sda2
|
|
||||||
/usr/sbin/grub2-probe: error: cannot find a GRUB drive for /dev/sda2. Check your device.map.
|
|
||||||
|
|
||||||
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
|
|
||||||
References: https://bugzilla.novell.com/show_bug.cgi?id=750897
|
|
||||||
---
|
|
||||||
|
|
||||||
Index: grub-1.99/util/grub-install.in
|
|
||||||
===================================================================
|
|
||||||
--- grub-1.99.orig/util/grub-install.in
|
|
||||||
+++ grub-1.99/util/grub-install.in
|
|
||||||
@@ -248,6 +248,9 @@ do
|
|
||||||
-f | --force)
|
|
||||||
setup_force="--force" ;;
|
|
||||||
|
|
||||||
+ -s | --skip-fs-probe)
|
|
||||||
+ setup_skip_fs_probe="--skip-fs-probe" ;;
|
|
||||||
+
|
|
||||||
-*)
|
|
||||||
gettext_printf "Unrecognized option \`%s'\n" "$option" 1>&2
|
|
||||||
usage
|
|
||||||
@@ -581,7 +584,7 @@ fi
|
|
||||||
# Perform the grub_modinfo_platform-dependent install
|
|
||||||
if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = "i386-pc" ] || [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = "sparc64-ieee1275" ] ; then
|
|
||||||
# Now perform the installation.
|
|
||||||
- "$grub_setup" ${allow_floppy} ${setup_verbose} ${setup_force} --directory="${grubdir}/${grub_modinfo_target_cpu}-$grub_modinfo_platform" \
|
|
||||||
+ "$grub_setup" ${allow_floppy} ${setup_verbose} ${setup_force} ${setup_skip_fs_probe} --directory="${grubdir}/${grub_modinfo_target_cpu}-$grub_modinfo_platform" \
|
|
||||||
--device-map="${device_map}" "${install_device}" || exit 1
|
|
||||||
elif [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = "i386-ieee1275" ] || [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = "powerpc-ieee1275" ]; then
|
|
||||||
|
|
@ -8,7 +8,7 @@ Index: grub-2.00/util/grub.d/10_linux.in
|
|||||||
else
|
else
|
||||||
- OS="${GRUB_DISTRIBUTOR} GNU/Linux"
|
- OS="${GRUB_DISTRIBUTOR} GNU/Linux"
|
||||||
+ OS="${GRUB_DISTRIBUTOR}"
|
+ OS="${GRUB_DISTRIBUTOR}"
|
||||||
CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}"
|
CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -135,7 +135,7 @@ linux_entry ()
|
@@ -135,7 +135,7 @@ linux_entry ()
|
||||||
|
@ -15,11 +15,11 @@ on the script level and not use grub2-probe for above reasons.
|
|||||||
util/grub-mkconfig.in | 37 ++++++++++++++++++++++++++++++-------
|
util/grub-mkconfig.in | 37 ++++++++++++++++++++++++++++++-------
|
||||||
1 files changed, 30 insertions(+), 7 deletions(-)
|
1 files changed, 30 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in
|
Index: grub-2.02~beta2/util/grub-mkconfig.in
|
||||||
index ca62e9f..d789fcc 100644
|
===================================================================
|
||||||
--- a/util/grub-mkconfig.in
|
--- grub-2.02~beta2.orig/util/grub-mkconfig.in
|
||||||
+++ b/util/grub-mkconfig.in
|
+++ grub-2.02~beta2/util/grub-mkconfig.in
|
||||||
@@ -128,18 +128,41 @@ else
|
@@ -128,22 +128,42 @@ else
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -32,7 +32,10 @@ index ca62e9f..d789fcc 100644
|
|||||||
+ path=$5
|
+ path=$5
|
||||||
+ fstype=$8
|
+ fstype=$8
|
||||||
+ device=$9
|
+ device=$9
|
||||||
+
|
|
||||||
|
-# Device containing our /boot partition. Usually the same as GRUB_DEVICE.
|
||||||
|
-GRUB_DEVICE_BOOT="`${grub_probe} --target=device /boot`"
|
||||||
|
-GRUB_DEVICE_BOOT_UUID="`${grub_probe} --device ${GRUB_DEVICE_BOOT} --target=fs_uuid 2> /dev/null`" || true
|
||||||
+ if [ "x${path}" = "x/" ] &&
|
+ if [ "x${path}" = "x/" ] &&
|
||||||
+ [ "x${fstype}" = "xnfs" -o "x${fstype}" = "xnfs4" ] ; then
|
+ [ "x${fstype}" = "xnfs" -o "x${fstype}" = "xnfs4" ] ; then
|
||||||
+ echo "$device"
|
+ echo "$device"
|
||||||
@ -51,23 +54,22 @@ index ca62e9f..d789fcc 100644
|
|||||||
+ # Device containing our userland. Typically used for root= parameter.
|
+ # Device containing our userland. Typically used for root= parameter.
|
||||||
+ GRUB_DEVICE="`${grub_probe} --target=device /`"
|
+ GRUB_DEVICE="`${grub_probe} --target=device /`"
|
||||||
+ GRUB_DEVICE_UUID="`${grub_probe} --device ${GRUB_DEVICE} --target=fs_uuid 2> /dev/null`" || true
|
+ GRUB_DEVICE_UUID="`${grub_probe} --device ${GRUB_DEVICE} --target=fs_uuid 2> /dev/null`" || true
|
||||||
+
|
|
||||||
+ # Filesystem for the device containing our userland. Used for stuff like
|
|
||||||
+ # choosing Hurd filesystem module.
|
|
||||||
+ GRUB_FS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2> /dev/null || echo unknown`"
|
|
||||||
+fi
|
|
||||||
|
|
||||||
# Device containing our /boot partition. Usually the same as GRUB_DEVICE.
|
|
||||||
GRUB_DEVICE_BOOT="`${grub_probe} --target=device /boot`"
|
|
||||||
GRUB_DEVICE_BOOT_UUID="`${grub_probe} --device ${GRUB_DEVICE_BOOT} --target=fs_uuid 2> /dev/null`" || true
|
|
||||||
|
|
||||||
-# Filesystem for the device containing our userland. Used for stuff like
|
-# Filesystem for the device containing our userland. Used for stuff like
|
||||||
-# choosing Hurd filesystem module.
|
-# choosing Hurd filesystem module.
|
||||||
-GRUB_FS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2> /dev/null || echo unknown`"
|
-GRUB_FS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2> /dev/null || echo unknown`"
|
||||||
-
|
|
||||||
|
-if [ x"$GRUB_FS" = xunknown ]; then
|
||||||
|
- GRUB_FS="$(stat -f --printf=%T / || echo unknown)"
|
||||||
|
+ if [ x"$GRUB_FS" = x ] || [ x"$GRUB_FS" = xunknown ]; then
|
||||||
|
+ GRUB_FS="$(stat -f --printf=%T / || echo unknown)"
|
||||||
|
+ fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
+# Device containing our /boot partition. Usually the same as GRUB_DEVICE.
|
||||||
|
+GRUB_DEVICE_BOOT="`${grub_probe} --target=device /boot`"
|
||||||
|
+GRUB_DEVICE_BOOT_UUID="`${grub_probe} --device ${GRUB_DEVICE_BOOT} --target=fs_uuid 2> /dev/null`" || true
|
||||||
|
+
|
||||||
if test -f ${sysconfdir}/default/grub ; then
|
if test -f ${sysconfdir}/default/grub ; then
|
||||||
. ${sysconfdir}/default/grub
|
. ${sysconfdir}/default/grub
|
||||||
fi
|
fi
|
||||||
--
|
|
||||||
1.7.3.4
|
|
||||||
|
|
||||||
|
@ -15,11 +15,11 @@ Signed-off-by: Michael Chang <mchang@suse.com>
|
|||||||
5 files changed, 415 insertions(+), 0 deletions(-)
|
5 files changed, 415 insertions(+), 0 deletions(-)
|
||||||
create mode 100644 grub-core/loader/i386/efi/linux.c
|
create mode 100644 grub-core/loader/i386/efi/linux.c
|
||||||
|
|
||||||
Index: grub-2.00/grub-core/Makefile.core.def
|
Index: grub-2.02~beta1/grub-core/Makefile.core.def
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/grub-core/Makefile.core.def
|
--- grub-2.02~beta1.orig/grub-core/Makefile.core.def
|
||||||
+++ grub-2.00/grub-core/Makefile.core.def
|
+++ grub-2.02~beta1/grub-core/Makefile.core.def
|
||||||
@@ -1453,6 +1453,14 @@ module = {
|
@@ -1705,6 +1705,14 @@ module = {
|
||||||
};
|
};
|
||||||
|
|
||||||
module = {
|
module = {
|
||||||
@ -34,11 +34,11 @@ Index: grub-2.00/grub-core/Makefile.core.def
|
|||||||
name = chain;
|
name = chain;
|
||||||
efi = loader/efi/chainloader.c;
|
efi = loader/efi/chainloader.c;
|
||||||
i386_pc = loader/i386/pc/chainloader.c;
|
i386_pc = loader/i386/pc/chainloader.c;
|
||||||
Index: grub-2.00/grub-core/kern/efi/mm.c
|
Index: grub-2.02~beta1/grub-core/kern/efi/mm.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/grub-core/kern/efi/mm.c
|
--- grub-2.02~beta1.orig/grub-core/kern/efi/mm.c
|
||||||
+++ grub-2.00/grub-core/kern/efi/mm.c
|
+++ grub-2.02~beta1/grub-core/kern/efi/mm.c
|
||||||
@@ -47,6 +47,38 @@ static grub_efi_uintn_t finish_desc_size
|
@@ -49,6 +49,38 @@ static grub_efi_uintn_t finish_desc_size
|
||||||
static grub_efi_uint32_t finish_desc_version;
|
static grub_efi_uint32_t finish_desc_version;
|
||||||
int grub_efi_is_finished = 0;
|
int grub_efi_is_finished = 0;
|
||||||
|
|
||||||
@ -77,10 +77,10 @@ Index: grub-2.00/grub-core/kern/efi/mm.c
|
|||||||
/* Allocate pages. Return the pointer to the first of allocated pages. */
|
/* Allocate pages. Return the pointer to the first of allocated pages. */
|
||||||
void *
|
void *
|
||||||
grub_efi_allocate_pages (grub_efi_physical_address_t address,
|
grub_efi_allocate_pages (grub_efi_physical_address_t address,
|
||||||
Index: grub-2.00/grub-core/loader/i386/efi/linux.c
|
Index: grub-2.02~beta1/grub-core/loader/i386/efi/linux.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ grub-2.00/grub-core/loader/i386/efi/linux.c
|
+++ grub-2.02~beta1/grub-core/loader/i386/efi/linux.c
|
||||||
@@ -0,0 +1,371 @@
|
@@ -0,0 +1,371 @@
|
||||||
+/*
|
+/*
|
||||||
+ * GRUB -- GRand Unified Bootloader
|
+ * GRUB -- GRand Unified Bootloader
|
||||||
@ -453,10 +453,10 @@ Index: grub-2.00/grub-core/loader/i386/efi/linux.c
|
|||||||
+ grub_unregister_command (cmd_linux);
|
+ grub_unregister_command (cmd_linux);
|
||||||
+ grub_unregister_command (cmd_initrd);
|
+ grub_unregister_command (cmd_initrd);
|
||||||
+}
|
+}
|
||||||
Index: grub-2.00/include/grub/efi/efi.h
|
Index: grub-2.02~beta1/include/grub/efi/efi.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/include/grub/efi/efi.h
|
--- grub-2.02~beta1.orig/include/grub/efi/efi.h
|
||||||
+++ grub-2.00/include/grub/efi/efi.h
|
+++ grub-2.02~beta1/include/grub/efi/efi.h
|
||||||
@@ -40,6 +40,9 @@ void EXPORT_FUNC(grub_efi_stall) (grub_e
|
@@ -40,6 +40,9 @@ void EXPORT_FUNC(grub_efi_stall) (grub_e
|
||||||
void *
|
void *
|
||||||
EXPORT_FUNC(grub_efi_allocate_pages) (grub_efi_physical_address_t address,
|
EXPORT_FUNC(grub_efi_allocate_pages) (grub_efi_physical_address_t address,
|
||||||
@ -467,15 +467,15 @@ Index: grub-2.00/include/grub/efi/efi.h
|
|||||||
void EXPORT_FUNC(grub_efi_free_pages) (grub_efi_physical_address_t address,
|
void EXPORT_FUNC(grub_efi_free_pages) (grub_efi_physical_address_t address,
|
||||||
grub_efi_uintn_t pages);
|
grub_efi_uintn_t pages);
|
||||||
int
|
int
|
||||||
Index: grub-2.00/include/grub/i386/linux.h
|
Index: grub-2.02~beta1/include/grub/i386/linux.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/include/grub/i386/linux.h
|
--- grub-2.02~beta1.orig/include/grub/i386/linux.h
|
||||||
+++ grub-2.00/include/grub/i386/linux.h
|
+++ grub-2.02~beta1/include/grub/i386/linux.h
|
||||||
@@ -139,6 +139,7 @@ struct linux_kernel_header
|
@@ -139,6 +139,7 @@ struct linux_kernel_header
|
||||||
grub_uint64_t setup_data;
|
grub_uint64_t setup_data;
|
||||||
grub_uint64_t pref_address;
|
grub_uint64_t pref_address;
|
||||||
grub_uint32_t init_size;
|
grub_uint32_t init_size;
|
||||||
+ grub_uint32_t handover_offset;
|
+ grub_uint32_t handover_offset;
|
||||||
} __attribute__ ((packed));
|
} GRUB_PACKED;
|
||||||
|
|
||||||
/* Boot parameters for Linux based on 2.6.12. This is used by the setup
|
/* Boot parameters for Linux based on 2.6.12. This is used by the setup
|
||||||
|
@ -13,12 +13,12 @@ Signed-off-by: Michael Chang <mchang@suse.com>
|
|||||||
include/grub/efi/efi.h | 1 +
|
include/grub/efi/efi.h | 1 +
|
||||||
3 files changed, 46 insertions(+)
|
3 files changed, 46 insertions(+)
|
||||||
|
|
||||||
Index: grub-2.00/grub-core/kern/dl.c
|
Index: grub-2.02~beta2/grub-core/kern/dl.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/grub-core/kern/dl.c
|
--- grub-2.02~beta2.orig/grub-core/kern/dl.c
|
||||||
+++ grub-2.00/grub-core/kern/dl.c
|
+++ grub-2.02~beta2/grub-core/kern/dl.c
|
||||||
@@ -42,6 +42,10 @@
|
@@ -38,6 +38,10 @@
|
||||||
#include <sys/mman.h>
|
#define GRUB_MODULES_MACHINE_READONLY
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
+#ifdef GRUB_MACHINE_EFI
|
+#ifdef GRUB_MACHINE_EFI
|
||||||
@ -28,9 +28,9 @@ Index: grub-2.00/grub-core/kern/dl.c
|
|||||||
|
|
||||||
|
|
||||||
#pragma GCC diagnostic ignored "-Wcast-align"
|
#pragma GCC diagnostic ignored "-Wcast-align"
|
||||||
@@ -665,6 +669,19 @@ grub_dl_load_file (const char *filename)
|
@@ -682,6 +686,19 @@ grub_dl_load_file (const char *filename)
|
||||||
void *core = 0;
|
|
||||||
grub_dl_t mod = 0;
|
grub_boot_time ("Loading module %s", filename);
|
||||||
|
|
||||||
+#ifdef GRUB_MACHINE_EFI
|
+#ifdef GRUB_MACHINE_EFI
|
||||||
+ if (grub_efi_secure_boot ())
|
+ if (grub_efi_secure_boot ())
|
||||||
@ -48,10 +48,10 @@ Index: grub-2.00/grub-core/kern/dl.c
|
|||||||
file = grub_file_open (filename);
|
file = grub_file_open (filename);
|
||||||
if (! file)
|
if (! file)
|
||||||
return 0;
|
return 0;
|
||||||
Index: grub-2.00/grub-core/kern/efi/efi.c
|
Index: grub-2.02~beta2/grub-core/kern/efi/efi.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/grub-core/kern/efi/efi.c
|
--- grub-2.02~beta2.orig/grub-core/kern/efi/efi.c
|
||||||
+++ grub-2.00/grub-core/kern/efi/efi.c
|
+++ grub-2.02~beta2/grub-core/kern/efi/efi.c
|
||||||
@@ -259,6 +259,34 @@ grub_efi_get_variable (const char *var,
|
@@ -259,6 +259,34 @@ grub_efi_get_variable (const char *var,
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -87,10 +87,10 @@ Index: grub-2.00/grub-core/kern/efi/efi.c
|
|||||||
#pragma GCC diagnostic ignored "-Wcast-align"
|
#pragma GCC diagnostic ignored "-Wcast-align"
|
||||||
|
|
||||||
/* Search the mods section from the PE32/PE32+ image. This code uses
|
/* Search the mods section from the PE32/PE32+ image. This code uses
|
||||||
Index: grub-2.00/include/grub/efi/efi.h
|
Index: grub-2.02~beta2/include/grub/efi/efi.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/include/grub/efi/efi.h
|
--- grub-2.02~beta2.orig/include/grub/efi/efi.h
|
||||||
+++ grub-2.00/include/grub/efi/efi.h
|
+++ grub-2.02~beta2/include/grub/efi/efi.h
|
||||||
@@ -72,6 +72,7 @@ EXPORT_FUNC (grub_efi_set_variable) (con
|
@@ -72,6 +72,7 @@ EXPORT_FUNC (grub_efi_set_variable) (con
|
||||||
const grub_efi_guid_t *guid,
|
const grub_efi_guid_t *guid,
|
||||||
void *data,
|
void *data,
|
||||||
|
@ -25,24 +25,24 @@ has shim exported protocols available.
|
|||||||
util/grub.d/10_linux.in | 4 ++--
|
util/grub.d/10_linux.in | 4 ++--
|
||||||
2 files changed, 4 insertions(+), 3 deletions(-)
|
2 files changed, 4 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in
|
Index: grub-2.00/util/grub-mkconfig.in
|
||||||
index d789fcc..6555944 100644
|
===================================================================
|
||||||
--- a/util/grub-mkconfig.in
|
--- grub-2.00.orig/util/grub-mkconfig.in
|
||||||
+++ b/util/grub-mkconfig.in
|
+++ grub-2.00/util/grub-mkconfig.in
|
||||||
@@ -244,7 +244,8 @@ export GRUB_DEFAULT \
|
@@ -245,7 +245,8 @@ export GRUB_DEFAULT \
|
||||||
GRUB_SAVEDEFAULT \
|
|
||||||
GRUB_ENABLE_CRYPTODISK \
|
|
||||||
GRUB_BADRAM \
|
GRUB_BADRAM \
|
||||||
|
GRUB_OS_PROBER_SKIP_LIST \
|
||||||
|
GRUB_DISABLE_SUBMENU \
|
||||||
- GRUB_CMDLINE_LINUX_RECOVERY
|
- GRUB_CMDLINE_LINUX_RECOVERY
|
||||||
+ GRUB_CMDLINE_LINUX_RECOVERY \
|
+ GRUB_CMDLINE_LINUX_RECOVERY \
|
||||||
+ GRUB_USE_LINUXEFI
|
+ GRUB_USE_LINUXEFI
|
||||||
|
|
||||||
if test "x${grub_cfg}" != "x"; then
|
if test "x${grub_cfg}" != "x"; then
|
||||||
rm -f "${grub_cfg}.new"
|
rm -f "${grub_cfg}.new"
|
||||||
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
|
Index: grub-2.00/util/grub.d/10_linux.in
|
||||||
index 807a0db..b2f65c0 100644
|
===================================================================
|
||||||
--- a/util/grub.d/10_linux.in
|
--- grub-2.00.orig/util/grub.d/10_linux.in
|
||||||
+++ b/util/grub.d/10_linux.in
|
+++ grub-2.00/util/grub.d/10_linux.in
|
||||||
@@ -133,7 +133,7 @@ linux_entry ()
|
@@ -133,7 +133,7 @@ linux_entry ()
|
||||||
printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/"
|
printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/"
|
||||||
fi
|
fi
|
||||||
@ -61,6 +61,3 @@ index 807a0db..b2f65c0 100644
|
|||||||
sed "s/^/$submenu_indentation/" << EOF
|
sed "s/^/$submenu_indentation/" << EOF
|
||||||
echo '$message'
|
echo '$message'
|
||||||
initrdefi ${rel_dirname}/${initrd}
|
initrdefi ${rel_dirname}/${initrd}
|
||||||
--
|
|
||||||
1.7.3.4
|
|
||||||
|
|
||||||
|
@ -1,3 +1,44 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Dec 27 16:36:40 UTC 2013 - arvidjaar@gmail.com
|
||||||
|
|
||||||
|
- update to grub-2.02 beta2
|
||||||
|
* drop upstream patches
|
||||||
|
- grub2-fix-unquoted-string-in-class.patch (different)
|
||||||
|
- grub2-cdpath.patch (modified)
|
||||||
|
- grub2-fix-parsing-of-short-LVM-PV-names.patch
|
||||||
|
- grub2-fix-descriptor-leak-in-grub_util_is_imsm.patch
|
||||||
|
- grub2-install-opt-skip-fs-probe.patch (file it patched no more exists,
|
||||||
|
functionality included upstream)
|
||||||
|
- grub2-fix-x86_64-efi-startup-stack-alignment.patch
|
||||||
|
- grub2-fix-x86_64-efi-callwrap-stack-alignment.patch
|
||||||
|
- 0001-Fix-build-with-FreeType-2.5.1.patch
|
||||||
|
* rediff
|
||||||
|
- grub2-linux.patch
|
||||||
|
- use-grub2-as-a-package-name.patch (do not patch generated configure)
|
||||||
|
- grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch
|
||||||
|
- grub2-fix-locale-en.mo.gz-not-found-error-message.patch (upstream added
|
||||||
|
explicit exclusion for en_* language only; I do not see reason to stop
|
||||||
|
with error in this case for any language).
|
||||||
|
- not-display-menu-when-boot-once.patch
|
||||||
|
- grub2-secureboot-provide-linuxefi-config.patch
|
||||||
|
- grub2-pass-corret-root-for-nfsroot.patch
|
||||||
|
- 0002-btrfs-add-ability-to-boot-from-subvolumes.patch
|
||||||
|
- grub2-fix-menu-in-xen-host-server.patch
|
||||||
|
- grub2-fix-Grub2-with-SUSE-Xen-package-install.patch
|
||||||
|
- grub2-secureboot-add-linuxefi.patch
|
||||||
|
- grub2-secureboot-no-insmod-on-sb.patch
|
||||||
|
- rename-grub-info-file-to-grub2.patch
|
||||||
|
* drop Makefile.util.am and Makefile.core.am, they are now generated
|
||||||
|
during build
|
||||||
|
* call ./autogen.sh again now when it does not need autogen anymore; drop
|
||||||
|
autoreconf call, it is called by autogen.sh
|
||||||
|
* drop 0001-btrfs-rename-skip_default-to-follow_default.patch - is not
|
||||||
|
needed anymore due to upstream changes
|
||||||
|
* package /usr/bin/grub2-file, /usr/bin/grub2-syslinux2cfg and
|
||||||
|
/usr/sbin/grub2-macbless
|
||||||
|
* use grub-install --no-bootsector instead of --grub-setup=/bin/true
|
||||||
|
in postinstall script
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Dec 17 07:20:33 UTC 2013 - mchang@suse.com
|
Tue Dec 17 07:20:33 UTC 2013 - mchang@suse.com
|
||||||
|
|
||||||
|
35
grub2.spec
35
grub2.spec
@ -86,7 +86,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
%define only_x86_64 %{nil}
|
%define only_x86_64 %{nil}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Version: 2.00
|
Version: 2.02~beta2
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Bootloader with support for Linux, Multiboot and more
|
Summary: Bootloader with support for Linux, Multiboot and more
|
||||||
License: GPL-3.0+
|
License: GPL-3.0+
|
||||||
@ -102,8 +102,6 @@ Source4: grub2.rpmlintrc
|
|||||||
Source5: translations-20130626.tar.xz
|
Source5: translations-20130626.tar.xz
|
||||||
Source6: grub2-once
|
Source6: grub2-once
|
||||||
Source7: 20_memtest86+
|
Source7: 20_memtest86+
|
||||||
Source8: Makefile.util.am
|
|
||||||
Source9: Makefile.core.am
|
|
||||||
Source10: openSUSE-UEFI-CA-Certificate.crt
|
Source10: openSUSE-UEFI-CA-Certificate.crt
|
||||||
Source11: SLES-UEFI-CA-Certificate.crt
|
Source11: SLES-UEFI-CA-Certificate.crt
|
||||||
Source1000: PATCH_POLICY
|
Source1000: PATCH_POLICY
|
||||||
@ -111,7 +109,6 @@ Patch1: rename-grub-info-file-to-grub2.patch
|
|||||||
Patch2: grub2-linux.patch
|
Patch2: grub2-linux.patch
|
||||||
Patch3: use-grub2-as-a-package-name.patch
|
Patch3: use-grub2-as-a-package-name.patch
|
||||||
Patch6: grub2-iterate-and-hook-for-extended-partition.patch
|
Patch6: grub2-iterate-and-hook-for-extended-partition.patch
|
||||||
Patch7: grub2-install-opt-skip-fs-probe.patch
|
|
||||||
Patch8: grub2-ppc-terminfo.patch
|
Patch8: grub2-ppc-terminfo.patch
|
||||||
Patch9: grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch
|
Patch9: grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch
|
||||||
Patch10: grub2-fix-error-terminal-gfxterm-isn-t-found.patch
|
Patch10: grub2-fix-error-terminal-gfxterm-isn-t-found.patch
|
||||||
@ -125,18 +122,10 @@ Patch21: grub2-secureboot-add-linuxefi.patch
|
|||||||
Patch22: grub2-secureboot-use-linuxefi-on-uefi.patch
|
Patch22: grub2-secureboot-use-linuxefi-on-uefi.patch
|
||||||
Patch23: grub2-secureboot-no-insmod-on-sb.patch
|
Patch23: grub2-secureboot-no-insmod-on-sb.patch
|
||||||
Patch24: grub2-secureboot-provide-linuxefi-config.patch
|
Patch24: grub2-secureboot-provide-linuxefi-config.patch
|
||||||
Patch28: grub2-fix-unquoted-string-in-class.patch
|
|
||||||
Patch29: grub2-secureboot-chainloader.patch
|
Patch29: grub2-secureboot-chainloader.patch
|
||||||
Patch30: grub2-cdpath.patch
|
|
||||||
Patch34: grub2-secureboot-use-linuxefi-on-uefi-in-os-prober.patch
|
Patch34: grub2-secureboot-use-linuxefi-on-uefi-in-os-prober.patch
|
||||||
Patch35: grub2-linguas.sh-no-rsync.patch
|
Patch35: grub2-linguas.sh-no-rsync.patch
|
||||||
Patch36: grub2-fix-parsing-of-short-LVM-PV-names.patch
|
|
||||||
Patch37: grub2-fix-descriptor-leak-in-grub_util_is_imsm.patch
|
|
||||||
Patch38: grub2-fix-x86_64-efi-startup-stack-alignment.patch
|
|
||||||
Patch39: grub2-fix-x86_64-efi-callwrap-stack-alignment.patch
|
|
||||||
Patch40: 0001-Fix-build-with-FreeType-2.5.1.patch
|
|
||||||
# Btrfs snapshot booting related patches
|
# Btrfs snapshot booting related patches
|
||||||
Patch100: 0001-btrfs-rename-skip_default-to-follow_default.patch
|
|
||||||
Patch101: 0002-btrfs-add-ability-to-boot-from-subvolumes.patch
|
Patch101: 0002-btrfs-add-ability-to-boot-from-subvolumes.patch
|
||||||
Patch102: 0003-cmdline-add-envvar-loader_cmdline_append.patch
|
Patch102: 0003-cmdline-add-envvar-loader_cmdline_append.patch
|
||||||
Patch103: 0004-btrfs-export-subvolume-envvars.patch
|
Patch103: 0004-btrfs-export-subvolume-envvars.patch
|
||||||
@ -231,7 +220,6 @@ mv po/grub.pot po/%{name}.pot
|
|||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%patch3 -p1
|
%patch3 -p1
|
||||||
%patch6 -p1
|
%patch6 -p1
|
||||||
%patch7 -p1
|
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
%patch9 -p1
|
%patch9 -p1
|
||||||
%patch10 -p1
|
%patch10 -p1
|
||||||
@ -249,17 +237,9 @@ mv po/grub.pot po/%{name}.pot
|
|||||||
%patch22 -p1
|
%patch22 -p1
|
||||||
%patch23 -p1
|
%patch23 -p1
|
||||||
%patch24 -p1
|
%patch24 -p1
|
||||||
%patch28 -p1
|
|
||||||
%patch29 -p1
|
%patch29 -p1
|
||||||
%patch30 -p1
|
|
||||||
%patch34 -p1
|
%patch34 -p1
|
||||||
%patch35 -p1
|
%patch35 -p1
|
||||||
%patch36 -p1
|
|
||||||
%patch37 -p1
|
|
||||||
%patch38 -p1
|
|
||||||
%patch39 -p1
|
|
||||||
%patch40 -p1
|
|
||||||
%patch100 -p1
|
|
||||||
%patch101 -p1
|
%patch101 -p1
|
||||||
%patch102 -p1
|
%patch102 -p1
|
||||||
%patch103 -p1
|
%patch103 -p1
|
||||||
@ -271,15 +251,14 @@ rm -f po/stamp-po
|
|||||||
|
|
||||||
# README.openSUSE
|
# README.openSUSE
|
||||||
cp %{SOURCE3} .
|
cp %{SOURCE3} .
|
||||||
cp %{SOURCE8} .
|
|
||||||
cp %{SOURCE9} grub-core/.
|
|
||||||
mkdir build
|
mkdir build
|
||||||
%ifarch %{efi}
|
%ifarch %{efi}
|
||||||
mkdir build-efi
|
mkdir build-efi
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
autoreconf -vi
|
# autogen calls autoreconf -vi
|
||||||
|
./autogen.sh
|
||||||
# Not yet:
|
# Not yet:
|
||||||
%define common_conf_options TARGET_LDFLAGS=-static --program-transform-name=s,grub,%{name},
|
%define common_conf_options TARGET_LDFLAGS=-static --program-transform-name=s,grub,%{name},
|
||||||
# This does NOT work on SLE11:
|
# This does NOT work on SLE11:
|
||||||
@ -470,7 +449,7 @@ if [ "x${LOADER_TYPE}" = "xgrub" ]; then
|
|||||||
# Determine the partition with /boot
|
# Determine the partition with /boot
|
||||||
BOOT_PARTITION=$(df -h /boot |(read; awk '{print $1; exit}'))
|
BOOT_PARTITION=$(df -h /boot |(read; awk '{print $1; exit}'))
|
||||||
# Generate core.img, but don't let it be installed in boot sector
|
# Generate core.img, but don't let it be installed in boot sector
|
||||||
%{name}-install --grub-setup=/bin/true $BOOT_PARTITION || true
|
%{name}-install --no-bootsector $BOOT_PARTITION || true
|
||||||
# Create a working grub2 config, otherwise that entry is un-bootable
|
# Create a working grub2 config, otherwise that entry is un-bootable
|
||||||
/usr/sbin/grub2-mkconfig -o /boot/%{name}/grub.cfg
|
/usr/sbin/grub2-mkconfig -o /boot/%{name}/grub.cfg
|
||||||
fi
|
fi
|
||||||
@ -576,6 +555,7 @@ fi
|
|||||||
%config %{_sysconfdir}/grub.d/??_*
|
%config %{_sysconfdir}/grub.d/??_*
|
||||||
%{_sbindir}/%{name}-bios-setup
|
%{_sbindir}/%{name}-bios-setup
|
||||||
%{_sbindir}/%{name}-install
|
%{_sbindir}/%{name}-install
|
||||||
|
%{_sbindir}/%{name}-macbless
|
||||||
%{_sbindir}/%{name}-mkconfig
|
%{_sbindir}/%{name}-mkconfig
|
||||||
%{_sbindir}/%{name}-once
|
%{_sbindir}/%{name}-once
|
||||||
%{_sbindir}/%{name}-ofpathname
|
%{_sbindir}/%{name}-ofpathname
|
||||||
@ -584,6 +564,7 @@ fi
|
|||||||
%{_sbindir}/%{name}-set-default
|
%{_sbindir}/%{name}-set-default
|
||||||
%{_sbindir}/%{name}-sparc64-setup
|
%{_sbindir}/%{name}-sparc64-setup
|
||||||
%{_bindir}/%{name}-editenv
|
%{_bindir}/%{name}-editenv
|
||||||
|
%{_bindir}/%{name}-file
|
||||||
%{_bindir}/%{name}-fstest
|
%{_bindir}/%{name}-fstest
|
||||||
%{_bindir}/%{name}-glue-efi
|
%{_bindir}/%{name}-glue-efi
|
||||||
%{_bindir}/%{name}-kbdcomp
|
%{_bindir}/%{name}-kbdcomp
|
||||||
@ -599,6 +580,7 @@ fi
|
|||||||
%{_bindir}/%{name}-mount
|
%{_bindir}/%{name}-mount
|
||||||
%{_bindir}/%{name}-render-label
|
%{_bindir}/%{name}-render-label
|
||||||
%{_bindir}/%{name}-script-check
|
%{_bindir}/%{name}-script-check
|
||||||
|
%{_bindir}/%{name}-syslinux2cfg
|
||||||
%dir %{_libdir}/%{name}
|
%dir %{_libdir}/%{name}
|
||||||
%dir %{_datadir}/%{name}
|
%dir %{_datadir}/%{name}
|
||||||
%if 0%{?suse_version} >= 1140
|
%if 0%{?suse_version} >= 1140
|
||||||
@ -608,9 +590,11 @@ fi
|
|||||||
%{_infodir}/grub-dev.info*
|
%{_infodir}/grub-dev.info*
|
||||||
%{_infodir}/%{name}.info*
|
%{_infodir}/%{name}.info*
|
||||||
%{_mandir}/man1/%{name}-editenv.1.*
|
%{_mandir}/man1/%{name}-editenv.1.*
|
||||||
|
%{_mandir}/man1/%{name}-file.1.*
|
||||||
%{_mandir}/man1/%{name}-fstest.1.*
|
%{_mandir}/man1/%{name}-fstest.1.*
|
||||||
%{_mandir}/man1/%{name}-glue-efi.1.*
|
%{_mandir}/man1/%{name}-glue-efi.1.*
|
||||||
%{_mandir}/man1/%{name}-kbdcomp.1.*
|
%{_mandir}/man1/%{name}-kbdcomp.1.*
|
||||||
|
%{_mandir}/man1/%{name}-macbless.1.*
|
||||||
%{_mandir}/man1/%{name}-menulst2cfg.1.*
|
%{_mandir}/man1/%{name}-menulst2cfg.1.*
|
||||||
%{_mandir}/man1/%{name}-mkfont.1.*
|
%{_mandir}/man1/%{name}-mkfont.1.*
|
||||||
%{_mandir}/man1/%{name}-mkimage.1.*
|
%{_mandir}/man1/%{name}-mkimage.1.*
|
||||||
@ -623,6 +607,7 @@ fi
|
|||||||
%{_mandir}/man1/%{name}-mount.1.*
|
%{_mandir}/man1/%{name}-mount.1.*
|
||||||
%{_mandir}/man1/%{name}-render-label.1.*
|
%{_mandir}/man1/%{name}-render-label.1.*
|
||||||
%{_mandir}/man1/%{name}-script-check.1.*
|
%{_mandir}/man1/%{name}-script-check.1.*
|
||||||
|
%{_mandir}/man1/%{name}-syslinux2cfg.1.*
|
||||||
%{_mandir}/man8/%{name}-bios-setup.8.*
|
%{_mandir}/man8/%{name}-bios-setup.8.*
|
||||||
%{_mandir}/man8/%{name}-install.8.*
|
%{_mandir}/man8/%{name}-install.8.*
|
||||||
%{_mandir}/man8/%{name}-mkconfig.8.*
|
%{_mandir}/man8/%{name}-mkconfig.8.*
|
||||||
|
@ -14,32 +14,18 @@ user to make decision when decision has been made.
|
|||||||
util/grub.d/00_header.in | 10 ++++++++--
|
util/grub.d/00_header.in | 10 ++++++++--
|
||||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in
|
Index: grub-2.02~beta2/util/grub.d/00_header.in
|
||||||
index f495f85..d1c7916 100644
|
===================================================================
|
||||||
--- a/util/grub.d/00_header.in
|
--- grub-2.02~beta2.orig/util/grub.d/00_header.in
|
||||||
+++ b/util/grub.d/00_header.in
|
+++ grub-2.02~beta2/util/grub.d/00_header.in
|
||||||
@@ -280,13 +280,19 @@ make_timeout ()
|
@@ -304,7 +304,9 @@ make_timeout ()
|
||||||
verbose=" --verbose"
|
style="menu"
|
||||||
fi
|
fi
|
||||||
cat << EOF
|
cat << EOF
|
||||||
-if sleep$verbose --interruptible ${1} ; then
|
-if [ x\$feature_timeout_style = xy ] ; then
|
||||||
+if [ x\${boot_once} = xtrue ]; then
|
+if [ x\${boot_once} = xtrue ]; then
|
||||||
+ set timeout=0
|
+ set timeout=0
|
||||||
+elif sleep$verbose --interruptible ${1} ; then
|
+elif [ x\$feature_timeout_style = xy ] ; then
|
||||||
set timeout=${2}
|
set timeout_style=${style}
|
||||||
fi
|
set timeout=${timeout}
|
||||||
EOF
|
EOF
|
||||||
else
|
|
||||||
cat << EOF
|
|
||||||
-set timeout=${2}
|
|
||||||
+if [ x\${boot_once} = xtrue ]; then
|
|
||||||
+ set timeout=0
|
|
||||||
+else
|
|
||||||
+ set timeout=${2}
|
|
||||||
+fi
|
|
||||||
EOF
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
--
|
|
||||||
1.7.10.4
|
|
||||||
|
|
||||||
|
@ -12,10 +12,10 @@ files - Makefile.core.am and Makefile.util.am - it may be necessary to
|
|||||||
manually rename it.
|
manually rename it.
|
||||||
---
|
---
|
||||||
|
|
||||||
Index: grub-2.00/docs/Makefile.am
|
Index: grub-2.02~beta1/docs/Makefile.am
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/docs/Makefile.am
|
--- grub-2.02~beta1.orig/docs/Makefile.am
|
||||||
+++ grub-2.00/docs/Makefile.am
|
+++ grub-2.02~beta1/docs/Makefile.am
|
||||||
@@ -1,7 +1,7 @@
|
@@ -1,7 +1,7 @@
|
||||||
AUTOMAKE_OPTIONS = subdir-objects
|
AUTOMAKE_OPTIONS = subdir-objects
|
||||||
|
|
||||||
@ -25,23 +25,23 @@ Index: grub-2.00/docs/Makefile.am
|
|||||||
grub_TEXINFOS = fdl.texi
|
grub_TEXINFOS = fdl.texi
|
||||||
|
|
||||||
EXTRA_DIST = font_char_metrics.png font_char_metrics.txt
|
EXTRA_DIST = font_char_metrics.png font_char_metrics.txt
|
||||||
Index: grub-2.00/docs/Makefile.in
|
Index: grub-2.02~beta1/docs/Makefile.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/docs/Makefile.in
|
--- grub-2.02~beta1.orig/docs/Makefile.in
|
||||||
+++ grub-2.00/docs/Makefile.in
|
+++ grub-2.02~beta1/docs/Makefile.in
|
||||||
@@ -51,7 +51,7 @@ build_triplet = @build@
|
@@ -79,7 +79,7 @@ host_triplet = @host@
|
||||||
host_triplet = @host@
|
|
||||||
target_triplet = @target@
|
target_triplet = @target@
|
||||||
subdir = docs
|
subdir = docs
|
||||||
-DIST_COMMON = $(grub_TEXINFOS) $(srcdir)/Makefile.am \
|
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
|
||||||
+DIST_COMMON = $(srcdir)/Makefile.am \
|
- $(grub_TEXINFOS) $(top_srcdir)/build-aux/mdate-sh \
|
||||||
$(srcdir)/Makefile.in $(srcdir)/stamp-1 $(srcdir)/stamp-vti \
|
+ $(top_srcdir)/build-aux/mdate-sh \
|
||||||
$(srcdir)/version-dev.texi $(srcdir)/version.texi \
|
$(srcdir)/version.texi $(srcdir)/stamp-vti \
|
||||||
$(top_srcdir)/build-aux/mdate-sh \
|
$(srcdir)/version-dev.texi $(srcdir)/stamp-1 \
|
||||||
@@ -108,14 +108,14 @@ CONFIG_CLEAN_FILES =
|
$(top_srcdir)/build-aux/texinfo.tex mdate-sh texinfo.tex
|
||||||
CONFIG_CLEAN_VPATH_FILES =
|
@@ -184,14 +184,14 @@ AM_V_texidevnull = $(am__v_texidevnull_@
|
||||||
SOURCES =
|
am__v_texidevnull_ = $(am__v_texidevnull_@AM_DEFAULT_V@)
|
||||||
DIST_SOURCES =
|
am__v_texidevnull_0 = > /dev/null
|
||||||
|
am__v_texidevnull_1 =
|
||||||
-INFO_DEPS = $(srcdir)/grub.info $(srcdir)/grub-dev.info
|
-INFO_DEPS = $(srcdir)/grub.info $(srcdir)/grub-dev.info
|
||||||
+INFO_DEPS = $(srcdir)/grub2.info $(srcdir)/grub-dev.info
|
+INFO_DEPS = $(srcdir)/grub2.info $(srcdir)/grub-dev.info
|
||||||
TEXINFO_TEX = $(top_srcdir)/build-aux/texinfo.tex
|
TEXINFO_TEX = $(top_srcdir)/build-aux/texinfo.tex
|
||||||
@ -59,7 +59,7 @@ Index: grub-2.00/docs/Makefile.in
|
|||||||
TEXI2DVI = texi2dvi
|
TEXI2DVI = texi2dvi
|
||||||
TEXI2PDF = $(TEXI2DVI) --pdf --batch
|
TEXI2PDF = $(TEXI2DVI) --pdf --batch
|
||||||
MAKEINFOHTML = $(MAKEINFO) --html
|
MAKEINFOHTML = $(MAKEINFO) --html
|
||||||
@@ -810,7 +810,7 @@ top_srcdir = @top_srcdir@
|
@@ -1068,7 +1068,7 @@ top_srcdir = @top_srcdir@
|
||||||
AUTOMAKE_OPTIONS = subdir-objects
|
AUTOMAKE_OPTIONS = subdir-objects
|
||||||
|
|
||||||
# AM_MAKEINFOFLAGS = --no-split --no-validate
|
# AM_MAKEINFOFLAGS = --no-split --no-validate
|
||||||
@ -68,9 +68,9 @@ Index: grub-2.00/docs/Makefile.in
|
|||||||
grub_TEXINFOS = fdl.texi
|
grub_TEXINFOS = fdl.texi
|
||||||
EXTRA_DIST = font_char_metrics.png font_char_metrics.txt
|
EXTRA_DIST = font_char_metrics.png font_char_metrics.txt
|
||||||
all: all-am
|
all: all-am
|
||||||
@@ -893,14 +893,14 @@ $(am__aclocal_m4_deps):
|
@@ -1149,14 +1149,14 @@ $(am__aclocal_m4_deps):
|
||||||
rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
|
else \
|
||||||
exit 1; \
|
rm -rf $(@:.html=.htp); exit 1; \
|
||||||
fi
|
fi
|
||||||
-$(srcdir)/grub.info: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
|
-$(srcdir)/grub.info: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
|
||||||
-grub.dvi: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
|
-grub.dvi: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
|
||||||
@ -90,20 +90,12 @@ Index: grub-2.00/docs/Makefile.in
|
|||||||
echo "@set UPDATED $$1 $$2 $$3"; \
|
echo "@set UPDATED $$1 $$2 $$3"; \
|
||||||
echo "@set UPDATED-MONTH $$2 $$3"; \
|
echo "@set UPDATED-MONTH $$2 $$3"; \
|
||||||
echo "@set EDITION $(VERSION)"; \
|
echo "@set EDITION $(VERSION)"; \
|
||||||
@@ -1020,16 +1020,16 @@ dist-info: $(INFO_DEPS)
|
@@ -1276,12 +1276,12 @@ dist-info: $(INFO_DEPS)
|
||||||
done
|
done
|
||||||
|
|
||||||
mostlyclean-aminfo:
|
mostlyclean-aminfo:
|
||||||
- -rm -rf grub.aux grub.cp grub.cps grub.fn grub.ky grub.log grub.pg grub.tmp \
|
- -rm -rf grub.t2d grub.t2p grub-dev.t2d grub-dev.t2p
|
||||||
- grub.toc grub.tp grub.vr grub-dev.aux grub-dev.cp \
|
+ -rm -rf grub2.t2d grub2.t2p grub-dev.t2d grub-dev.t2p
|
||||||
- grub-dev.cps grub-dev.fn grub-dev.ky grub-dev.log \
|
|
||||||
- grub-dev.pg grub-dev.tmp grub-dev.toc grub-dev.tp \
|
|
||||||
- grub-dev.vr
|
|
||||||
+ -rm -rf grub2.aux grub2.cp grub2.cps grub2.fn grub2.ky grub2.log grub2.pg \
|
|
||||||
+ grub2.tmp grub2.toc grub2.tp grub2.vr grub-dev.aux \
|
|
||||||
+ grub-dev.cp grub-dev.cps grub-dev.fn grub-dev.ky \
|
|
||||||
+ grub-dev.log grub-dev.pg grub-dev.tmp grub-dev.toc \
|
|
||||||
+ grub-dev.tp grub-dev.vr
|
|
||||||
|
|
||||||
clean-aminfo:
|
clean-aminfo:
|
||||||
- -test -z "grub.dvi grub.pdf grub.ps grub.html grub-dev.dvi grub-dev.pdf \
|
- -test -z "grub.dvi grub.pdf grub.ps grub.html grub-dev.dvi grub-dev.pdf \
|
||||||
@ -114,10 +106,10 @@ Index: grub-2.00/docs/Makefile.in
|
|||||||
grub-dev.ps grub-dev.html
|
grub-dev.ps grub-dev.html
|
||||||
|
|
||||||
maintainer-clean-aminfo:
|
maintainer-clean-aminfo:
|
||||||
diff --git a/docs/grub.texi b/docs/grub2.texi
|
Index: grub-2.02~beta1/docs/grub.texi
|
||||||
index 26944ac..fb7fb0e 100644
|
===================================================================
|
||||||
--- a/docs/grub.texi
|
--- grub-2.02~beta1.orig/docs/grub.texi
|
||||||
+++ b/docs/grub.texi
|
+++ grub-2.02~beta1/docs/grub.texi
|
||||||
@@ -1,7 +1,7 @@
|
@@ -1,7 +1,7 @@
|
||||||
\input texinfo
|
\input texinfo
|
||||||
@c -*-texinfo-*-
|
@c -*-texinfo-*-
|
||||||
|
@ -12,114 +12,16 @@ Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
|
|||||||
configure.ac | 2 +-
|
configure.ac | 2 +-
|
||||||
2 files changed, 13 insertions(+), 13 deletions(-)
|
2 files changed, 13 insertions(+), 13 deletions(-)
|
||||||
|
|
||||||
Index: grub-2.00/configure
|
Index: grub-2.02~beta2/configure.ac
|
||||||
===================================================================
|
===================================================================
|
||||||
--- grub-2.00.orig/configure
|
--- grub-2.02~beta2.orig/configure.ac
|
||||||
+++ grub-2.00/configure
|
+++ grub-2.02~beta2/configure.ac
|
||||||
@@ -1,6 +1,6 @@
|
|
||||||
#! /bin/sh
|
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
|
||||||
-# Generated by GNU Autoconf 2.69 for GRUB 2.00.
|
|
||||||
+# Generated by GNU Autoconf 2.69 for GRUB2 2.00.
|
|
||||||
#
|
|
||||||
# Report bugs to <bug-grub@gnu.org>.
|
|
||||||
#
|
|
||||||
@@ -578,10 +578,10 @@ MFLAGS=
|
|
||||||
MAKEFLAGS=
|
|
||||||
|
|
||||||
# Identity of this package.
|
|
||||||
-PACKAGE_NAME='GRUB'
|
|
||||||
-PACKAGE_TARNAME='grub'
|
|
||||||
+PACKAGE_NAME='GRUB2'
|
|
||||||
+PACKAGE_TARNAME='grub2'
|
|
||||||
PACKAGE_VERSION='2.00'
|
|
||||||
-PACKAGE_STRING='GRUB 2.00'
|
|
||||||
+PACKAGE_STRING='GRUB2 2.00'
|
|
||||||
PACKAGE_BUGREPORT='bug-grub@gnu.org'
|
|
||||||
PACKAGE_URL=''
|
|
||||||
|
|
||||||
@@ -1938,7 +1938,7 @@ if test "$ac_init_help" = "long"; then
|
|
||||||
# Omit some internal or obsolete options to make the list less imposing.
|
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
|
||||||
cat <<_ACEOF
|
|
||||||
-\`configure' configures GRUB 2.00 to adapt to many kinds of systems.
|
|
||||||
+\`configure' configures GRUB2 2.00 to adapt to many kinds of systems.
|
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
|
||||||
|
|
||||||
@@ -1986,7 +1986,7 @@ Fine tuning of the installation director
|
|
||||||
--infodir=DIR info documentation [DATAROOTDIR/info]
|
|
||||||
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
|
|
||||||
--mandir=DIR man documentation [DATAROOTDIR/man]
|
|
||||||
- --docdir=DIR documentation root [DATAROOTDIR/doc/grub]
|
|
||||||
+ --docdir=DIR documentation root [DATAROOTDIR/doc/grub2]
|
|
||||||
--htmldir=DIR html documentation [DOCDIR]
|
|
||||||
--dvidir=DIR dvi documentation [DOCDIR]
|
|
||||||
--pdfdir=DIR pdf documentation [DOCDIR]
|
|
||||||
@@ -2009,7 +2009,7 @@ fi
|
|
||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
|
||||||
case $ac_init_help in
|
|
||||||
- short | recursive ) echo "Configuration of GRUB 2.00:";;
|
|
||||||
+ short | recursive ) echo "Configuration of GRUB2 2.00:";;
|
|
||||||
esac
|
|
||||||
cat <<\_ACEOF
|
|
||||||
|
|
||||||
@@ -2144,7 +2144,7 @@ fi
|
|
||||||
test -n "$ac_init_help" && exit $ac_status
|
|
||||||
if $ac_init_version; then
|
|
||||||
cat <<\_ACEOF
|
|
||||||
-GRUB configure 2.00
|
|
||||||
+GRUB2 configure 2.00
|
|
||||||
generated by GNU Autoconf 2.69
|
|
||||||
|
|
||||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
|
||||||
@@ -2853,7 +2853,7 @@ cat >config.log <<_ACEOF
|
|
||||||
This file contains any messages produced by compilers while
|
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
|
||||||
|
|
||||||
-It was created by GRUB $as_me 2.00, which was
|
|
||||||
+It was created by GRUB2 $as_me 2.00, which was
|
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
|
||||||
|
|
||||||
$ $0 $@
|
|
||||||
@@ -3839,7 +3839,7 @@ fi
|
|
||||||
|
|
||||||
|
|
||||||
# Define the identity of the package.
|
|
||||||
- PACKAGE='grub'
|
|
||||||
+ PACKAGE='grub2'
|
|
||||||
VERSION='2.00'
|
|
||||||
|
|
||||||
|
|
||||||
@@ -23470,7 +23470,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri
|
|
||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
|
||||||
# values after options handling.
|
|
||||||
ac_log="
|
|
||||||
-This file was extended by GRUB $as_me 2.00, which was
|
|
||||||
+This file was extended by GRUB2 $as_me 2.00, which was
|
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
|
||||||
@@ -23540,7 +23540,7 @@ _ACEOF
|
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
|
||||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
|
||||||
ac_cs_version="\\
|
|
||||||
-GRUB config.status 2.00
|
|
||||||
+GRUB2 config.status 2.00
|
|
||||||
configured by $0, generated by GNU Autoconf 2.69,
|
|
||||||
with options \\"\$ac_cs_config\\"
|
|
||||||
|
|
||||||
Index: grub-2.00/configure.ac
|
|
||||||
===================================================================
|
|
||||||
--- grub-2.00.orig/configure.ac
|
|
||||||
+++ grub-2.00/configure.ac
|
|
||||||
@@ -32,7 +32,7 @@ dnl type, so there is no conflict. Varia
|
@@ -32,7 +32,7 @@ dnl type, so there is no conflict. Varia
|
||||||
dnl (such as TARGET_CC, TARGET_CFLAGS, etc.) are used for the target
|
dnl (such as TARGET_CC, TARGET_CFLAGS, etc.) are used for the target
|
||||||
dnl type.
|
dnl type.
|
||||||
|
|
||||||
-AC_INIT([GRUB],[2.00],[bug-grub@gnu.org])
|
-AC_INIT([GRUB],[2.02~beta2],[bug-grub@gnu.org])
|
||||||
+AC_INIT([GRUB2],[2.00],[bug-grub@gnu.org])
|
+AC_INIT([GRUB2],[2.02~beta2],[bug-grub@gnu.org])
|
||||||
|
|
||||||
AC_CONFIG_AUX_DIR([build-aux])
|
AC_CONFIG_AUX_DIR([build-aux])
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user