MAKE = make

SUBDIRS = bridge-utils busybox-1.00-pre8 udhcp-0.9.9-pre \
wireless_tools.25 rc httpd

ifneq ($(AP),1)
SUBDIRS += iptables-1.2.6a ppp-2.4.2/pppd/plugins/rp-pppoe ppp-2.4.2/pppd   pptp-linux-1.3.1 ntpclient  dnrd-2.12.1/src  updatedd-2.5
endif
ifeq ($(GW_VPN),1)
SUBDIRS += mawk-1.3.3  gmp-4.1.2
endif

ifeq ($(DEBUG),1)
DBG=DEBUG=1
else
DBG=
endif

ifeq ($(GW_VPN),1)
BUSYBOX_DFGCONFIG=busybox-1.00-pre8/rtl8186/vpn_config
else
BUSYBOX_DFGCONFIG=busybox-1.00-pre8/rtl8186/nm_config
endif

all:
	@echo "No rules to make target. You should choose:"
	@echo "    make {ap | gw | gw-vpn | clean}"

ap:  	
	@make do-make AP=1
	@./mkimg AP=1
	@./mklinux
	@./cpimg

gw:  
	@make do-make GW_8M=1
	@./mkimg GW_8M=1
	@./mklinux_gw
	@./cpimg_gw

gw-vpn:
	make do-make GW_VPN=1
	@./mkimg GW_VPN=1

do-make:
	@diff busybox-1.00-pre8/.config $(BUSYBOX_DFGCONFIG) > diff.txt; \
			if [ -s diff.txt ]; then \
				make -C  busybox-1.00-pre8 clean ;\
				cp -f $(BUSYBOX_DFGCONFIG) busybox-1.00-pre8/.config; \
				cp -f $(BUSYBOX_DFGCONFIG).h busybox-1.00-pre8/include/config.h; \
			fi; rm -f diff.txt; 

	@if [ "$(GW_VPN)" = 1  -a ! -f  gmp-4.1.2/Makefile ];then \
		 cd gmp-4.1.2; ./config.8186; \
	fi
	@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $(DBG); done

clean:
	@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i clean; done
	@rm -rf rootfs ramdisk libstrip/*.so libstrip/ldscript  cramfs.o root.bin ramdisk.gz
