################################################################################ # # hv_fcopy_daemon # ################################################################################ LINUX_TOOLS += hv # The programs to build, as known by the kernel: HV_PROGS_$(BR2_PACKAGE_LINUX_TOOLS_HV_KVP_DAEMON) += hv_kvp_daemon HV_PROGS_$(BR2_PACKAGE_LINUX_TOOLS_HV_FCOPY_DAEMON) += hv_fcopy_daemon HV_PROGS_$(BR2_PACKAGE_LINUX_TOOLS_HV_VSS_DAEMON) += hv_vss_daemon # Give each tools the name most distros install them as: HV_hv_kvp_daemon = hypervkvpd HV_hv_fcopy_daemon = hypervfcopyd HV_hv_vss_daemon = hypervvssd HV_MAKE_OPTS = CC="$(TARGET_CC)" CFLAGS="$(filter-out -g%,$(TARGET_CFLAGS))" define HV_BUILD_CMDS $(Q)for prog in $(HV_PROGS_y); do \ if test ! -f $(LINUX_DIR)/tools/hv/$${prog}.c ; then \ printf "Your kernel version is too old and does not have the HyperV %s tool." "$${prog}" ; \ exit 1 ; \ fi; \ done $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools/hv \ $(HV_MAKE_OPTS) \ $(HV_PROGS_y) endef ifeq ($(BR2_PACKAGE_LINUX_TOOLS_HV_KVP_DAEMON),y) define HV_KVP_HELPER @mkdir -p $(TARGET_DIR)/usr/libexec/hypervkvpd $(Q)ln -sf /bin/true $(TARGET_DIR)/usr/libexec/hypervkvpd/hv_set_ifconfig endef endif define HV_INSTALL_TARGET_CMDS $(foreach prog,$(HV_PROGS_y), \ $(INSTALL) -m 0755 -D $(LINUX_DIR)/tools/hv/$(prog) \ $(TARGET_DIR)/usr/sbin/$(HV_$(prog)) ) $(HV_KVP_HELPER) endef define HV_INSTALL_INIT_SYSTEMD $(foreach prog,$(HV_PROGS_y), \ $(INSTALL) -m 0644 -D package/linux-tools/$(HV_$(prog)).service \ $(TARGET_DIR)/usr/lib/systemd/system/$(HV_$(prog)).service ) endef define HV_INSTALL_INIT_SYSV $(INSTALL) -m 0755 -D package/linux-tools/S10hyperv \ $(TARGET_DIR)/etc/init.d/S10hyperv $(SED) 's/@PROGS@/$(foreach prog,$(HV_PROGS_y),$(HV_$(prog)))/' \ $(TARGET_DIR)/etc/init.d/S10hyperv endef