# Comply with RDS/00008: OASIS Makefile Conventions

ifdef TARGET
    TARGET_PREFIX = $(TARGET)-
endif

ifndef CROSS_COMPILE
    CROSS_COMPILE = $(TARGET_PREFIX)
    CC = $(CROSS_COMPILE)gcc
    STRIP = $(CROSS_COMPILE)strip
endif

ifdef LOG_COLLECTOR
    CFLAGS += -DLOG_COLLECTOR=$(LOG_COLLECTOR)
endif

ifdef DEBUG_LEVEL
    CFLAGS += -DDEBUG_LEVEL=$(DEBUG_LEVEL)
endif

ifndef KERNEL_DIR
	KERNEL_DIR=/usr/src/linux
endif
ifeq ($(CDS530AM_CONNECT),1)
	CFLAGS += -D_CDS530AM_CONNECT	
endif
ifeq ($(HANDLE_MULTI_WAN),ENABLE)
	CFLAGS += -D_AMIT_ENABLE_MULTI_WAN=1	
endif
ifeq ($(HANDLE_BROADCAST_DHCP_REPLY), ENABLE)
	CFLAGS += -D_AMIT_BROADCAST_DHCP_REPLY
endif

ifeq (${HANDLE_VOIPWAN}, 1)
	CFLAGS += -D_ENABLE_VOIPWAN
endif

ifeq (${SMS_REMOTE_MANAGEMENT}, 1)
    CFLAGS += -D_SMS_REMOTE_MANAGEMENT
endif


all: precheck
	 make -C ./src

install: postcheck
	@cp -a src/udhcpd						$(INSTALL_ROOT)/usr/sbin
	@cp -a src/udhcpc						$(INSTALL_ROOT)/usr/sbin
	@cp -a src/dumpleases					$(INSTALL_ROOT)/usr/sbin
	@cp -a src/dhcp_list					$(INSTALL_ROOT)/usr/sbin
	@cp -a src/samples/default.script 		$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/udhcpc-action		$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/udhcpc-connect		$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/udhcpd-action		$(INSTALL_ROOT)/usr/bin
ifdef FULL_COPY
	@cp -a src/samples/udhcpd.conf.uo		$(INSTALL_ROOT)/usr/uo
endif
ifdef ENABLE_MULTI_LAN
	@cp -a src/dhcp_list2					$(INSTALL_ROOT)/usr/sbin
	@cp -a src/samples/udhcpd-vlan-action	$(INSTALL_ROOT)/usr/bin
	@cp -a src/dumpleases2					$(INSTALL_ROOT)/usr/sbin
ifdef FULL_COPY
	@cp -a src/samples/udhcpd_vlan.conf.uo  $(INSTALL_ROOT)/usr/uo
endif
endif
ifeq (${HANDLE_RP_CLI_MODE}, 1)
ifdef FULL_COPY
	@cp -a src/samples/udhcpd_cli.conf.uo	$(INSTALL_ROOT)/usr/uo
endif
	@cp -a src/samples/udhcpd_cli-action	$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/aplan-action			$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/aplan.script			$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/stalan-action		$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/stalan.script		$(INSTALL_ROOT)/usr/bin
endif
ifeq (${PROJECT_NAME}, CTG561AM)
	@cp -a src/samples/udhcpc-connect-sierra	$(INSTALL_ROOT)/usr/bin
endif
ifeq (${HANDLE_VOIPWAN}, 1)
	@cp -a src/samples/default-voipwan.script 		$(INSTALL_ROOT)/usr/bin
	@cp -a src/samples/udhcpc-voipwan-action		$(INSTALL_ROOT)/usr/bin
endif

precheck:
	@echo ""
	@echo "Build $(shell basename `pwd`) for $(PROJECT_NAME) ($(PROJECT_CUSTOMER))"
ifeq ($(PROJECT_CUSTOMER), ) 
	@echo ""
	@echo "No specify PROJECT_CUSTOMER in Makefile. "
	@echo "Maybe you should update the components Makefile of the Project"
	@echo ""
	@exit 1
endif 

postcheck:                                   
	@echo ""
	@echo "Install $(shell basename `pwd`) to $(INSTALL_ROOT)" 
ifeq ($(INSTALL_ROOT), ) 
	@echo ""
	@echo "No specify INSTALL_ROOT in Makefile. "
	@echo "Maybe you should update the components Makefile of the Project"
	@echo ""
	@exit 1
endif  

clean:
	make -C ./src clean


.PHONY: all clean

export CROSS_COMPILE CFLAGS TARGET_PREFIX


