From owner-svn-ports-head@FreeBSD.ORG Mon Oct 6 22:58:52 2014 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C41CBB7; Mon, 6 Oct 2014 22:58:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A6BD787A; Mon, 6 Oct 2014 22:58:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id s96Mwq0V063540; Mon, 6 Oct 2014 22:58:52 GMT (envelope-from marino@FreeBSD.org) Received: (from marino@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id s96MwoqK063529; Mon, 6 Oct 2014 22:58:50 GMT (envelope-from marino@FreeBSD.org) Message-Id: <201410062258.s96MwoqK063529@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: marino set sender to marino@FreeBSD.org using -f From: John Marino Date: Mon, 6 Oct 2014 22:58:50 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r370242 - in head/emulators: . hyperv-is hyperv-is/files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Oct 2014 22:58:53 -0000 Author: marino Date: Mon Oct 6 22:58:50 2014 New Revision: 370242 URL: https://svnweb.freebsd.org/changeset/ports/370242 QAT: https://qat.redports.org/buildarchive/r370242/ Log: Add new port emulators/hyperv-is (FreeBSD 8.4, 9.1, 9.2, 9.3, 10.0) PR: 182209 Submitted by: kylie (bsdic @ microsoft) The hyperv-is provision a collection of kernel mode drivers as well as user-space daemons to facilitate integration with Hyper-v to provide a feature rich and high performance FreeBSD guest experience. The FreeBSD Integration Service on Hyper-v includes a collection of kernel mode drivers as well as user-space daemons to interact with the drivers that are required to run Hyper-V-specific devices known as FreeBSD Integration Services (BIS). It is to facilitate integration with Hyper-v to provide a feature rich and high performance FreeBSD guest experience. See the man page for a list of binaries and their functions. FreeBSD support for hyperv-is was first added by Microsoft BSD Integration Services Team . Added: head/emulators/hyperv-is/ head/emulators/hyperv-is/Makefile (contents, props changed) head/emulators/hyperv-is/distinfo (contents, props changed) head/emulators/hyperv-is/files/ head/emulators/hyperv-is/files/pkg-message.A.in (contents, props changed) head/emulators/hyperv-is/files/pkg-message.B.in (contents, props changed) head/emulators/hyperv-is/pkg-descr (contents, props changed) head/emulators/hyperv-is/pkg-install (contents, props changed) head/emulators/hyperv-is/pkg-plist (contents, props changed) Modified: head/emulators/Makefile Modified: head/emulators/Makefile ============================================================================== --- head/emulators/Makefile Mon Oct 6 22:54:24 2014 (r370241) +++ head/emulators/Makefile Mon Oct 6 22:58:50 2014 (r370242) @@ -53,6 +53,7 @@ SUBDIR += hercules SUBDIR += higan SUBDIR += hugo + SUBDIR += hyperv-is SUBDIR += i386-wine SUBDIR += i386-wine-compholio SUBDIR += i386-wine-devel Added: head/emulators/hyperv-is/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/Makefile Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,61 @@ +# $FreeBSD$ + +PORTNAME= hyperv-is +PORTVERSION= 1.1 +CATEGORIES= kld +MASTER_SITES= https://github.com/${MSLINK}/ +DISTNAME= ${DNAME} + +MAINTAINER= bsdic@microsoft.com +COMMENT= FreeBSD Integration Service on Hyper-v + +ONLY_FOR_ARCHS= amd64 i386 + +USES+= uidfix +BIS= ${PORTVERSION} +MSBASE= FreeBSDonHyper-V/Hyperv-Ports/raw/hyperv-is-master +MSLINK= ${MSBASE}/BIS-${BIS}/FreeBSD-${OSREL}/ports +SUB_FILES= ${PMSG} + +.include + +.if ${OPSYS} != FreeBSD +IGNORE= ${OPSYS} not supported +.endif + +.if ${OSREL} == "10.0" +BIS= 1.0 +PLIST_SUB= A="@comment " B="" +PMSG= pkg-message.B +.else +CC= gcc -w +WRKSRC= ${WRKDIR}/hyperv-is-${PORTVERSION} +PLIST_SUB= B="@comment " A="" +PMSG= pkg-message.A +.endif + +FILE_84= hyperv-is-8.4.${BIS} +FILE_91= hyperv-is-9.1.${BIS} +FILE_92= hyperv-is-9.2.${BIS} +FILE_93= hyperv-is-9.3.${BIS} +FILE_100= hv-kvp-${BIS} +DNAME= ${FILE_${OSREL:S/.//}} + +.if empty(DNAME) +IGNORE= OSREL ${OSREL} not supported +.endif + +pre-install: + @${MKDIR} ${STAGEDIR}/boot/kernel \ + ${STAGEDIR}/etc/rc.d \ + ${STAGEDIR}/usr/share/man/man1 \ + ${STAGEDIR}/usr/share/man/man4 \ + ${STAGEDIR}/usr/share/man/man8 \ + ${STAGEDIR}/usr/local/hyperv/scripts \ + ${STAGEDIR}/usr/sbin + ${MV} ${WRKDIR}/${PMSG} ${WRKDIR}/pkg-message + +post-install: + ${RM} ${STAGEDIR}/boot/kernel/linker.hints + +.include Added: head/emulators/hyperv-is/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/distinfo Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,10 @@ +SHA256 (hyperv-is-8.4.1.1.tar.gz) = 21f21bf8192892b823a63ebcea8cfd916ab0572b965c06471388386765346ae6 +SIZE (hyperv-is-8.4.1.1.tar.gz) = 94356 +SHA256 (hyperv-is-9.1.1.1.tar.gz) = ab4dc50d4f66ef983bd0de96388ba95e29d1e987362336bf44e3ff971425245a +SIZE (hyperv-is-9.1.1.1.tar.gz) = 94286 +SHA256 (hyperv-is-9.2.1.1.tar.gz) = 75e4ed3ba0c75ce5c67efed7b4f72ada3047f4cc986659b64c14979227292fd5 +SIZE (hyperv-is-9.2.1.1.tar.gz) = 94294 +SHA256 (hyperv-is-9.3.1.1.tar.gz) = 10a63b7b2a7bbfd158eed3852b0c25bfba3362c3cec28dfac641e22e61b23587 +SIZE (hyperv-is-9.3.1.1.tar.gz) = 94296 +SHA256 (hv-kvp-1.0.tar.gz) = c2c60ae645cae75b25934aae7b18c8a29bf00660a1e4ade5d8f31bb98d7ecc78 +SIZE (hv-kvp-1.0.tar.gz) = 30815 Added: head/emulators/hyperv-is/files/pkg-message.A.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/files/pkg-message.A.in Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,19 @@ +############################################################################# +After installing do the following steps: +# Deleting Hyper-v BIS driver names + sed -i "" '/Loader labels for Hyper-v BIS driver/d' /boot/loader.conf + sed -i "" '/hv_vmbus_load/d' /boot/loader.conf + sed -i "" '/hv_utils_load/d' /boot/loader.conf + sed -i "" '/hv_storvsc_load/d' /boot/loader.conf + sed -i "" '/hv_netvsc_load/d' /boot/loader.conf + sed -i "" '/hv_ata_pci_disengage_load/d' /boot/loader.conf + + #Hyper-v driver names + echo "# Loader labels for Hyper-v BIS drivers -do not modify" >> /boot/loader.conf + echo 'hv_vmbus_load="YES"' >> /boot/loader.conf + echo 'hv_utils_load="YES"' >> /boot/loader.conf + echo 'hv_storvsc_load="YES"' >> /boot/loader.conf + echo 'hv_netvsc_load="YES"' >> /boot/loader.conf + echo 'hv_ata_pci_disengage_load="YES"' >>/boot/loader.conf +When deinstalled, restore /boot/loader.conf +############################################################################# Added: head/emulators/hyperv-is/files/pkg-message.B.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/files/pkg-message.B.in Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,17 @@ +############################################################################# +To enable hv_kvp, you should do the steps following: + # Deleting kvp label + sed -i "" '/Loader labels for Hyper-V KVP drivers/d' /etc/rc.conf + sed -i "" '/hv_kvp_load/d' /etc/rc.conf + + #hyperv driver names + echo '# Loader labels for Hyper-V KVP drivers -do not modify' >> /boot/loader.conf + echo 'hv_kvp_load="YES"' >> /boot/loader.conf + +# KVP - daemon label + sed -i "" '/Label for KVP daemon/d' /etc/rc.conf + sed -i "" '/hv_kvp_daemon_enable/d' /etc/rc.conf + echo '# Label for KVP daemon -do not modify' >> /etc/rc.conf + echo 'hv_kvp_daemon_enable="YES"' >> /etc/rc.conf +After deinstall, you should restore /boot/loader.conf and /etc/rc.conf +############################################################################# Added: head/emulators/hyperv-is/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/pkg-descr Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,13 @@ +The hyperv-is provision a collection of kernel mode drivers as well as +user-space daemons to facilitate integration with Hyper-v to provide a +feature rich and high performance FreeBSD guest experience. + +The FreeBSD Integration Service on Hyper-v includes a collection of kernel +mode drivers as well as user-space daemons to interact with the drivers +that are required to run Hyper-V-specific devices known as FreeBSD +Integration Services (BIS). It is to facilitate integration with Hyper-v +to provide a feature rich and high performance FreeBSD guest experience. +See the man page for a list of binaries and their functions. + +FreeBSD support for hyperv-is was first added by Microsoft BSD Integration +Services Team . Added: head/emulators/hyperv-is/pkg-install ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/pkg-install Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,55 @@ +#!/bin/sh +# +# make install or pkg_add script +# Checks labels/gptids for roots and swap partitions +# adds hyperv labels in loader.conf +# + +#Check poudriere workdirs +POD_WRK_HOME=/wrkdirs +if [ ! -d ${POD_WRK_HOME} ]; then + POD_WRK_HOME=/ +fi + +WRKDIRS=${POD_WRK_HOME}$(pwd |awk '{print $1}')/work/stage +if [ ! -d ${WRKDIRS} ]; then + WRKDIRS=/ +fi + +if [ "$2" = "PRE-INSTALL" ]; then +echo "===> Pre-install Check" + +#rootfs check +root_flag=$(mount | awk '/ on \/ / { print $1 }' | cut -d / -f3-) +if [ "$root_flag" != "" ]; then + fs_test=$(glabel status | awk '{print $1}' | grep $root_flag) + if [ "$fs_test" == "" ]; then + echo " xxx rootfs Label/gptid missing in fstab" + fi +else + echo " xxx rootfs Label/gptid missing in fstab" +fi +#swap check +[ -f /etc/fstab ] && swap_flag=$(grep swap /etc/fstab | awk '{print $1}' | cut -d / -f3-) +if [ "$swap_flag" != "" ]; then + sw_test=$(glabel status | awk '{print $1}' | grep $swap_flag) + if [ "$sw_test" == "" ]; then + echo " xxx swap Label/gptid missing in fstab" + fi +else + echo " xxx swap Label/gptid missing in fstab " +fi + +if [ "$fs_test" != "" -a "$sw_test" != "" ]; then + echo "===> Labels/gptids Found" + echo "===> Hyper-V BIS Installation Continues" +else + echo "===> Labels/gptids Not found" + echo "===> Hyper-V BIS Installation Aborted" + echo "===> Refer to Disk UUID section in README document" + echo "===> Please refer the Prerequisites page and complete all steps" + echo "WWW: https://github.com/FreeBSDonHyper-V/Hyperv-Ports/wiki/Prerequisites " + exit 1 +fi +fi +exit 0 Added: head/emulators/hyperv-is/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/emulators/hyperv-is/pkg-plist Mon Oct 6 22:58:50 2014 (r370242) @@ -0,0 +1,25 @@ +hyperv/scripts/hv_get_dhcp_info +hyperv/scripts/hv_get_dns_info +hyperv/scripts/hv_set_ifconfig +@cwd /boot/kernel +%%A%%hv_ata_pci_disengage.ko +%%A%%hv_netvsc.ko +%%A%%hv_storvsc.ko +%%A%%hv_utils.ko +%%A%%hv_vmbus.ko +%%B%%hv_kvp.ko +@cwd /etc/rc.d +hv_kvpd +%%A%%@cwd /usr/share/man/man1 +%%A%%hyperv-is.1.gz +%%B%%@cwd /usr/sbin +%%B%%hv_kvp_daemon +@cwd /usr/share/man/man4 +%%A%%hv_ata_pci_disengage.4.gz +hv_kvp.4.gz +%%A%%hv_netvsc.4.gz +%%A%%hv_storvsc.4.gz +%%A%%hv_utils.4.gz +%%A%%hv_vmbus.4.gz +%%B%%@cwd /usr/share/man/man8 +%%B%%hv_kvp_daemon.8.gz