X-Git-Url: http://git.ozo.com/?p=openwrt-10.03%2F.git;a=blobdiff_plain;f=package%2Fgrub%2FMakefile;h=426b9c367307fc5ede8d1dad88f80bb420ea5e1e;hp=f6b81b7984789fe103d15312acb944a7c8a32787;hb=3ebef1c4b57494636f238c468d095bf8b6798969;hpb=d142e71778afdd71ab9030c711f60fbc58bb320c diff --git a/package/grub/Makefile b/package/grub/Makefile index f6b81b798..426b9c367 100644 --- a/package/grub/Makefile +++ b/package/grub/Makefile @@ -31,9 +31,11 @@ define Package/grub DEPENDS:=@TARGET_x86 endef + MY_CONFIGURE_ARGS += \ --disable-auto-linux-mem-opt \ --disable-hercules \ + --without-curses \ MY_CONFIGURE_VARS += \ grub_cv_prog_objcopy_absolute=yes \ @@ -42,6 +44,11 @@ CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS) CONFIGURE_VARS += $(MY_CONFIGURE_VARS) +ifeq ($(HOST_OS),Darwin) + HOST_CFLAGS += $(call host-cc-option,-m32) + HOST_CFLAGS += $(call host-cc-option,-fnested-functions) +endif + HOST_CFLAGS += $(call host-cc-option,-fno-stack-protector) HOST_CFLAGS += $(call host-cc-option,-U_FORTIFY_SOURCE) @@ -51,6 +58,22 @@ HOST_CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS) \ HOST_CONFIGURE_VARS += $(MY_CONFIGURE_VARS) +define Host/Configure + (cd $(HOST_BUILD_DIR); aclocal && autoconf && automake) + $(call Host/Configure/Default) +endef + +ifeq ($(HOST_OS),Darwin) + define Host/Compile + $(MAKE) -C $(HOST_BUILD_DIR)/lib + $(MAKE) -C $(HOST_BUILD_DIR)/stage2 libgrub.a + $(MAKE) -C $(HOST_BUILD_DIR)/grub + endef + define Host/Install + $(MAKE) -C $(HOST_BUILD_DIR)/grub install + endef +endif + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/grub $(1)/usr/lib/ @@ -65,5 +88,16 @@ define Package/grub/install $(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/ endef +ifeq ($(HOST_ARCH),x86_64) + define Require/working-gcc-m32 + echo 'int main(int argc, char **argv) { return 0; }' | \ + gcc -x c -o $(TMP_DIR)/a.out - -m32 -lc + endef +endif + +$(eval $(call Require,working-gcc-m32, \ + Please install 32 bits development files. (gcc-multilib on Debian/Ubuntu, gcc.i686 and libgcc.i686 on CentOS/Fedora/RHEL) \ +)) + $(eval $(call HostBuild)) $(eval $(call BuildPackage,grub))