summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
Diffstat (limited to 'target')
-rw-r--r--target/x86/grub/Config.in2
-rw-r--r--target/x86/grub/grub.mk26
2 files changed, 25 insertions, 3 deletions
diff --git a/target/x86/grub/Config.in b/target/x86/grub/Config.in
index f84c0d48c..72326055a 100644
--- a/target/x86/grub/Config.in
+++ b/target/x86/grub/Config.in
@@ -1,7 +1,7 @@
config BR2_TARGET_GRUB
bool "grub"
default n
- depends on BR2_i386
+ depends on BR2_i386 || BR2_x86_64
help
The GRand Unified Bootloader for x86 systems.
diff --git a/target/x86/grub/grub.mk b/target/x86/grub/grub.mk
index 62fc99c97..4e8872000 100644
--- a/target/x86/grub/grub.mk
+++ b/target/x86/grub/grub.mk
@@ -1,20 +1,38 @@
+GRUB_SUPPORTED_ARCH=n
ifeq ($(ARCH),i386)
+GRUB_SUPPORTED_ARCH=y
+endif
+ifeq ($(ARCH),i486)
+GRUB_SUPPORTED_ARCH=y
+endif
+ifeq ($(ARCH),i586)
+GRUB_SUPPORTED_ARCH=y
+endif
+ifeq ($(ARCH),i686)
+GRUB_SUPPORTED_ARCH=y
+endif
+ifeq ($(ARCH),x86_64)
+GRUB_SUPPORTED_ARCH=y
+endif
+ifeq ($(GRUB_SUPPORTED_ARCH),y)
#############################################################
#
# grub
#
#############################################################
GRUB_SOURCE:=grub_0.97.orig.tar.gz
-GRUB_PATCH=grub_0.97-5.diff.gz
+GRUB_PATCH=grub_0.97-18.diff.gz
GRUB_SITE=http://ftp.debian.org/debian/pool/main/g/grub
GRUB_CAT:=$(ZCAT)
GRUB_DIR:=$(BUILD_DIR)/grub-0.97
GRUB_BINARY:=grub/grub
GRUB_TARGET_BINARY:=bin/grub
+GRUB_TARGET_FILES:=
ifeq ($(BR2_TARGET_GRUB_SPLASH),y)
GRUB_CONFIGURE_ARGS+=--enable-graphics
-GRUB_SPLASHIMAGE=splash.xpm.gz
+GRUB_SPLASHIMAGE=$(TOPDIR)/target/x86/grub/splash.xpm.gz
+GRUB_TARGET_FILES+=$(GRUB_SPLASHIMAGE)
endif
GRUB_CFLAGS=-DSUPPORT_LOOPDEV
@@ -56,6 +74,10 @@ $(GRUB_DIR)/$(GRUB_BINARY): $(GRUB_DIR)/.configured
$(MAKE) CC=$(TARGET_CC) -C $(GRUB_DIR)
grub-target_binary: $(GRUB_DIR)/$(GRUB_BINARY)
+ cp $(GRUB_DIR)/$(GRUB_BINARY) $(TARGET_DIR)/sbin/
+ test -d $(TARGET_DIR)/boot/grub || mkdir -p $(TARGET_DIR)/boot/grub
+ cp $(GRUB_DIR)/stage1/stage1 $(GRUB_DIR)/stage2/*1_5 $(GRUB_DIR)/stage2/stage2 $(TARGET_DIR)/boot/grub/
+
grub: grub-target_binary