sysutils/xen-guest-tools: sync with upstream

Taken from: HardenedBSD
This commit is contained in:
Franco Fichtner 2020-02-01 15:26:37 +01:00
parent 129db32f30
commit 2e75cdabb2
7 changed files with 55 additions and 70 deletions

View file

@ -2,8 +2,8 @@
# $FreeBSD$
PORTNAME= xen-guest-tools
PORTVERSION= 4.6.1
PORTREVISION= 2
PORTVERSION= 4.13.0
PORTREVISION= 0
CATEGORIES= sysutils
MASTER_SITES= https://downloads.xenproject.org/release/xen/${PORTVERSION}/
DISTNAME= xen-${PORTVERSION}
@ -11,58 +11,71 @@ DISTNAME= xen-${PORTVERSION}
MAINTAINER= dinoex@FreeBSD.org
COMMENT= Xen tools within FreeBSD domU
BUILD_DEPENDS= ${LOCALBASE}/bin/bash:shells/bash \
${LOCALBASE}/lib/libglib-2.0.so:devel/glib20 \
${LOCALBASE}/lib/libargp.so:devel/argp-standalone \
${LOCALBASE}/lib/libyajl.so:devel/yajl
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
ONLY_FOR_ARCHS= amd64 i386
ONLY_FOR_ARCHS_REASON= not yet ported to anything other than amd64 or i386
CONFLICTS= xen-tools-[0-9]*
USES= gmake pkgconfig perl5 python:2.7,build \
BUILD_DEPENDS= ${LOCALBASE}/bin/bash:shells/bash \
${LOCALBASE}/lib/libglib-2.0.so:devel/glib20 \
${LOCALBASE}/lib/libargp.so:devel/argp-standalone \
${LOCALBASE}/lib/libyajl.so:devel/yajl \
${LOCALBASE}/lib/liblzo2.so:archivers/lzo2
USES= bison gmake pkgconfig perl5 python:build \
gettext-runtime:build gettext-tools:build
USE_PERL5= build
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --disable-xen
CONFIGURE_ENV+= PYTHON=${PYTHON_CMD} PYTHON_PATH=${PYTHON_CMD}
CONFIGURE_ENV+= APPEND_LIB="${LOCALBASE}/lib"
CONFIGURE_ENV+= CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}"
CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}"
MAKE_ENV+= clang=y
MAKE_ENV+= CC="${CC}"
MAKE_ENV+= CFLAGS="${CFLAGS}"
MAKE_ENV+= CPPFLAGS="${CPPFLAGS}"
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -I${LOCALBASE}/lib
USE_LDCONFIG= yes
PYTHON_NO_DEPENDS= yes
PLIST_FILES= lib/libxenstore.so.3.0 \
bin/xen-detect \
PLIST_FILES= bin/xen-detect \
bin/xenstore \
bin/xenstore-control \
bin/xenstore-chmod \
bin/xenstore-control \
bin/xenstore-exists \
bin/xenstore-list \
bin/xenstore-ls \
bin/xenstore-read \
bin/xenstore-rm \
bin/xenstore-write
bin/xenstore-watch \
bin/xenstore-write \
lib/libxenstore.so.3.0 \
lib/libxentoolcore.so.1
post-patch:
${REINPLACE_CMD} -e 's;86|x86_64;86no|x86_64no;' \
${WRKSRC}/tools/configure
do-build:
cd ${WRKSRC}/tools && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C include
cd ${WRKSRC}/tools/misc && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} xen-detect
cd ${WRKSRC}/tools/xenstore && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} clients
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/tools/misc/xen-detect ${STAGEDIR}${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/tools/xenstore/xenstore ${STAGEDIR}${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/tools/xenstore/xenstore-control ${STAGEDIR}${PREFIX}/bin
${INSTALL_LIB} ${WRKSRC}/tools/xenstore/libxenstore.so.3.0 ${STAGEDIR}${PREFIX}/lib
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-chmod
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-exists
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-list
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-ls
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-read
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-rm
${LN} -sf ${PREFIX}/bin/xenstore ${STAGEDIR}${PREFIX}/bin/xenstore-write
${INSTALL_PROGRAM} ${WRKSRC}/tools/misc/xen-detect \
${WRKSRC}/tools/xenstore/xenstore \
${WRKSRC}/tools/xenstore/xenstore-control \
${STAGEDIR}${PREFIX}/bin/
${INSTALL_LIB} ${WRKSRC}/tools/xenstore/libxenstore.so.3.0 \
${WRKSRC}/tools/libs/toolcore/libxentoolcore.so.1 \
${STAGEDIR}${PREFIX}/lib/
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-chmod
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-control
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-exists
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-list
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-ls
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-read
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-rm
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-watch
cd ${STAGEDIR}${PREFIX}/bin/ && ${LN} -f xenstore xenstore-write
.include <bsd.port.mk>

View file

@ -1,2 +1,3 @@
SHA256 (xen-4.6.1.tar.gz) = 44cc2fccba1e147ef4c8da0584ce0f24189c8743de0e3e9a9226da88ddb5f589
SIZE (xen-4.6.1.tar.gz) = 19693042
TIMESTAMP = 1580724124
SHA256 (xen-4.13.0.tar.gz) = c69ae21b2ddeaf25532a81a448fcc6a218bc56f93c8907b2d416b2d4339c0afe
SIZE (xen-4.13.0.tar.gz) = 39005191

View file

@ -1,14 +0,0 @@
--- Config.mk.orig 2013-10-30 14:55:12.664590030 -0500
+++ Config.mk 2013-10-30 14:55:29.462580127 -0500
@@ -13,9 +13,8 @@
SHELL ?= /bin/sh
# Tools to run on system hosting the build
-HOSTCC = gcc
-HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer
-HOSTCFLAGS += -fno-strict-aliasing
+HOSTCC = ${CC}
+HOSTCFLAGS = ${CFLAGS}
DISTDIR ?= $(XEN_ROOT)/dist
DESTDIR ?= /

View file

@ -1,16 +0,0 @@
--- config/StdGNU.mk.orig 2013-04-23 18:42:55.000000000 +0200
+++ config/StdGNU.mk 2015-01-30 09:12:53.000000000 +0100
@@ -1,11 +1,11 @@
AS = $(CROSS_COMPILE)as
LD = $(CROSS_COMPILE)ld
ifeq ($(clang),y)
-CC = $(CROSS_COMPILE)clang
+CC ?= $(CROSS_COMPILE)clang
CXX = $(CROSS_COMPILE)clang++
LD_LTO = $(CROSS_COMPILE)llvm-ld
else
-CC = $(CROSS_COMPILE)gcc
+CC ?= $(CROSS_COMPILE)gcc
CXX = $(CROSS_COMPILE)g++
LD_LTO = $(CROSS_COMPILE)ld
endif

View file

@ -0,0 +1,10 @@
--- tools/Makefile.orig 2019-12-17 14:23:09 UTC
+++ tools/Makefile
@@ -15,7 +15,6 @@ SUBDIRS-y += examples
SUBDIRS-y += hotplug
SUBDIRS-y += xentrace
SUBDIRS-$(CONFIG_XCUTILS) += xcutils
-SUBDIRS-$(CONFIG_X86) += firmware
SUBDIRS-y += console
SUBDIRS-y += xenmon
SUBDIRS-y += xenstat

View file

@ -1,11 +0,0 @@
--- tools/xenstore/xs_lib.c.orig 2011-01-30 15:56:52.985324929 -0800
+++ tools/xenstore/xs_lib.c 2011-01-30 15:55:14.024346135 -0800
@@ -84,6 +84,8 @@
return "/proc/xen/xenbus";
#elif defined(__NetBSD__)
return "/kern/xen/xenbus";
+#elif defined(__FreeBSD__)
+ return "/dev/xen/xenstore";
#else
return "/dev/xen/xenbus";
#endif

View file

@ -2,3 +2,5 @@ These tools are useful for debugging Xen related problems when one
does not have access to the dom0 or wants to view the entries from
domU's perspective. These work on FreeBSD VMs using the XEN (i386)
kernel or the XENHVM kernel.
WWW: https://xenproject.org/