allow coexistance of N build and AC build.
[tomato.git] / release / src / router / Makefile
blob54a187447f555efc88943e82efcaf2aeeb17eced
1 # Broadcom Linux Router Makefile
3 # Copyright 2005, Broadcom Corporation
4 # All Rights Reserved.
6 # THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
7 # KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
8 # SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
9 # FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
13 include common.mak
15 #TOMATO_EXPERIMENTAL=0
17 #export PARALLEL_BUILD :=
18 export PARALLEL_BUILD := -j`grep -c '^processor' /proc/cpuinfo`
23 SEP=echo "\033[41;1m $@ \033[0m"
26 # standard packages
28 obj-y += lzma-loader
29 obj-y += nvram
30 obj-y += shared
31 obj-y += prebuilt
32 obj-y += igmpproxy
33 obj-y += iptables
34 obj-y += rc
35 obj-y += iproute2
36 obj-y += rom
37 obj-y += others
38 obj-y += busybox
39 obj-y += httpd
40 obj-y += www
41 obj-y += bridge
42 obj-y += dnsmasq
43 obj-y += etc
44 # obj-y += vlan # use Busybox vconfig
45 obj-y += pppd
46 obj-y += rp-pppoe
47 obj-y += utils
48 obj-y += ntpc
49 obj-y += rstats
50 obj-y += cstats
51 obj-y += udpxy
52 obj-$(TCONFIG_TOR) += tor
53 obj-$(TCONFIG_TOR) += libevent
54 obj-$(TCONFIG_TOR) += zlib
55 obj-$(TCONFIG_DNSCRYPT) += dnscrypt
56 obj-$(TCONFIG_SNMP) += snmp
57 obj-$(TCONFIG_SDHC) += mmc
59 # !!TB - updated Broadcom Wireless driver
60 obj-y += et
61 obj-y += libbcmcrypto
62 obj-y += wlconf
64 obj-y += cyassl
65 obj-y += mssl
66 obj-y += mdu
67 obj-$(TCONFIG_RAID) += mdadm
69 obj-$(TCONFIG_NFS) += portmap
70 obj-$(TCONFIG_NFS) += e2fsprogs
71 obj-$(TCONFIG_NFS) += libevent
72 obj-$(TCONFIG_NFS) += libnfsidmap
73 obj-$(TCONFIG_NFS) += nfs-utils
75 #Roadkill
76 obj-$(TCONFIG_NOCAT) += nocat
78 # !!TB
79 obj-$(TCONFIG_USB) += p910nd
81 obj-$(TCONFIG_UPS) += apcupsd
83 ifeq ($(CONFIG_LINUX26),y)
84 obj-$(TCONFIG_USB) += sd-idle
85 else
86 obj-$(TCONFIG_USB) += scsi-idle
87 endif
89 obj-y += libusb10
90 #obj-y += libusb
91 obj-y += usbmodeswitch
92 obj-$(TCONFIG_FTP) += vsftpd
94 ifeq ($(CONFIG_LINUX26),y)
95 ifeq ($(TCONFIG_SAMBASRV),y)
96 NEED_EX_NLS = y
97 endif
98 ifeq ($(TCONFIG_USB_EXTRAS),y)
99 NEED_EX_USB = y
100 endif
101 ifeq ($(TCONFIG_MICROSD),y)
102 NEED_SD_MODULES = y
103 endif
104 endif
106 ifeq ($(TCONFIG_SAMBASRV),y)
107 ifeq ($(TCONFIG_SAMBA3),y)
108 NEED_SAMBA3 = y
109 else
110 NEED_SAMBA2 = y
111 endif
112 endif
114 ifeq ($(TCONFIG_IPV6),y)
115 export TCONFIG_IPV6 := y
116 else
117 TCONFIG_IPV6 :=
118 endif
120 ifeq ($(TCONFIG_IPSEC),y)
121 export TCONFIG_IPSEC := y
122 else
123 TCONFIG_IPSEC :=
124 endif
126 ifeq ($(TCONFIG_RAID),y)
127 export TCONFIG_RAID := y
128 else
129 TCONFIG_RAID :=
130 endif
132 obj-$(NEED_SAMBA2) += samba
133 obj-$(NEED_SAMBA3) += samba3
134 obj-$(TCONFIG_NTFS) += ntfs-3g
135 obj-$(TCONFIG_EBTABLES) += ebtables
136 #obj-$(TCONFIG_IPV6) += libdaemon
137 #obj-$(TCONFIG_IPV6) += radvd
138 obj-$(TCONFIG_IPV6) += dhcpv6
140 obj-$(TCONFIG_MEDIA_SERVER) += zlib
141 obj-$(TCONFIG_MEDIA_SERVER) += sqlite
142 obj-$(TCONFIG_MEDIA_SERVER) += ffmpeg
143 obj-$(TCONFIG_MEDIA_SERVER) += libogg
144 obj-$(TCONFIG_MEDIA_SERVER) += flac
145 obj-$(TCONFIG_MEDIA_SERVER) += jpeg
146 obj-$(TCONFIG_MEDIA_SERVER) += libexif
147 obj-$(TCONFIG_MEDIA_SERVER) += libid3tag
148 obj-$(TCONFIG_MEDIA_SERVER) += libvorbis
149 obj-$(TCONFIG_MEDIA_SERVER) += minidlna
150 MEDIA_SERVER_STATIC=y
152 obj-y += libnfnetlink
153 obj-y += miniupnpd
154 # obj-y += upnp
155 obj-$(CONFIG_LINUX26) += ipset
159 # configurable packages
161 obj-$(TCONFIG_L2TP) += xl2tpd
162 obj-$(TCONFIG_PPTP) += accel-pptp
163 obj-$(TCONFIG_PPTPD) += pptpd
164 obj-$(TCONFIG_HTTPS) += openssl
165 obj-$(TCONFIG_SSH) += dropbear
166 obj-$(TCONFIG_ZEBRA) += zebra
167 # obj-$(TCONFIG_IPP2P) += ipp2p
168 obj-$(TCONFIG_LZO) += lzo
169 obj-$(TCONFIG_OPENVPN) += openvpn
170 obj-$(TCONFIG_EMF) += emf
171 obj-$(TCONFIG_EMF) += igs
173 obj-$(TCONFIG_BBT) += openssl
174 obj-$(TCONFIG_BBT) += libevent
175 obj-$(TCONFIG_BBT) += libcurl
176 obj-$(TCONFIG_BBT) += transmission
177 obj-$(TCONFIG_BT) += btgui
178 obj-$(TCONFIG_BBT) += zlib
179 #obj-$(TCONFIG_BBT) += libiconv
181 obj-$(CONFIG_LINUX26) += hotplug2
182 obj-$(CONFIG_LINUX26) += udevtrigger
184 ifeq ($(TCONFIG_OPENVPN),y)
185 export FULL_OPENSSL := y
186 else
187 ifeq ($(TCONFIG_FTP_SSL),y)
188 export FULL_OPENSSL := y
189 else
190 ifeq ($(TCONFIG_BBT),y)
191 export FULL_OPENSSL := y
192 else
193 ifeq ($(TCONFIG_TOR),y)
194 export FULL_OPENSSL := y
195 else
196 FULL_OPENSSL :=
197 endif
198 endif
199 endif
200 endif
202 obj-y += wanuptime
204 obj-clean := $(foreach obj, $(obj-y) $(obj-n) $(obj-), $(obj)-clean)
205 obj-install := $(foreach obj,$(obj-y),$(obj)-install)
210 # Basic rules
213 all: clean-build libc $(obj-y) kernel
216 kernel: $(LINUXDIR)/.config
217 @$(SEP)
219 @if ! grep -q "CONFIG_EMBEDDED_RAMDISK=y" $(LINUXDIR)/.config ; then \
220 $(MAKE) -C $(LINUXDIR) zImage CC=$(KERNELCC) $(PARALLEL_BUILD); \
222 if grep -q "CONFIG_MODULES=y" $(LINUXDIR)/.config ; then \
223 $(MAKE) -C $(LINUXDIR) modules CC=$(KERNELCC) $(PARALLEL_BUILD); \
225 ifeq ($(CONFIG_LINUX26),y)
226 $(MAKE) -C $(LINUXDIR)/arch/mips/brcm-boards/bcm947xx/compressed srctree=$(LINUXDIR) $(PARALLEL_BUILD)
227 endif
230 lzma-loader:
231 $(MAKE) -C $(SRCBASE)/lzma-loader CROSS_COMPILE=$(CROSS_COMPILE) LD=$(LD) $(PARALLEL_BUILD)
233 lzma-loader-install: lzma-loader
234 @$(SEP)
237 kmod: dummy
238 $(MAKE) -C $(LINUXDIR) modules CC=$(KERNELCC) $(PARALLEL_BUILD)
240 testfind:
241 cd $(TARGETDIR)/lib/modules/* && find -name "*.o" -exec mv -i {} . \; || true
242 cd $(TARGETDIR)/lib/modules/* && find -type d -delete || true
244 install package: $(obj-install) $(LINUXDIR)/.config
245 @$(SEP)
247 install -d $(TARGETDIR)
250 # kernel modules
251 $(MAKE) -C $(LINUXDIR) modules_install \
252 INSTALL_MOD_STRIP="--strip-debug -x -R .comment -R .note -R .pdr -R .mdebug.abi32 -R .note.gnu.build-id -R .gnu.attributes -R .reginfo" \
253 DEPMOD=/bin/true INSTALL_MOD_PATH=$(TARGETDIR)
255 ifneq ($(CONFIG_LINUX26),y)
256 find $(TARGETDIR)/lib/modules -name wl.*o -exec $(STRIP) --strip-unneeded -x {} \;
257 find $(TARGETDIR)/lib/modules -name et.*o -exec $(STRIP) --strip-unneeded -x {} \;
258 find $(TARGETDIR)/lib/modules -name bcm57*.*o -exec $(STRIP) --strip-unneeded -x {} \;
259 find $(TARGETDIR)/lib/modules -name ctf.*o -exec $(STRIP) --strip-unneeded -x {} \;
260 find $(TARGETDIR)/lib/modules -name emf.*o -exec $(STRIP) --strip-unneeded -x {} \;
261 find $(TARGETDIR)/lib/modules -name igs.*o -exec $(STRIP) --strip-unneeded -x {} \;
262 find $(TARGETDIR)/lib/modules -name jffs*.*o -exec $(STRIP) --strip-unneeded -x {} \;
264 find $(TARGETDIR)/lib/modules -name *.*o -exec $(STRIP) --strip-debug -x -R .mdebug.abi32 {} \;
265 endif
267 -cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv diag/* . && rm -rf diag
269 # nice and clean
270 -cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv et.4702/* . && rm -rf et.4702 || true
271 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv et/* . && rm -rf et
272 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv wl/* . && rm -rf wl
273 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv cifs/* . && rm -rf cifs
274 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv jffs2/* . && rm -rf jffs2 || true
275 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv jffs/* . && rm -rf jffs || true
276 cd $(TARGETDIR)/lib/modules/*/kernel/lib && mv zlib_inflate/* . && rm -rf zlib_inflate || true
277 cd $(TARGETDIR)/lib/modules/*/kernel/lib && mv zlib_deflate/* . && rm -rf zlib_deflate || true
278 cd $(TARGETDIR)/lib/modules/*/kernel/lib && mv lzo/* . && rm -rf lzo || true
279 rm -rf $(TARGETDIR)/lib/modules/*/pcmcia
281 ##!!TB
282 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv ext2/* . && rm -rf ext2 || true
283 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv ext3/* . && rm -rf ext3 || true
284 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv jbd/* . && rm -rf jbd || true
285 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv fat/* . && rm -rf fat || true
286 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv jfs/* . && rm -rf jfs || true
287 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv vfat/* . && rm -rf vfat || true
288 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv msdos/* . && rm -rf msdos || true
289 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv fuse/* . && rm -rf fuse || true
290 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv ntfs/* . && rm -rf ntfs || true
291 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv smbfs/* . && rm -rf smbfs || true
292 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv reiserfs/* . && rm -rf reiserfs || true
293 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv hfs/* . && rm -rf hfs || true
294 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv hfsplus/* . && rm -rf hfsplus || true
295 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv lockd/* . && rm -rf lockd || true
296 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv nfsd/* . && rm -rf nfsd || true
297 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv nfs/* . && rm -rf nfs || true
298 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv xfs/* . && rm -rf xfs || true
299 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv nls/* . && rm -rf nls || true
300 cd $(TARGETDIR)/lib/modules/*/kernel/fs && mv exportfs/* . && rm -rf exportfs || true
301 cd $(TARGETDIR)/lib/modules/*/kernel/net && mv sunrpc/* . && rm -rf sunrpc || true
302 cd $(TARGETDIR)/lib/modules/*/kernel/net && mv auth_gss/* . && rm -rf auth_gss || true
303 cd $(TARGETDIR)/lib/modules/*/kernel/sound/core && mv oss/* . && rm -rf oss || true
304 cd $(TARGETDIR)/lib/modules/*/kernel/sound/core && mv seq/* . && rm -rf seq || true
305 cd $(TARGETDIR)/lib/modules/*/kernel/sound && mv core/* . && rm -rf core || true
306 cd $(TARGETDIR)/lib/modules/*/kernel/sound && mv usb/* . && rm -rf usb || true
307 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv hcd/* . && rm -rf hcd || true
308 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv host/* . && rm -rf host || true
309 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv storage/* . && rm -rf storage || true
310 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv serial/* . && rm -rf serial || true
311 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv core/* . && rm -rf core || true
312 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv class/* . && rm -rf class || true
313 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv misc/* . && rm -rf misc || true
314 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/usb && mv usbip/* . && rm -rf usbip || true
315 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/mmc && mv core/* . && rm -rf core || true
316 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/mmc && mv card/* . && rm -rf card || true
317 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/mmc && mv host/* . && rm -rf host || true
318 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/hid && mv usbhid/* . && rm -rf usbhid || true
319 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/input && mv joystick/* . && rm -rf joystick || true
320 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/input && mv keyboard/* . && rm -rf keyboard || true
321 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/input && mv misc/* . && rm -rf misc || true
322 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/input && mv mouse/* . && rm -rf mouse || true
323 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media/video && mv uvc/* . && rm -rf uvc || true
324 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media/video && mv pwc/* . && rm -rf pwc || true
325 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media/video/gspca && mv gl860/* . && rm -rf gl860 || true
326 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media/video/gspca && mv m5602/* . && rm -rf m5602 || true
327 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media/video/gspca && mv stv06xx/* . && rm -rf stv06xx || true
328 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media/video && mv gspca/* . && rm -rf gspca || true
329 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/media && mv video/* . && rm -rf video || true
331 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv bcm57xx/* . && rm -rf bcm57xx || true
332 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv emf/* . && rm -rf emf || true
333 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv igs/* . && rm -rf igs || true
334 cd $(TARGETDIR)/lib/modules/*/kernel/drivers/net && mv ctf/* . && rm -rf ctf || true
335 cd $(TARGETDIR)/lib/modules && rm -f */source || true
337 # misc
338 for dir in $(wildcard $(patsubst %,$(INSTALLDIR)/%,$(obj-y))) ; do \
339 (cd $${dir} && tar cpf - .) | (cd $(TARGETDIR) && tar xpf -) \
340 done
342 ifneq ($(TCONFIG_L7),y)
343 rm -f $(TARGETDIR)/usr/lib/iptables/libipt_layer7.so
344 endif
346 # uClibc
347 install $(LIBDIR)/ld-uClibc.so.0 $(TARGETDIR)/lib/
348 install $(LIBDIR)/libcrypt.so.0 $(TARGETDIR)/lib/
349 install $(LIBDIR)/libpthread.so.0 $(TARGETDIR)/lib/
350 install $(LIBDIR)/libgcc_s.so.1 $(TARGETDIR)/lib/
351 $(STRIP) $(TARGETDIR)/lib/libgcc_s.so.1
352 install $(LIBDIR)/libc.so.0 $(TARGETDIR)/lib/
353 install $(LIBDIR)/libdl.so.0 $(TARGETDIR)/lib/
354 install $(LIBDIR)/libm.so.0 $(TARGETDIR)/lib/
355 install $(LIBDIR)/libnsl.so.0 $(TARGETDIR)/lib/
356 ifeq ($(TCONFIG_SSH),y)
357 install $(LIBDIR)/libutil.so.0 $(TARGETDIR)/lib/
358 endif
359 ifeq ($(TCONFIG_BBT),y)
360 install $(LIBDIR)/librt-0.9.30.1.so $(TARGETDIR)/lib/librt.so.0
361 endif
362 ifneq ($(TCONFIG_OPTIMIZE_SHARED_LIBS),y)
363 install $(LIBDIR)/libresolv.so.0 $(TARGETDIR)/lib/
364 $(STRIP) $(TARGETDIR)/lib/*.so.0
365 endif
367 @cd $(TARGETDIR) && $(TOP)/others/rootprep.sh
369 @echo ---
371 ifeq ($(TCONFIG_OPTIMIZE_SHARED_LIBS),y)
372 @$(SRCBASE)/btools/libfoo.pl
373 else
374 @$(SRCBASE)/btools/libfoo.pl --noopt
375 endif
376 @chmod 0555 $(TARGETDIR)/lib/*.so*
377 @chmod 0555 $(TARGETDIR)/usr/lib/*.so*
379 # !!TB - moved to run after libfoo.pl - to make sure shared libs include all symbols needed by extras
380 # separated/copied extra stuff
381 @rm -rf $(PLATFORMDIR)/extras
382 @mkdir $(PLATFORMDIR)/extras
383 @mkdir $(PLATFORMDIR)/extras/ipsec
384 @mkdir $(PLATFORMDIR)/extras/raid
385 @mv $(TARGETDIR)/lib/modules/*/kernel/net/ipv4/ip_gre.*o $(PLATFORMDIR)/extras/ || true
386 # $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/usr/lib/iptables/libipt_policy.*o $(PLATFORMDIR)/extras/ipsec/ || true
388 $(if $(TCONFIG_OPENVPN),@cp -f,$(if $(TCONFIG_USB_EXTRAS),@cp -f,$(if $(TCONFIG_IPV6),@cp -f,@mv))) $(TARGETDIR)/lib/modules/*/kernel/drivers/net/tun.*o $(PLATFORMDIR)/extras/ || true
389 $(if $(TCONFIG_EBTABLES),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/bridge/netfilter/ebt*.*o $(PLATFORMDIR)/extras/ || true
391 $(if $(TCONFIG_RAID),@cp -f,@mv) $(TARGETDIR)/usr/sbin/mdadm $(PLATFORMDIR)/extras/raid/ || true
392 $(if $(TCONFIG_RAID),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/md/*.ko $(PLATFORMDIR)/extras/raid/ || true
393 $(if $(TCONFIG_RAID),@ls,@rm -rf) $(TARGETDIR)/lib/modules/*/kernel/drivers/md || true
395 @cp $(TARGETDIR)/lib/modules/*/kernel/net/ipv4/netfilter/ip_set*o $(PLATFORMDIR)/extras/ || true
396 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/net/ifb.*o $(PLATFORMDIR)/extras/ || true
397 @mv $(TARGETDIR)/lib/modules/*/kernel/net/sched/sch_red.*o $(PLATFORMDIR)/extras/ || true
398 @mv $(TARGETDIR)/lib/modules/*/kernel/fs/ntfs.*o $(PLATFORMDIR)/extras/ || true
399 @mv $(TARGETDIR)/lib/modules/*/kernel/fs/smbfs.*o $(PLATFORMDIR)/extras/ || true
400 @mv $(TARGETDIR)/lib/modules/*/kernel/fs/reiserfs.*o $(PLATFORMDIR)/extras/ || true
401 @mv $(TARGETDIR)/lib/modules/*/kernel/fs/jfs.*o $(PLATFORMDIR)/extras/ || true
402 $(if $(TCONFIG_NFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nfs.*o $(PLATFORMDIR)/extras/ || true
403 $(if $(TCONFIG_NFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nfsd.*o $(PLATFORMDIR)/extras/ || true
404 $(if $(TCONFIG_NFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/lockd.*o $(PLATFORMDIR)/extras/ || true
405 $(if $(TCONFIG_NFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/exportfs.*o $(PLATFORMDIR)/extras/ || true
406 $(if $(TCONFIG_NFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/sunrpc.*o $(PLATFORMDIR)/extras/ || true
407 @mv $(TARGETDIR)/lib/modules/*/kernel/net/auth_rpcgss.*o $(PLATFORMDIR)/extras/ || true
408 @mv $(TARGETDIR)/lib/modules/*/kernel/net/rpcsec_gss_krb5.*o $(PLATFORMDIR)/extras/ || true
409 @mv $(TARGETDIR)/lib/modules/*/kernel/fs/xfs.*o $(PLATFORMDIR)/extras/ || true
410 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/scsi/sr_mod.*o $(PLATFORMDIR)/extras/ || true
411 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/scanner.*o $(PLATFORMDIR)/extras/ || true
413 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/usbserial.*o $(PLATFORMDIR)/extras/ || true
414 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/option.*o $(PLATFORMDIR)/extras/ || true
415 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/sierra.*o $(PLATFORMDIR)/extras/ || true
416 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/*acm.*o $(PLATFORMDIR)/extras/ || true
417 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/net/usb/cdc_ether.*o $(PLATFORMDIR)/extras/ || true
418 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/net/mii.*o $(PLATFORMDIR)/extras/ || true
419 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/net/usb/usbnet.*o $(PLATFORMDIR)/extras/ || true
420 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/ftdi_sio.*o $(PLATFORMDIR)/extras/ || true
421 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/pl2303.*o $(PLATFORMDIR)/extras/ || true
422 $(if $(NEED_SD_MODULES),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/mmc/*.*o $(PLATFORMDIR)/extras/ || true
423 $(if $(NEED_SD_MODULES),@ls,@rm -rf) $(TARGETDIR)/lib/modules/*/kernel/drivers/mmc || true
425 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/ch341.*o $(PLATFORMDIR)/extras/ || true
426 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/usbip*.*o $(PLATFORMDIR)/extras/ || true
427 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/usbkbd.*o $(PLATFORMDIR)/extras/ || true
428 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/usbmouse.*o $(PLATFORMDIR)/extras/ || true
429 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/hid*.*o $(PLATFORMDIR)/extras/ || true
430 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/ipw.*o $(PLATFORMDIR)/extras/ || true
431 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/audio.*o $(PLATFORMDIR)/extras/ || true
432 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/ov51*.*o $(PLATFORMDIR)/extras/ || true
433 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/pwc*.*o $(PLATFORMDIR)/extras/ || true
434 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/emi*.*o $(PLATFORMDIR)/extras/ || true
435 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/net/usb/cdc_subset.*o $(PLATFORMDIR)/extras/ || true
436 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/net/usb/rndis_host.*o $(PLATFORMDIR)/extras/ || true
437 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/net/usb || true
438 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/media/* $(PLATFORMDIR)/extras/ || true
439 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/media || true
440 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/sound/* $(PLATFORMDIR)/extras/ || true
441 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/sound || true
442 @mv $(TARGETDIR)/lib/modules/*/kernel/sound/* $(PLATFORMDIR)/extras/ || true
443 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/sound || true
444 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/input/* $(PLATFORMDIR)/extras/ || true
445 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/input || true
446 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/hid/* $(PLATFORMDIR)/extras/ || true
447 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/hid || true
448 @cp -f $(TARGETDIR)/lib/modules/*/kernel/drivers/net/bcm57*.*o $(PLATFORMDIR)/extras/ || true
449 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/net/ctf*.*o $(PLATFORMDIR)/extras/ || true
450 $(if $(TCONFIG_PPTP),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/net/pptp.*o $(PLATFORMDIR)/extras/ || true
451 $(if $(TCONFIG_L2TP),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/net/pppol2tp.*o $(PLATFORMDIR)/extras/ || true
452 @mv $(TARGETDIR)/lib/modules/*/kernel/drivers/net/ppp_deflate.*o $(PLATFORMDIR)/extras/ || true
453 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/crypto/*.ko $(PLATFORMDIR)/extras/ipsec/ || true
454 $(if $(TCONFIG_IPSEC),@ls,@rm -rf) $(TARGETDIR)/lib/modules/*/kernel/crypto || true
455 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/xfrm/*.ko $(PLATFORMDIR)/extras/ipsec/ || true
456 $(if $(TCONFIG_IPSEC),@ls,@rm -rf) $(TARGETDIR)/lib/modules/*/kernel/net/xfrm || true
457 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/key/*.ko $(PLATFORMDIR)/extras/ipsec/ || true
458 $(if $(TCONFIG_IPSEC),@ls,@rm -rf) $(TARGETDIR)/lib/modules/*/kernel/net/key || true
459 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/ipv*/xfrm*.ko $(PLATFORMDIR)/extras/ipsec/ || true
460 # $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/ipv*/tunnel*.ko $(PLATFORMDIR)/extras/ipsec/ || true
461 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/ipv*/ah*.ko $(PLATFORMDIR)/extras/ipsec/ || true
462 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/ipv*/esp*.ko $(PLATFORMDIR)/extras/ipsec/ || true
463 $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/ipv*/ipcomp*.ko $(PLATFORMDIR)/extras/ipsec/ || true
464 # $(if $(TCONFIG_IPSEC),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/netfilter/xt_policy.ko $(PLATFORMDIR)/extras/ipsec/ || true
466 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_cp9*.*o $(PLATFORMDIR)/extras/ || true
467 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_cp1251.*o $(PLATFORMDIR)/extras/ || true
468 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_euc-jp.*o $(PLATFORMDIR)/extras/ || true
469 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_sjis.*o $(PLATFORMDIR)/extras/ || true
470 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_gb2312.*o $(PLATFORMDIR)/extras/ || true
471 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_euc-kr.*o $(PLATFORMDIR)/extras/ || true
472 $(if $(NEED_EX_NLS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_big5.*o $(PLATFORMDIR)/extras/ || true
474 $(if $(TCONFIG_USB),@cp -f,$(if $(TCONFIG_SDHC),@cp -f,@mv)) $(TARGETDIR)/lib/modules/*/kernel/fs/nls_*.*o $(PLATFORMDIR)/extras/ || true
475 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/usb/*.*o $(PLATFORMDIR)/extras/ || true
476 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/scsi/*.*o $(PLATFORMDIR)/extras/ || true
477 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/leds/*.*o $(PLATFORMDIR)/extras/ || true
478 $(if $(TCONFIG_USB),@cp -f,$(if $(TCONFIG_SDHC),@cp -f,@mv)) $(TARGETDIR)/lib/modules/*/kernel/fs/ext2.*o $(PLATFORMDIR)/extras/ || true
479 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/ext3.*o $(PLATFORMDIR)/extras/ || true
480 $(if $(TCONFIG_USB),@cp -f,$(if $(TCONFIG_SDHC),@cp -f,@mv)) $(TARGETDIR)/lib/modules/*/kernel/fs/jbd.*o $(PLATFORMDIR)/extras/ || true
481 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/mbcache.*o $(PLATFORMDIR)/extras/ || true
482 $(if $(TCONFIG_USB),@cp -f,$(if $(TCONFIG_SDHC),@cp -f,@mv)) $(TARGETDIR)/lib/modules/*/kernel/fs/fat.*o $(PLATFORMDIR)/extras/ || true
483 $(if $(TCONFIG_USB),@cp -f,$(if $(TCONFIG_SDHC),@cp -f,@mv)) $(TARGETDIR)/lib/modules/*/kernel/fs/vfat.*o $(PLATFORMDIR)/extras/ || true
484 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/msdos.*o $(PLATFORMDIR)/extras/ || true
485 $(if $(TCONFIG_USB),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/fuse.*o $(PLATFORMDIR)/extras/ || true
486 $(if $(TCONFIG_HFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/hfs.*o $(PLATFORMDIR)/extras/ || true
487 $(if $(TCONFIG_HFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/hfsplus.*o $(PLATFORMDIR)/extras/ || true
489 ifneq ($(TCONFIG_USB),y)
490 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/usb || true
491 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/scsi || true
492 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/leds || true
493 endif
495 $(if $(TCONFIG_USB_EXTRAS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/connector/cn.*o $(PLATFORMDIR)/extras/ || true
496 $(if $(TCONFIG_USB_EXTRAS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/drivers/block/loop.*o $(PLATFORMDIR)/extras/ || true
497 ifneq ($(TCONFIG_USB_EXTRAS),y)
498 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/connector || true
499 @rm -rf $(TARGETDIR)/lib/modules/*/kernel/drivers/block || true
500 endif
501 $(if $(TCONFIG_CIFS),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/cifs.*o $(PLATFORMDIR)/extras/ || true
502 $(if $(TCONFIG_JFFS2),$(if $(TCONFIG_JFFSV1),@mv,@cp -f),@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/jffs2.*o $(PLATFORMDIR)/extras/ || true
503 $(if $(TCONFIG_JFFS2),$(if $(TCONFIG_JFFSV1),@mv,@cp -f),@mv) $(TARGETDIR)/lib/modules/*/kernel/lib/zlib_*.*o $(PLATFORMDIR)/extras/ || true
504 $(if $(TCONFIG_JFFS2),$(if $(TCONFIG_JFFSV1),@cp -f,@mv),@mv) $(TARGETDIR)/lib/modules/*/kernel/fs/jffs.*o $(PLATFORMDIR)/extras/ || true
505 [ ! -f $(TARGETDIR)/lib/modules/*/kernel/lib/* ] && rm -rf $(TARGETDIR)/lib/modules/*/kernel/lib || true
506 $(if $(TCONFIG_L7),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/ipv4/netfilter/ipt_layer7.*o $(PLATFORMDIR)/extras/ || true
507 $(if $(TCONFIG_L7),@cp -f,@mv) $(TARGETDIR)/lib/modules/*/kernel/net/netfilter/xt_layer7.*o $(PLATFORMDIR)/extras/ || true
509 @mkdir -p $(PLATFORMDIR)/extras/apps
510 @mkdir -p $(PLATFORMDIR)/extras/lib
512 @mv $(TARGETDIR)/usr/sbin/ttcp $(PLATFORMDIR)/extras/apps/ || true
513 @mv $(TARGETDIR)/usr/sbin/mii-tool $(PLATFORMDIR)/extras/apps/ || true
514 @cp -r $(TARGETDIR)/usr/sbin/robocfg $(PLATFORMDIR)/extras/apps/ || true
516 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/usr/lib/libusb* $(PLATFORMDIR)/extras/lib/ || true
517 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/usr/sbin/usb_modeswitch $(PLATFORMDIR)/extras/apps/ || true
518 @cp usbmodeswitch/usb_modeswitch.conf $(PLATFORMDIR)/extras/apps/usb_modeswitch.conf || true
519 @cp usbmodeswitch/usb_modeswitch.setup $(PLATFORMDIR)/extras/apps/usb_modeswitch.setup || true
520 @mkdir -p $(PLATFORMDIR)/extras/apps/usb_modeswitch.d
521 @cp -f usbmodeswitch/data/usb_modeswitch.d/* $(PLATFORMDIR)/extras/apps/usb_modeswitch.d || true
522 ifneq ($(NEED_EX_USB),y)
523 @rm -rf $(TARGETDIR)/rom/etc/usb_modeswitch.d || true
524 @rm -f $(TARGETDIR)/rom/etc/usb_modeswitch.conf || true
525 endif
526 $(if $(NEED_EX_USB),@cp -f,@mv) $(TARGETDIR)/usr/sbin/chat $(PLATFORMDIR)/extras/apps/ || true
528 @mkdir -p $(TARGETDIR)/rom/etc/l7-protocols
529 ifeq ($(TCONFIG_L7PAT),y)
530 @cd layer7 && ./squish.sh
531 cp layer7/squished/*.pat $(TARGETDIR)/rom/etc/l7-protocols
532 endif
534 ifeq ($(TCONFIG_PPTPD),y)
535 @mkdir -p $(TARGETDIR)/rom/etc/vpn
536 cp rc/vpn/* $(TARGETDIR)/rom/etc/vpn
537 chmod +x $(TARGETDIR)/rom/etc/vpn/*
538 endif
540 busybox/examples/depmod.pl -k $(LINUXDIR)/vmlinux -b $(TARGETDIR)/lib/modules/*/
541 @mv $(TARGETDIR)/lib/modules/*/modules.dep $(TARGETDIR)/lib/modules/
542 @echo ---
544 @rm -f $(TARGETDIR)/lib/modules/*/build
546 @$(MAKE) -C $(LINUXDIR)/scripts/squashfs mksquashfs-lzma
547 @$(LINUXDIR)/scripts/squashfs/mksquashfs-lzma $(TARGETDIR) $(PLATFORMDIR)/target.image -all-root -noappend -no-duplicates | tee target.info
549 # Package kernel and filesystem
550 # if grep -q "CONFIG_EMBEDDED_RAMDISK=y" $(LINUXDIR)/.config ; then \
551 # cp $(PLATFORMDIR)/target.image $(LINUXDIR)/arch/mips/ramdisk/$${CONFIG_EMBEDDED_RAMDISK_IMAGE} ; \
552 # $(MAKE) -C $(LINUXDIR) zImage ; \
553 # else \
554 # cp $(LINUXDIR)/arch/mips/brcm-boards/bcm947xx/compressed/vmlinuz $(PLATFORMDIR)/ ; \
555 # trx -o $(PLATFORMDIR)/linux.trx $(PLATFORMDIR)/vmlinuz $(PLATFORMDIR)/target.image ; \
556 # fi
558 # Pad self-booting Linux to a 64 KB boundary
559 # cp $(LINUXDIR)/arch/mips/brcm-boards/bcm947xx/compressed/zImage $(PLATFORMDIR)/
560 # dd conv=sync bs=64k < $(PLATFORMDIR)/zImage > $(PLATFORMDIR)/linux.bin
561 # Append filesystem to self-booting Linux
562 # cat $(PLATFORMDIR)/target.image >> $(PLATFORMDIR)/linux.bin
565 libc: $(LIBDIR)/ld-uClibc.so.0
566 # $(MAKE) -C ../../../tools-src/uClibc all
567 # $(MAKE) -C ../../../tools-src/uClibc install
571 # cleaners
574 clean: clean-build $(obj-clean)
575 rm -rf layer7/squished
576 rm -f .ipv6-y .ipv6-n
577 rm -f .fullssl-y .fullssl-n
578 make -C config clean
580 clean-build: dummy
581 rm -rf $(TARGETDIR)
582 rm -rf $(INSTALLDIR)
583 rm -f $(PLATFORMDIR)/linux.trx $(PLATFORMDIR)/vmlinuz $(PLATFORMDIR)/target.image
584 rm -rf $(PLATFORMDIR)/extras
586 distclean: clean
587 ifneq ($(INSIDE_MAK),1)
588 $(MAKE) -C $(SRCBASE) $@ INSIDE_MAK=1
589 endif
590 # -rm -f $(LIBDIR)/*.so.0 $(LIBDIR)/*.so
593 # configuration
596 CONFIG_IN := config/config.in
598 config/conf config/mconf:
599 @$(MAKE) -C config
601 rconf: config/conf
602 @config/conf $(CONFIG_IN)
604 rmconf: config/mconf
605 @config/mconf $(CONFIG_IN)
607 roldconf: config/conf
608 @config/conf -o $(CONFIG_IN)
609 @$(MAKE) shared-clean rc-clean nvram-clean httpd-clean prebuilt-clean libbcmcrypto-clean dhcpv6-clean
611 kconf:
612 @$(MAKE) -C $(LINUXDIR) config
614 kmconf:
615 @$(MAKE) -C $(LINUXDIR) menuconfig
617 koldconf:
618 @$(MAKE) -C $(LINUXDIR) oldconfig
619 @$(MAKE) -C $(LINUXDIR) include/linux/version.h
621 bboldconf:
622 @$(MAKE) -C busybox oldconfig
624 config conf: rconf kconf
626 menuconfig mconf: rmconf kmconf
628 .ipv6-y .ipv6-n:
629 @rm -f .ipv6-y .ipv6-n
630 @$(MAKE) iptables-clean ebtables-clean pppd-clean zebra-clean dnsmasq-clean iproute2-clean
631 @touch $@
633 .fullssl-y .fullssl-n:
634 @rm -f .fullssl-y .fullssl-n
635 @$(MAKE) openssl-clean vsftpd-clean mssl-clean mdu-clean httpd-clean
636 @touch $@
638 dependconf: .ipv6-$(if $(TCONFIG_IPV6),y,n) .fullssl-$(if $(FULL_OPENSSL),y,n)
640 oldconfig oldconf: koldconf roldconf dependconf bboldconf
644 # overrides and extra dependencies
647 busybox: dummy
648 @$(MAKE) -C busybox EXTRA_CFLAGS="-fPIC $(EXTRACFLAGS)" $(PARALLEL_BUILD)
650 busybox-install:
651 rm -rf $(INSTALLDIR)/busybox
652 $(MAKE) -C busybox install EXTRA_CFLAGS="-fPIC $(EXTRACFLAGS)" CONFIG_PREFIX=$(INSTALLDIR)/busybox
654 busybox-clean:
655 -@$(MAKE) -C busybox distclean
657 busybox-config:
658 $(MAKE) -C busybox menuconfig
661 httpd: shared nvram mssl
662 @$(SEP)
663 @$(MAKE) -C httpd
665 www-install:
666 @$(MAKE) -C www install INSTALLDIR=$(INSTALLDIR)/www TOMATO_EXPERIMENTAL=$(TOMATO_EXPERIMENTAL)
668 matrixssl:
669 @$(SEP)
670 @$(MAKE) -C matrixssl/src
672 matrixssl-install:
673 @true
675 matrixssl-clean:
676 -@$(MAKE) -C matrixssl/src clean
678 cyassl/stamp-h1:
679 @cd cyassl && CC=$(CC) AR=$(AR) RANLIB=$(RANLIB) LD=$(LD) \
680 CFLAGS="-Os -Wall -fPIC $(EXTRACFLAGS) -ffunction-sections -fdata-sections \
681 -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED" \
682 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
683 PTHREAD_LIBS="-lpthread" \
684 $(CONFIGURE)
685 @touch cyassl/stamp-h1
687 cyassl: cyassl/stamp-h1
688 @$(SEP)
689 @$(MAKE) -C cyassl
691 cyassl-clean:
692 -@$(MAKE) -C cyassl clean
693 @rm -f cyassl/stamp-h1
695 cyassl-install:
696 @true
698 ifeq ($(FULL_OPENSSL),y)
699 OPENSSL_CIPHERS:=enable-rc5
700 else
701 OPENSSL_CIPHERS:=no-dh no-idea no-rc2 no-rc5 no-engine no-aes192 no-cast
702 endif
704 openssl/stamp-h1:
705 cd openssl && \
706 ./Configure linux-mipsel --openssldir=/etc --cross-compile-prefix=' ' \
707 -ffunction-sections -fdata-sections -Wl,--gc-sections \
708 shared $(OPENSSL_CIPHERS) \
709 no-sha0 no-smime no-camellia no-krb5 no-rmd160 no-ripemd \
710 no-seed no-capieng no-cms no-gms no-gmp no-rfc3779 \
711 no-ec no-ecdh no-ecdsa no-err no-hw no-jpake no-threads \
712 no-zlib no-engines no-sse2 \
713 no-dtls1 no-store no-psk no-md2 no-mdc2 no-ts
715 @$(MAKE) -C openssl clean
716 @touch openssl/stamp-h1
718 openssl: openssl/stamp-h1
720 openssl-clean:
721 -@$(MAKE) -C openssl clean
722 @rm -f openssl/stamp-h1
724 openssl-install: openssl
725 install -D openssl/libcrypto.so.1.0.0 $(INSTALLDIR)/openssl/usr/lib/libcrypto.so.1.0.0
726 $(STRIP) $(INSTALLDIR)/openssl/usr/lib/libcrypto.so.1.0.0
727 cd $(INSTALLDIR)/openssl/usr/lib && ln -sf libcrypto.so.1.0.0 libcrypto.so
729 install -D openssl/apps/openssl $(INSTALLDIR)/openssl/usr/sbin/openssl
730 $(STRIP) $(INSTALLDIR)/openssl/usr/sbin/openssl
731 chmod 0500 $(INSTALLDIR)/openssl/usr/sbin/openssl
733 install -D -m 0500 httpd/gencert.sh $(INSTALLDIR)/openssl/usr/sbin/gencert.sh
735 # perl -e 'while (<>) { s/.SECS/time()-(24*60*60)/e; print; }' < httpd/gencert.sh > $(INSTALLDIR)/openssl/usr/sbin/gencert.sh
736 # chmod 0500 $(INSTALLDIR)/openssl/usr/sbin/gencert.sh
738 ifeq ($(FULL_OPENSSL),y)
739 install -D openssl/libssl.so.1.0.0 $(INSTALLDIR)/openssl/usr/lib/libssl.so.1.0.0
740 $(STRIP) $(INSTALLDIR)/openssl/usr/lib/libssl.so.1.0.0
741 cd $(INSTALLDIR)/openssl/usr/lib && ln -sf libssl.so.1.0.0 libssl.so
742 endif
744 mssl: $(if $(FULL_OPENSSL),openssl,cyassl)
746 mdu: shared mssl
748 rc: nvram shared
750 bridge/Makefile:
751 cd bridge && CFLAGS="-Os -g $(EXTRACFLAGS)" \
752 $(CONFIGURE) --prefix="" --with-linux-headers=$(LINUXDIR)/include
754 bridge: bridge/Makefile
755 @$(SEP)
756 @$(MAKE) -C bridge
758 bridge-clean:
759 -@$(MAKE) -C bridge clean
760 @rm -f bridge/Makefile
762 bridge-install:
763 install -D bridge/brctl/brctl $(INSTALLDIR)/bridge/usr/sbin/brctl
764 $(STRIP) $(INSTALLDIR)/bridge/usr/sbin/brctl
766 dnsmasq:
767 @$(SEP)
768 @$(MAKE) -C dnsmasq $(PARALLEL_BUILD) \
769 COPTS="$(if $(TCONFIG_IPV6),-DUSE_IPV6,-DNO_IPV6) $(if $(CONFIG_LINUX26),-DUSE_IPSET,-DNO_IPSET) -DHAVE_BROKEN_RTC -DHAVE_TOMATO $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
770 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC"
772 dnsmasq-install:
773 install -D dnsmasq/src/dnsmasq $(INSTALLDIR)/dnsmasq/usr/sbin/dnsmasq
774 $(STRIP) $(INSTALLDIR)/dnsmasq/usr/sbin/dnsmasq
776 iptables:
777 ifeq ($(CONFIG_LINUX26),y)
778 cp -f iptables/extensions/libipt_ipp2p_K26.c iptables/extensions/libipt_ipp2p.c
779 else
780 cp -f iptables/extensions/libipt_ipp2p_K24.c iptables/extensions/libipt_ipp2p.c
781 endif
782 @$(SEP)
783 $(MAKE) -C iptables BINDIR=/usr/sbin LIBDIR=/usr/lib KERNEL_DIR=$(LINUXDIR) COPT_FLAGS="-Os $(EXTRACFLAGS) -U CONFIG_NVRAM_SIZE"
785 iptables-install:
786 install -D iptables/iptables $(INSTALLDIR)/iptables/usr/sbin/iptables
787 cd $(INSTALLDIR)/iptables/usr/sbin && \
788 ln -sf iptables iptables-restore && \
789 ln -sf iptables iptables-save
791 install -d $(INSTALLDIR)/iptables/usr/lib/iptables
792 install -D iptables/extensions/*.so $(INSTALLDIR)/iptables/usr/lib/iptables/
794 install -D iptables/libiptc.so $(INSTALLDIR)/iptables/usr/lib/libiptc.so
796 $(STRIP) $(INSTALLDIR)/iptables/usr/sbin/iptables
797 $(STRIP) $(INSTALLDIR)/iptables/usr/lib/iptables/*.so
798 $(STRIP) $(INSTALLDIR)/iptables/usr/lib/libiptc.so
800 ifeq ($(TCONFIG_IPV6),y)
801 install iptables/ip6tables $(INSTALLDIR)/iptables/usr/sbin/ip6tables
802 $(STRIP) $(INSTALLDIR)/iptables/usr/sbin/ip6tables
803 cd $(INSTALLDIR)/iptables/usr/sbin && \
804 ln -sf ip6tables ip6tables-restore && \
805 ln -sf ip6tables ip6tables-save
806 endif
808 iptables-clean:
809 -@$(MAKE) -C iptables KERNEL_DIR=$(LINUXDIR) clean
811 ppp:
812 @$(SEP)
813 $(MAKE) -C ppp/pppoecd $* INSTALLDIR=$(INSTALLDIR)/ppp $(if $(TCONFIG_IPV6),HAVE_INET6=y,) $(PARALLEL_BUILD)
814 # $(MAKE) -C ppp/pppoecd $* INSTALLDIR=$(INSTALLDIR)/ppp DFLAGS="-DDEBUG -DDEBUGALL"
816 ppp-%:
817 $(MAKE) -C ppp/pppoecd $* INSTALLDIR=$(INSTALLDIR)/ppp $(if $(TCONFIG_IPV6),HAVE_INET6=y,)
819 rp-pppoe/src/stamp-h1: rp-pppoe/src/Makefile.in
820 cd rp-pppoe/src && CFLAGS="-g -O2 $(EXTRACFLAGS)" \
821 $(CONFIGURE) --prefix=/usr --enable-plugin=$(TOP)/pppd \
822 ac_cv_linux_kernel_pppoe=yes rpppoe_cv_pack_bitfields=rev
823 @touch rp-pppoe/src/stamp-h1
825 rp-pppoe: pppd rp-pppoe/src/stamp-h1
826 $(MAKE) -C rp-pppoe/src pppoe-relay rp-pppoe.so $(PARALLEL_BUILD)
828 rp-pppoe-clean:
829 -@$(MAKE) -C rp-pppoe/src clean
830 @rm -f rp-pppoe/src/pppoe-relay
831 @rm -f rp-pppoe/src/stamp-h1
833 rp-pppoe-install: rp-pppoe
834 install -D rp-pppoe/src/rp-pppoe.so $(INSTALLDIR)/rp-pppoe/usr/lib/pppd/rp-pppoe.so
835 $(STRIP) $(INSTALLDIR)/rp-pppoe/usr/lib/pppd/*.so
836 # install -D rp-pppoe/src/pppoe-relay $(INSTALLDIR)/rp-pppoe/usr/sbin/pppoe-relay
837 # $(STRIP) $(INSTALLDIR)/rp-pppoe/usr/sbin/pppoe-relay
840 upnp: nvram shared iptables
842 libnfnetlink/stamp-h1:
843 cd $(TOP)/libnfnetlink && CC=$(CC) STRIP='mipsel-uclibc-strip' \
844 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
845 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" \
846 $(CONFIGURE) --prefix=/usr --enable-shared --enable-static
847 touch libnfnetlink/stamp-h1
849 libnfnetlink: libnfnetlink/stamp-h1
850 @$(SEP)
851 $(MAKE) -C libnfnetlink
853 libnfnetlink-install:
854 install -D libnfnetlink/src/.libs/libnfnetlink.so.0.2.0 $(INSTALLDIR)/libnfnetlink/usr/lib/libnfnetlink.so.0.2.0
855 $(STRIP) -s $(INSTALLDIR)/libnfnetlink/usr/lib/libnfnetlink.so.0.2.0
856 cd $(INSTALLDIR)/libnfnetlink/usr/lib/ && \
857 ln -sf libnfnetlink.so.0.2.0 libnfnetlink.so.0 && \
858 ln -sf libnfnetlink.so.0.2.0 libnfnetlink.so
860 miniupnpd-config:
861 #ifeq ($(TCONFIG_IPV6),y)
862 # @cd miniupnpd && ./genconfig.sh --leasefile --ipv6
863 #else
864 @cd miniupnpd && ./genconfig.sh --leasefile
865 #endif
867 miniupnpd: iptables miniupnpd-config libnfnetlink
868 @$(SEP)
869 $(MAKE) -C miniupnpd miniupnpd -f Makefile.linux CC=$(CC) \
870 CFLAGS="-Wall -Os -D_GNU_SOURCE $(EXTRACFLAGS) -I$(TOP)/iptables/include -I$(TOP)/libnfnetlink/include" \
871 LDFLAGS="-L$(TOP)/iptables -liptc -L$(TOP)/libnfnetlink/src/.libs -lnfnetlink" LIBS="" $(PARALLEL_BUILD)
873 miniupnpd-clean:
874 -@$(MAKE) -C miniupnpd -f Makefile.linux clean
875 @rm -f miniupnpd/config.h
877 miniupnpd-install:
878 install -D miniupnpd/miniupnpd $(INSTALLDIR)/miniupnpd/usr/sbin/miniupnpd
879 $(STRIP) $(INSTALLDIR)/miniupnpd/usr/sbin/miniupnpd
881 # !!TB
882 shared: busybox
884 vsftpd: $(if $(TCONFIG_FTP_SSL),openssl,)
885 @$(SEP)
886 $(MAKE) -C vsftpd $(PARALLEL_BUILD)
888 vsftpd-install: vsftpd
889 install -D vsftpd/vsftpd $(INSTALLDIR)/vsftpd/usr/sbin/vsftpd
890 $(STRIP) -s $(INSTALLDIR)/vsftpd/usr/sbin/vsftpd
892 ntfs-3g/Makefile:
893 cd ntfs-3g && \
894 CC=$(CC) CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
895 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
896 $(CONFIGURE) --enable-shared=no --enable-static=no \
897 --disable-library --disable-ldconfig --disable-mount-helper --with-fuse=internal \
898 --disable-ntfsprogs --disable-crypto --without-uuid \
899 --disable-posix-acls --disable-nfconv --disable-dependency-tracking
901 ntfs-3g: ntfs-3g/Makefile
902 @$(MAKE) -C ntfs-3g $(PARALLEL_BUILD)
904 ntfs-3g-clean:
905 -@$(MAKE) -C ntfs-3g clean
906 @rm -f ntfs-3g/Makefile
908 ntfs-3g-install: ntfs-3g
909 install -D ntfs-3g/src/ntfs-3g $(INSTALLDIR)/ntfs-3g/bin/ntfs-3g
910 $(STRIP) -s $(INSTALLDIR)/ntfs-3g/bin/ntfs-3g
911 install -d $(INSTALLDIR)/ntfs-3g/sbin && cd $(INSTALLDIR)/ntfs-3g/sbin && \
912 ln -sf ../bin/ntfs-3g mount.ntfs-3g && \
913 ln -sf ../bin/ntfs-3g mount.ntfs
915 libusb10/Makefile: libusb10/Makefile.in
916 cd libusb10 && CFLAGS="-Os -Wall $(EXTRACFLAGS)" LIBS="-lpthread" \
917 $(CONFIGURE) --prefix=/usr ac_cv_lib_rt_clock_gettime=no
919 libusb10: libusb10/Makefile
920 $(MAKE) -C $@
922 libusb10-install: libusb10
923 install -D libusb10/libusb/.libs/libusb-1.0.so $(INSTALLDIR)/libusb10/usr/lib/libusb-1.0.so
924 $(STRIP) $(INSTALLDIR)/libusb10/usr/lib/*.so
926 libusb10-clean:
927 -@$(MAKE) -C $@ clean
928 @rm -rf libusb10/Makefile
930 libusb/Makefile: libusb/Makefile.in
931 cd libusb && CFLAGS="-Wall -Os $(EXTRACFLAGS)" \
932 $(CONFIGURE) --prefix=/usr \
933 LIBUSB_1_0_CFLAGS="-I$(TOP)/libusb10/libusb" \
934 LIBUSB_1_0_LIBS="-L$(TOP)/libusb10/libusb/.libs -lusb-1.0 -lpthread \
935 -Wl,-R/lib:/usr/lib:/opt/usr/lib:/usr/local/share"
937 libusb: libusb10 libusb/Makefile
938 $(MAKE) -C $@
940 libusb-install: libusb
941 install -D libusb/libusb/.libs/libusb-0.1.so $(INSTALLDIR)/libusb/usr/lib/libusb-0.1.so
942 $(STRIP) $(INSTALLDIR)/libusb/usr/lib/*.so
944 libusb-clean:
945 -@$(MAKE) -C $@ clean
946 @rm -rf libusb/Makefile
948 usbmodeswitch: libusb10
949 $(MAKE) -C $@ CC=$(CC) CFLAGS="-Os $(EXTRACFLAGS) -DLIBUSB10 \
950 -Wl,-R/lib:/usr/lib:/opt/usr/lib:/usr/local/share -lpthread \
951 -I$(TOP)/libusb10/libusb -L$(TOP)/libusb10/libusb/.libs -lusb-1.0"
953 usbmodeswitchdb-install:
954 @mkdir -p $(TARGETDIR)/rom/etc/usb_modeswitch.d
955 # compress whitespace
956 @for D in $(wildcard $(TOP)/usbmodeswitch/data/usb_modeswitch.d/*); do \
957 F=`basename $$D`; \
958 sed 's/###.*//g;s/[ \t]\+/ /g;s/^[ \t]*//;s/[ \t]*$$//;/^$$/d' < $$D > $(TARGETDIR)/rom/etc/usb_modeswitch.d/$$F; \
959 done
961 usbmodeswitch-install: usbmodeswitch usbmodeswitchdb-install
962 install -D usbmodeswitch/usb_modeswitch $(INSTALLDIR)/usbmodeswitch/usr/sbin/usb_modeswitch
963 $(STRIP) -s $(INSTALLDIR)/usbmodeswitch/usr/sbin/usb_modeswitch
964 @mkdir -p $(TARGETDIR)/rom/etc
965 @sed 's/#.*//g;s/[ \t]\+/ /g;s/^[ \t]*//;s/[ \t]*$$//;/^$$/d' < $(TOP)/usbmodeswitch/usb_modeswitch.conf > $(TARGETDIR)/rom/etc/usb_modeswitch.conf
967 #libdaemon: libdaemon/Makefile
968 #$(MAKE) -C $@
970 #libdaemon/Makefile: libdaemon/Makefile.in
971 # cd libdaemon && $(CONFIGURE) ac_cv_func_setpgrp_void=yes \
972 # --disable-dependency-tracking
974 #libdaemon-install: libdaemon
975 # install -D libdaemon/libdaemon/.libs/libdaemon.so.0.5.0 $(INSTALLDIR)/libdaemon/usr/lib/libdaemon.so.0.5.0
976 # $(STRIP) $(INSTALLDIR)/libdaemon/usr/lib/*.so.*
977 # cd $(INSTALLDIR)/libdaemon/usr/lib && \
978 # ln -sf libdaemon.so.0.5.0 libdaemon.so && \
979 # ln -sf libdaemon.so.0.5.0 libdaemon.so.0
981 #libdaemon-clean:
982 # -@$(MAKE) -C libdaemon distclean
984 #radvd/stamp-h1:
985 # cd radvd && CFLAGS="-Os $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
986 # LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" \
987 # $(CONFIGURE) --prefix="" --disable-dependency-tracking \
988 # DAEMON_CFLAGS="-I$(TOP)/libdaemon" \
989 # DAEMON_LIBS="-ldaemon -L$(TOP)/libdaemon/libdaemon/.libs"
990 # @$(MAKE) -C radvd clean
991 # @touch radvd/stamp-h1
993 #radvd: libdaemon radvd/stamp-h1
995 #radvd-clean:
996 # -@$(MAKE) -C radvd distclean
997 # @rm -f radvd/stamp-h1
999 #radvd-install: radvd
1000 # install -D radvd/radvd $(INSTALLDIR)/radvd/usr/sbin/radvd
1001 # $(STRIP) $(INSTALLDIR)/radvd/usr/sbin/radvd
1003 dhcpv6/stamp-h1:
1004 @cd dhcpv6 && \
1005 CFLAGS="-Os -Wall $(EXTRACFLAGS) -D_GNU_SOURCE -ffunction-sections -fdata-sections" \
1006 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1007 ac_cv_func_setpgrp_void=yes \
1008 $(CONFIGURE) --prefix= --with-localdbdir=/var
1009 @$(MAKE) -C dhcpv6 clean
1010 @touch dhcpv6/stamp-h1
1012 dhcpv6: dhcpv6/stamp-h1
1013 @$(SEP)
1014 @$(MAKE) -C dhcpv6 dhcp6c
1016 dhcpv6-install: dhcpv6
1017 install -D dhcpv6/dhcp6c $(INSTALLDIR)/dhcpv6/usr/sbin/dhcp6c
1018 $(STRIP) $(INSTALLDIR)/dhcpv6/usr/sbin/dhcp6c
1020 dhcpv6-clean:
1021 -@$(MAKE) -C dhcpv6 clean
1022 @rm -f dhcpv6/Makefile dhcpv6/stamp-h1
1025 p910nd:
1026 samba:
1027 samba3:
1029 nvram: shared
1031 prebuilt: shared libbcmcrypto
1033 vlan:
1034 @$(SEP)
1035 @$(MAKE) -C vlan CROSS=$(CROSS_COMPILE) # STRIPTOOL=$(STRIP)
1037 vlan-install:
1038 $(MAKE) -C vlan CROSS=$(CROSS_COMPILE) INSTALLDIR=$(INSTALLDIR) install # STRIPTOOL=$(STRIP)
1039 $(STRIP) $(INSTALLDIR)/vlan/usr/sbin/vconfig
1042 pptp-client-install:
1043 install -D pptp-client/pptp $(INSTALLDIR)/pptp-client/usr/sbin/pptp
1044 $(STRIP) $(INSTALLDIR)/pptp-client/usr/sbin/pptp
1047 accel-pptp: pppd accel-pptp/Makefile
1048 @$(MAKE) -C accel-pptp
1050 accel-pptp/Makefile: accel-pptp/Makefile.in $(LINUXDIR)/include/linux/version.h
1051 cd accel-pptp && CFLAGS="-g -O2 $(EXTRACFLAGS)" \
1052 $(CONFIGURE) --prefix=/usr KDIR=$(LINUXDIR) PPPDIR=$(TOP)/pppd
1054 accel-pptp-clean:
1055 -@$(MAKE) -C accel-pptp clean
1056 @rm -f accel-pptp/Makefile
1058 accel-pptp-install: accel-pptp
1059 install -D accel-pptp/src/.libs/pptp.so $(INSTALLDIR)/accel-pptp/usr/lib/pppd/pptp.so
1060 $(STRIP) $(INSTALLDIR)/accel-pptp/usr/lib/pppd/pptp.so
1062 pptpd/stamp-h1:
1063 cd pptpd && $(CONFIGURE) --prefix=$(INSTALLDIR)/pptpd --enable-bcrelay CC=mipsel-uclibc-gcc \
1064 STRIP=mipsel-uclibc-strip AR=mipsel-uclibc-ar LD=mipsel-uclibc-ld NM=mipsel-uclibc-nm RANLIB=mipsel-uclibc-ranlib
1065 touch pptpd/stamp-h1
1067 pptpd: pptpd/stamp-h1
1069 pptpd-install: pptpd
1070 @echo pptpd
1071 @install -D pptpd/pptpd $(INSTALLDIR)/pptpd/usr/sbin/pptpd
1072 @install -D pptpd/bcrelay $(INSTALLDIR)/pptpd/usr/sbin/bcrelay
1073 @install -D pptpd/pptpctrl $(INSTALLDIR)/pptpd/usr/sbin/pptpctrl
1074 @$(STRIP) $(INSTALLDIR)/pptpd/usr/sbin/pptpd
1075 @$(STRIP) $(INSTALLDIR)/pptpd/usr/sbin/bcrelay
1076 @$(STRIP) $(INSTALLDIR)/pptpd/usr/sbin/pptpctrl
1078 pptpd-clean:
1079 -@$(MAKE) -C pptpd clean
1080 rm -rf pptpd/stamp-h1 pptpd/.deps
1082 pppd/Makefile: pppd/linux/Makefile.top
1083 cd pppd && $(CONFIGURE) --prefix=/usr --sysconfdir=/tmp
1085 pppd: pppd/Makefile
1086 @$(SEP)
1087 @$(MAKE) -C pppd MFLAGS='$(if $(TCONFIG_IPV6),HAVE_INET6=y,) EXTRACFLAGS="$(EXTRACFLAGS)"'
1089 pppd-clean:
1090 -@$(MAKE) -C pppd clean
1091 @rm -f pppd/Makefile
1093 pppd-install: pppd
1094 install -D pppd/pppd/pppd $(INSTALLDIR)/pppd/usr/sbin/pppd
1095 $(STRIP) $(INSTALLDIR)/pppd/usr/sbin/pppd
1096 install -D pppd/chat/chat $(INSTALLDIR)/pppd/usr/sbin/chat
1097 $(STRIP) $(INSTALLDIR)/pppd/usr/sbin/chat
1098 ifeq ($(TCONFIG_L2TP),y)
1099 install -D pppd/pppd/plugins/pppol2tp/pppol2tp.so $(INSTALLDIR)/pppd/usr/lib/pppd/pppol2tp.so
1100 $(STRIP) $(INSTALLDIR)/pppd/usr/lib/pppd/*.so
1101 endif
1103 # ipupdate-install:
1104 # install -D ipupdate/ez-ipupdate $(INSTALLDIR)/ipupdate/usr/sbin/ez-ipupdate
1105 # $(STRIP) $(INSTALLDIR)/ipupdate/usr/sbin/ez-ipupdate
1107 zebra/stamp-h1:
1108 @cd zebra && rm -f config.cache && \
1109 CC=$(CC) AR=$(AR) RANLIB=$(RANLIB) LD=$(LD) \
1110 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1111 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1112 $(CONFIGURE) --sysconfdir=/etc \
1113 --enable-netlink $(if $(TCONFIG_IPV6),--enable-ipv6,--disable-ipv6) --disable-ripngd --disable-ospfd --disable-doc \
1114 --disable-ospf6d --disable-bgpd --disable-bgpd-announce
1115 @touch zebra/stamp-h1
1117 zebra: zebra/stamp-h1
1118 @$(MAKE) -C zebra CC=$(CC) AR=$(AR) RANLIB=$(RANLIB) LD=$(LD)
1120 zebra-clean:
1121 -@$(MAKE) -C zebra clean
1122 @rm -f zebra/stamp-h1
1124 zebra-install: zebra
1125 install -D zebra/zebra/zebra $(INSTALLDIR)/zebra/usr/sbin/zebra
1126 install -D zebra/ripd/ripd $(INSTALLDIR)/zebra/usr/sbin/ripd
1127 install -D zebra/lib/libzebra.so $(INSTALLDIR)/zebra/usr/lib/libzebra.so
1128 $(STRIP) $(INSTALLDIR)/zebra/usr/sbin/zebra
1129 $(STRIP) $(INSTALLDIR)/zebra/usr/sbin/ripd
1130 $(STRIP) $(INSTALLDIR)/zebra/usr/lib/libzebra.so
1133 rp-l2tp-install:
1134 install -d $(INSTALLDIR)/rp-l2tp/usr/lib/l2tp
1135 install rp-l2tp/handlers/*.so $(INSTALLDIR)/rp-l2tp/usr/lib/l2tp
1136 $(STRIP) $(INSTALLDIR)/rp-l2tp/usr/lib/l2tp/*.so
1137 install -D rp-l2tp/handlers/l2tp-control $(INSTALLDIR)/rp-l2tp/usr/sbin/l2tp-control
1138 $(STRIP) $(INSTALLDIR)/rp-l2tp/usr/sbin/l2tp-control
1139 install -D rp-l2tp/l2tpd $(INSTALLDIR)/rp-l2tp/usr/sbin/l2tpd
1140 $(STRIP) $(INSTALLDIR)/rp-l2tp/usr/sbin/l2tpd
1142 xl2tpd: pppd
1143 CFLAGS="-g $(EXTRACFLAGS)" $(MAKE) -C $@ PREFIX=/usr xl2tpd
1145 xl2tpd-install: xl2tpd
1146 install -D xl2tpd/xl2tpd $(INSTALLDIR)/xl2tpd/usr/sbin/xl2tpd
1147 $(STRIP) $(INSTALLDIR)/xl2tpd/usr/sbin/xl2tpd
1150 bpalogin-install:
1151 install -D bpalogin/bpalogin $(INSTALLDIR)/bpalogin/usr/sbin/bpalogin
1152 $(STRIP) $(INSTALLDIR)/bpalogin/usr/sbin/bpalogin
1155 # libnet:
1156 # @$(SEP)
1157 # @-mkdir -p libnet/lib
1158 # @$(MAKE) -C libnet CC=$(CC) AR=$(AR) RANLIB=$(RANLIB)
1160 # libpcap:
1161 # @$(SEP)
1162 # @$(MAKE) -C libpcap CC=$(CC) AR=$(AR) RANLIB=$(RANLIB)
1164 libbcm:
1165 @[ ! -f libbcm/Makefile ] || $(MAKE) -C libbcm
1167 libbcm-install:
1168 install -D libbcm/libbcm.so $(INSTALLDIR)/libbcm/usr/lib/libbcm.so
1169 $(STRIP) $(INSTALLDIR)/libbcm/usr/lib/libbcm.so
1172 iproute2:
1173 @$(SEP)
1174 @$(MAKE) -C $@ KERNEL_INCLUDE=$(LINUXDIR)/include EXTRACFLAGS="$(EXTRACFLAGS) $(if $(TCONFIG_IPV6),-DUSE_IPV6,-DNO_IPV6)"
1176 iproute2-install: iproute2
1177 install -D iproute2/tc/tc $(INSTALLDIR)/iproute2/usr/sbin/tc
1178 $(STRIP) $(INSTALLDIR)/iproute2/usr/sbin/tc
1179 install -D iproute2/ip/ip $(INSTALLDIR)/iproute2/usr/sbin/ip
1180 $(STRIP) $(INSTALLDIR)/iproute2/usr/sbin/ip
1183 ntpc: nvram shared
1186 dropbear: dropbear/config.h
1187 @$(SEP)
1188 @$(MAKE) -C dropbear PROGRAMS="dropbear dbclient dropbearkey scp" MULTI=1 $(PARALLEL_BUILD)
1190 dropbear-install:
1191 install -D dropbear/dropbearmulti $(INSTALLDIR)/dropbear/usr/bin/dropbearmulti
1192 $(STRIP) $(INSTALLDIR)/dropbear/usr/bin/dropbearmulti
1193 cd $(INSTALLDIR)/dropbear/usr/bin && \
1194 ln -sf dropbearmulti dropbear && \
1195 ln -sf dropbearmulti dropbearconvert && \
1196 ln -sf dropbearmulti dropbearkey && \
1197 ln -sf dropbearmulti dbclient && \
1198 ln -sf dropbearmulti ssh && \
1199 ln -sf dropbearmulti scp
1201 dropbear-clean:
1202 -@$(MAKE) -C dropbear clean
1203 @rm -f dropbear/config.h
1205 dropbear/config.h:
1206 cd dropbear && \
1207 CFLAGS="-Os -Wall $(EXTRACFLAGS) -DARGTYPE=3 -ffunction-sections -fdata-sections" \
1208 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" \
1209 ac_cv_func_logout=no ac_cv_func_logwtmp=no \
1210 $(CONFIGURE) --disable-zlib --enable-syslog --disable-lastlog --disable-utmp \
1211 --disable-utmpx --disable-wtmp --disable-wtmpx --disable-pututline \
1212 --disable-pututxline --disable-loginfunc --disable-pam --enable-openpty --enable-bundled-libtom
1213 @$(MAKE) -C dropbear clean
1215 # Media libraries
1217 sqlite/stamp-h1:
1218 cd sqlite && \
1219 CC=$(CC) CFLAGS="-Os $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1220 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" \
1221 $(CONFIGURE) --prefix=/usr --enable-shared --enable-static \
1222 --disable-readline --disable-dynamic-extensions --enable-threadsafe
1223 touch sqlite/stamp-h1
1225 sqlite: sqlite/stamp-h1
1226 @$(MAKE) -C sqlite all $(PARALLEL_BUILD)
1228 sqlite-clean:
1229 -@$(MAKE) -C sqlite clean
1230 @rm -f sqlite/stamp-h1
1232 sqlite-install: sqlite
1233 @$(SEP)
1234 ifneq ($(MEDIA_SERVER_STATIC),y)
1235 install -D sqlite/.libs/libsqlite3.so.0 $(INSTALLDIR)/sqlite/usr/lib/libsqlite3.so.0
1236 $(STRIP) $(INSTALLDIR)/sqlite/usr/lib/libsqlite3.so.0
1237 endif
1239 FFMPEG_FILTER_CONFIG= $(foreach c, $(2), --$(1)="$(c)")
1241 FFMPEG_DECODERS:=aac ac3 atrac3 flac h264 jpegls mp3 mpeg1video mpeg2video mpeg4 mpeg4aac mpegvideo png wmav1 wmav2
1242 FFMPEG_CONFIGURE_DECODERS:=$(call FFMPEG_FILTER_CONFIG,enable-decoder,$(FFMPEG_DECODERS))
1244 FFMPEG_PARSERS:=aac ac3 h264 mpeg4video mpegaudio mpegvideo
1245 FFMPEG_CONFIGURE_PARSERS:=$(call FFMPEG_FILTER_CONFIG,enable-parser,$(FFMPEG_PARSERS))
1247 FFMPEG_PROTOCOLS:=file
1248 FFMPEG_CONFIGURE_PROTOCOLS:=$(call FFMPEG_FILTER_CONFIG,enable-protocol,$(FFMPEG_PROTOCOLS))
1250 FFMPEG_DISABLED_DEMUXERS:=amr apc ape ass bethsoftvid bfi c93 daud dnxhd dsicin dxa ffm gsm gxf idcin iff image2 image2pipe ingenient ipmovie lmlm4 mm mmf msnwc_tcp mtv mxf nsv nut oma pva rawvideo rl2 roq rpl segafilm shorten siff smacker sol str thp tiertexseq tta txd vmd voc wc3 wsaud wsvqa xa yuv4mpegpipe
1251 FFMPEG_CONFIGURE_DEMUXERS:=$(call FFMPEG_FILTER_CONFIG,disable-demuxer,$(FFMPEG_DISABLED_DEMUXERS))
1253 ffmpeg/stamp-h1: zlib
1254 cd ffmpeg && symver_asm_label=no symver_gnu_asm=no symver=no CC=$(CC) \
1255 ./configure --enable-cross-compile --arch=mips --target_os=linux \
1256 --cross-prefix=$(CROSS_COMPILE) --enable-shared --enable-gpl --disable-doc \
1257 --enable-pthreads --enable-small --disable-encoders --disable-filters \
1258 --disable-muxers --disable-devices --disable-ffmpeg --disable-ffplay \
1259 --disable-ffserver --disable-ffprobe --disable-avdevice --disable-swscale \
1260 --disable-hwaccels --disable-network --disable-bsfs --disable-mpegaudio-hp \
1261 --enable-demuxers $(FFMPEG_CONFIGURE_DEMUXERS) \
1262 --disable-decoders $(FFMPEG_CONFIGURE_DECODERS) \
1263 --disable-parsers $(FFMPEG_CONFIGURE_PARSERS) \
1264 --disable-protocols $(FFMPEG_CONFIGURE_PROTOCOLS) \
1265 --extra-cflags="-Os $(EXTRACFLAGS) -ffunction-sections -fdata-sections -fPIC -I$(TOP)/zlib" \
1266 --extra-ldflags="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1267 --extra-libs="-L$(TOP)/zlib -lz" \
1268 --enable-zlib --disable-debug --prefix=''
1269 touch ffmpeg/stamp-h1
1271 ffmpeg: ffmpeg/stamp-h1 zlib
1272 @$(MAKE) -C ffmpeg all $(PARALLEL_BUILD)
1274 ffmpeg-clean:
1275 -@$(MAKE) -C ffmpeg clean
1276 @rm -f ffmpeg/stamp-h1 ffmpeg/config.h ffmpeg/config.mak
1278 ffmpeg-install: ffmpeg
1279 @$(SEP)
1280 ifneq ($(MEDIA_SERVER_STATIC),y)
1281 install -D ffmpeg/libavformat/libavformat.so.52 $(INSTALLDIR)/ffmpeg/usr/lib/libavformat.so.52
1282 install -D ffmpeg/libavcodec/libavcodec.so.52 $(INSTALLDIR)/ffmpeg/usr/lib/libavcodec.so.52
1283 install -D ffmpeg/libavutil/libavutil.so.50 $(INSTALLDIR)/ffmpeg/usr/lib/libavutil.so.50
1284 $(STRIP) $(INSTALLDIR)/ffmpeg/usr/lib/libavformat.so.52
1285 $(STRIP) $(INSTALLDIR)/ffmpeg/usr/lib/libavcodec.so.52
1286 $(STRIP) $(INSTALLDIR)/ffmpeg/usr/lib/libavutil.so.50
1287 endif
1289 libogg/stamp-h1:
1290 cd libogg && \
1291 CFLAGS="-Os $(EXTRACFLAGS) -fPIC -ffunction-sections -fdata-sections" \
1292 LDFLAGS="-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections" \
1293 $(CONFIGURE) --enable-shared --enable-static --prefix=''
1294 touch libogg/stamp-h1
1296 libogg: libogg/stamp-h1
1297 @$(MAKE) -C libogg all $(PARALLEL_BUILD)
1299 libogg-clean:
1300 -@$(MAKE) -C libogg clean
1301 @rm -f libogg/stamp-h1
1303 libogg-install: libogg
1304 @$(SEP)
1305 ifneq ($(MEDIA_SERVER_STATIC),y)
1306 install -D libogg/src/.libs/libogg.so.0 $(INSTALLDIR)/libogg/usr/lib/libogg.so.0
1307 $(STRIP) $(INSTALLDIR)/libogg/usr/lib/libogg.so.0
1308 endif
1310 flac/stamp-h1: libogg
1311 cd flac && \
1312 CFLAGS="-Os $(EXTRACFLAGS) -fPIC -ffunction-sections -fdata-sections" \
1313 CPPFLAGS="-I$(TOP)/libogg/include -I$(LINUXDIR)/include" \
1314 LDFLAGS="-L$(TOP)/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections" \
1315 $(CONFIGURE) --enable-shared --enable-static --prefix='' --disable-rpath \
1316 --disable-doxygen-docs --disable-xmms-plugin --disable-cpplibs \
1317 --without-libiconv-prefix --disable-altivec --disable-3dnow --disable-sse
1318 touch flac/stamp-h1
1320 flac: flac/stamp-h1 libogg
1321 @$(MAKE) -C flac/src/libFLAC all $(PARALLEL_BUILD)
1323 flac-clean:
1324 -@$(MAKE) -C flac clean
1325 @rm -f flac/stamp-h1
1327 flac-install: flac
1328 @$(SEP)
1329 ifneq ($(MEDIA_SERVER_STATIC),y)
1330 install -D flac/src/libFLAC/.libs/libFLAC.so.8 $(INSTALLDIR)/flac/usr/lib/libFLAC.so.8
1331 $(STRIP) $(INSTALLDIR)/flac/usr/lib/libFLAC.so.8
1332 endif
1334 jpeg/stamp-h1:
1335 cd jpeg && \
1336 CFLAGS="-Os $(EXTRACFLAGS) -fPIC" CC=$(CC) AR2="touch" $(CONFIGURE) --enable-shared --enable-static --prefix=''
1337 touch jpeg/stamp-h1
1339 jpeg: jpeg/stamp-h1
1340 @$(MAKE) -C jpeg LIBTOOL="" O=o A=a CC=$(CC) AR2="touch" libjpeg.a libjpeg.so $(PARALLEL_BUILD)
1342 jpeg-clean:
1343 -@$(MAKE) -C jpeg clean
1344 @rm -f jpeg/stamp-h1 jpeg/Makefile
1346 jpeg-install: jpeg
1347 @$(SEP)
1348 ifneq ($(MEDIA_SERVER_STATIC),y)
1349 install -D jpeg/libjpeg.so $(INSTALLDIR)/jpeg/usr/lib/libjpeg.so
1350 $(STRIP) $(INSTALLDIR)/jpeg/usr/lib/libjpeg.so
1351 endif
1353 libexif/stamp-h1:
1354 cd libexif && CFLAGS="-Os -Wall $(EXTRACFLAGS) -fPIC -ffunction-sections -fdata-sections" \
1355 LDFLAGS="-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections" \
1356 $(CONFIGURE) --enable-shared --enable-static --prefix='' \
1357 --disable-docs --disable-rpath --disable-nls --without-libiconv-prefix --without-libintl-prefix
1358 touch libexif/stamp-h1
1360 libexif: libexif/stamp-h1
1361 @$(MAKE) -C libexif all
1363 libexif-clean:
1364 -@$(MAKE) -C libexif clean
1365 @rm -f libexif/stamp-h1
1367 libexif-install: libexif
1368 @$(SEP)
1369 ifneq ($(MEDIA_SERVER_STATIC),y)
1370 install -D libexif/libexif/.libs/libexif.so.12 $(INSTALLDIR)/libexif/usr/lib/libexif.so.12
1371 $(STRIP) $(INSTALLDIR)/libexif/usr/lib/libexif.so.12
1372 endif
1374 zlib/stamp-h1:
1375 cd zlib && \
1376 CC=$(CC) AR="ar rc" RANLIB=$(RANLIB) LD=$(LD) CFLAGS="-Os -Wall $(EXTRACFLAGS)" \
1377 ./configure --shared --prefix=''
1378 touch zlib/stamp-h1
1380 zlib: zlib/stamp-h1
1381 @$(MAKE) -C zlib CC=$(CC) AR="ar rc" RANLIB=$(RANLIB) LD=$(LD) all $(PARALLEL_BUILD)
1383 zlib-clean:
1384 -@$(MAKE) -C zlib clean
1385 @rm -f zlib/stamp-h1 zlib/Makefile zlib/zconf.h zlib/zlib.pc
1387 zlib-install: zlib
1388 @$(SEP)
1389 ifneq ($(MEDIA_SERVER_STATIC),y)
1390 install -d $(INSTALLDIR)/zlib/usr/lib
1391 install -D zlib/libz.so.1 $(INSTALLDIR)/zlib/usr/lib/
1392 $(STRIP) $(INSTALLDIR)/zlib/usr/lib/libz.so.1
1393 endif
1394 ifeq ($(TCONFIG_BT),y)
1395 install -d $(INSTALLDIR)/zlib/usr/lib
1396 install -D zlib/libz.so.1 $(INSTALLDIR)/zlib/usr/lib/
1397 $(STRIP) $(INSTALLDIR)/zlib/usr/lib/libz.so.1
1398 endif
1399 ifeq ($(TCONFIG_TOR),y)
1400 install -d $(INSTALLDIR)/zlib/usr/lib
1401 install -D zlib/libz.so.1 $(INSTALLDIR)/zlib/usr/lib/
1402 $(STRIP) $(INSTALLDIR)/zlib/usr/lib/libz.so.1
1403 endif
1405 libid3tag/stamp-h1: zlib
1406 cd libid3tag && \
1407 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" CPPFLAGS="-I$(TOP)/zlib" \
1408 LDFLAGS="-L$(TOP)/zlib -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections" \
1409 $(CONFIGURE) --enable-shared --enable-static --prefix='' \
1410 --disable-debugging --disable-profiling
1411 touch libid3tag/stamp-h1
1413 libid3tag: libid3tag/stamp-h1 zlib
1414 @$(MAKE) -C libid3tag all $(PARALLEL_BUILD)
1416 libid3tag-clean:
1417 -@$(MAKE) -C libid3tag clean
1418 @rm -f libid3tag/stamp-h1
1420 libid3tag-install: libid3tag
1421 @$(SEP)
1422 ifneq ($(MEDIA_SERVER_STATIC),y)
1423 install -D libid3tag/.libs/libid3tag.so.0 $(INSTALLDIR)/libid3tag/usr/lib/libid3tag.so.0
1424 $(STRIP) $(INSTALLDIR)/libid3tag/usr/lib/libid3tag.so.0
1425 endif
1427 libvorbis/stamp-h1: libogg
1428 cd libvorbis && \
1429 CFLAGS="-Os -Wall $(EXTRACFLAGS) -fPIC -ffunction-sections -fdata-sections" \
1430 CPPFLAGS="-I$(TOP)/libogg/include" \
1431 LDFLAGS="-L$(TOP)/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections" \
1432 $(CONFIGURE) --enable-shared --enable-static --prefix='' --disable-oggtest \
1433 --with-ogg-includes="$(TOP)/libogg/include" \
1434 --with-ogg-libraries="$(TOP)/libogg/src/.libs"
1435 touch libvorbis/stamp-h1
1437 libvorbis: libvorbis/stamp-h1
1438 @$(MAKE) -C libvorbis/lib all $(PARALLEL_BUILD)
1440 libvorbis-clean:
1441 -@$(MAKE) -C libvorbis clean
1442 @rm -f libvorbis/stamp-h1
1444 libvorbis-install: libvorbis
1445 @$(SEP)
1446 ifneq ($(MEDIA_SERVER_STATIC),y)
1447 install -D libvorbis/lib/.libs/libvorbis.so.0 $(INSTALLDIR)/libvorbis/usr/lib/libvorbis.so.0
1448 $(STRIP) $(INSTALLDIR)/libvorbis/usr/lib/libvorbis.so.0
1449 endif
1451 minidlna: zlib sqlite ffmpeg libogg flac jpeg libexif libid3tag libvorbis
1452 @$(SEP)
1453 @$(MAKE) -C minidlna CC=$(CC) $(if $(MEDIA_SERVER_STATIC),STATIC=1,) minidlna $(PARALLEL_BUILD)
1456 igmpproxy/src/Makefile: igmpproxy/src/Makefile.in
1457 cd igmpproxy && CFLAGS="-O2 -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1458 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" \
1459 $(CONFIGURE) --prefix=/usr
1461 igmpproxy: igmpproxy/src/Makefile
1462 @$(SEP)
1463 @$(MAKE) -C igmpproxy/src $(PARALLEL_BUILD)
1465 igmpproxy-install: igmpproxy
1466 install -D igmpproxy/src/igmpproxy $(INSTALLDIR)/igmpproxy/usr/sbin/igmpproxy
1467 $(STRIP) $(INSTALLDIR)/igmpproxy/usr/sbin/igmpproxy
1469 igmpproxy-clean:
1470 -@$(MAKE) -C igmpproxy/src clean
1471 @rm -f igmpproxy/src/Makefile
1473 udev:
1474 $(MAKE) -C $@ CROSS_COMPILE=$(CROSS_COMPILE) EXTRACFLAGS="$(EXTRACFLAGS)" \
1475 PROGRAMS=udevtrigger
1477 udev-install: udev
1478 install -d $(INSTALLDIR)
1479 install -d $(TARGETDIR)
1480 $(MAKE) -C udev DESTDIR=$(INSTALLDIR) prefix=/udev install-udevtrigger
1482 hotplug2:
1483 $(MAKE) -C $@ CROSS_COMPILE=$(CROSS_COMPILE) EXTRACFLAGS="$(EXTRACFLAGS)"
1485 hotplug2-install: hotplug2
1486 $(MAKE) -C hotplug2 install PREFIX=$(INSTALLDIR)/hotplug2 SUBDIRS=""
1487 $(MAKE) -C hotplug2/examples install PREFIX=$(INSTALLDIR)/hotplug2/rom KERNELVER=$(LINUX_KERNEL)
1489 emf:
1490 $(MAKE) -C $(SRCBASE)/emf/emfconf CROSS=$(CROSS_COMPILE) EXTRACFLAGS="$(EXTRACFLAGS)"
1492 emf-install: emf
1493 $(MAKE) -C $(SRCBASE)/emf/emfconf INSTALLDIR=$(INSTALLDIR) install
1495 igs:
1496 $(MAKE) -C $(SRCBASE)/emf/igsconf CROSS=$(CROSS_COMPILE) EXTRACFLAGS="$(EXTRACFLAGS)"
1498 igs-install: igs
1499 $(MAKE) -C $(SRCBASE)/emf/igsconf INSTALLDIR=$(INSTALLDIR) install
1501 wanuptime: nvram shared
1502 @$(SEP)
1503 @$(MAKE) -C wanuptime
1505 wanuptime-clean:
1506 -@$(MAKE) -C wanuptime clean
1508 wanuptime-install:
1509 install -D wanuptime/wanuptime $(INSTALLDIR)/wanuptime/usr/sbin/wanuptime
1510 $(STRIP) $(INSTALLDIR)/wanuptime/usr/sbin/wanuptime
1512 ebtables: dummy
1513 $(MAKE) -C ebtables CC=$(CC) LD=$(LD) \
1514 CFLAGS="-Os $(EXTRACFLAGS) -DEBT_MIN_ALIGN=4 -Wall -Wunused" \
1515 LOCKFILE="/var/lock/ebtables" LOCKDIR="/var/lock" \
1516 BINDIR="/usr/sbin" LIBDIR="/usr/lib/ebtables" KERNEL_INCLUDES=$(LINUXDIR)/include $(if $(TCONFIG_IPV6),DO_IPV6=1,)
1518 ebtables-install: ebtables
1519 install -D ebtables/ebtables $(INSTALLDIR)/ebtables/usr/sbin/ebtables
1521 @mkdir -p $(TARGETDIR)/rom/etc
1522 @sed 's/#.*//g;s/[ \t]\+/ /g;s/^[ \t]*//;s/[ \t]*$$//;/^$$/d' < $(TOP)/ebtables/ethertypes > $(TARGETDIR)/rom/etc/ethertypes
1523 chmod 0644 $(TARGETDIR)/rom/etc/ethertypes
1525 install -d $(INSTALLDIR)/ebtables/usr/lib
1526 install -d $(INSTALLDIR)/ebtables/usr/lib/ebtables
1527 install -D ebtables/*.so $(INSTALLDIR)/ebtables/usr/lib/
1528 install -D ebtables/extensions/*.so $(INSTALLDIR)/ebtables/usr/lib/ebtables/
1530 $(STRIP) $(INSTALLDIR)/ebtables/usr/sbin/ebtables
1531 $(STRIP) $(INSTALLDIR)/ebtables/usr/lib/ebtables/*.so
1532 $(STRIP) $(INSTALLDIR)/ebtables/usr/lib/libebt*.so
1534 ebtables-clean:
1535 -@$(MAKE) -C ebtables clean
1537 #Roadkill
1538 glib/stamp-h1:
1539 @$(SEP)
1540 @cd glib && $(CONFIGURE) --prefix=/usr glib_cv_prog_cc_ansi_proto=no glib_cv_has__inline=yes glib_cv_has__inline__=yes glib_cv_hasinline=yes \
1541 glib_cv_sane_realloc=yes glib_cv_va_copy=no glib_cv___va_copy=yes glib_cv_va_val_copy=yes glib_cv_rtldglobal_broken=no \
1542 glib_cv_uscore=no glib_cv_func_pthread_mutex_trylock_posix=yes glib_cv_func_pthread_cond_timedwait_posix=yes glib_cv_sizeof_gmutex=24 \
1543 glib_cv_byte_contents_gmutex="0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0" glib_cv_sys_pthread_getspecific_posix=yes \
1544 glib_cv_sys_pthread_mutex_trylock_posix=yes glib_cv_sys_pthread_cond_timedwait_posix=yes ac_cv_func_getpwuid_r=yes ac_cv_func_getpwuid_r_posix=yes
1545 @$(MAKE) -C glib
1546 touch glib/stamp-h1
1548 glib: glib/stamp-h1
1549 @$(MAKE) -C glib $(PARALLEL_BUILD)
1551 glib-clean:
1552 -@$(MAKE) -C glib clean
1553 rm -f glib/stamp-h1
1555 glib-install: glib
1556 @$(MAKE) -C glib DESTDIR=$(INSTALLDIR)/glib install
1558 #Roadkill
1559 nocat/stamp-h1: glib-install
1560 @$(SEP)
1561 @cd nocat && \
1562 NC_CONF_PATH="/" \
1563 $(CONFIGURE) --with-firewall=iptables --with-glib-prefix="$(INSTALLDIR)/glib/usr" --localstatedir=/var --sysconfdir=/etc
1564 @$(MAKE) -C nocat
1566 echo *** integrate glib to nocat installdir
1567 install -d $(INSTALLDIR)/nocat/usr/lib
1568 install -D glib/.libs/libglib-1.2.so.0.0.10 $(INSTALLDIR)/nocat/usr/lib/libglib-1.2.so.0.0.10
1569 cd $(INSTALLDIR)/nocat/usr/lib && ln -s libglib-1.2.so.0.0.10 libglib-1.2.so.0
1570 $(STRIP) $(INSTALLDIR)/nocat/usr/lib/libglib-1.2.so.0.0.10
1571 touch nocat/stamp-h1
1573 nocat: nocat/stamp-h1
1574 @$(MAKE) -C nocat $(PARALLEL_BUILD)
1576 nocat-clean:
1577 -@$(MAKE) -C nocat clean
1578 rm -f nocat/stamp-h1
1580 nocat-install:
1581 install -D nocat/src/splashd $(INSTALLDIR)/nocat/usr/sbin/splashd
1582 $(STRIP) $(INSTALLDIR)/nocat/usr/sbin/splashd
1583 mkdir -p $(INSTALLDIR)/nocat/usr/libexec/nocat
1584 install -D nocat/libexec/iptables/* $(INSTALLDIR)/nocat/usr/libexec/nocat
1586 lzo/stamp-h1:
1587 cd lzo && \
1588 CFLAGS="-O3 -Wall -fPIC $(EXTRACFLAGS)" $(CONFIGURE) --enable-shared --enable-static
1589 touch lzo/stamp-h1
1591 lzo: lzo/stamp-h1
1592 @$(MAKE) -C lzo $(PARALLEL_BUILD)
1594 lzo-clean:
1595 -@$(MAKE) -C lzo clean
1596 @rm -f lzo/stamp-h1
1598 lzo-install: lzo
1599 install -D lzo/src/.libs/liblzo2.so $(INSTALLDIR)/lzo/usr/lib/liblzo2.so.2
1600 $(STRIP) $(INSTALLDIR)/lzo/usr/lib/liblzo2.so.2
1601 cd $(INSTALLDIR)/lzo/usr/lib && ln -sf liblzo2.so.2 liblzo2.so
1603 openvpn/.conf: openssl lzo
1604 cd openvpn && CFLAGS="-O3 -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1605 LDFLAGS="-L$(TOP)/openssl -L$(TOP)/lzo/src/.libs -ffunction-sections -fdata-sections -Wl,--gc-sections" \
1606 CPPFLAGS="-I$(TOP)/lzo/include -I$(TOP)/openssl/include" \
1607 $(CONFIGURE) --prefix= \
1608 --with-crypto-library=openssl \
1609 --disable-debug --disable-plugins --enable-management --enable-small \
1610 --disable-selinux --disable-socks --enable-password-save \
1611 OPENSSL_SSL_CFLAGS="-I$(TOP)/openssl/include" \
1612 OPENSSL_SSL_LIBS="-L$(TOP)/openssl -lssl" \
1613 ac_cv_lib_resolv_gethostbyname=no
1614 touch openvpn/.conf
1616 openvpn: openvpn/.conf
1617 @$(MAKE) -C openvpn $(PARALLEL_BUILD)
1619 openvpn-clean:
1620 -@$(MAKE) -C openvpn clean
1621 @rm -f openvpn/.conf
1623 openvpn-install: openvpn
1624 install -D openvpn/src/openvpn/.libs/openvpn $(INSTALLDIR)/openvpn/usr/sbin/openvpn
1625 $(STRIP) -s $(INSTALLDIR)/openvpn/usr/sbin/openvpn
1626 chmod 0500 $(INSTALLDIR)/openvpn/usr/sbin/openvpn
1628 #shibby
1629 libcurl/stamp-h1: zlib openssl
1630 cd libcurl && CC=$(CC) STRIP='mipsel-uclibc-strip' \
1631 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1632 CPPFLAGS="-I$(TOP)/zlib" \
1633 LDFLAGS="-L$(TOP)/zlib -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1634 $(CONFIGURE) --prefix=/usr --disable-thread --enable-shared --enable-static \
1635 --enable-ares --enable-cookies --enable-crypto-auth --enable-nonblocking \
1636 --enable-file --enable-ftp --enable-http --enable-ipv6 --enable-tftp \
1637 --disable-nls --disable-ares --disable-dict --disable-debug --disable-gopher \
1638 --disable-ldap --disable-manual --disable-telnet --disable-verbose \
1639 --with-random="/dev/urandom" --with-ssl="$(TOP)/openssl" \
1640 --without-gnutls --without-krb4 --without-libidn \
1641 --with-linux-headers=$(LINUXDIR)/include \
1642 OPENSSL_CFLAGS="-I$(TOP)/openssl/include" \
1643 OPENSSL_LIBS="-L$(TOP)/openssl -lcrypto -lssl"
1644 touch libcurl/stamp-h1
1646 libcurl: libcurl/stamp-h1
1647 @$(MAKE) -C libcurl $(PARALLEL_BUILD)
1649 libcurl-clean:
1650 -@$(MAKE) -C libcurl clean
1651 @rm -f libcurl/stamp-h1 libcurl/Makefile
1653 libcurl-install: libcurl
1654 install -d $(INSTALLDIR)/libcurl/usr/lib
1655 install -D libcurl/lib/.libs/libcurl.so.4.2.0 $(INSTALLDIR)/libcurl/usr/lib/libcurl.so.4.2.0
1656 $(STRIP) -s $(INSTALLDIR)/libcurl/usr/lib/libcurl.so.4.2.0
1657 cd $(INSTALLDIR)/libcurl/usr/lib/ && \
1658 ln -sf libcurl.so.4.2.0 libcurl.so.4 && \
1659 ln -sf libcurl.so.4.2.0 libcurl.so
1661 libevent/stamp-h1:
1662 cd libevent && CC=$(CC) \
1663 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1664 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1665 $(CONFIGURE)
1666 touch libevent/stamp-h1
1668 libevent: libevent/stamp-h1
1669 @$(SEP)
1670 $(MAKE) -C libevent $(PARALLEL_BUILD)
1671 $(MAKE) -C libevent DESTDIR=$(TOP)/libevent/staged install
1673 libevent-clean:
1674 -@$(MAKE) -C libevent clean
1675 @rm -f libevent/stamp-h1 libevent/Makefile
1676 @rm -rf libevent/staged
1678 libevent-install: libevent
1679 install -d $(INSTALLDIR)/libevent/usr/lib
1680 install libevent/.libs/libevent-2.0.so.5.1.9 $(INSTALLDIR)/libevent/usr/lib/libevent-2.0.so.5
1681 $(STRIP) -s $(INSTALLDIR)/libevent/usr/lib/libevent-2.0.so.5
1683 libiconv/stamp-h1:
1684 cd libiconv && CC=$(CC) \
1685 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1686 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1687 $(CONFIGURE) --prefix=/usr --disable-nls --enable-static
1688 touch libiconv/stamp-h1
1690 libiconv: libiconv/stamp-h1
1691 @$(SEP)
1692 $(MAKE) -C libiconv $(PARALLEL_BUILD)
1694 libiconv-clean:
1695 -@$(MAKE) -C libiconv clean
1696 @rm -f libiconv/stamp-h1 libiconv/Makefile
1698 libiconv-install: libiconv
1699 install -d $(INSTALLDIR)/libiconv/usr/lib
1700 install libiconv/lib/.libs/libiconv.so.2.4.0 $(INSTALLDIR)/libiconv/usr/lib/libiconv.so.2
1701 $(STRIP)-s $(INSTALLDIR)/libiconv/usr/lib/libiconv.so.2
1703 transmission/stamp-h1: openssl libcurl libevent zlib
1704 cd transmission && CC=$(CC) STRIP='mipsel-uclibc-strip' \
1705 CFLAGS="-Os -Wall -fno-delete-null-pointer-checks -funit-at-a-time \
1706 --param large-function-growth=800 --param max-inline-insns-single=3000 \
1707 -ffunction-sections -fdata-sections" \
1708 LDFLAGS="-L$(TOP)/zlib -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1709 CPPFLAGS="-I$(TOP)/zlib" \
1710 HAVE_CXX=yes \
1711 $(CONFIGURE) --target=mipsel-linux --prefix=/usr --disable-nls \
1712 --enable-lightweight --enable-largefile --enable-utp --without-gtk \
1713 LIBCURL_CFLAGS="-I$(TOP)/libcurl/include" \
1714 LIBCURL_LIBS="-L$(TOP)/libcurl/lib/.libs -lcurl" \
1715 LIBEVENT_CFLAGS="-I$(TOP)/libevent/include" \
1716 LIBEVENT_LIBS="-L$(TOP)/libevent/.libs -levent" \
1717 OPENSSL_CFLAGS="-I$(TOP)/openssl/include" \
1718 OPENSSL_LIBS="-L$(TOP)/openssl -lcrypto -lssl"
1719 touch transmission/stamp-h1
1721 transmission: transmission/stamp-h1
1722 @$(SEP)
1723 $(MAKE) -C transmission $(PARALLEL_BUILD)
1725 transmission-clean:
1726 -@$(MAKE) -C transmission clean
1727 @rm -f transmission/stamp-h1 transmission/Makefile
1729 transmission-install: transmission
1730 $(MAKE) -C transmission DESTDIR=$(INSTALLDIR)/transmission install-strip
1731 @rm -rf $(INSTALLDIR)/transmission/usr/share/man
1732 @rm -rf $(INSTALLDIR)/transmission/usr/bin/transmission-cli
1733 @rm -rf $(INSTALLDIR)/transmission/usr/bin/transmission-show
1734 @rm -rf $(INSTALLDIR)/transmission/usr/bin/transmission-edit
1735 @rm -rf $(INSTALLDIR)/transmission/usr/bin/transmission-create
1736 $(STRIP) -s $(INSTALLDIR)/transmission/usr/bin/transmission-daemon
1737 ifeq ($(TCONFIG_TR_EXTRAS),y)
1738 $(STRIP) -s $(INSTALLDIR)/transmission/usr/bin/transmission-remote
1739 else
1740 @rm -rf $(INSTALLDIR)/transmission/usr/bin/transmission-remote
1741 endif
1743 btgui:
1744 @$(SEP)
1746 btgui-install: btgui
1747 install -d $(INSTALLDIR)/btgui/usr/bin
1748 install -D transmission/btcheck $(INSTALLDIR)/btgui/usr/bin/btcheck
1750 libnfsidmap/stamp-h1:
1751 cd libnfsidmap && \
1752 CFLAGS="-Os -Wall $(EXTRACFLAGS)" \
1753 ac_cv_func_malloc_0_nonnull=yes \
1754 ac_cv_func_realloc_0_nonnull=yes \
1755 $(CONFIGURE) --prefix=/usr --enable-shared --enable-static
1756 touch libnfsidmap/stamp-h1
1758 libnfsidmap: libnfsidmap/stamp-h1
1759 @$(SEP)
1760 $(MAKE) -C libnfsidmap $(PARALLEL_BUILD)
1762 libnfsidmap-clean:
1763 -@$(MAKE) -C libnfsidmap clean
1764 @rm -f libnfsidmap/stamp-h1
1765 @rm -rf libnfsidmap/staged
1767 libnfsidmap-install: libnfsidmap
1768 install -d $(TOP)/libnfsidmap/staged
1769 $(MAKE) -C libnfsidmap DESTDIR=$(TOP)/libnfsidmap/staged install
1771 portmap/stamp-h1:
1772 cd portmap \
1773 CFLAGS="-Os -Wall $(EXTRACFLAGS)" \
1774 $(MAKE) -C portmap CC=$(CC) AR=$(AR) LD=$(LD) RANLIB=$(RANLIB) RPCUSER="nobody"
1775 touch portmap/stamp-h1
1777 portmap: portmap/stamp-h1
1778 @$(SEP)
1779 $(MAKE) -C portmap $(PARALLEL_BUILD)
1781 portmap-clean:
1782 -@$(MAKE) -C portmap clean
1783 @rm -f portmap/stamp-h1
1785 portmap-install: portmap
1786 install -d $(INSTALLDIR)/portmap/usr/sbin
1787 install -D portmap/portmap $(INSTALLDIR)/portmap/usr/sbin/portmap
1788 $(STRIP) -s $(INSTALLDIR)/portmap/usr/sbin/portmap
1790 e2fsprogs/stamp-h1:
1791 cd e2fsprogs && \
1792 CFLAGS="-Os -Wall $(EXTRACFLAGS)" \
1793 $(CONFIGURE) --prefix=$(TOP)/e2fsprogs/staged --enable-shared --enable-static
1794 touch e2fsprogs/stamp-h1
1796 e2fsprogs: e2fsprogs/stamp-h1
1797 @$(SEP)
1798 $(MAKE) -C e2fsprogs $(PARALLEL_BUILD)
1800 e2fsprogs-clean:
1801 -@$(MAKE) -C e2fsprogs clean
1802 @rm -f e2fsprogs/stamp-h1
1803 @rm -f e2fsprogs/Makefile
1804 @rm -rf e2fsprogs/staged
1806 nfs-utils/stamp-h1: libevent-install e2fsprogs portmap libnfsidmap-install
1807 cd nfs-utils && STRIP='mipsel-uclibc-strip' \
1808 CFLAGS="-Os -Wall -fno-delete-null-pointer-checks -funit-at-a-time \
1809 -I$(TOP)/libevent/staged/usr/local/include -I$(TOP)/e2fsprogs/lib \
1810 -I$(TOP)/libnfsidmap/staged/usr/include -ffunction-sections -fdata-sections" \
1811 LDFLAGS="-L$(TOP)/libevent/staged/usr/local/lib -L$(TOP)/e2fsprogs/lib \
1812 -L$(TOP)/libnfsidmap/staged/usr/lib -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" \
1813 ac_cv_func_malloc_0_nonnull=yes \
1814 ac_cv_func_realloc_0_nonnull=yes \
1815 $(CONFIGURE) --disable-gss --without-tcp-wrappers --enable-static --enable-shared \
1816 --enable-nfsv4 --enable-nfsv3
1817 touch nfs-utils/stamp-h1
1819 nfs-utils: nfs-utils/stamp-h1
1820 @$(SEP)
1821 $(MAKE) -C nfs-utils $(PARALLEL_BUILD)
1823 nfs-utils-clean:
1824 -@$(MAKE) -C nfs-utils clean
1825 @rm -f nfs-utils/stamp-h1
1827 nfs-utils-install: nfs-utils
1828 install -d $(INSTALLDIR)/nfs-utils/usr/sbin
1829 install -D nfs-utils/utils/mount/mount.nfs $(INSTALLDIR)/nfs-utils/usr/sbin/mount.nfs
1830 install -D nfs-utils/utils/nfsd/nfsd $(INSTALLDIR)/nfs-utils/usr/sbin/nfsd
1831 install -D nfs-utils/utils/showmount/showmount $(INSTALLDIR)/nfs-utils/usr/sbin/showmount
1832 install -D nfs-utils/utils/exportfs/exportfs $(INSTALLDIR)/nfs-utils/usr/sbin/exportfs
1833 install -D nfs-utils/utils/statd/statd $(INSTALLDIR)/nfs-utils/usr/sbin/statd
1834 install -D nfs-utils/utils/mountd/mountd $(INSTALLDIR)/nfs-utils/usr/sbin/mountd
1835 install -D nfs-utils/nfs.rc $(INSTALLDIR)/nfs-utils/usr/sbin/nfs.rc
1836 $(STRIP) -s $(INSTALLDIR)/nfs-utils/usr/sbin/mount.nfs
1837 $(STRIP) -s $(INSTALLDIR)/nfs-utils/usr/sbin/nfsd
1838 $(STRIP) -s $(INSTALLDIR)/nfs-utils/usr/sbin/showmount
1839 $(STRIP) -s $(INSTALLDIR)/nfs-utils/usr/sbin/exportfs
1840 $(STRIP) -s $(INSTALLDIR)/nfs-utils/usr/sbin/statd
1841 $(STRIP) -s $(INSTALLDIR)/nfs-utils/usr/sbin/mountd
1843 sd-idle/stamp-h1:
1844 cd sd-idle \
1845 CFLAGS="-Os -Wall --host=mipsel-linux --target=mipsel-linux $(EXTRACFLAGS)" \
1846 $(MAKE) -C sd-idle
1847 chmod 0755 sd-idle/sd-idle
1848 touch sd-idle/stamp-h1
1850 sd-idle-clean:
1851 -@$(MAKE) -C sd-idle clean
1852 @rm -f sd-idle/stamp-h1
1854 sd-idle-install: sd-idle/stamp-h1
1855 install -d $(INSTALLDIR)/sd-idle/usr/bin
1856 install -D sd-idle/sd-idle $(INSTALLDIR)/sd-idle/usr/bin/sd-idle
1857 $(STRIP) -s $(INSTALLDIR)/sd-idle/usr/bin/sd-idle
1859 snmp/stamp-h1:
1860 cd snmp && \
1861 CFLAGS="-Os -Wall $(EXTRACFLAGS)" \
1862 $(CONFIGURE) --prefix=/usr --with-endianness=little --enable-mini-agent --disable-debugging \
1863 --disable-privacy --without-opaque-special-types --with-persistent-directory=/tmp/snmp-persist \
1864 --with-default-snmp-version=3 --with-sys-contact=root --with-sys-location=Unknown --with-logfile=/dev/null \
1865 --with-out-transports=UDPIPv6,TCPIPv6,AAL5PVC,IPX,TCP,Unix --enable-shared=no --enable-static --with-gnu-ld \
1866 --enable-internal-md5 --with-copy-persistent-files=no --without-openssl -sysconfdir=/tmp \
1867 --with-mib-modules=mibII,host,mibII/ip,mibII/tcp,mibII/udp,mibII/icmp,mibII/var_route,mibII/kernel_linux,qos,ucd_snmp \
1868 --with-out-mib-modules=snmpv3mibs,agent_mips,agentx,notification,utilities,target --disable-ipv6 --with-defaults \
1869 --without-efence --without-rsaref --without-kmem-usage --without-rpm --without-dmalloc
1870 touch snmp/stamp-h1
1872 snmp: snmp/stamp-h1
1873 @$(SEP)
1874 $(MAKE) -C snmp
1876 snmp-clean:
1877 -@$(MAKE) -C snmp clean
1878 @rm -f snmp/stamp-h1
1880 snmp-install: snmp
1881 install -D snmp/agent/snmpd $(INSTALLDIR)/snmp/usr/sbin/snmpd
1882 $(STRIP) $(INSTALLDIR)/snmp/usr/sbin/snmpd
1884 apcupsd/stamp-h1:
1885 cd apcupsd && touch autoconf/variables.mak && CC=$(CC) STRIP='mipsel-uclibc-strip' \
1886 $(MAKE) configure && \
1887 CFLAGS="-Os -Wall $(EXTRACFLAGS)" \
1888 LDFLAGS="-L$(TOOLCHAIN)/lib -ffunction-sections -fdata-sections" \
1889 $(CONFIGURE) --prefix=/usr --without-x --enable-usb --disable-pcnet --enable-cgi \
1890 --disable-lgd --enable-net --sysconfdir=/usr/local/apcupsd --bindir=/bin \
1891 --disable-dumb --disable-snmp --disable-net-snmp --with-cgi-bin=/www/apcupsd --with-serial-dev=
1892 touch apcupsd/stamp-h1
1894 apcupsd: apcupsd/stamp-h1
1895 $(MAKE) -C apcupsd $(PARALLEL_BUILD)
1897 apcupsd-clean:
1898 -@$(MAKE) -C apcupsd clean
1899 @rm -f apcupsd/stamp-h1
1900 @rm -f apcupsd/config*
1902 apcupsd-install: apcupsd
1903 $(MAKE) -C apcupsd DESTDIR=$(INSTALLDIR)/apcupsd install
1904 @rm -rf $(INSTALLDIR)/apcupsd/sbin/apctest
1905 @rm -rf $(INSTALLDIR)/apcupsd/www/apcupsd/ups*.cgi
1906 $(STRIP) $(INSTALLDIR)/apcupsd/sbin/*
1907 $(STRIP) $(INSTALLDIR)/apcupsd/www/apcupsd/*
1909 libsodium/stamp-h1:
1910 cd $(TOP)/libsodium && CC=$(CC) STRIP='mipsel-uclibc-strip' \
1911 $(CONFIGURE) --prefix=/usr --disable-ssp
1912 touch libsodium/stamp-h1
1914 dnscrypt/stamp-h1: libsodium/stamp-h1
1915 cd $(TOP)/dnscrypt && CC=$(CC) STRIP='mipsel-uclibc-strip' \
1916 $(CONFIGURE) --prefix=/usr --disable-ssp
1917 touch dnscrypt/stamp-h1
1919 dnscrypt: dnscrypt/stamp-h1
1920 $(MAKE) -C dnscrypt $(PARALLEL_BUILD)
1922 dnscrypt-install: dnscrypt
1923 install -D dnscrypt/src/proxy/dnscrypt-proxy $(INSTALLDIR)/dnscrypt/usr/sbin/dnscrypt-proxy
1924 install -D dnscrypt/src/hostip/hostip $(INSTALLDIR)/dnscrypt/usr/sbin/hostip
1925 $(STRIP) -s $(INSTALLDIR)/dnscrypt/usr/sbin/dnscrypt-proxy
1926 $(STRIP) -s $(INSTALLDIR)/dnscrypt/usr/sbin/hostip
1928 dnscrypt-clean:
1929 -@$(MAKE) -C dnscrypt clean
1930 -@$(MAKE) -C libsodium clean
1931 @rm -rf dnscrypt/stamp-h1 dnscrypt/src/dnscrypt-proxy/.deps dnscrypt/Makefile libsodium/stamp-h1
1933 tor/stamp-h1: openssl zlib libevent
1934 cd $(TOP)/tor && CC=$(CC) STRIP='mipsel-uclibc-strip' \
1935 CFLAGS="-Os -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections" \
1936 LDFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" \
1937 $(CONFIGURE) --prefix=/usr --with-libevent-dir=$(TOP)/libevent/staged/usr/local \
1938 --with-openssl-dir=$(TOP)/openssl --with-zlib-dir=$(TOP)/zlib --disable-asciidoc
1939 touch tor/stamp-h1
1941 tor: tor/stamp-h1
1942 $(MAKE) -C tor $(PARALLEL_BUILD)
1944 tor-install: tor
1945 install -D tor/src/or/tor $(INSTALLDIR)/tor/usr/sbin/tor
1946 $(STRIP) -s $(INSTALLDIR)/tor/usr/sbin/tor
1948 tor-clean:
1949 -@$(MAKE) -C tor clean
1950 @rm -rf tor/stamp-h1 tor/Makefile
1952 mdadm:
1953 $(MAKE) -C mdadm $(PARALLEL_BUILD)
1955 mdadm-install: mdadm
1956 install -D mdadm/mdadm $(INSTALLDIR)/mdadm/usr/sbin/mdadm
1957 $(STRIP) -s $(INSTALLDIR)/mdadm/usr/sbin/mdadm
1959 mdadm-clean:
1960 -@$(MAKE) -C mdadm clean
1962 ipset:
1963 $(MAKE) -C ipset binaries
1965 ipset-install: ipset
1966 install -D ipset/ipset $(INSTALLDIR)/ipset/usr/sbin/ipset
1967 install -d $(INSTALLDIR)/ipset/usr/lib/
1968 install ipset/*.so $(INSTALLDIR)/ipset/usr/lib/
1969 $(STRIP) $(INSTALLDIR)/ipset/usr/lib/*.so
1970 $(STRIP) $(INSTALLDIR)/ipset/usr/sbin/ipset
1972 ipset-clean:
1973 -@$(MAKE) -C ipset clean
1976 # Generic rules
1980 @[ ! -d $* ] || ( $(SEP); $(MAKE) -C $* )
1983 %-clean:
1984 @-[ ! -d $* ] || $(MAKE) -C $* clean
1986 %-distclean:
1987 @-[ ! -d $* ] || $(MAKE) -C $* distclean
1989 %-install: %
1990 @[ ! -d $* ] || $(MAKE) -C $* install INSTALLDIR=$(INSTALLDIR)/$*
1992 %-build:
1993 $(MAKE) $*-clean $*
1995 $(obj-y) $(obj-n) $(obj-clean) $(obj-install): dummy
1997 .PHONY: all clean distclean mrproper install package
1998 .PHONY: conf mconf oldconf kconf kmconf config menuconfig oldconfig
1999 .PHONY: dummy libnet libpcap