build system refactoring in preparation for allowing packages to do host-build steps
[openwrt/staging/chunkeey.git] / tools / firmware-utils / Makefile
index 24cf88eecd6f247d35450917f15eeaec50e5771f..5261a2bb62c7a0c52c43c9c9ede2e281aa5e9b3a 100644 (file)
@@ -1,5 +1,5 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2008 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -7,18 +7,19 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME := firmware-utils
-PKG_BUILD_DIR:=$(TOOL_BUILD_DIR)/firmware-utils
 
 include $(INCLUDE_DIR)/host-build.mk
 
-CFLAGS := -O2 -I $(STAGING_DIR)/include-host -include endian.h
-
 define cc
-       $(CC) $(CFLAGS) -o $(PKG_BUILD_DIR)/bin/$(1) src/$(1).c
+       $(CC) $(HOST_CFLAGS) -include endian.h -o $(HOST_BUILD_DIR)/bin/$(1) src/$(1).c $(2)
+endef
+
+define cc2
+       $(CC) $(HOST_CFLAGS) -include endian.h -o $(HOST_BUILD_DIR)/bin/$(firstword $(1)) $(foreach src,$(1),src/$(src).c) $(2)
 endef
 
-define Build/Compile
-       mkdir -p $(PKG_BUILD_DIR)/bin
+define Host/Compile
+       mkdir -p $(HOST_BUILD_DIR)/bin
        $(call cc,addpattern)
        $(call cc,trx)
        $(call cc,motorola-bin)
@@ -30,10 +31,18 @@ define Build/Compile
        $(call cc,mkmylofw)
        $(call cc,mkcsysimg)
        $(call cc,mkzynfw)
+       $(call cc,lzma2eva,-lz)
+       $(call cc,mkcasfw)
+       $(call cc,mkfwimage,-lz)
+       $(call cc,mkfwimage2,-lz)
+       $(call cc,imagetag)
+       $(call cc,add_header)
+       $(call cc,makeamitbin)
+       $(call cc2,mkplanexfw sha1)
 endef
 
-define Build/Install
-       $(CP) $(PKG_BUILD_DIR)/bin/* $(STAGING_DIR)/bin
+define Host/Install
+       $(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/* $(STAGING_DIR_HOST)/bin/
 endef
 
 $(eval $(call HostBuild))