X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/4cf91506a9efba7662cdb15440c4d277b6f9f080..86154153a622f87b6cc6209e355351975c82efb4:/package/grub/Makefile diff --git a/package/grub/Makefile b/package/grub/Makefile index 434af2bc9..221269ba4 100644 --- a/package/grub/Makefile +++ b/package/grub/Makefile @@ -1,89 +1,71 @@ # -# Copyright (C) 2006-2008 OpenWrt.org +# Copyright (C) 2006-2010 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # -# $Id: Makefile 4855 2006-09-24 20:49:31Z nico $ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=grub PKG_VERSION:=0.97 -PKG_RELEASE:=1 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://alpha.gnu.org/gnu/grub PKG_MD5SUM:=cd3f3eb54446be6003156158d51f4884 -PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/grub-$(PKG_VERSION) -PKG_TARGETS:=bin +PKG_BUILD_DEPENDS:= grub/host +PKG_INSTALL:=1 +include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/package.mk define Package/grub - SECTION:=boot - DEPENDS:=@TARGET_x86 - CATEGORY:=Boot Loaders + SUBMENU:=Boot Loaders + CATEGORY:=Utilities + SECTION:=utils TITLE:=GRand Unified Bootloader URL:=http://www.gnu.org/software/grub/ + DEPENDS:=@TARGET_x86 endef -ifeq ($(HOST_OS),Linux) - NATIVEGRUB-i386:=1 - NATIVEGRUB-i686:=1 - NATIVEGRUB:=$(NATIVEGRUB-$(HOST_ARCH)) -endif - -ifeq ($(NATIVEGRUB),) -CONFIGURE_FLAGS:= \ - --target=$(GNU_TARGET_NAME) \ - --host=$(GNU_TARGET_NAME) \ - --build=$(GNU_HOST_NAME) -else -CONFIGURE_FLAGS:= -endif - -ifneq ($(HOST_OS),Darwin) -define Build/Configure - (cd $(PKG_BUILD_DIR); \ - LDFLAGS="-static" \ - ./configure \ - $(CONFIGURE_FLAGS) \ - --program-prefix="" \ - --program-suffix="" \ - --prefix=/usr \ - --exec-prefix=/usr \ - --bindir=/usr/bin \ - --sbindir=/usr/sbin \ - --libexecdir=/usr/lib \ - --sysconfdir=/etc \ - --datadir=/usr/share \ - --localstatedir=/var \ - --mandir=/usr/man \ - --infodir=/usr/info \ - $(DISABLE_NLS) \ - --disable-auto-linux-mem-opt \ - ) -endef -# -# ./configure detects whether the host compiler supports -# -fno-stack-protector but only sets STAGE2_CFLAGS accordingly -# -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - GRUB_CFLAGS="\$$$$(STAGE2_CFLAGS)" \ - STAGE1_CFLAGS="\$$$$(STAGE2_CFLAGS)" -endef +MY_CONFIGURE_ARGS += \ + --disable-auto-linux-mem-opt \ + --disable-hercules \ + --without-curses \ + +MY_CONFIGURE_VARS += \ + grub_cv_prog_objcopy_absolute=yes \ + +CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS) + +CONFIGURE_VARS += $(MY_CONFIGURE_VARS) + +HOST_CFLAGS += $(call host-cc-option,-fno-stack-protector) +HOST_CFLAGS += $(call host-cc-option,-U_FORTIFY_SOURCE) + +HOST_CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS) \ + --sbindir="$(STAGING_DIR_HOST)/bin" \ + --disable-graphics \ + +HOST_CONFIGURE_VARS += $(MY_CONFIGURE_VARS) define Build/InstallDev - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(STAGING_DIR_HOST)" \ - install - mv $(STAGING_DIR_HOST)/usr/sbin/grub $(STAGING_DIR_HOST)/bin + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/grub $(1)/usr/lib/ +endef + +define Package/grub/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/sbin + $(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/ endef -endif +$(eval $(call HostBuild)) $(eval $(call BuildPackage,grub))