From 7a5fbd9d46cdec887d7b370f567e740e7731bfec Mon Sep 17 00:00:00 2001 From: Randy MacLeod Date: Wed, 14 Apr 2021 13:50:00 -0400 Subject: open-vm-tools: upgrade 11.0.1 -> 11.2.5 Drop 0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch since it was a backport. Drop 0001-pollGtk-Drop-volatile-qualifier.patch since it's covered by: f48efc8e Make pollGtk resetable. Drop 0001-utilBacktrace-Ignore-Warray-bounds.patch since it's covered by: 0cfda58a Make peeking back into the stack work for back traces Drop 0002-add-include-sys-sysmacros.h.patch since it's covered by: 69b7e1f9 Include sysmacros.h directly as mandated by glibc-2.25. Refit: 0005-Use-configure-to-test-for-feature-instead-of-platfor.patch 0009-Rename-poll.h-to-vm_poll.h.patch 0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch 0011-Use-uintmax_t-for-handling-rlim_t.patch Add: 0001-Add-resolv_compat.h-for-musl-builds.patch Signed-off-by: Randy MacLeod Signed-off-by: Trevor Gamblin Signed-off-by: Khem Raj --- .../open-vm-tools/open-vm-tools_11.2.5.bb | 119 +++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb (limited to 'meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb') diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb b/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb new file mode 100644 index 000000000..256949a03 --- /dev/null +++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb @@ -0,0 +1,119 @@ +# This recipe is modified from the recipe originally found in the Open-Switch +# repository: +# +# https://github.com/open-switch/ops-build +# yocto/openswitch/meta-foss-openswitch/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.0.5.bb +# Commit 9008de2d8e100f3f868c66765742bca9fa98f3f9 +# +# The recipe packaging has been relicensed under the MIT license for inclusion +# in meta-openembedded by agreement of the author (Diego Dompe). +# + +SUMMARY = "Tools to enhance VMWare guest integration and performance" +HOMEPAGE = "https://github.com/vmware/open-vm-tools" +DESCRIPTION = "\ +open-vm-tools is a set of services and modules that enable several features in VMware products \ +for better management of and seamless user interactions with guests.\ +" +SECTION = "vmware-tools" + +LICENSE = "LGPL-2.0 & GPL-2.0 & BSD & CDDL-1.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=559317809c5444fb39ceaf6ac45c43ac" +LICENSE_modules/freebsd/vmblock = "BSD" +LICENSE_modules/freebsd/vmmemctl = "GPL-2.0" +LICENSE_modules/freebsd/vmxnet = "GPL-2.0" +LICENSE_modules/linux = "GPL-2.0" +LICENSE_modules/solaris = "CDDL-1.0" + +SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https \ + file://tools.conf \ + file://vmtoolsd.service \ + file://vmtoolsd.init \ + file://0001-configure.ac-don-t-use-dnet-config.patch;patchdir=.. \ + file://0003-Use-configure-test-for-struct-timespec.patch;patchdir=.. \ + file://0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch;patchdir=.. \ + file://0005-Use-configure-to-test-for-feature-instead-of-platfor.patch;patchdir=.. \ + file://0006-Use-configure-test-for-sys-stat.h-include.patch;patchdir=.. \ + file://0007-Fix-subdir-objects-configure-error.patch;patchdir=.. \ + file://0008-include-poll.h-instead-of-sys-poll.h.patch;patchdir=.. \ + file://0009-Rename-poll.h-to-vm_poll.h.patch;patchdir=.. \ + file://0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch;patchdir=.. \ + file://0011-Use-uintmax_t-for-handling-rlim_t.patch;patchdir=.. \ + file://0012-Use-off64_t-instead-of-__off64_t.patch;patchdir=.. \ + file://0013-misc-Do-not-print-NULL-string-into-logs.patch;patchdir=.. \ + file://0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch;patchdir=.. \ + file://0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch;patchdir=.. \ + file://0001-hgfsmounter-Makefile.am-support-usrmerge.patch;patchdir=.. \ +" + +SRC_URI_append_libc-musl = " file://0001-Add-resolv_compat.h-for-musl-builds.patch;patchdir=.. \ +" + +SRCREV = "7ae57c3c7c1f68c74637ad009673dae94ee52570" + +S = "${WORKDIR}/git/open-vm-tools" + +DEPENDS = "glib-2.0 glib-2.0-native util-linux libdnet procps libtirpc" + +# open-vm-tools is supported only on x86. +COMPATIBLE_HOST = '(x86_64.*|i.86.*)-linux' + +inherit autotools pkgconfig systemd update-rc.d + +SYSTEMD_SERVICE_${PN} = "vmtoolsd.service" + +EXTRA_OECONF = "--without-icu --disable-multimon --disable-docs \ + --disable-tests --without-gtkmm --without-xerces --without-pam \ + --disable-vgauth --disable-deploypkg \ + --without-root-privileges --without-kernel-modules --with-tirpc \ + --with-udev-rules-dir=${nonarch_base_libdir}/udev/rules.d" + +NO_X11_FLAGS = "--without-x --without-gtk2 --without-gtk3" +X11_DEPENDS = "libxext libxi libxrender libxrandr libxtst gtk+ gdk-pixbuf" +PACKAGECONFIG[x11] = ",${NO_X11_FLAGS},${X11_DEPENDS}" + +# fuse gets implicitly detected; there is no --without-fuse option. +PACKAGECONFIG[fuse] = ",,fuse" + +CFLAGS_append_toolchain-clang = " -Wno-address-of-packed-member" +FILES_${PN} += "\ + ${libdir}/open-vm-tools/plugins/vmsvc/lib*.so \ + ${libdir}/open-vm-tools/plugins/common/lib*.so \ + ${sysconfdir}/vmware-tools/tools.conf \ +" +FILES_${PN}-locale += "${datadir}/open-vm-tools/messages" +FILES_${PN}-dev += "${libdir}/open-vm-tools/plugins/common/lib*.la" + +CONFFILES_${PN} += "${sysconfdir}/vmware-tools/tools.conf" + +RDEPENDS_${PN} = "util-linux libdnet fuse" + +do_install_append() { + if ! ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','true','false',d)}; then + install -d ${D}/sbin + ln -sf ${sbindir}/mount.vmhgfs ${D}/sbin/mount.vmhgfs + fi + install -d ${D}${sysconfdir}/vmware-tools + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${systemd_unitdir}/system + install -m 644 ${WORKDIR}/*.service ${D}${systemd_unitdir}/system + else + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/vmtoolsd.init ${D}${sysconfdir}/init.d/vmtoolsd + fi + install -m 0644 ${WORKDIR}/tools.conf ${D}${sysconfdir}/vmware-tools/tools.conf +} + +do_configure_prepend() { + export CUSTOM_DNET_NAME=dnet + export CUSTOM_DNET_LIBS=-L${STAGING_LIBDIR}/libdnet.so +} + +INITSCRIPT_PACKAGES = "${PN}" +INITSCRIPT_NAME_${PN} = "vmtoolsd" +INITSCRIPT_PARAMS_${PN} = "start 90 2 3 4 5 . stop 60 0 1 6 ." + +python() { + if 'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split(): + raise bb.parse.SkipRecipe('Requires meta-filesystems to be present to provide fuse.') +} -- cgit v1.2.3-54-g00ecf