[kernel] kmod-usb-core is buildin on etrax target
[openwrt/svn-archive/archive.git] / package / uboot-ifxmips / Makefile
index 7895502b3bf4379e4f9a209045a988eb4baa0478..736e322c3c61a57aa1b4faffc7b5d1aa1ed3d7c4 100644 (file)
@@ -10,13 +10,12 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=u-boot
 PKG_VERSION:=1.1.5
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=ftp://ftp.denx.de/pub/u-boot
 PKG_MD5SUM:=579707c8ecbf1ab4127285d2aac2a9ee
-PKG_CAT:=bzcat
 PKG_TARGETS:=bin
 
 include $(INCLUDE_DIR)/package.mk
@@ -24,24 +23,62 @@ include $(INCLUDE_DIR)/package.mk
 define Package/uboot-ifxmips
   SECTION:=boot
   CATEGORY:=Boot Loaders
-  DEPENDS:=@TARGET_ifxmips
+  DEPENDS:=@TARGET_ifxmips @BROKEN
   TITLE:=U-Boot for Infineon MIPS boards
-  URL:=http://www.denx.de/wiki/UBoot/WebHome
+  URL:=http://www.denx.de/wiki/U-Boot
+  MENU:=1
 endef
 
 define Build/Prepare
        $(call Build/Prepare/Default)
-       cp -r ./files/* $(PKG_BUILD_DIR)
+       cp -r $(CP_OPTS) ./files/* $(PKG_BUILD_DIR)
        find $(PKG_BUILD_DIR) -name .svn | $(XARGS) rm -rf
 endef
 
+define Package/uboot-ifxmips/config
+       source "$(SOURCE)/Config.in"
+endef
+
+UBOOT_CONFIG:=danube
+
+UBOOT_MAKE_OPTS:=\
+       CROSS_COMPILE=$(TARGET_CROSS) \
+       CROSS_COMPILE_UCLIBC=1 \
+       COMPRESS=lzma \
+       PLATFORM_CPU=mips32r2 \
+       UBOOT_RAM_TEXT_BASE=0xA0400000
+
+A800_FIX:=
+ifeq ($(CONFIG_IFXMIPS_UBOOT_A800),y)
+A800_FIX += -DA800_SWITCH
+endif
+
+define Build/Configure
+       $(MAKE) -s -C $(PKG_BUILD_DIR) \
+               $(UBOOT_MAKE_OPTS) \
+               $(UBOOT_CONFIG)_config
+endef
+
 define Build/Compile
-       cd $(PKG_BUILD_DIR);chmod a+x build_danube.sh;./build_danube.sh
+       $(MAKE) -C $(PKG_BUILD_DIR) \
+               $(UBOOT_MAKE_OPTS) \
+               OWRT_FLAGS="-DTEXT_BASE=0xa0400000 ${A800_FIX}" \
+               ifx_all
+       $(CP) $(PKG_BUILD_DIR)/u-boot.srec $(PKG_BUILD_DIR)/asc.srec
+       $(PKG_BUILD_DIR)/gct \
+               $(PKG_BUILD_DIR)/danube_ref_ddr166.conf \
+               $(PKG_BUILD_DIR)/asc.srec \
+               $(PKG_BUILD_DIR)/u-boot.asc
+       $(MAKE) -C $(PKG_BUILD_DIR) \
+               $(UBOOT_MAKE_OPTS) \
+               OWRT_FLAGS="-DDANUBE_BOOT_FROM_EBU=1 -DTEXT_BASE=0xB0000000 ${A800_FIX}" \
+               clean ifx_all
 endef
 
 define Package/uboot-ifxmips/install
        mkdir -p $(1)
        dd if=$(PKG_BUILD_DIR)/u-boot.ifx of=$(1)/u-boot.ifx bs=64k conv=sync
+       $(CP) $(PKG_BUILD_DIR)/u-boot.asc $(1)
 endef
 
 $(eval $(call BuildPackage,uboot-ifxmips))