From b1e69f4c41b0965a5b0c9ae5761203353e2da9e7 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Wed, 5 Jul 2023 17:02:39 +0200 Subject: [PATCH] app-emulation/open-vm-tools: Sync with Gentoo It's from Gentoo commit ecc674a080e039b5db316f4f8258315c1936801a. --- .../app-emulation/open-vm-tools/Manifest | 3 +- .../app-emulation/open-vm-tools/README | 3 - .../open-vm-tools/files/10.1.0-Werror.patch | 24 +++ .../open-vm-tools/files/11.3.5-icu.patch | 26 +++ .../open-vm-tools/files/mount.vmhgfs | 2 + ...e-Add-options-for-fuse-hgfs-and-udev.patch | 31 ---- .../open-vm-tools/files/open-vm-tools.confd | 2 + .../open-vm-tools/files/open-vm-tools.initd | 59 +++++++ .../open-vm-tools/files/vgauthd.service | 14 ++ .../open-vm-tools/files/vmtoolsd.service | 11 ++ .../files/vmtoolsd.vgauth.service | 14 ++ .../app-emulation/open-vm-tools/metadata.xml | 17 +- .../open-vm-tools/open-vm-tools-12.2.0.ebuild | 149 ++++++++++++++++++ .../open-vm-tools/open-vm-tools-12.2.5.ebuild | 149 ++++++++++++++++++ .../open-vm-tools/open-vm-tools-12.3.0.ebuild | 109 ------------- 15 files changed, 455 insertions(+), 158 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/README create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/10.1.0-Werror.patch create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/11.3.5-icu.patch create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/mount.vmhgfs delete mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools-0001-configure-Add-options-for-fuse-hgfs-and-udev.patch create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.confd create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.initd create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vgauthd.service create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.service create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.vgauth.service create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.0.ebuild create mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.5.ebuild delete mode 100644 sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.3.0.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/Manifest b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/Manifest index 4c435b607b..bdbc4e5c9a 100644 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/Manifest @@ -1 +1,2 @@ -DIST open-vm-tools-12.3.0-22234872.tar.gz 4362694 BLAKE2B dbbcc3af51737cd9f4ed67a5d77e74dc3040e872b1af58e06a691c74987c3f39b9923c837a18629d758a807c81237f9398c436212d2acef687d35cc8acee2b43 SHA512 942be3c225d5724e236959dc0d422358b99d2844ed8f1c2d2ca06ea5959c12b1a5ac4fa47ee48c27d1c1291f6d783d1cf87303bf64b8117fd96f226ae4d632e5 +DIST open-vm-tools-12.2.0-21223074.tar.gz 4365836 BLAKE2B ecac1ada523b9ba6e6f9e880f700a9c35200e9093c81f3367ce3b196365166f682f7d8ba290f624417b83c3573894020fe6b4cbd82a117412ebe80df283f32db SHA512 d663d8ea455264cad7d3eaac16c5d08672e8e10f7a9171be40fff69e208ae697bc0e8af498c978d8de470ed273351b42c54994b2c552fdc05b828c80f4826b84 +DIST open-vm-tools-12.2.5-21855600.tar.gz 4365531 BLAKE2B 1df621aea3d349af45c41268f3ab9ef6dc012bc7b74b8ff399a3819f75c92b408f272c03e31ff74d7f1aceda8a88e5755064236b87403d8ef2717567de174434 SHA512 72db3b88f61624d26e8ff7e37e4fc52ecd0bec0b6f076d935870c03312321c5e0b406d05eae7012872734a50626ed760dff2cf872e26ec18ebf200aff5ed12ef diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/README b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/README deleted file mode 100644 index aff503a9c8..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/README +++ /dev/null @@ -1,3 +0,0 @@ -When updating the version of open-vm-tools the ebuild version of -oem-vmware must be updated to match as well. That way the reported "OEM" -version directly reflects the installed tools. diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/10.1.0-Werror.patch b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/10.1.0-Werror.patch new file mode 100644 index 0000000000..b79865e62d --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/10.1.0-Werror.patch @@ -0,0 +1,24 @@ +From fdf599994d58ef47b73dc94d21d3556a2ec5d9da Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Sat, 26 Nov 2016 11:54:33 -0500 +Subject: [PATCH] build: drop -Werror + +--- + open-vm-tools/configure.ac | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac +index 8d4604e8..4d925f22 100644 +--- a/open-vm-tools/configure.ac ++++ b/open-vm-tools/configure.ac +@@ -1137,7 +1137,6 @@ AC_C_VOLATILE + + ### General flags / actions + CFLAGS="$CFLAGS -Wall" +-CFLAGS="$CFLAGS -Werror" + + # -Wno-unknown-pragmas is due to gcc not understanding '#pragma ident' + # in Xlib.h on OpenSolaris. +-- +2.11.0.rc2 + diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/11.3.5-icu.patch b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/11.3.5-icu.patch new file mode 100644 index 0000000000..d51c0cc60a --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/11.3.5-icu.patch @@ -0,0 +1,26 @@ +From 08caf83eaa0e66cee8f3e49479cd201a10bb3919 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Sat, 25 Sep 2021 21:14:25 -0400 +Subject: [PATCH] lib/unicode: add ICU_LIBS to LDADD + +--- + open-vm-tools/lib/unicode/Makefile.am | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/open-vm-tools/lib/unicode/Makefile.am b/open-vm-tools/lib/unicode/Makefile.am +index 4284c51c..40261fba 100644 +--- a/open-vm-tools/lib/unicode/Makefile.am ++++ b/open-vm-tools/lib/unicode/Makefile.am +@@ -25,7 +25,9 @@ libUnicode_la_SOURCES += unicodeSimpleTypes.c + libUnicode_la_SOURCES += unicodeSimpleOperations.c + libUnicode_la_SOURCES += unicodeSimpleTransforms.c + libUnicode_la_SOURCES += unicodeStatic.c ++libUnicode_la_LIBADD = + + if HAVE_ICU + libUnicode_la_SOURCES += unicodeICU.c ++libUnicode_la_LIBADD += @ICU_LIBS@ + endif +-- +2.33.0 + diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/mount.vmhgfs b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/mount.vmhgfs new file mode 100644 index 0000000000..d4b319c80c --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/mount.vmhgfs @@ -0,0 +1,2 @@ +#!/bin/sh +hgfsmounter "$@" >/dev/null 2>&1 || vmhgfs-fuse "$@" diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools-0001-configure-Add-options-for-fuse-hgfs-and-udev.patch b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools-0001-configure-Add-options-for-fuse-hgfs-and-udev.patch deleted file mode 100644 index 1501b9ba31..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools-0001-configure-Add-options-for-fuse-hgfs-and-udev.patch +++ /dev/null @@ -1,31 +0,0 @@ -From d41aae8430eb0148dda9f71f311626bbe779d115 Mon Sep 17 00:00:00 2001 -From: Benjamin Gilbert -Date: Tue, 21 Mar 2017 16:04:30 -0700 -Subject: [PATCH] configure: Add options for fuse, hgfs, and udev - ---- - open-vm-tools/configure.ac | 16 +++++++++++++++- - 1 file changed, 15 insertions(+), 1 deletion(-) - -diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac -index ab315b84..33839087 100644 ---- a/open-vm-tools/configure.ac -+++ b/open-vm-tools/configure.ac -@@ -1425,7 +1433,13 @@ if test "$os" = "solaris"; then - fi - fi - --if test "$os" = "linux"; then -+AC_ARG_WITH([udev-rules], -+ [AS_HELP_STRING([--without-udev-rules], -+ [don't install udev rules])], -+ [], -+ [with_udev_rules=yes]) -+ -+if test "$os" = "linux" -a "$with_udev_rules" = "yes"; then - have_udev="yes" - AC_ARG_WITH([udev-rules-dir], - [AS_HELP_STRING([--with-udev-rules-dir=DIR], --- -2.26.3 - diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.confd b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.confd new file mode 100644 index 0000000000..4414fabdb4 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.confd @@ -0,0 +1,2 @@ +# Set this to no to disable drag and drop (and vmblock) loading. +VM_DRAG_AND_DROP="yes" diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.initd b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.initd new file mode 100644 index 0000000000..8b91e4fb4c --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/open-vm-tools.initd @@ -0,0 +1,59 @@ +#!/sbin/openrc-run +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +pidfile="/run/vmtoolsd.pid" +command="/usr/bin/vmtoolsd" +command_args="-b ${pidfile}" + +vmblockmntpt="/proc/fs/vmblock/mountPoint" +vmblockfusemntpt="/run/vmblock-fuse" + +depend() { + before checkfs fsck net X +} + +start_vmblock() { + checkpath -d -m 1777 /tmp/VMwareDnD + if command -v vmware-vmblock-fuse > /dev/null; then + modprobe fuse > /dev/null 2>&1 + checkpath -d "${vmblockfusemntpt}" + ebegin "Mounting vmblock-fuse" + vmware-vmblock-fuse \ + -o subtype=vmware-vmblock,default_permissions,allow_other \ + "${vmblockfusemntpt}" + eend $? + else + modprobe vmblock > /dev/null 2>&1 + checkpath -d "${vmblockmntpt}" + ebegin "Mounting vmblock" + mount -t vmblock vmblock "${vmblockmntpt}" + eend $? + fi +} + +stop_vmblock() { + if [ -d "${vmblockfusemntpt}" ]; then + ebegin "Unmounting vmblock-fuse" + umount "${vmblockfusemntpt}" + eend $? + else + ebegin "Unmounting vmblock" + umount "${vmblockmntpt}" + eend $? + fi +} + +start_pre() { + if [ x"${VM_DRAG_AND_DROP}" = xyes ]; then + start_vmblock + fi + return 0 +} + +stop_post() { + if [ x"${VM_DRAG_AND_DROP}" = xyes ]; then + stop_vmblock + fi + return 0 +} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vgauthd.service b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vgauthd.service new file mode 100644 index 0000000000..db27bd56ef --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vgauthd.service @@ -0,0 +1,14 @@ +[Unit] +Description=VGAuth Service for open-vm-tools +Documentation=https://github.com/vmware/open-vm-tools +ConditionVirtualization=vmware +PartOf=vmtoolsd.service + +[Service] +# For dev-libs/xerces-c[iconv,-icu] +EnvironmentFile=-/etc/env.d/50xerces-c +ExecStart=/usr/bin/VGAuthService -s +TimeoutStopSec=5 + +[Install] +RequiredBy=vmtoolsd.service diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.service b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.service new file mode 100644 index 0000000000..1226291bc8 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.service @@ -0,0 +1,11 @@ +[Unit] +Description=Service for virtual machines hosted on VMware +Documentation=https://github.com/vmware/open-vm-tools +ConditionVirtualization=vmware + +[Service] +ExecStart=/usr/bin/vmtoolsd +TimeoutStopSec=5 + +[Install] +WantedBy=multi-user.target diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.vgauth.service b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.vgauth.service new file mode 100644 index 0000000000..1cb6e00ecf --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/files/vmtoolsd.vgauth.service @@ -0,0 +1,14 @@ +[Unit] +Description=Service for virtual machines hosted on VMware +Documentation=https://github.com/vmware/open-vm-tools +ConditionVirtualization=vmware +Requires=vgauthd.service +After=vgauthd.service + +[Service] +ExecStart=/usr/bin/vmtoolsd +TimeoutStopSec=5 + +[Install] +WantedBy=multi-user.target +Also=vgauthd.service diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/metadata.xml b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/metadata.xml index 9e8e61bb81..f53e431f81 100644 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/metadata.xml +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/metadata.xml @@ -1,14 +1,7 @@ - + - - floppym@gentoo.org - Mike Gilbert - - - vmware@gentoo.org - Gentoo VMware Project - + The Open Virtual Machine Tools (open-vm-tools) are the open source implementation of VMware Tools. They are a set of guest operating system @@ -16,21 +9,17 @@ of virtual machines. - Build Common Agent Framework Build deploypkg plugin Enable support for nicinfo Generate API documentation Enable vmblock-fuse/vmhgfs-fuse - Build grabbitmqproxy plugin Compile with Gtkmm and sigc++ (Recommended) Enable multimon (Requires X) - Force shared libraries to be built as PIC Build the linux/unix resolutionkms module Build vgauth - Build vgauth with xml-security-c instead of xmlsec1 - Build vgauth with xmlsec1 instead of xml-security-c vmware/open-vm-tools + cpe:/a:vmware:tools diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.0.ebuild b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.0.ebuild new file mode 100644 index 0000000000..38806cfd25 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.0.ebuild @@ -0,0 +1,149 @@ +# Copyright 2007-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools linux-info pam systemd udev + +DESCRIPTION="Tools for VMware guests" +HOMEPAGE="https://github.com/vmware/open-vm-tools" +MY_P="${P}-21223074" +SRC_URI="https://github.com/vmware/open-vm-tools/releases/download/stable-${PV}/${MY_P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="X +deploypkg +dnet doc +fuse gtkmm +icu multimon pam +resolutionkms +ssl +vgauth" +REQUIRED_USE=" + multimon? ( X ) + vgauth? ( ssl ) +" + +RDEPEND=" + dev-libs/glib + net-libs/libtirpc + deploypkg? ( dev-libs/libmspack ) + fuse? ( sys-fs/fuse:0 ) + pam? ( sys-libs/pam ) + !pam? ( virtual/libcrypt:= ) + ssl? ( dev-libs/openssl:0= ) + vgauth? ( + dev-libs/libxml2 + dev-libs/xmlsec:= + ) + X? ( + x11-libs/libXext + multimon? ( x11-libs/libXinerama ) + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXrandr + x11-libs/libXtst + x11-libs/libSM + x11-libs/libXcomposite + x11-libs/gdk-pixbuf-xlib + x11-libs/gtk+:3 + gtkmm? ( + dev-cpp/gtkmm:3.0 + dev-libs/libsigc++:2 + ) + ) + dnet? ( dev-libs/libdnet ) + icu? ( dev-libs/icu:= ) + resolutionkms? ( + x11-libs/libdrm[video_cards_vmware] + virtual/libudev + ) +" + +DEPEND="${RDEPEND} + net-libs/rpcsvc-proto +" + +BDEPEND=" + dev-util/glib-utils + virtual/pkgconfig + doc? ( app-doc/doxygen ) +" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/10.1.0-Werror.patch" + "${FILESDIR}/11.3.5-icu.patch" +) + +pkg_setup() { + local CONFIG_CHECK="~VMWARE_BALLOON ~VMWARE_PVSCSI ~VMXNET3" + use X && CONFIG_CHECK+=" ~DRM_VMWGFX" + kernel_is -lt 3 9 || CONFIG_CHECK+=" ~VMWARE_VMCI ~VMWARE_VMCI_VSOCKETS" + kernel_is -lt 3 || CONFIG_CHECK+=" ~FUSE_FS" + kernel_is -lt 5 5 || CONFIG_CHECK+=" ~X86_IOPL_IOPERM" + linux-info_pkg_setup +} + +src_prepare() { + eapply -p2 "${PATCHES[@]}" + eapply_user + eautoreconf +} + +src_configure() { + local myeconfargs=( + --disable-glibc-check + --without-root-privileges + $(use_enable multimon) + $(use_with X x) + $(use_with X gtk3) + $(use_with gtkmm gtkmm3) + $(use_enable doc docs) + --disable-tests + $(use_enable resolutionkms) + --disable-static + $(use_enable deploypkg) + $(use_with pam) + $(use_enable vgauth) + $(use_with dnet) + $(use_with icu) + --with-udev-rules-dir="$(get_udevdir)/rules.d" + ) + # Avoid a bug in configure.ac + use ssl || myeconfargs+=( --without-ssl ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die + + if use pam; then + rm "${ED}"/etc/pam.d/vmtoolsd || die + pamd_mimic_system vmtoolsd auth account + fi + + newinitd "${FILESDIR}/open-vm-tools.initd" vmware-tools + newconfd "${FILESDIR}/open-vm-tools.confd" vmware-tools + + if use vgauth; then + systemd_newunit "${FILESDIR}"/vmtoolsd.vgauth.service vmtoolsd.service + systemd_dounit "${FILESDIR}"/vgauthd.service + else + systemd_dounit "${FILESDIR}"/vmtoolsd.service + fi + + # Make fstype = vmhgfs-fuse work in fstab + dosym vmhgfs-fuse /usr/bin/mount.vmhgfs-fuse + + if use X; then + fperms 4711 /usr/bin/vmware-user-suid-wrapper + dobin scripts/common/vmware-xdg-detect-de + fi +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.5.ebuild b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.5.ebuild new file mode 100644 index 0000000000..7747d4c3c3 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.2.5.ebuild @@ -0,0 +1,149 @@ +# Copyright 2007-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools linux-info pam systemd udev + +DESCRIPTION="Tools for VMware guests" +HOMEPAGE="https://github.com/vmware/open-vm-tools" +MY_P="${P}-21855600" +SRC_URI="https://github.com/vmware/open-vm-tools/releases/download/stable-${PV}/${MY_P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="X +deploypkg +dnet doc +fuse gtkmm +icu multimon pam +resolutionkms +ssl +vgauth" +REQUIRED_USE=" + multimon? ( X ) + vgauth? ( ssl ) +" + +RDEPEND=" + dev-libs/glib + net-libs/libtirpc + deploypkg? ( dev-libs/libmspack ) + fuse? ( sys-fs/fuse:0 ) + pam? ( sys-libs/pam ) + !pam? ( virtual/libcrypt:= ) + ssl? ( dev-libs/openssl:0= ) + vgauth? ( + dev-libs/libxml2 + dev-libs/xmlsec:= + ) + X? ( + x11-libs/libXext + multimon? ( x11-libs/libXinerama ) + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXrandr + x11-libs/libXtst + x11-libs/libSM + x11-libs/libXcomposite + x11-libs/gdk-pixbuf-xlib + x11-libs/gtk+:3 + gtkmm? ( + dev-cpp/gtkmm:3.0 + dev-libs/libsigc++:2 + ) + ) + dnet? ( dev-libs/libdnet ) + icu? ( dev-libs/icu:= ) + resolutionkms? ( + x11-libs/libdrm[video_cards_vmware] + virtual/libudev + ) +" + +DEPEND="${RDEPEND} + net-libs/rpcsvc-proto +" + +BDEPEND=" + dev-util/glib-utils + virtual/pkgconfig + doc? ( app-doc/doxygen ) +" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/10.1.0-Werror.patch" + "${FILESDIR}/11.3.5-icu.patch" +) + +pkg_setup() { + local CONFIG_CHECK="~VMWARE_BALLOON ~VMWARE_PVSCSI ~VMXNET3" + use X && CONFIG_CHECK+=" ~DRM_VMWGFX" + kernel_is -lt 3 9 || CONFIG_CHECK+=" ~VMWARE_VMCI ~VMWARE_VMCI_VSOCKETS" + kernel_is -lt 3 || CONFIG_CHECK+=" ~FUSE_FS" + kernel_is -lt 5 5 || CONFIG_CHECK+=" ~X86_IOPL_IOPERM" + linux-info_pkg_setup +} + +src_prepare() { + eapply -p2 "${PATCHES[@]}" + eapply_user + eautoreconf +} + +src_configure() { + local myeconfargs=( + --disable-glibc-check + --without-root-privileges + $(use_enable multimon) + $(use_with X x) + $(use_with X gtk3) + $(use_with gtkmm gtkmm3) + $(use_enable doc docs) + --disable-tests + $(use_enable resolutionkms) + --disable-static + $(use_enable deploypkg) + $(use_with pam) + $(use_enable vgauth) + $(use_with dnet) + $(use_with icu) + --with-udev-rules-dir="$(get_udevdir)/rules.d" + ) + # Avoid a bug in configure.ac + use ssl || myeconfargs+=( --without-ssl ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die + + if use pam; then + rm "${ED}"/etc/pam.d/vmtoolsd || die + pamd_mimic_system vmtoolsd auth account + fi + + newinitd "${FILESDIR}/open-vm-tools.initd" vmware-tools + newconfd "${FILESDIR}/open-vm-tools.confd" vmware-tools + + if use vgauth; then + systemd_newunit "${FILESDIR}"/vmtoolsd.vgauth.service vmtoolsd.service + systemd_dounit "${FILESDIR}"/vgauthd.service + else + systemd_dounit "${FILESDIR}"/vmtoolsd.service + fi + + # Make fstype = vmhgfs-fuse work in fstab + dosym vmhgfs-fuse /usr/bin/mount.vmhgfs-fuse + + if use X; then + fperms 4711 /usr/bin/vmware-user-suid-wrapper + dobin scripts/common/vmware-xdg-detect-de + fi +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.3.0.ebuild b/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.3.0.ebuild deleted file mode 100644 index 2ca1c4dd56..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/app-emulation/open-vm-tools/open-vm-tools-12.3.0.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit autotools flag-o-matic multilib toolchain-funcs - -DESCRIPTION="Opensourced tools for VMware guests" -HOMEPAGE="https://github.com/vmware/open-vm-tools" -MY_P="${P}-22234872" -SRC_URI="https://github.com/vmware/open-vm-tools/releases/download/stable-${PV}/${MY_P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="amd64 ~x86" -# Flatcar: add USE flag salt-minion -IUSE="+deploypkg +dnet +pic salt-minion" # TODO: pam - -DEPEND="dev-libs/glib:2 - net-libs/libtirpc - deploypkg? ( dev-libs/libmspack ) - dnet? ( dev-libs/libdnet )" - -# Runtime dependencies provided by CoreOS, not the OEM: -# dev-libs/glib:2 -# sys-apps/ethtool -# pam? ( sys-libs/pam ) -RDEPEND="dnet? ( dev-libs/libdnet ) - deploypkg? ( dev-libs/libmspack )" - -S="${WORKDIR}/${MY_P}" - -PATCHES=( - "${FILESDIR}/${PN}-0001-configure-Add-options-for-fuse-hgfs-and-udev.patch" -) - -src_prepare() { - eapply -p2 "${PATCHES[@]}" - eapply_user - eautoreconf -} - -# Override configure's use of pkg-config to ensure ${SYSROOT} is respected. -override_vmw_check_lib() { - local lib="$1" - local var="$2" - local pkgconfig="$(tc-getPKG_CONFIG)" - export "CUSTOM_${var}_CPPFLAGS=$(${pkgconfig} --cflags ${lib})" - export "CUSTOM_${var}_LIBS=$(${pkgconfig} --libs ${lib})" -} - -src_configure() { - local oemlib="/oem/$(get_libdir)" - local oeminc="/oem/include" - - # set rpath even if oem is in ld.so.conf - append-ldflags "-Wl,-rpath,${oemlib}" - - # libdnet is installed to /oem - export CUSTOM_DNET_CPPFLAGS="-I=${oeminc}" - export CUSTOM_DNET_LIBS="-L=${oemlib}" - export CUSTOM_MSPACK_CPPFLAGS="-I=${oeminc}" - export CUSTOM_MSPACK_LIBS="-L=${oemlib}" - - # for everything else configure is still wrong because it calls - # pkg-config directly instead of favoring the ${CHOST}-pkg-config - # wrapper or using the standard autoconf macro. - override_vmw_check_lib glib-2.0 GLIB2 - override_vmw_check_lib gmodule-2.0 GMODULE - override_vmw_check_lib gobject-2.0 GOBJECT - override_vmw_check_lib gthread-2.0 GTHREAD - - local myeconfargs=( - --prefix=/oem - $(use_enable deploypkg) - $(use_enable salt-minion) - --disable-containerinfo - --disable-docs - --disable-multimon - --disable-tests - --without-fuse - --without-icu - --without-kernel-modules - --without-pam - --without-udev-rules - --without-x - --disable-vgauth - $(use_with dnet) - $(use_with pic) - ) - # TODO: $(use_with pam) - - econf "${myeconfargs[@]}" - - # Bugs 260878, 326761 - find ./ -name Makefile | xargs sed -i -e 's/-Werror//g' || die "sed out Werror failed" -} - -src_install() { - # Relocate event scripts, a symlink will be created by the systemd - # unit. - emake DESTDIR="${D}" confdir=/oem/vmware-tools install - - rm "${D}"/etc/pam.d/vmtoolsd - # TODO: pamd_mimic_system vmtoolsd auth account - - # We never bother with i10n on CoreOS - rm -rf "${D}"/usr/share/open-vm-tools -}