ixp4xx: make apex optional, clean up the makefile - fixes spurious recompilation issues

SVN-Revision: 15115
lede-17.01
Felix Fietkau 2009-04-06 09:56:30 +00:00
parent 9493f9c19e
commit 0cb0c1a257
8 changed files with 67 additions and 92 deletions

61
package/apex/Makefile Normal file
View File

@ -0,0 +1,61 @@
#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id$
include $(TOPDIR)/rules.mk
PKG_NAME:=apex
PKG_VERSION:=1.5.14
PKG_RELEASE:=3
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://ftp.buici.com/pub/apex/ \
ftp://metalab.unc.edu/pub/Linux/system/boot/apex/
PKG_MD5SUM:=22fb46e76c8221c7bcc9734602367460
PKG_TARGETS:=bin
include $(INCLUDE_DIR)/package.mk
export GCC_HONOUR_COPTS=s
define Package/apex
SECTION:=boot
CATEGORY:=Boot Loaders
DEPENDS:=@TARGET_ixp4xx
DEFAULT:=y
TITLE:=Boot loader for NSLU2, FSG3, NAS100D and others
URL:=http://wiki.buici.com/wiki/Apex_Bootloader
endef
define build_apex
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH=arm \
$(1)_config
$(SED) 's,.*CONFIG_AEABI.*,$(if $(CONFIG_EABI_SUPPORT),CONFIG_AEABI=y,# CONFIG_AEABI is not set),' $(PKG_BUILD_DIR)/.config
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
KBUILD_HAVE_NLS=no \
ARCH=arm \
clean all
$(INSTALL_BIN) $(PKG_BUILD_DIR)/apex.bin $(PKG_BUILD_DIR)/out/apex-$(2).bin
endef
define Build/Compile
$(INSTALL_DIR) $(PKG_BUILD_DIR)/out
$(call build_apex,slugos-nslu2-armeb,nslu2-armeb)
$(call build_apex,slugos-nslu2-16mb-armeb,nslu2-16mb-armeb)
$(call build_apex,slugos-fsg3-armeb,fsg3-armeb)
$(call build_apex,slugos-nas100d-armeb,nas100d-armeb)
endef
define Package/apex/install
$(INSTALL_DIR) $(STAGING_DIR)/apex
$(CP) $(PKG_BUILD_DIR)/out/*.bin $(1)/
endef
$(eval $(call BuildPackage,apex))

View File

@ -7,18 +7,20 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
define Image/Build/Linksys
ifdef CONFIG_PACKAGE_apex
define Image/Build/Linksys
BIN_DIR=$(BIN_DIR) $(TOPDIR)/scripts/slugimage.pl \
-L $(BIN_DIR)/apex-$(2)-armeb.bin \
-L $(BIN_DIR)/apex/apex-$(2)-armeb.bin \
-k $(BIN_DIR)/openwrt-$(2)-zImage \
-r rootfs:$(BIN_DIR)/openwrt-$(BOARD)-$(1).img \
-p -o $(BIN_DIR)/openwrt-$(2)-$(1).bin
BIN_DIR=$(BIN_DIR) $(TOPDIR)/scripts/slugimage.pl \
-F -L $(BIN_DIR)/apex-$(2)-16mb-armeb.bin \
-F -L $(BIN_DIR)/apex/apex-$(2)-16mb-armeb.bin \
-k $(BIN_DIR)/openwrt-$(2)-zImage \
-r rootfs:$(BIN_DIR)/openwrt-$(BOARD)-$(1).img \
-p -o $(BIN_DIR)/openwrt-$(2)-$(1)-16mb.bin
endef
endef
endif
define Image/Build/Freecom
$(INSTALL_DIR) $(TARGET_DIR)/boot
@ -30,18 +32,6 @@ define Image/Build/Freecom
$(STAGING_DIR_HOST)/bin/encode_crc $(BIN_DIR)/openwrt-$(2)-$(1).img $(BIN_DIR)/openwrt-$(2)-$(1)-webupgrade.img
endef
define Build/Compile
mkdir -p $(BIN_DIR)
$(MAKE) -C apex \
BUILD_DIR="$(KDIR)" \
TARGET="$(BIN_DIR)" \
compile
endef
define Build/Clean
$(MAKE) -C apex clean
endef
define Image/Prepare
cp $(LINUX_DIR)/arch/arm/boot/zImage $(KDIR)/zImage
endef

View File

@ -1,76 +0,0 @@
#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id$
include $(TOPDIR)/rules.mk
PKG_NAME:=apex
PKG_VERSION:=1.5.14
PKG_RELEASE:=3
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://ftp.buici.com/pub/apex/ \
ftp://metalab.unc.edu/pub/Linux/system/boot/apex/
PKG_MD5SUM:=22fb46e76c8221c7bcc9734602367460
include $(INCLUDE_DIR)/package.mk
export GCC_HONOUR_COPTS=s
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH=arm \
slugos-nslu2-armeb_config
$(SED) 's,.*CONFIG_AEABI.*,$(if $(CONFIG_EABI_SUPPORT),CONFIG_AEABI=y,# CONFIG_AEABI is not set),' $(PKG_BUILD_DIR)/.config
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
KBUILD_HAVE_NLS=no \
ARCH=arm \
all
$(INSTALL_BIN) $(PKG_BUILD_DIR)/apex.bin $(TARGET)/apex-nslu2-armeb.bin
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
KBUILD_HAVE_NLS=no \
ARCH=arm \
clean
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH=arm \
slugos-nslu2-16mb-armeb_config
$(SED) 's,.*CONFIG_AEABI.*,$(if $(CONFIG_EABI_SUPPORT),CONFIG_AEABI=y,# CONFIG_AEABI is not set),' $(PKG_BUILD_DIR)/.config
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
KBUILD_HAVE_NLS=no \
ARCH=arm \
all
$(INSTALL_BIN) $(PKG_BUILD_DIR)/apex.bin $(TARGET)/apex-nslu2-16mb-armeb.bin
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH=arm \
slugos-fsg3-armeb_config
$(SED) 's,.*CONFIG_AEABI.*,$(if $(CONFIG_EABI_SUPPORT),CONFIG_AEABI=y,# CONFIG_AEABI is not set),' $(PKG_BUILD_DIR)/.config
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
KBUILD_HAVE_NLS=no \
ARCH=arm \
all
$(INSTALL_BIN) $(PKG_BUILD_DIR)/apex.bin $(TARGET)/apex-fsg3-armeb.bin
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH=arm \
slugos-nas100d-armeb_config
$(SED) 's,.*CONFIG_AEABI.*,$(if $(CONFIG_EABI_SUPPORT),CONFIG_AEABI=y,# CONFIG_AEABI is not set),' $(PKG_BUILD_DIR)/.config
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
KBUILD_HAVE_NLS=no \
ARCH=arm \
all
$(INSTALL_BIN) $(PKG_BUILD_DIR)/apex.bin $(TARGET)/apex-nas100d-armeb.bin
endef
define Build/InstallDev
true
endef
$(eval $(call Build/DefaultTargets))