X-Git-Url: http://git.ozo.com/?a=blobdiff_plain;ds=sidebyside;f=package%2Fgrub%2FMakefile;h=426b9c367307fc5ede8d1dad88f80bb420ea5e1e;hb=3ebef1c4b57494636f238c468d095bf8b6798969;hp=221269ba41a2b0edf48ecdd5758dd2ec7e1675c4;hpb=aa0bcb7212f8c2a1c0fe9f24fce59d3ed6d0b7d5;p=openwrt-10.03%2F.git diff --git a/package/grub/Makefile b/package/grub/Makefile index 221269ba4..426b9c367 100644 --- a/package/grub/Makefile +++ b/package/grub/Makefile @@ -44,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) @@ -53,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/ @@ -67,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))