aboutsummaryrefslogtreecommitdiffstats
path: root/tools/firmware-utils/Makefile
blob: 6074ecc608d09f0deca9d9972b91e3dd2074e0d3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#
# Copyright (C) 2006-2020 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk

PKG_NAME := firmware-utils
PKG_RELEASE := 7

include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/kernel.mk

define cc
	$(HOSTCC) \
		$(HOST_CFLAGS) \
		-Wno-unused-parameter \
		-include endian.h $(HOST_LDFLAGS) \
		-o $(HOST_BUILD_DIR)/bin/$(firstword $(1)) \
		$(foreach src,$(1),src/$(src).c) \
		$(2)
endef

define Host/Compile
	mkdir -p $(HOST_BUILD_DIR)/bin
	$(call cc,add_header)
	$(call cc,addpattern)
	$(call cc,asustrx)
	$(call cc,buffalo-enc buffalo-lib,-Wall)
	$(call cc,buffalo-tag buffalo-lib,-Wall)
	$(call cc,buffalo-tftp buffalo-lib,-Wall)
	$(call cc,dgfirmware)
	$(call cc,dgn3500sum,-Wall)
	$(call cc,dns313-header,-Wall)
	$(call cc,edimax_fw_header,-Wall)
	$(call cc,encode_crc)
	$(call cc,fix-u-media-header cyg_crc32,-Wall)
	$(call cc,hcsmakeimage bcmalgo)
	$(call cc,imagetag imagetag_cmdline cyg_crc32)
	$(call cc,jcgimage,-lz -Wall)
	$(call cc,lxlfw)
	$(call cc,lzma2eva,-lz)
	$(call cc,makeamitbin)
	$(call cc,mkbrncmdline)
	$(call cc,mkbrnimg)
	$(call cc,mkbuffaloimg,-Wall)
	$(call cc,mkcameofw,-Wall)
	$(call cc,mkcasfw)
	$(call cc,mkchkimg)
	$(call cc,mkcsysimg)
	$(call cc,mkdapimg)
	$(call cc,mkdapimg2)
	$(call cc,mkdhpimg buffalo-lib,-Wall)
	$(call cc,mkdlinkfw mkdlinkfw-lib,-lz -Wall --std=c99)
	$(call cc,mkdniimg)
	$(call cc,mkedimaximg)
	$(call cc,mkfwimage,-lz -Wall -Werror -Wextra -D_FILE_OFFSET_BITS=64)
	$(call cc,mkfwimage2,-lz)
	$(call cc,mkheader_gemtek,-lz)
	$(call cc,mkhilinkfw,-lcrypto)
	$(call cc,mkmerakifw sha1,-Wall)
	$(call cc,mkmerakifw-old,-Wall)
	$(call cc,mkmylofw)
	$(call cc,mkplanexfw sha1)
	$(call cc,mkporayfw,-Wall)
	$(call cc,mkrasimage,--std=gnu99)
	$(call cc,mkrtn56uimg,-lz)
	$(call cc,mksenaofw md5,-Wall --std=gnu99)
	$(call cc,mksercommfw,-Wall)
	$(call cc,mktitanimg)
	$(call cc,mktplinkfw mktplinkfw-lib md5,-Wall -fgnu89-inline)
	$(call cc,mktplinkfw2 mktplinkfw-lib md5,-fgnu89-inline)
	$(call cc,mkwrggimg md5,-Wall)
	$(call cc,mkwrgimg md5,-Wall)
	$(call cc,mkzcfw cyg_crc32)
	$(call cc,mkzynfw)
	$(call cc,motorola-bin)
	$(call cc,nand_ecc)
	$(call cc,nec-enc,-Wall --std=gnu99)
	$(call cc,osbridge-crc)
	$(call cc,oseama md5,-Wall)
	$(call cc,otrx)
	$(call cc,pc1crypt)
	$(call cc,ptgen cyg_crc32)
	$(call cc,seama md5)
	$(call cc,sign_dlink_ru md5,-Wall)
	$(call cc,spw303v)
	$(call cc,srec2bin)
	$(call cc,tplink-safeloader md5,-Wall --std=gnu99)
	$(call cc,trx)
	$(call cc,trx2edips)
	$(call cc,trx2usr)
	$(call cc,uimage_padhdr,-Wall -lz)
	$(call cc,wrt400n cyg_crc32)
	$(call cc,xorimage)
	$(call cc,zyimage,-Wall)
	$(call cc,zyxbcm)
endef

define Host/Install
	$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/* $(STAGING_DIR_HOST)/bin/
endef

$(eval $(call HostBuild))