#
#  Netgear System Software : Package Make File for SOAP AGENT 
#
#  Copyright 2019 Netgear Inc.
#  All Rights Reserved.
#
#  NETGEAR WIRELESS SYSTEM SOFTWARE @ NETGEAR
#  THIS SOFTWARE CONTAINS CONFIDENTIAL INFORMATION AND
#  TRADE SECRETS OF NETGEAR INC.
#  USE, DISCLOSURE OR REPRODUCTION IS PROHIBITED WITHOUT
#  THE PRIOR EXPRESS WRITTEN PERMISSION OF NETGEAR INC.
#


include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk

TARGET_CFLAGS += -fpie
PKG_NAME:=ntgr_dal_monitor
PKG_RELEASE:=1

include $(INCLUDE_DIR)/local-development.mk
ifeq ($(DUMP)$(PKG_VERSION),)
PKG_REV:=
PKG_VERSION:=
endif

PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)

include $(INCLUDE_DIR)/package.mk

define Package/ntgr_dal_monitor
  SECTION:=NETGEAR
  CATEGORY:=NETGEAR Proprietary software
  TITLE:= NETGEAR DAL monitor
  DEPENDS:=+libcurl +librpc +ntgr_nvram +libuci +libubox +qca-wifison-ext-lib +kmod-qca-wifi-unified-profile +d2 +ntgr_wrapper_debug +libopenssl +libcrypto +ntgr_pot
endef

define Package/ntgr_dal_monitor/description
  NETGEAR DAL monitor binary for monitoring of table member value changes
endef

define Build/Prepare
	echo $(PKG_BUILD_DIR) $(PWD)
	mkdir -p $(PKG_BUILD_DIR)
	$(CP) ./src/* $(PKG_BUILD_DIR)/
	$(LN) $(STAGING_DIR)/ntgr_utils/debug.c $(PKG_BUILD_DIR)/debug.c
	$(LN) $(STAGING_DIR)/ntgr_utils/debug.h $(PKG_BUILD_DIR)/debug.h
endef

define Build/Configure
endef

define Build/Compile
	$(MAKE) -C $(PKG_BUILD_DIR) \
		CC="$(TARGET_CC)" \
		CFLAGS="$(TARGET_CFLAGS) -Wall" \
		LDFLAGS="$(TARGET_LDFLAGS) -lrpc -lpthread -luci -lubox -lnvram -lqca_wifison_ext -ld2lib -lcurl -lcrypto -lpot -lm"

endef

INSTALL_HEADERS=

define Build/InstallDev
	$(INSTALL_DIR) $(1)/usr/include/dal_monitor
	$(if $(INSTALL_HEADERS),$(CP) $(foreach header,$(INSTALL_HEADERS),$(PKG_BUILD_DIR)/$(header)) $(1)/usr/include/dal_monitor)
endef

define Package/ntgr_dal_monitor/install
	$(INSTALL_DIR) $(1)/usr/sbin/
	$(INSTALL_BIN) $(PKG_BUILD_DIR)/dal_monitor $(1)/usr/sbin/
	$(INSTALL_DIR) $(1)/etc/init.d/
	$(INSTALL_BIN) ./files/init_dal_monitor $(1)/etc/init.d/
endef

$(eval $(call BuildPackage,ntgr_dal_monitor,+libd2lib))
