move compile-time package dependencies in a separate file (sdk-compatible)
[openwrt/svn-archive/archive.git] / openwrt / package / Makefile
1 # Main makefile for the packages
2 include $(TOPDIR)/rules.mk
3 include $(TOPDIR)/package/depend.mk
4
5 package-$(BR2_PACKAGE_6TUNNEL) += 6tunnel
6 package-$(BR2_PACKAGE_AICCU) += aiccu
7 package-$(BR2_PACKAGE_AIRCRACK) += aircrack
8 package-$(BR2_PACKAGE_AMWALL) += amwall
9 package-$(BR2_PACKAGE_ARPD) += arpd
10 package-$(BR2_PACKAGE_ARPTABLES) += arptables
11 package-$(BR2_PACKAGE_ARPWATCH) += arpwatch
12 package-$(BR2_PACKAGE_ASTERISK) += asterisk
13 package-$(BR2_COMPILE_ATFTP) += atftp
14 package-$(BR2_COMPILE_AVAHI) += avahi
15 package-$(BR2_COMPILE_BC) += bc
16 package-$(BR2_COMPILE_BIND) += bind
17 package-$(BR2_PACKAGE_BITCHX) += bitchx
18 package-$(BR2_PACKAGE_BITLBEE) += bitlbee
19 package-$(BR2_PACKAGE_BLUEZ_LIBS) += bluez-libs
20 package-$(BR2_PACKAGE_BLUEZ_UTILS) += bluez-utils
21 package-$(BR2_PACKAGE_BRIDGE) += bridge
22 package-$(BR2_PACKAGE_BUSYBOX) += busybox
23 package-$(BR2_PACKAGE_BWM) += bwm
24 package-$(BR2_PACKAGE_CBTT) += cbtt
25 package-$(BR2_PACKAGE_CGILIB) += cgilib
26 package-$(BR2_PACKAGE_CHILLISPOT) += chillispot
27 package-$(BR2_PACKAGE_CIFSMOUNT) += cifsmount
28 package-$(BR2_PACKAGE_CLICK) += click
29 package-$(BR2_PACKAGE_CLINKC) += clinkc
30 package-$(BR2_PACKAGE_COLLECTD) += collectd
31 package-$(BR2_PACKAGE_CTORRENT) += ctorrent
32 package-$(BR2_PACKAGE_CUPS) += cups
33 package-$(BR2_COMPILE_CURL) += curl
34 package-$(BR2_PACKAGE_CUTTER) += cutter
35 package-$(BR2_COMPILE_CYRUS_SASL) += cyrus-sasl
36 package-$(BR2_COMPILE_DB) += libdb
37 package-$(BR2_PACKAGE_DECO) += deco
38 package-$(BR2_COMPILE_DHCP) += dhcp
39 package-$(BR2_PACKAGE_DHCP6) += dhcp6
40 package-$(BR2_PACKAGE_DHCP_FORWARDER) += dhcp-forwarder
41 package-$(BR2_PACKAGE_DNSMASQ) += dnsmasq
42 package-$(BR2_PACKAGE_DOSFSTOOLS) += dosfstools
43 package-$(BR2_PACKAGE_DROPBEAR) += dropbear
44 package-$(BR2_PACKAGE_DSNIFF) += dsniff
45 package-$(BR2_PACKAGE_E2FSPROGS) += e2fsprogs
46 package-$(BR2_PACKAGE_EBTABLES) += ebtables
47 package-$(BR2_PACKAGE_ELINKS) += elinks
48 package-$(BR2_PACKAGE_ETHER_WAKE) += ether-wake
49 package-$(BR2_COMPILE_EXPAT) += expat
50 package-$(BR2_PACKAGE_EZIPUPDATE) += ez-ipupdate
51 package-$(BR2_PACKAGE_FETCHMAIL) += fetchmail
52 package-$(BR2_COMPILE_FLAC) += flac
53 package-$(BR2_PACKAGE_FPING) += fping
54 package-$(BR2_PACKAGE_FPROBE) += fprobe
55 package-$(BR2_PACKAGE_FPROBE_ULOG) += fprobe-ulog
56 package-$(BR2_PACKAGE_FREERADIUS) += freeradius
57 package-$(BR2_COMPILE_FREETYPE) += freetype
58 package-$(BR2_PACKAGE_FRICKIN) += frickin
59 package-$(BR2_COMPILE_FUSE) += fuse
60 package-$(BR2_PACKAGE_GDBSERVER) += gdbserver
61 package-$(BR2_COMPILE_GLIB) += glib
62 package-$(BR2_PACKAGE_GMEDIASERVER) += gmediaserver
63 package-$(BR2_COMPILE_GMP) += gmp
64 package-$(BR2_COMPILE_GNUTLS) += gnutls
65 package-$(BR2_PACKAGE_GPSD) += gpsd
66 package-$(BR2_COMPILE_GSM) += gsm
67 package-$(BR2_PACKAGE_HASERL) += haserl
68 package-$(BR2_PACKAGE_HEYU) += heyu
69 package-$(BR2_PACKAGE_HOSTAP_UTILS) += hostap-utils
70 package-$(BR2_PACKAGE_HOSTAPD) += hostapd
71 package-$(BR2_COMPILE_HOWL) += howl
72 package-$(BR2_PACKAGE_HTPDATE) += htpdate
73 package-$(BR2_PACKAGE_HTTPING) += httping
74 package-$(BR2_PACKAGE_ICECAST) += icecast
75 package-$(BR2_PACKAGE_ID3LIB) += id3lib
76 package-$(BR2_PACKAGE_IFTOP) += iftop
77 package-$(BR2_PACKAGE_IGMPPROXY) += igmpproxy
78 package-$(BR2_PACKAGE_IPCAD) += ipcad
79 package-$(BR2_PACKAGE_IPERF) += iperf
80 package-$(BR2_PACKAGE_IPKG) += ipkg
81 package-$(BR2_COMPILE_IPROUTE2) += iproute2
82 package-$(BR2_PACKAGE_IPSEC_TOOLS) += ipsec-tools
83 package-$(BR2_PACKAGE_IPSET) += ipset
84 package-$(BR2_COMPILE_IPTABLES) += iptables
85 package-$(BR2_PACKAGE_IPTABLES_SNMP) += iptables-snmp
86 package-$(BR2_PACKAGE_IPTRAF) += iptraf
87 package-$(BR2_PACKAGE_IRSSI) += irssi
88 package-$(BR2_PACKAGE_JAMVM) += jamvm
89 package-$(BR2_COMPILE_JPEG) += jpeg
90 package-$(BR2_COMPILE_KISMET) += kismet
91 package-$(BR2_COMPILE_KNOCK) += knock
92 package-$(BR2_PACKAGE_L2TPD) += l2tpd
93 package-$(BR2_PACKAGE_L2TPNS) += l2tpns
94 package-$(BR2_PACKAGE_LCD4LINUX) += lcd4linux
95 package-$(BR2_PACKAGE_LESS) += less
96 package-$(BR2_PACKAGE_LIBAMSEL) += libamsel
97 package-$(BR2_PACKAGE_LIBAO) += libao
98 package-$(BR2_PACKAGE_LIBART) += libart
99 package-$(BR2_PACKAGE_LIBCLI) += libcli
100 package-$(BR2_PACKAGE_LIBDAEMON) += libdaemon
101 package-$(BR2_PACKAGE_LIBDNET) += libdnet
102 package-$(BR2_PACKAGE_LIBELF) += libelf
103 package-$(BR2_PACKAGE_LIBEVENT) += libevent
104 package-$(BR2_PACKAGE_LIBFFI_SABLE) += libffi-sable
105 package-$(BR2_PACKAGE_LIBGCRYPT) += libgcrypt
106 package-$(BR2_PACKAGE_LIBGD) += libgd
107 package-$(BR2_PACKAGE_LIBGDBM) += libgdbm
108 package-$(BR2_PACKAGE_LIBGPG_ERROR) += libgpg-error
109 package-$(BR2_PACKAGE_LIBICONV) += libiconv
110 package-$(BR2_PACKAGE_LIBID3TAG) += libid3tag
111 package-$(BR2_PACKAGE_LIBLZO) += liblzo
112 package-$(BR2_PACKAGE_LIBMAD) += libmad
113 package-$(BR2_PACKAGE_LIBNET) += libnet
114 package-$(BR2_PACKAGE_LIBNIDS) += libnids
115 package-$(BR2_PACKAGE_LIBOGG) += libogg
116 package-$(BR2_PACAKGE_LIBOL) += libol
117 package-$(BR2_PACKAGE_LIBOSIP2) += libosip2
118 package-$(BR2_PACKAGE_LIBPCAP) += libpcap
119 package-$(BR2_PACKAGE_LIBPNG) += libpng
120 package-$(BR2_PACKAGE_LIBPTHREAD) += libpthread
121 package-$(BR2_PACKAGE_LIBTASN1) += libtasn1
122 package-$(BR2_COMPILE_LIBTOOL) += libtool
123 package-$(BR2_PACKAGE_LIBUPNP) += libupnp
124 package-$(BR2_PACKAGE_LIBUSB) += libusb
125 package-$(BR2_PACKAGE_LIBVORBIS) += libvorbis
126 package-$(BR2_PACKAGE_LIBVORBISIDEC) += libvorbisidec
127 package-$(BR2_PACKAGE_LIBWRAP) += tcp_wrappers
128 package-$(BR2_PACKAGE_LIBXML2) += libxml2
129 package-$(BR2_PACKAGE_LIBXSLT) += libxslt
130 package-$(BR2_PACKAGE_LIGHTTPD) += lighttpd
131 package-$(BR2_PACKAGE_LINUX_ATM) += linux-atm
132 package-$(BR2_PACKAGE_LOGROTATE) += logrotate
133 package-$(BR2_PACKAGE_LRZSZ) += lrzsz
134 package-$(BR2_COMPILE_LUA) += lua
135 package-$(BR2_PACKAGE_MACCHANGER) += macchanger
136 package-$(BR2_PACKAGE_MADPLAY) += madplay
137 package-$(BR2_PACKAGE_MARADNS) += maradns
138 package-$(BR2_COMPILE_MATRIXSSL) += matrixssl
139 package-$(BR2_PACKAGE_MGETTY) += mgetty
140 package-$(BR2_PACKAGE_MIAU) += miau
141 package-$(BR2_PACKAGE_MIAX) += miax
142 package-$(BR2_PACKAGE_MICROCOM) += microcom
143 package-$(BR2_PACKAGE_MICROPERL) += microperl
144 package-$(BR2_COMPILE_MINI_HTTPD) += mini_httpd
145 package-$(BR2_PACKAGE_MINI_SENDMAIL) += mini_sendmail
146 package-$(BR2_COMPILE_MIREDO) += miredo
147 package-$(BR2_COMPILE_MONIT) += monit
148 package-$(BR2_PACKAGE_MOTION) += motion
149 package-$(BR2_PACKAGE_MPD) += mpd
150 package-$(BR2_PACKAGE_MRD6) += mrd6
151 package-$(BR2_PACKAGE_MT_DAAPD) += mt-daapd
152 package-$(BR2_PACKAGE_MTD) += mtd
153 package-$(BR2_PACKAGE_MTR) += mtr
154 package-$(BR2_PACKAGE_MUTT) += mutt
155 package-$(BR2_COMPILE_MYSQL) += mysql
156 package-$(BR2_PACKAGE_NANO) += nano
157 package-$(BR2_COMPILE_NCURSES) += ncurses
158 package-$(BR2_COMPILE_NDISC6) += ndisc
159 package-$(BR2_COMPILE_NET_SNMP) += net-snmp
160 package-$(BR2_PACKAGE_NETPERF) += netperf
161 package-$(BR2_PACKAGE_NETSTAT_NAT) += netstat-nat
162 package-$(BR2_PACKAGE_NFS_SERVER) += nfs-server
163 package-$(BR2_PACKAGE_NMAP) += nmap
164 package-$(BR2_PACKAGE_NOCATSPLASH) += nocatsplash
165 package-$(BR2_PACKAGE_NTPCLIENT) += ntpclient
166 package-$(BR2_PACKAGE_NVRAM) += nvram
167 package-$(BR2_PACKAGE_OLSRD) += olsrd
168 package-$(BR2_COMPILE_OPENCDK) += opencdk
169 package-$(BR2_PACKAGE_OPENH323) += openh323
170 package-$(BR2_COMPILE_OPENLDAP) += openldap
171 package-$(BR2_PACKAGE_OPENNTPD) += openntpd
172 package-$(BR2_PACKAGE_OPENSER) += openser
173 package-$(BR2_COMPILE_OPENSSH) += openssh
174 package-$(BR2_COMPILE_OPENSSL) += openssl
175 package-$(BR2_PACKAGE_OPENSWAN) += openswan
176 package-$(BR2_PACKAGE_OPENVPN) += openvpn
177 package-$(BR2_COMPILE_OSIRIS) += osiris
178 package-$(BR2_PACKAGE_PALANTIR) += palantir
179 package-$(BR2_PACKAGE_P910ND) += p910nd
180 package-$(BR2_PACKAGE_PARPROUTED) += parprouted
181 package-$(BR2_PACKAGE_PCIUTILS) += pciutils
182 package-$(BR2_COMPILE_PCMCIA_CS) += pcmcia-cs
183 package-$(BR2_COMPILE_PCRE) += pcre
184 package-$(BR2_PACKAGE_PEERCAST) += peercast
185 package-$(BR2_PACKAGE_PEERGUARDIAN) += peerguardian
186 package-$(BR2_COMPILE_PHP4) += php4
187 package-$(BR2_COMPILE_PHP5) += php5
188 package-$(BR2_PACKAGE_PICOCOM) += picocom
189 package-$(BR2_PACKAGE_PIPACS) += pipacs
190 package-$(BR2_COMPILE_PMACCT) += pmacct
191 package-$(BR2_COMPILE_POPT) += popt
192 package-$(BR2_PACKAGE_PORTMAP) += portmap
193 package-$(BR2_PACKAGE_PORTSENTRY) += portsentry
194 package-$(BR2_COMPILE_POSTGRESQL) += postgresql
195 package-$(BR2_PACKAGE_PPP) += ppp
196 package-$(BR2_PACKAGE_PPTP) += pptp
197 package-$(BR2_PACKAGE_PPTPD) += pptpd
198 package-$(BR2_PACKAGE_PRIVOXY) += privoxy
199 package-$(BR2_PACKAGE_PROCMAIL) += procmail
200 package-$(BR2_PACKAGE_PSYBNC) += psybnc
201 package-$(BR2_PACKAGE_PTUNNEL) += ptunnel
202 package-$(BR2_PACKAGE_PWLIB) += pwlib
203 package-$(BR2_PACKAGE_QUAGGA) += quagga
204 package-$(BR2_COMPILE_RADIUSCLIENT_NG) += radiusclient-ng
205 package-$(BR2_PACKAGE_RADVD) += radvd
206 package-$(BR2_PACKAGE_RARPD) += rarpd
207 package-$(BR2_COMPILE_READLINE) += readline
208 package-$(BR2_PACKAGE_REAIM) += reaim
209 package-$(BR2_PACKAGE_ROBOCFG) += robocfg
210 package-$(BR2_COMPILE_RP_PPPOE) += rp-pppoe
211 package-$(BR2_PACKAGE_RRDCOLLECT) += rrdcollect
212 package-$(BR2_COMPILE_RRDTOOL) += rrdtool
213 package-$(BR2_COMPILE_RRDTOOL1) += rrdtool1
214 package-$(BR2_COMPILE_RRS) += rrs
215 package-$(BR2_PACKAGE_RSYNC) += rsync
216 package-$(BR2_PACKAGE_SABLEVM) += sablevm
217 package-$(BR2_COMPILE_SABLEVM_CLASSPATH) += sablevm-classpath
218 package-$(BR2_COMPILE_SAMBA) += samba
219 package-$(BR2_PACKAGE_SANE_BACKENDS) += sane-backends
220 package-$(BR2_PACKAGE_SCANLOGD) += scanlogd
221 package-$(BR2_PACKAGE_SCDP) += scdp
222 package-$(BR2_PACKAGE_SCREEN) += screen
223 package-$(BR2_PACKAGE_SDK) += sdk
224 package-$(BR2_PACKAGE_SER2NET) += ser2net
225 package-$(BR2_PACKAGE_SERDISPLIB) += serdisplib
226 package-$(BR2_PACKAGE_SETPWC) += setpwc
227 package-$(BR2_PACKAGE_SETSERIAL) += setserial
228 package-$(BR2_PACKAGE_SHAT) += shat
229 package-$(BR2_COMPILE_SHFS) += shfs
230 package-$(BR2_PACKAGE_SIPP) += sipp
231 package-$(BR2_PACKAGE_SIPROXD) += siproxd
232 package-$(BR2_PACKAGE_SIPSAK) += sipsak
233 package-$(BR2_PACKAGE_SLURM) += slurm
234 package-$(BR2_COMPILE_SNORT) += snort
235 package-$(BR2_COMPILE_SNORT_WIRELESS) += snort-wireless
236 package-$(BR2_PACKAGE_SOCAT) += socat
237 package-$(BR2_COMPILE_SPEEX) += speex
238 package-$(BR2_COMPILE_SQLITE) += sqlite
239 package-$(BR2_COMPILE_SQLITE2) += sqlite2
240 package-$(BR2_PACKAGE_SSMTP) += ssmtp
241 package-$(BR2_PACKAGE_SSLTUNNEL) += ssltunnel
242 package-$(BR2_PACKAGE_SRELAY) += srelay
243 package-$(BR2_PACKAGE_STRACE) += strace
244 package-$(BR2_PACKAGE_SYSLOG_NG) += syslog-ng
245 package-$(BR2_PACKAGE_TCPDUMP) += tcpdump
246 package-$(BR2_PACKAGE_TINC) += tinc
247 package-$(BR2_PACKAGE_TINYPROXY) += tinyproxy
248 package-$(BR2_PACKAGE_TOR) += tor
249 package-$(BR2_PACKAGE_TTCP) += ttcp
250 package-$(BR2_PACKAGE_UCLIBCXX) += uclibc++
251 package-$(BR2_PACKAGE_UDP_BROADCAST_RELAY) += udp-broadcast-relay
252 package-$(BR2_PACKAGE_ULOGD) += ulogd
253 package-$(BR2_PACKAGE_UPDATEDD) += updatedd
254 package-$(BR2_COMPILE_USBUTILS) += usbutils
255 package-$(BR2_PACKAGE_USTL) += ustl
256 package-$(BR2_COMPILE_UTIL_LINUX) += util-linux
257 package-$(BR2_PACKAGE_UDEV) += udev
258 package-$(BR2_PACKAGE_VIM) += vim
259 package-$(BR2_PACKAGE_VGP) += vgp
260 package-$(BR2_PACKAGE_VNC_REFLECTOR) += vnc-reflector
261 package-$(BR2_PACKAGE_VNSTAT) += vnstat
262 package-$(BR2_PACKAGE_VPNC) += vpnc
263 package-$(BR2_PACKAGE_VRRPD) += vrrpd
264 package-$(BR2_PACKAGE_VTUN) += vtun
265 package-$(BR2_PACKAGE_VSFTPD) += vsftpd
266 package-$(BR2_PACKAGE_WATCHDOG) += watchdog
267 package-$(BR2_PACKAGE_WCCPD) += wccpd
268 package-$(BR2_PACKAGE_WIFICONF) += wificonf
269 package-$(BR2_PACKAGE_WIFIDOG) += wifidog
270 package-$(BR2_PACKAGE_WIVIZ) += wiviz
271 package-$(BR2_PACKAGE_WIRELESS_TOOLS) += wireless-tools
272 package-$(BR2_PACKAGE_WKNOCK) += wknock
273 package-$(BR2_PACKAGE_WOL) += wol
274 package-$(BR2_PACKAGE_WONDERSHAPER) += wondershaper
275 package-$(BR2_PACKAGE_WPA_SUPPLICANT) += wpa_supplicant
276 package-$(BR2_PACKAGE_WPUT) += wput
277 package-$(BR2_PACKAGE_WRT_RADAUTH) += wrt-radauth
278 package-$(BR2_PACKAGE_WX200D) += wx200d
279 package-$(BR2_PACKAGE_XINETD) += xinetd
280 package-$(BR2_PACKAGE_XSUPPLICANT) += xsupplicant
281 package-$(BR2_PACKAGE_ZLIB) += zlib
282
283 DEV_LIBS:=tcp_wrappers glib ncurses openssl pcre popt zlib libnet libpcap mysql postgresql iptables matrixssl liblzo gmp fuse portmap libelf uclibc++ speex libpng libgd wireless-tools nvram linux-atm libamsel libao libart libdaemon libdb libdnet libevent libffi-sable libgcrypt libgdbm libgpg-error libid3tag libmad libnet libnids libogg libol libosip2 libpcap radiusclient-ng libtasn1 libupnp libusb libvorbis libvorbisidec libxml2 libxslt id3lib net-snmp
284 DEV_LIBS_COMPILE:=$(patsubst %,%-compile,$(DEV_LIBS))
285 SDK_DEFAULT_PACKAGES:=busybox dnsmasq iptables wireless-tools dropbear bridge ipkg ppp
286 SDK_DEFAULT_COMPILE:=$(patsubst %,%-compile,$(SDK_DEFAULT_PACKAGES))
287 COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m))
288 INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y))
289
290 all: compile
291 clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m))
292 compile: $(COMPILE_PACKAGES)
293 install: base-files-install $(INSTALL_PACKAGES)
294
295 $(COMPILE_PACKAGES): base-files-compile
296 $(INSTALL_PACKAGES): base-files-install
297
298 sdk-compile: $(DEV_LIBS_COMPILE) $(SDK_DEFAULT_COMPILE)
299
300 $(STAMP_DIR):
301 mkdir -p $@
302
303 $(TARGET_DIR):
304 mkdir -p $(TARGET_DIR)
305
306 %-prepare: $(STAMP_DIR) $(TARGET_DIR)
307 @[ -f $(STAMP_DIR)/.$@ ] || { \
308 $(START_TRACE) "package/$(patsubst %-prepare,%,$@)-prepare: "; \
309 $(MAKE) -C $(patsubst %-prepare,%,$@) prepare && { \
310 touch $(STAMP_DIR)/.$@; \
311 $(CMD_TRACE) " done"; \
312 $(END_TRACE); \
313 } \
314 }
315
316 %-compile:
317 @[ -f $(STAMP_DIR)/.$@ ] || { \
318 $(START_TRACE) "package/$(patsubst %-compile,%,$@)-compile: "; \
319 $(MAKE) -C $(patsubst %-compile,%,$@) compile && { \
320 touch $(STAMP_DIR)/.$(patsubst %-compile,%,$@)-prepare; \
321 touch $(STAMP_DIR)/.$@; \
322 $(CMD_TRACE) " done"; \
323 $(END_TRACE); \
324 } \
325 }
326
327 %-install: %-compile
328 @$(START_TRACE) "package/$(patsubst %-install,%,$@)-install: "
329 @$(MAKE) -C $(patsubst %-install,%,$@) install
330 @$(CMD_TRACE) " done"
331 @$(END_TRACE)
332
333 %-rebuild:
334 @$(START_TRACE) "package/$(patsubst %-rebuild,%,$@)-rebuild: "
335 @rm -f $(STAMP_DIR)/.$(patsubst %-rebuild,%,$@)-*
336 $(MAKE) -C $(patsubst %-rebuild,%,$@) rebuild
337 @$(CMD_TRACE) " done"
338 @$(END_TRACE)
339
340 %-clean:
341 @$(START_TRACE) "package/$(patsubst %-clean,%,$@)-clean: "
342 @$(MAKE) -C $(patsubst %-clean,%,$@) clean
343 @rm -f $(STAMP_DIR)/.$(patsubst %-clean,%,$@)-*
344 @$(CMD_TRACE) " done"
345 @$(END_TRACE)
346