[OpenWrt-Devel,2/3] grub2: split to grub2 and grub2-efi packages
diff mbox series

Message ID 1554371186-25036-2-git-send-email-uxgood.org@gmail.com
State New
Headers show
Series
  • [OpenWrt-Devel,1/3] firmware-utils: ptgen: add GPT support
Related show

Commit Message

李国 April 4, 2019, 9:46 a.m. UTC
EFI bootable images need grub2 host packages with efi platform,
but grub2 can not build efi platform and pc platform together,
so we split it to grub2 and grub2-efi packages.

Signed-off-by: 李国 <uxgood.org@gmail.com>
---
 package/boot/grub2/Makefile           | 93 -----------------------------------
 package/boot/grub2/common.mk          | 55 +++++++++++++++++++++
 package/boot/grub2/grub2-efi/Makefile | 19 +++++++
 package/boot/grub2/grub2/Makefile     | 46 +++++++++++++++++
 4 files changed, 120 insertions(+), 93 deletions(-)
 delete mode 100644 package/boot/grub2/Makefile
 create mode 100644 package/boot/grub2/common.mk
 create mode 100644 package/boot/grub2/grub2-efi/Makefile
 create mode 100644 package/boot/grub2/grub2/Makefile

Patch
diff mbox series

diff --git a/package/boot/grub2/Makefile b/package/boot/grub2/Makefile
deleted file mode 100644
index d6af651..0000000
--- a/package/boot/grub2/Makefile
+++ /dev/null
@@ -1,93 +0,0 @@ 
-#
-# 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.02
-PKG_RELEASE:=3
-
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=@GNU/grub
-PKG_HASH:=810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f
-
-PKG_FIXUP:=autoreconf
-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 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))
diff --git a/package/boot/grub2/common.mk b/package/boot/grub2/common.mk
new file mode 100644
index 0000000..5c7e65d
--- /dev/null
+++ b/package/boot/grub2/common.mk
@@ -0,0 +1,55 @@ 
+#
+# 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.02
+PKG_RELEASE:=3
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=@GNU/grub
+PKG_HASH:=810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f
+
+PKG_FIXUP:=autoreconf
+HOST_BUILD_PARALLEL:=1
+
+PKG_SSP:=0
+
+PKG_FLAGS:=nonshared
+
+PATCH_DIR:=../patches
+
+HOST_BUILD_DIR ?= $(BUILD_DIR_HOST)/$(PKG_NAME)-$(GRUB_PLATFORM)/$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
+HOST_BUILD_PREFIX := $(STAGING_DIR_HOST)
+
+include $(INCLUDE_DIR)/host-build.mk
+include $(INCLUDE_DIR)/package.mk
+
+
+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 \
+	--with-platform=$(GRUB_PLATFORM)
+
+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
diff --git a/package/boot/grub2/grub2-efi/Makefile b/package/boot/grub2/grub2-efi/Makefile
new file mode 100644
index 0000000..2fc21fd
--- /dev/null
+++ b/package/boot/grub2/grub2-efi/Makefile
@@ -0,0 +1,19 @@ 
+GRUB_PLATFORM:=efi
+
+PKG_BUILD_DEPENDS:=grub2-efi/host
+include ../common.mk
+
+define Package/grub2-efi
+  CATEGORY:=Boot Loaders
+  SECTION:=boot
+  TITLE:=GRand Unified Bootloader(EFI)
+  URL:=http://www.gnu.org/software/grub/
+  DEPENDS:=@TARGET_x86
+endef
+
+define Host/Install
+	$(call Host/Compile/Default,install-data)
+endef
+
+$(eval $(call HostBuild))
+$(eval $(call BuildPackage,grub2-efi))
diff --git a/package/boot/grub2/grub2/Makefile b/package/boot/grub2/grub2/Makefile
new file mode 100644
index 0000000..b1db132
--- /dev/null
+++ b/package/boot/grub2/grub2/Makefile
@@ -0,0 +1,46 @@ 
+GRUB_PLATFORM:=pc
+
+PKG_BUILD_DEPENDS:=grub2/host
+include ../common.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
+
+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
+
+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))