diff options
Diffstat (limited to 'meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb')
-rw-r--r-- | meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.2.5.bb | 119 |
1 files changed, 119 insertions, 0 deletions
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 @@ | |||
1 | # This recipe is modified from the recipe originally found in the Open-Switch | ||
2 | # repository: | ||
3 | # | ||
4 | # https://github.com/open-switch/ops-build | ||
5 | # yocto/openswitch/meta-foss-openswitch/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.0.5.bb | ||
6 | # Commit 9008de2d8e100f3f868c66765742bca9fa98f3f9 | ||
7 | # | ||
8 | # The recipe packaging has been relicensed under the MIT license for inclusion | ||
9 | # in meta-openembedded by agreement of the author (Diego Dompe). | ||
10 | # | ||
11 | |||
12 | SUMMARY = "Tools to enhance VMWare guest integration and performance" | ||
13 | HOMEPAGE = "https://github.com/vmware/open-vm-tools" | ||
14 | DESCRIPTION = "\ | ||
15 | open-vm-tools is a set of services and modules that enable several features in VMware products \ | ||
16 | for better management of and seamless user interactions with guests.\ | ||
17 | " | ||
18 | SECTION = "vmware-tools" | ||
19 | |||
20 | LICENSE = "LGPL-2.0 & GPL-2.0 & BSD & CDDL-1.0" | ||
21 | LIC_FILES_CHKSUM = "file://LICENSE;md5=559317809c5444fb39ceaf6ac45c43ac" | ||
22 | LICENSE_modules/freebsd/vmblock = "BSD" | ||
23 | LICENSE_modules/freebsd/vmmemctl = "GPL-2.0" | ||
24 | LICENSE_modules/freebsd/vmxnet = "GPL-2.0" | ||
25 | LICENSE_modules/linux = "GPL-2.0" | ||
26 | LICENSE_modules/solaris = "CDDL-1.0" | ||
27 | |||
28 | SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https \ | ||
29 | file://tools.conf \ | ||
30 | file://vmtoolsd.service \ | ||
31 | file://vmtoolsd.init \ | ||
32 | file://0001-configure.ac-don-t-use-dnet-config.patch;patchdir=.. \ | ||
33 | file://0003-Use-configure-test-for-struct-timespec.patch;patchdir=.. \ | ||
34 | file://0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch;patchdir=.. \ | ||
35 | file://0005-Use-configure-to-test-for-feature-instead-of-platfor.patch;patchdir=.. \ | ||
36 | file://0006-Use-configure-test-for-sys-stat.h-include.patch;patchdir=.. \ | ||
37 | file://0007-Fix-subdir-objects-configure-error.patch;patchdir=.. \ | ||
38 | file://0008-include-poll.h-instead-of-sys-poll.h.patch;patchdir=.. \ | ||
39 | file://0009-Rename-poll.h-to-vm_poll.h.patch;patchdir=.. \ | ||
40 | file://0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch;patchdir=.. \ | ||
41 | file://0011-Use-uintmax_t-for-handling-rlim_t.patch;patchdir=.. \ | ||
42 | file://0012-Use-off64_t-instead-of-__off64_t.patch;patchdir=.. \ | ||
43 | file://0013-misc-Do-not-print-NULL-string-into-logs.patch;patchdir=.. \ | ||
44 | file://0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch;patchdir=.. \ | ||
45 | file://0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch;patchdir=.. \ | ||
46 | file://0001-hgfsmounter-Makefile.am-support-usrmerge.patch;patchdir=.. \ | ||
47 | " | ||
48 | |||
49 | SRC_URI_append_libc-musl = " file://0001-Add-resolv_compat.h-for-musl-builds.patch;patchdir=.. \ | ||
50 | " | ||
51 | |||
52 | SRCREV = "7ae57c3c7c1f68c74637ad009673dae94ee52570" | ||
53 | |||
54 | S = "${WORKDIR}/git/open-vm-tools" | ||
55 | |||
56 | DEPENDS = "glib-2.0 glib-2.0-native util-linux libdnet procps libtirpc" | ||
57 | |||
58 | # open-vm-tools is supported only on x86. | ||
59 | COMPATIBLE_HOST = '(x86_64.*|i.86.*)-linux' | ||
60 | |||
61 | inherit autotools pkgconfig systemd update-rc.d | ||
62 | |||
63 | SYSTEMD_SERVICE_${PN} = "vmtoolsd.service" | ||
64 | |||
65 | EXTRA_OECONF = "--without-icu --disable-multimon --disable-docs \ | ||
66 | --disable-tests --without-gtkmm --without-xerces --without-pam \ | ||
67 | --disable-vgauth --disable-deploypkg \ | ||
68 | --without-root-privileges --without-kernel-modules --with-tirpc \ | ||
69 | --with-udev-rules-dir=${nonarch_base_libdir}/udev/rules.d" | ||
70 | |||
71 | NO_X11_FLAGS = "--without-x --without-gtk2 --without-gtk3" | ||
72 | X11_DEPENDS = "libxext libxi libxrender libxrandr libxtst gtk+ gdk-pixbuf" | ||
73 | PACKAGECONFIG[x11] = ",${NO_X11_FLAGS},${X11_DEPENDS}" | ||
74 | |||
75 | # fuse gets implicitly detected; there is no --without-fuse option. | ||
76 | PACKAGECONFIG[fuse] = ",,fuse" | ||
77 | |||
78 | CFLAGS_append_toolchain-clang = " -Wno-address-of-packed-member" | ||
79 | FILES_${PN} += "\ | ||
80 | ${libdir}/open-vm-tools/plugins/vmsvc/lib*.so \ | ||
81 | ${libdir}/open-vm-tools/plugins/common/lib*.so \ | ||
82 | ${sysconfdir}/vmware-tools/tools.conf \ | ||
83 | " | ||
84 | FILES_${PN}-locale += "${datadir}/open-vm-tools/messages" | ||
85 | FILES_${PN}-dev += "${libdir}/open-vm-tools/plugins/common/lib*.la" | ||
86 | |||
87 | CONFFILES_${PN} += "${sysconfdir}/vmware-tools/tools.conf" | ||
88 | |||
89 | RDEPENDS_${PN} = "util-linux libdnet fuse" | ||
90 | |||
91 | do_install_append() { | ||
92 | if ! ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','true','false',d)}; then | ||
93 | install -d ${D}/sbin | ||
94 | ln -sf ${sbindir}/mount.vmhgfs ${D}/sbin/mount.vmhgfs | ||
95 | fi | ||
96 | install -d ${D}${sysconfdir}/vmware-tools | ||
97 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
98 | install -d ${D}${systemd_unitdir}/system | ||
99 | install -m 644 ${WORKDIR}/*.service ${D}${systemd_unitdir}/system | ||
100 | else | ||
101 | install -d ${D}${sysconfdir}/init.d | ||
102 | install -m 0755 ${WORKDIR}/vmtoolsd.init ${D}${sysconfdir}/init.d/vmtoolsd | ||
103 | fi | ||
104 | install -m 0644 ${WORKDIR}/tools.conf ${D}${sysconfdir}/vmware-tools/tools.conf | ||
105 | } | ||
106 | |||
107 | do_configure_prepend() { | ||
108 | export CUSTOM_DNET_NAME=dnet | ||
109 | export CUSTOM_DNET_LIBS=-L${STAGING_LIBDIR}/libdnet.so | ||
110 | } | ||
111 | |||
112 | INITSCRIPT_PACKAGES = "${PN}" | ||
113 | INITSCRIPT_NAME_${PN} = "vmtoolsd" | ||
114 | INITSCRIPT_PARAMS_${PN} = "start 90 2 3 4 5 . stop 60 0 1 6 ." | ||
115 | |||
116 | python() { | ||
117 | if 'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split(): | ||
118 | raise bb.parse.SkipRecipe('Requires meta-filesystems to be present to provide fuse.') | ||
119 | } | ||