summaryrefslogtreecommitdiff
path: root/package/grub/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'package/grub/Makefile')
-rw-r--r--package/grub/Makefile53
1 files changed, 34 insertions, 19 deletions
diff --git a/package/grub/Makefile b/package/grub/Makefile
index cfe17a227..2f2deba4a 100644
--- a/package/grub/Makefile
+++ b/package/grub/Makefile
@@ -4,38 +4,53 @@
include $(TOPDIR)/rules.mk
PKG_NAME:= grub
-PKG_VERSION:= 1.98
-PKG_RELEASE:= 1
-PKG_MD5SUM:= c0bcf60e524739bb64e3a2d4e3732a59
+PKG_VERSION:= 2.00
+PKG_RELEASE:= 4
+PKG_MD5SUM:= e927540b6eda8b024fb0391eeaa4091c
PKG_DESCR:= GRUB2 bootloader (source package)
PKG_SECTION:= boot
+PKG_BUILDDEP:= bison-host qemu-host
PKG_URL:= http://www.gnu.org/software/grub
-PKG_SITES:= ftp://alpha.gnu.org/gnu/grub/
+PKG_SITES:= ftp://ftp.gnu.org/gnu/grub/
-PKG_HOST_DEPENDS:= linux
-PKG_ARCH_DEPENDS:= x86 x86_64
+PKG_ARCH_DEPENDS:= x86 x86_64 mips
PKG_NOPARALLEL:= 1
+PKG_CHOICES_GRUB:= PC EFI
+PKGCD_PC:= build for PC BIOS
+PKGCD_EFI:= build for EFI
+
include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,GRUB,grub,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-ifeq ($(ADK_STATIC),y)
-TARGET_CFLAGS+= -static
-TARGET_LDFLAGS+= -static
+GRUB_MODULES:= ext2 part_msdos biosdisk
+
+ifeq ($(ADK_PACKAGE_GRUB_PC),y)
+GRUB_ARCH:= i386-pc
+CONFIGURE_ARGS+= --with-platform=pc
+endif
+ifeq ($(ADK_PACKAGE_GRUB_EFI),y)
+GRUB_ARCH:= x86_64-efi
+CONFIGURE_ARGS+= --with-platform=efi
endif
-XAKE_FLAGS+= GCC_HONOUR_COPTS=s CPPFLAGS_FOR_BUILD="-I./include"
-CONFIGURE_ARGS+= --disable-efiemu \
- --disable-grub-mkfont \
- --disable-grub-fstest
+TARGET_CFLAGS+= -static
+TARGET_LDFLAGS+= -static
+CONFIGURE_ARGS+= --disable-grub-mkfont \
+ --enable-efiemu=no \
+ --enable-liblzma=no \
+ --enable-device-mapper=no \
+ --enable-libzfs=no \
+ --disable-werror
+XAKE_FLAGS+= GCC_HONOUR_COPTS=s
grub-install:
- ${INSTALL_DIR} $(IDIR_GRUB)/usr/{sbin,lib,bin}
- ${INSTALL_DIR} $(IDIR_GRUB)/etc
- ${CP} ${WRKINST}/etc/grub.d $(IDIR_GRUB)/etc
- ${CP} ${WRKINST}/usr/lib/* $(IDIR_GRUB)/usr/lib
- ${INSTALL_BIN} ${WRKINST}/usr/bin/* $(IDIR_GRUB)/usr/bin
- ${INSTALL_BIN} ${WRKINST}/usr/sbin/* $(IDIR_GRUB)/usr/sbin
+ ${INSTALL_DIR} $(IDIR_GRUB)/boot/grub/${GRUB_ARCH}
+ ${CP} ${WRKINST}/usr/lib/grub/${GRUB_ARCH}/*{mod,lst,img} \
+ $(IDIR_GRUB)/boot/grub/${GRUB_ARCH}/
+ PATH='${HOST_PATH}' qemu-i386 ${WRKBUILD}/grub-mkimage \
+ -o $(IDIR_GRUB)/boot/grub/core.img -O ${GRUB_ARCH} \
+ -c ./files/embed.cfg ${GRUB_MODULES}
include ${TOPDIR}/mk/pkg-bottom.mk