mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
5a5df62d95
Let the grub2 package take care of creating installable grub2 images, this will allow creating grub2 images without first calling x86 image generation recipe. Also as side effect, since those images are now shared, it'll reduce the number of calling grub-mkimage. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl> [rebase, adjusted commit title] Signed-off-by: Paul Spooren <mail@aparcar.org>
129 lines
3.2 KiB
Makefile
129 lines
3.2 KiB
Makefile
#
|
|
# Copyright (C) 2006-2015 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
include $(INCLUDE_DIR)/kernel.mk
|
|
|
|
PKG_NAME:=grub
|
|
PKG_CPE_ID:=cpe:/a:gnu:grub2
|
|
PKG_VERSION:=2.04
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
|
PKG_SOURCE_URL:=@GNU/grub
|
|
PKG_HASH:=e5292496995ad42dabe843a0192cf2a2c502e7ffcc7479398232b10a472df77d
|
|
|
|
HOST_BUILD_PARALLEL:=1
|
|
PKG_BUILD_DEPENDS:=grub2/host
|
|
|
|
PKG_SSP:=0
|
|
|
|
PKG_FLAGS:=nonshared
|
|
|
|
include $(INCLUDE_DIR)/host-build.mk
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/grub2
|
|
CATEGORY:=Boot Loaders
|
|
SECTION:=boot
|
|
TITLE:=GRand Unified Bootloader
|
|
URL:=http://www.gnu.org/software/grub/
|
|
DEPENDS:=@TARGET_x86
|
|
endef
|
|
|
|
define Package/grub2-editenv
|
|
CATEGORY:=Utilities
|
|
SECTION:=utils
|
|
SUBMENU:=Boot Loaders
|
|
TITLE:=Grub2 Environment editor
|
|
URL:=http://www.gnu.org/software/grub/
|
|
DEPENDS:=@TARGET_x86
|
|
endef
|
|
|
|
define Package/grub2-editenv/description
|
|
Edit grub2 environment files.
|
|
endef
|
|
|
|
HOST_BUILD_PREFIX := $(STAGING_DIR_HOST)
|
|
|
|
CONFIGURE_VARS += \
|
|
grub_build_mkfont_excuse="don't want fonts"
|
|
|
|
CONFIGURE_ARGS += \
|
|
--target=$(REAL_GNU_TARGET_NAME) \
|
|
--disable-werror \
|
|
--disable-nls \
|
|
--disable-device-mapper \
|
|
--disable-libzfs \
|
|
--disable-grub-mkfont \
|
|
--with-platform=none
|
|
|
|
HOST_CONFIGURE_VARS += \
|
|
grub_build_mkfont_excuse="don't want fonts"
|
|
|
|
HOST_CONFIGURE_ARGS += \
|
|
--disable-grub-mkfont \
|
|
--target=$(REAL_GNU_TARGET_NAME) \
|
|
--sbindir="$(STAGING_DIR_HOST)/bin" \
|
|
--disable-werror \
|
|
--disable-libzfs \
|
|
--disable-nls
|
|
|
|
HOST_MAKE_FLAGS += \
|
|
TARGET_RANLIB=$(TARGET_RANLIB) \
|
|
LIBLZMA=$(STAGING_DIR_HOST)/lib/liblzma.a
|
|
|
|
define Host/Configure
|
|
$(SED) 's,(RANLIB),(TARGET_RANLIB),' $(HOST_BUILD_DIR)/grub-core/Makefile.in
|
|
$(Host/Configure/Default)
|
|
endef
|
|
|
|
define Host/Install
|
|
$(call Host/Install/Default)
|
|
|
|
$(INSTALL_DIR) $(STAGING_DIR_HOST)/lib/grub/grub2-generic
|
|
$(STAGING_DIR_HOST)/bin/grub-mkimage \
|
|
-d $(STAGING_DIR_HOST)/lib/grub/i386-pc \
|
|
-p /boot/grub \
|
|
-O i386-pc \
|
|
-c ./files/grub-early.cfg \
|
|
-o $(STAGING_DIR_HOST)/lib/grub/grub2-generic/core.img \
|
|
at_keyboard biosdisk boot chain configfile ext2 linux ls part_msdos reboot serial vga
|
|
|
|
$(INSTALL_DIR) $(STAGING_DIR_HOST)/lib/grub/grub2-iso
|
|
$(STAGING_DIR_HOST)/bin/grub-mkimage \
|
|
-d $(STAGING_DIR_HOST)/lib/grub/i386-pc \
|
|
-p /boot/grub \
|
|
-O i386-pc \
|
|
-c ./files/grub-early.cfg \
|
|
-o $(STAGING_DIR_HOST)/lib/grub/grub2-iso/eltorito.img \
|
|
at_keyboard biosdisk boot chain configfile iso9660 linux ls part_msdos reboot serial vga
|
|
|
|
$(INSTALL_DIR) $(STAGING_DIR_HOST)/lib/grub/grub2-legacy
|
|
$(STAGING_DIR_HOST)/bin/grub-mkimage \
|
|
-d $(STAGING_DIR_HOST)/lib/grub/i386-pc \
|
|
-p /boot/grub \
|
|
-O i386-pc \
|
|
-c ./files/grub-early.cfg \
|
|
-o $(STAGING_DIR_HOST)/lib/grub/grub2-legacy/core.img \
|
|
biosdisk boot chain configfile ext2 linux ls part_msdos reboot serial vga
|
|
endef
|
|
|
|
define Package/grub2/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/grub-bios-setup $(1)/usr/sbin/
|
|
endef
|
|
|
|
define Package/grub2-editenv/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/grub-editenv $(1)/usr/sbin/
|
|
endef
|
|
|
|
$(eval $(call HostBuild))
|
|
$(eval $(call BuildPackage,grub2))
|
|
$(eval $(call BuildPackage,grub2-editenv))
|