# SPDX-License-Identifier: GPL-2.0 include $(TOPDIR)/rules.mk PKG_NAME:=hv-tools PKG_VERSION:=0.0.8 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/kernel.mk define Package/hv-tools SECTION:=Custom CATEGORY:=Extra packages TITLE:=hv-tools DEPENDS:=+uci +libpthread MAINTAINER:=yichya endef define Package/hv-tools/description Hyper-V Linux Guest Services for OpenWrt endef define Package/hv-tools/config menu "hv-tools Configuration" depends on PACKAGE_hv-tools choice prompt "select fcopy daemon" default FCOPY_DAEMON help Select the fcopy daemon included. config FCOPY_DAEMON_NONE bool "do not include fcopy daemon" help Do not include any fcopy daemon. config FCOPY_DAEMON bool "include hv_fcopy_daemon" help Include hv_fcopy_daemon (for Linux 6.9 and earlier). config FCOPY_UIO_DAEMON bool "include hv_fcopy_uio_daemon" help Include hv_fcopy_uio_daemon (for Linux 6.10 and later). endchoice endmenu endef HV_FCOPY_DAEMON:= ifeq ($(CONFIG_FCOPY_DAEMON),y) HV_FCOPY_DAEMON=hv_fcopy_daemon endif ifeq ($(CONFIG_FCOPY_UIO_DAEMON),y) HV_FCOPY_DAEMON=hv_fcopy_uio_daemon endif define Build/Compile $(MAKE_VARS) $(MAKE) $(MAKE_FLAGS) hv_kvp_daemon hv_vss_daemon $(HV_FCOPY_DAEMON) -C $(LINUX_DIR)/tools/hv endef define Package/hv-tools/install $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) $(LINUX_DIR)/tools/hv/hv_kvp_daemon $(1)/usr/sbin/hv_kvp_daemon $(INSTALL_BIN) $(LINUX_DIR)/tools/hv/hv_vss_daemon $(1)/usr/sbin/hv_vss_daemon $(INSTALL_DIR) $(1)/usr/libexec/hypervkvpd $(INSTALL_BIN) ./hv_get_dhcp_info.sh $(1)/usr/libexec/hypervkvpd/hv_get_dhcp_info $(INSTALL_BIN) ./hv_get_dns_info.sh $(1)/usr/libexec/hypervkvpd/hv_get_dns_info $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./hv_kvp_daemon.init $(1)/etc/init.d/hv_kvp_daemon $(INSTALL_BIN) ./hv_vss_daemon.init $(1)/etc/init.d/hv_vss_daemon ifdef CONFIG_FCOPY_DAEMON $(INSTALL_BIN) $(LINUX_DIR)/tools/hv/hv_fcopy_daemon $(1)/usr/sbin/hv_fcopy_daemon $(INSTALL_BIN) ./hv_fcopy_daemon.init $(1)/etc/init.d/hv_fcopy_daemon endif ifdef CONFIG_FCOPY_UIO_DAEMON $(INSTALL_BIN) $(LINUX_DIR)/tools/hv/hv_fcopy_uio_daemon $(1)/usr/sbin/hv_fcopy_uio_daemon $(INSTALL_BIN) ./hv_fcopy_uio_daemon.init $(1)/etc/init.d/hv_fcopy_uio_daemon endif endef $(eval $(call BuildPackage,hv-tools))