From 32b11995a9447d927862951d29db38455f9e0205 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Wed, 31 Mar 2021 13:37:05 -0500 Subject: meta-openembedded: subtree update:98175fd0cc..da393545a2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Aditya.Tayade (1): neon: Add ptest Andreas Müller (9): udisks2: upgrade 2.9.1 -> 2.9.2 / replace '_git' by version in recipe-name poppler: upgrade 21.02.0 -> 21.03.0 xfce4-panel: upgrade 4.16.1 -> 4.16.2 xfce4-cpugraph-plugin: upgrade 1.2.1 -> 1.2.3 xfce4-time-out-plugin: upgrade 1.1.1 -> 1.1.2 mousepad: upgrade 0.5.2 -> 0.5.3 xfce4-panel-profiles: 1.0.12 -> 1.0.13 thunar: upgrade 4.16.2 -> 4.16.4 xfce4-taskmanager: upgrade 1.4.0 -> 1.4.2 Andrei Gherzan (6): python3-pep8: Fix HOMEPAGE python3-mccabe: Fix HOMEPAGE python3-ifaddr: Integrate a dependency of pysonos python3-pysonos: Integrate the SONOS control HomeAssistant module python3-aiohue: Integrate the hue control python module packagegroup-meta-python: Add new modules (aiohue, ifaddr, pysonos) Andrej Valek (1): jsoncpp: Upgrade to 1.9.4 Bartosz Golaszewski (11): pystemd: satisfy runtime dependencies python3-pythonping: new package python3-wpa-supplicant: new package python3-txdbus: new package python3-wpa-supplicant: add runtime dependencies python3-wpa-supplicant: fix importing the cli submodule python3-wpa-supplicant: replace DESCRIPTION with SUMMARY libgpiod: update v1.6.2 -> v1.6.3 python3-txdbus: add missing runtime dependencies python3-jmespath: new package python3-docutils: new package Ben Gampe (1): python3-h11: new package Carlos Rafael Giani (1): pipewire: Upgrade to 0.3.24 Changqing Li (2): php: allow php as empty openldap: upgrade 2.4.57 -> 2.4.58 Clément Péron (2): grpc: move grpc plugins to a new grpc-compiler package nodejs: 12.20.2 -> 12.21.0 Colin McAllister (1): python3-gpsd-py3: Added recipe Daniel Wagenknecht (1): gnome-keyring: set file capabilities in pkg_postinst Denys Dmytriyenko (1): glmark2: also depend on wayland-protocols when wayland distro feature is on Devon Pringle (1): python3-pastedeploy: Add recipe Fabio Berton (1): python3-requests: Support idna version 3.1 INC@Cisco) (2): bpftool: remove recipe from blacklist bpftool: improve reproducibility Jan Kaisrlik (1): abseil-cpp: reorder content of packages Joshua Watt (1): classes: Add Android sparse image class Kai Kang (8): python3-pillow: 8.1.0 -> 8.1.2 xfce4-cpufreq-plugin: 1.2.2 -> 1.2.5 exo: 4.16.0 -> 4.16.1 xfce4-netload-plugin: 1.3.2 -> 1.4.0 xfce4-genmon-plugin: 4.1.0 -> 4.1.1 xfce4-weather-plugin: 0.10.2 -> 0.11.0 xfce4-systemload-plugin: 1.2.4 -> 1.3.0 xfce4-taskmanager: 1.4.2 -> 1.5.2 Khem Raj (63): nss: Disable Werror open-vm-tools: Do not use volatile qualifier dconf-editor: Fix build with vala 0.50.4 libbacktrace: Add recipe libleak: Add recipe packagegroup-meta-oe: Add libleak to packagegroup-meta-oe-extended mongodb: Upgrade to 4.4.4 packagegroup-meta-python: Add python3-semantic-version python3-grpcio: Upgrade to 1.36.1 python3-grpcio: Fix build on mips and musl mpv: Link libatomic on riscv64 glog: Link with libexecinfo on musl musl-nscd: Make lex syntax posix'y libbpf: Depend on virtual/kernel:do_shared_workdir waf-cross-answers: Add powerpc64le version python3-grpcio,python3-grpcio-tools: Disable for ppc64le openh264: Disable building for ppc64le ufs-utils: Upgrade to 1.9 libhugetlbfs: Fix ARCH setting for ppc64 LE nodejs: Set correct nodejs arch for ppc64le libnma: Disbale vapi xrdp: Upgrade to 0.9.15 ply: upgrade to latest ply: Disable on ppc64 ltrace: Fix build on ppc64le/musl oprofile: Fix build on musl gperftools: Update SRCREV to point to 2.9.1 release mongodb: Fix cross build on ppc64le abseil-cpp: Fix build on musl and ppc64 mariadb: Fix build on musl/ppc mongodb: Fix build on ppc64le breakpad: Upgrade to latest ssiapi: Disable for ppc64 kexec-tools-klibc: Use SITEINFO_BITS to construct includepath breakpad: Exclude for ppc64 python3-grpcio,python3-grpcio-tools: Enable build on ppc64/glibc breakpad: Do not fallback to android implementation for getcontext/setcontext on musl oprofile: Upgrade to 1.4.0 release vboxguestdrivers: Add __divmoddi4 builtin support links-x11,links: Upgrade to 2.22 layers: Drop gatesgarth from LAYERSERIES_COMPAT xxhash: Remove recipe gsound: Use () instead of {} for makefile variable in gsound_play_VALAFLAGS pipewire: Package systemd unit file for pipewire-media-session packagegroup-meta-python: Add new package python3-pythonping python3-spidev: Remove recipe for 3.2 python3-werkzeug: Clarify BSD license type python3-werkzeug: Delete recipe for 1.0.0 python3-hexdump: Move cleanup_hexfile into install_append cryptsetup: DEPEND on renamed util-linux-libuuid tracker-miners: Check for commercial license to enable ffmpeg gnome-settings-daemon: Do not generate meson.native libb64: Add recipe sysdig: Upgrade to 0.27.1 sysdig: Depend on system libb64 gimp: Disable vector iconn on rv32/musl libcamera: Update the patch to upstreamed one flashrom: Add remaining RISCV support mpd: Check for commercial in LICENSE_FLAGS_WHITELIST mpv: Exclude from world if commercial is not in inclusion list sox: Exclude from world if commercial is not in inclusion list vlc: Exclude from world if commercial is not in inclusion list sox: Remove LICENSE_FLAGS = "commercial" Leon Anavi (74): python3-elementpath: Upgrade 2.1.4 -> 2.2.0 python3-twisted: Upgrade 20.3.0 -> 21.2.0 python3-ipython: Upgrade 7.20.0 -> 7.21.0 python3-yamlloader: Upgrade 0.5.5 -> 1.0.0 python3-astroid: Upgrade 2.5 -> 2.5.1 python3-portion: Upgrade 2.1.4 -> 2.1.5 python3-pandas: Upgrade 1.2.2 -> 1.2.3 python3-ruamel-yaml: Upgrade 0.16.12 -> 0.16.13 python3-prettytable: Upgrade 2.0.0 -> 2.1.0 python3-huey: Upgrade 2.3.0 -> 2.3.1 python3-pychromecast: Upgrade 8.1.0 -> 9.1.1 python3-incremental: Upgrade 17.5.0 -> 21.3.0 python3-waitress: Upgrade 1.4.4 -> 2.0.0 python3-pako: Upgrade 0.3.0 -> 0.3.1 python3-pyscaffold: Upgrade 3.3.1 -> 4.0 python3-croniter: Upgrade 1.0.6 -> 1.0.8 python3-prompt-toolkit: Upgrade 3.0.16 -> 3.0.17 python3-pymisp: Upgrade 2.4.138 -> 2.4.140 python3-jsonpatch: Upgrade 1.31 -> 1.32 python3-jsonpointer: Upgrade 2.0 -> 2.1 python3-configargparse: Upgrade 1.3 -> 1.4 python3-luma-core: Upgrade 2.2.0 -> 2.3.1 python3-pycodestyle: Upgrade 2.6.0 -> 2.7.0 python3-bitarray: Upgrade 1.7.0 -> 1.7.1 python3-alembic: Upgrade 1.5.5 -> 1.5.7 python3-pyflakes: Upgrade 2.2.0 -> 2.3.0 python3-autobahn: Upgrade 21.2.2 -> 21.3.1 python3-pulsectl: Upgrade 21.2.0 -> 21.3.4 python3-configparser: Upgrade 5.0.1 -> 5.0.2 python3-defusedxml: Upgrade 0.6.0 -> 0.7.1 python3-twine: Upgrade 3.3.0 -> 3.4.0 python3-socketio: Upgrade 5.0.4 -> 5.1.0 python3-soupsieve: Upgrade 2.2 -> 2.2.1 python3-cassandra-driver: Upgrade 3.24.0 -> 3.25.0 python3-urllib3: Upgrade 1.26.3 -> 1.26.4 python3-bitarray: Upgrade 1.7.1 -> 1.8.0 python3-pyscaffold: Upgrade 4.0 -> 4.0.1 python3-flask-migrate: Upgrade 2.6.0 -> 2.7.0 python3-grpcio-tools: Upgrade 1.35.0 -> 1.36.1 python3-humanize: Upgrade 3.2.0 -> 3.3.0 python3-regex: Upgrade 2020.11.13 -> 2021.3.17 python3-twine: Upgrade 3.4.0 -> 3.4.1 python3-isort: Upgrade 5.7.0 -> 5.8.0 python3-sqlalchemy: Upgrade 1.3.23 -> 1.4.2 python3-scrypt: Upgrade 0.8.6 -> 0.8.17 python3-colorlog: Upgrade 4.7.2 -> 4.8.0 python3-croniter: Upgrade 1.0.8 -> 1.0.9 python3-pyperf: Upgrade 2.1.0 -> 2.2.0 python3-lazy-object-proxy: Upgrade 1.5.2 -> 1.6.0 python3-prompt-toolkit: Upgrade 3.0.17 -> 3.0.18 python3-configshell-fb: Upgrade 1.1.28 -> 1.1.29 python3-backports-functools-lru-cache: Upgrade 1.6.1 -> 1.6.3 python3-pytest-helpers-namespace: Upgrade 2019.1.8 -> 2021.3.24 python3-elementpath: Upgrade 2.2.0 -> 2.2.1 python3-alembic: Upgrade 1.5.7 -> 1.5.8 python3-rfc3339-validator: Upgrade 0.1.2 -> 0.1.3 python3-pyflakes: Upgrade 2.3.0 -> 2.3.1 python3-pint: Upgrade 0.16.1 -> 0.17 python3-flask-sqlalchemy: Upgrade 2.4.4 -> 2.5.1 python3-django: Upgrade 3.1.1 -> 3.1.7 python3-djangorestframework: Upgrade 3.12.2 -> 3.12.3 python3-ruamel-yaml: Upgrade 0.16.13 -> 0.17.0 python3-bitarray: Upgrade 1.8.0 -> 1.8.1 python3-sqlalchemy: Upgrade 1.4.2 -> 1.4.3 python3-xmlschema: Upgrade 1.5.1 -> 1.5.3 python3-croniter: Upgrade 1.0.9 -> 1.0.10 python3-astroid: Upgrade 2.5.1 -> 2.5.2 python3-pyroute2: Upgrade 0.5.14 -> 0.5.15 python3-coverage: Upgrade 5.4 -> 5.5 python3-gunicorn: Upgrade 20.0.4 -> 20.1.0 python3-djangorestframework: Upgrade 3.12.3 -> 3.12.4 python3-ipython: Upgrade 7.21.0 -> 7.22.0 python3-openpyxl: Upgrade 3.0.6 -> 3.0.7 python3-ruamel-yaml: Upgrade 0.17.0 -> 0.17.2 Luca Boccassi (3): cryptsetup: depend on new util-linux-uuid to break cycle dbus-broker: upgrade 26 -> 27 dbus-broker: upgrade 27 -> 28 Marius Kriegerowski (1): tmate: add recipe version 2.4.0 Martin Jansa (11): glog: fix searching for Libunwind ceres-solver: prevent fetching git hook during do_configure packagegroup-meta-oe: include abseil-cpp for all architectures packagegroup-meta-oe: include nodejs without meta-python2 conditional packagegroup-meta-oe: move the packages depending on meta-python2 to separate packages mysql-python, lio-utils, openlmi-tools: add conditional PNBLACKLIST like meta-python2 does conf/layer.conf: include .bbappend files in BBFILES_DYNAMIC open-vm-tools: move to meta-networking packagegroup-meta-{oe,multimedia}: move pipewire to the right packagegroup packagegroup-meta-multimedia: include projucer only with x11 in DISTRO_FEATURES packagegroup-meta-multimedia: include vlc only with x11 in DISTRO_FEATURES Matteo Croce (1): libbpf: use pkg-config Michael Vetter (1): jasper: upgrade 2.0.25 -> 2.0.26 Ming Liu (1): atftp: move atftpd.init from files to atftp subdirectory Mingli Yu (6): geoip: Switch to use the main branch geoip-perl: Switch to use the main branch bridge-utils: Switch to use the main branch netkit-telnet: Update SRC_URI quagga: Update SRC_URI hostapd: fix CVE-2019-5061 Nisha Parrakat (1): neon: use pkg-config instead of xml2-config to configure Oleksandr Kravchuk (10): ipset: update to 7.11 libnice: update to 0.1.18 nbdkit: update to 1.25.3 python3-bitarray: update to 1.7.0 python3-google-api-python-client: update to 2.0.2 python3-jsonpatch: update to 1.31 python3-websocket-client: update to 0.58.0 python3-robotframework: update to 4.0 python3-sentry-sdk: update to 1.0.0 aom: update to 3.0.0 Peace Lee (2): guider: Upgrade 3.9.7 -> 3.9.8 guider: Upgrade 3.9.7 -> 3.9.8 Persian Prince (1): tinymembench: Correct PV Philip Balister (1): fftw: Add support for ptest. Randy MacLeod (6): gperftools: upgrade 2.8.1 -> 2.9.1 zabbix: upgrade 4.4.6 -> 5.2.5 nss: upgrade 3.60.1 -> 3.62 xterm: upgrade 362 -> 366 zstd: remove the recipe since it moved to oe-core tclap: upgrade 1.2.2 -> 1.4.0 Ross Burton (3): libxmlb: upgrade to 0.3.0 flashrom: recipe cleanup openjpeg: add native/nativesdk class extension Sakib Sajal (1): grpc: upgrade 1.36.1 -> 1.36.2 Sam Van Den Berge (1): libiio: fix build when python bindings are enabled Sana Kazi (1): mdns: Whitelisted CVE-2007-0613 for mdns Stefan Schmidt (2): musl-rpmatch_git.bb: add new recipe to provide rpmatch() for musl libc builds plymouth_0.9.5.bb: allow building with musl libc Valentin Longchamp (1): libssh: add gcrypt to PACKAGECONFIG Wang Mingyu (3): czmq: Conflict resolution for sha1.h python3-lxml: upgrade 4.6.2 -> 4.6.3 python3-zopeinterface: upgrade 5.2.0 -> 5.3.0 Yann Dirson (1): mpv: remove explicit LICENSE_FLAGS Yi Fan Yu (2): librelp: update 1.6.0 -> 1.10.0 rsyslog: Fix rsyslog systemd service not starting Yi Zhao (2): quagga: do not set PIDFile in service files tclap: add pkg-config file Zang Ruochen (1): gtkwave: upgrade 3.3.104 -> 3.3.108 zangrc (15): dovecot: upgrade 2.3.13 -> 2.3.14 fetchmail: upgrade 6.4.16 -> 6.4.17 dialog: upgrade 1.3-20210117 -> 1.3-20210306 fio: upgrade 3.25 -> 3.26 xorriso: upgrade 1.5.3 -> 1.5.5 iscsi-initiator-utils: upgrade 2.1.3 -> 2.1.4 mosquitto: upgrade 2.0.8 -> 2.0.9 nbdkit: upgrade 1.25.3 -> 1.25.4 wireguard-tools: upgrade 1.0.20210223 -> 1.0.20210315 wireshark: upgrade 3.4.3 -> 3.4.4 live555: upgrade 20210129 -> 20210322 mg: upgrade 20200723 -> 20210314 nanopb: upgrade 0.4.4 -> 0.4.5 nss: upgrade 3.62 -> 3.63 uriparser: upgrade 0.9.4 -> 0.9.5 zhengruoqin (12): phpmyadmin: upgrade 5.0.4 -> 5.1.0 uthash: upgrade 2.2.0 -> 2.3.0 gd: upgrade 2.3.1 -> 2.3.2 openocd: upgrade 0.10 -> 0.11 satyr: upgrade 0.36 -> 0.37 libcrypt-openssl-guess-perl: upgrade 0.11 -> 0.12 cryptsetup: upgrade 2.3.4 -> 2.3.5 glmark2: upgrade 20201114 -> 2021.02 grpc: upgrade 1.36.2 -> 1.36.3 dialog: upgrade 1.3-20210306 -> 1.3-20210319 grpc: upgrade 1.36.3 -> 1.36.4 libgee: upgrade 0.20.3 -> 0.20.4 Signed-off-by: Andrew Geissler Change-Id: I0b18d7c12586e6038d002f02ed87f38e25bc5080 --- .../bridge-utils/bridge-utils_1.7.bb | 2 +- .../recipes-support/dovecot/dovecot_2.3.13.bb | 73 -- .../recipes-support/dovecot/dovecot_2.3.14.bb | 73 ++ .../recipes-support/fetchmail/fetchmail_6.4.16.bb | 22 - .../recipes-support/fetchmail/fetchmail_6.4.17.bb | 22 + .../recipes-support/geoip/geoip-perl_1.51.bb | 2 +- .../recipes-support/geoip/geoip_1.6.12.bb | 2 +- .../recipes-support/nbdkit/nbdkit_1.25.4.bb | 34 + .../recipes-support/nbdkit/nbdkit_git.bb | 36 - ...e-367.-Remove-references-to-deprecated-G_.patch | 94 +++ ...nvertFromNtTimeNsec-aware-of-64-bit-time_.patch | 78 +++ .../0001-configure.ac-don-t-use-dnet-config.patch | 36 + ...-hgfsmounter-Makefile.am-support-usrmerge.patch | 33 + .../0001-pollGtk-Drop-volatile-qualifier.patch | 32 + .../0001-utilBacktrace-Ignore-Warray-bounds.patch | 33 + .../0002-add-include-sys-sysmacros.h.patch | 30 + ...erLinux-Consider-64bit-time_t-possibility.patch | 41 ++ ...03-Use-configure-test-for-struct-timespec.patch | 45 ++ ...ix-definition-of-ALLPERMS-and-ACCESSPERMS.patch | 58 ++ ...re-to-test-for-feature-instead-of-platfor.patch | 135 ++++ ...Use-configure-test-for-sys-stat.h-include.patch | 25 + .../0007-Fix-subdir-objects-configure-error.patch | 24 + ...0008-include-poll.h-instead-of-sys-poll.h.patch | 26 + .../0009-Rename-poll.h-to-vm_poll.h.patch | 742 +++++++++++++++++++++ ...osix-strerror_r-unless-on-gnu-libc-system.patch | 39 ++ .../0011-Use-uintmax_t-for-handling-rlim_t.patch | 29 + .../0012-Use-off64_t-instead-of-__off64_t.patch | 31 + ...3-misc-Do-not-print-NULL-string-into-logs.patch | 27 + .../open-vm-tools/open-vm-tools/tools.conf | 2 + .../open-vm-tools/open-vm-tools/vmtoolsd.init | 66 ++ .../open-vm-tools/open-vm-tools/vmtoolsd.service | 11 + .../open-vm-tools/open-vm-tools_11.0.1.bb | 116 ++++ .../recipes-support/wireshark/wireshark_3.4.3.bb | 87 --- .../recipes-support/wireshark/wireshark_3.4.4.bb | 87 +++ 34 files changed, 1972 insertions(+), 221 deletions(-) delete mode 100644 meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb create mode 100644 meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb delete mode 100644 meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb create mode 100644 meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb create mode 100644 meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb delete mode 100644 meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service create mode 100644 meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb delete mode 100644 meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb create mode 100644 meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb (limited to 'meta-openembedded/meta-networking/recipes-support') diff --git a/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb b/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb index 369232343..cf7185864 100644 --- a/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb +++ b/meta-openembedded/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.bb @@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=f9d20a453221a1b7e32ae84694da2c37" SRCREV = "ab8a2cc330253321be7bc69dea88bfaa3d48415e" SRC_URI = "\ - git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git \ + git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git;branch=main \ file://kernel-headers.patch \ file://0005-build-don-t-ignore-CFLAGS-from-environment.patch \ file://0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch \ diff --git a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb deleted file mode 100644 index c78d283d2..000000000 --- a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.13.bb +++ /dev/null @@ -1,73 +0,0 @@ -SUMMARY = "Dovecot is an open source IMAP and POP3 email server" -HOMEPAGE = "https://www.dovecot.org/" -DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory." -SECTION = "mail" -LICENSE = "LGPLv2.1 & MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=2956560272e5b31d9d64f03111732048" - -SRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \ - file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \ - file://dovecot.service \ - file://dovecot.socket \ - file://0001-not-check-pandoc.patch \ - " - -SRC_URI[md5sum] = "f512bf1a4dac9ac994fddfb6bc5068ff" -SRC_URI[sha256sum] = "a3f875b80ec11a452480690108660030978c94fa8e796ad6d943a874b496f1c4" - -DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native" -CFLAGS += "-I${STAGING_INCDIR}/tirpc" -LDFLAGS += "-ltirpc" - -inherit autotools pkgconfig systemd useradd gettext - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam', d)}" - -PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam," -PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap," -PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4," - -# From native build in armv7a-hf/eglibc -CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \ - i_cv_gmtime_max_time_t=32 \ - i_cv_signed_time_t=yes \ - i_cv_mmap_plays_with_write=yes \ - i_cv_fd_passing=yes \ - i_cv_c99_vsnprintf=yes \ - lib_cv___va_copy=yes \ - lib_cv_va_copy=yes \ - lib_cv_va_val_copy=yes \ - " - -# hardcode epoll() to avoid running unsafe tests -# BSD needs kqueue and uclibc poll() -EXTRA_OECONF = " --with-ioloop=epoll \ - --with-systemdsystemunitdir=${systemd_unitdir}/system" - -# Uses hidden symbols -# libssl_iostream_openssl.so: undefined reference to `ssl_iostream_handshake' -LTO = "" - -SYSTEMD_PACKAGES = "${PN}" -SYSTEMD_SERVICE_${PN} = "dovecot.service dovecot.socket" -SYSTEMD_AUTO_ENABLE = "disable" - -do_install_append () { - install -d 755 ${D}/etc/dovecot - touch 644 ${D}/etc/dovecot/dovecot.conf - install -m 0644 ${WORKDIR}/dovecot.service ${D}${systemd_unitdir}/system - sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service - sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service -} - -USERADD_PACKAGES = "${PN}" -USERADD_PARAM_${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \ - -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull" -GROUPADD_PARAM_${PN} = "-f -r dovecot;-f -r dovenull" - -FILES_${PN} += "${libdir}/dovecot/*plugin.so \ - ${libdir}/dovecot/libfs_compress.so \ - ${libdir}/dovecot/libssl_iostream_openssl.so" -FILES_${PN}-staticdev += "${libdir}/dovecot/*/*.a" -FILES_${PN}-dev += "${libdir}/dovecot/libdovecot*.so" -FILES_${PN}-dbg += "${libdir}/dovecot/*/.debug" diff --git a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb new file mode 100644 index 000000000..c0f2863db --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.3.14.bb @@ -0,0 +1,73 @@ +SUMMARY = "Dovecot is an open source IMAP and POP3 email server" +HOMEPAGE = "https://www.dovecot.org/" +DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory." +SECTION = "mail" +LICENSE = "LGPLv2.1 & MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2956560272e5b31d9d64f03111732048" + +SRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \ + file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \ + file://dovecot.service \ + file://dovecot.socket \ + file://0001-not-check-pandoc.patch \ + " + +SRC_URI[md5sum] = "2f03532cec3280ae45a101a7a55ccef5" +SRC_URI[sha256sum] = "c8b3d7f3af1e558a3ff0f970309d4013a4d3ce136f8c02a53a3b05f345b9a34a" + +DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native" +CFLAGS += "-I${STAGING_INCDIR}/tirpc" +LDFLAGS += "-ltirpc" + +inherit autotools pkgconfig systemd useradd gettext + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam', d)}" + +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam," +PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap," +PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4," + +# From native build in armv7a-hf/eglibc +CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \ + i_cv_gmtime_max_time_t=32 \ + i_cv_signed_time_t=yes \ + i_cv_mmap_plays_with_write=yes \ + i_cv_fd_passing=yes \ + i_cv_c99_vsnprintf=yes \ + lib_cv___va_copy=yes \ + lib_cv_va_copy=yes \ + lib_cv_va_val_copy=yes \ + " + +# hardcode epoll() to avoid running unsafe tests +# BSD needs kqueue and uclibc poll() +EXTRA_OECONF = " --with-ioloop=epoll \ + --with-systemdsystemunitdir=${systemd_unitdir}/system" + +# Uses hidden symbols +# libssl_iostream_openssl.so: undefined reference to `ssl_iostream_handshake' +LTO = "" + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN} = "dovecot.service dovecot.socket" +SYSTEMD_AUTO_ENABLE = "disable" + +do_install_append () { + install -d 755 ${D}/etc/dovecot + touch 644 ${D}/etc/dovecot/dovecot.conf + install -m 0644 ${WORKDIR}/dovecot.service ${D}${systemd_unitdir}/system + sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service + sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service +} + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM_${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \ + -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull" +GROUPADD_PARAM_${PN} = "-f -r dovecot;-f -r dovenull" + +FILES_${PN} += "${libdir}/dovecot/*plugin.so \ + ${libdir}/dovecot/libfs_compress.so \ + ${libdir}/dovecot/libssl_iostream_openssl.so" +FILES_${PN}-staticdev += "${libdir}/dovecot/*/*.a" +FILES_${PN}-dev += "${libdir}/dovecot/libdovecot*.so" +FILES_${PN}-dbg += "${libdir}/dovecot/*/.debug" diff --git a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb deleted file mode 100644 index 71163c8d9..000000000 --- a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.16.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Fetchmail retrieves mail from remote mail servers and forwards it via SMTP" -HOMEPAGE = "http://www.fetchmail.info/" -DESCRIPTION = "Fetchmail is a full-featured, robust, well-documented remote-mail retrieval \ -and forwarding utility intended to be used over on-demand TCP/IP links (such as SLIP or PPP \ -connections). It supports every remote-mail protocol now in use on the Internet: POP2, POP3, \ -RPOP, APOP, KPOP, all flavors of IMAP, ETRN, and ODMR. It can even support IPv6 and IPSEC." -SECTION = "mail" -LICENSE = "GPLv2 & MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=06a8d16599e1d0b131390bec01fb571c" - -DEPENDS = "openssl" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \ - " -SRC_URI[sha256sum] = "044b9a0ac03afbae7744979defe3e2e32e39141bca68fd0c8deda2ed40884fb9" - -inherit autotools gettext python3-dir python3native - -EXTRA_OECONF = "--with-ssl=${STAGING_DIR_HOST}${prefix}" - -PACKAGES =+ "fetchmail-python" -FILES_fetchmail-python = "${libdir}/${PYTHON_DIR}/*" diff --git a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb new file mode 100644 index 000000000..7c513f62b --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.17.bb @@ -0,0 +1,22 @@ +SUMMARY = "Fetchmail retrieves mail from remote mail servers and forwards it via SMTP" +HOMEPAGE = "http://www.fetchmail.info/" +DESCRIPTION = "Fetchmail is a full-featured, robust, well-documented remote-mail retrieval \ +and forwarding utility intended to be used over on-demand TCP/IP links (such as SLIP or PPP \ +connections). It supports every remote-mail protocol now in use on the Internet: POP2, POP3, \ +RPOP, APOP, KPOP, all flavors of IMAP, ETRN, and ODMR. It can even support IPv6 and IPSEC." +SECTION = "mail" +LICENSE = "GPLv2 & MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=06a8d16599e1d0b131390bec01fb571c" + +DEPENDS = "openssl" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \ + " +SRC_URI[sha256sum] = "a41bcdf11b41aa0682b259aee4717c617c15dadd43fa008b2ed38b770f4d50c6" + +inherit autotools gettext python3-dir python3native + +EXTRA_OECONF = "--with-ssl=${STAGING_DIR_HOST}${prefix}" + +PACKAGES =+ "fetchmail-python" +FILES_fetchmail-python = "${libdir}/${PYTHON_DIR}/*" diff --git a/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb b/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb index ed5c3a979..944c00576 100644 --- a/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb +++ b/meta-openembedded/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=e4f3ea6e9b28af88dc0321190a1f8250" S = "${WORKDIR}/git" SRCREV = "4cdfdc38eca237c19c22a8b90490446ce6d970fa" -SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;protocol=https; \ +SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;branch=main \ file://run-ptest \ " diff --git a/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb b/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb index 4271c2e15..143100e48 100644 --- a/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb +++ b/meta-openembedded/meta-networking/recipes-support/geoip/geoip_1.6.12.bb @@ -10,7 +10,7 @@ SECTION = "libdevel" GEOIP_DATABASE_VERSION = "20181205" -SRC_URI = "git://github.com/maxmind/geoip-api-c.git \ +SRC_URI = "git://github.com/maxmind/geoip-api-c.git;branch=main \ http://sources.openembedded.org/GeoIP.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIP-dat; \ http://sources.openembedded.org/GeoIPv6.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIPv6-dat; \ http://sources.openembedded.org/GeoLiteCity.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoLiteCity-dat; \ diff --git a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb new file mode 100644 index 000000000..37f6a8b76 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.25.4.bb @@ -0,0 +1,34 @@ +SUMMARY = "nbdkit is a toolkit for creating NBD servers." +DESCRIPTION = "NBD — Network Block Device — is a protocol \ +for accessing Block Devices (hard disks and disk-like things) \ +over a Network. \ +\ +nbdkit is a toolkit for creating NBD servers." + +HOMEPAGE = "https://github.com/libguestfs/nbdkit" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f9dcc2d8acdde215fa4bd6ac12bb14f0" + +SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https \ +" + +SRCREV = "7b04baeb1858fa04f5f4e0d6f2d23bef706e80da" + +S = "${WORKDIR}/git" + +DEPENDS = "curl xz e2fsprogs zlib" + +# autotools-brokensep is needed as nbdkit does not support build in external directory +inherit pkgconfig python3native perlnative bash-completion autotools-brokensep + +# Those are required to build standalone +EXTRA_OECONF = " --without-libvirt --without-libguestfs --disable-perl" + +# Disable some extended support (not desired for small embedded systems) +#EXTRA_OECONF += " --disable-python" +#EXTRA_OECONF += " --disable-ocaml" +#EXTRA_OECONF += " --disable-rust" +#EXTRA_OECONF += " --disable-ruby" +#EXTRA_OECONF += " --disable-tcl" +#EXTRA_OECONF += " --disable-lua" +#EXTRA_OECONF += " --disable-vddk" diff --git a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb deleted file mode 100644 index a63e49ec5..000000000 --- a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_git.bb +++ /dev/null @@ -1,36 +0,0 @@ -SUMMARY = "nbdkit is a toolkit for creating NBD servers." -DESCRIPTION = "NBD — Network Block Device — is a protocol \ -for accessing Block Devices (hard disks and disk-like things) \ -over a Network. \ -\ -nbdkit is a toolkit for creating NBD servers." - -HOMEPAGE = "https://github.com/libguestfs/nbdkit" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=4332a97808994cf2133a65b6c6f33eaf" - -SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https \ - file://0001-server-Fix-build-when-printf-is-a-macro.patch \ -" - -PV = "1.19.6+git${SRCPV}" -SRCREV = "257561bc9f2f01eb9f21686bcec4b863d17a26c4" - -S = "${WORKDIR}/git" - -DEPENDS = "curl xz e2fsprogs zlib" - -# autotools-brokensep is needed as nbdkit does not support build in external directory -inherit pkgconfig python3native perlnative bash-completion autotools-brokensep - -# Those are required to build standalone -EXTRA_OECONF = " --without-libvirt --without-libguestfs --disable-perl" - -# Disable some extended support (not desired for small embedded systems) -#EXTRA_OECONF += " --disable-python" -#EXTRA_OECONF += " --disable-ocaml" -#EXTRA_OECONF += " --disable-rust" -#EXTRA_OECONF += " --disable-ruby" -#EXTRA_OECONF += " --disable-tcl" -#EXTRA_OECONF += " --disable-lua" -#EXTRA_OECONF += " --disable-vddk" diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch new file mode 100644 index 000000000..6cb5dfccc --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-GitHub-Issue-367.-Remove-references-to-deprecated-G_.patch @@ -0,0 +1,94 @@ +From 6fb28085e867d7c3ef46577d9ff193a185693bcb Mon Sep 17 00:00:00 2001 +From: Oliver Kurth +Date: Mon, 30 Sep 2019 16:24:27 -0700 +Subject: [PATCH] GitHub Issue #367. Remove references to deprecated G_INLINE_FUNC. + +G_INLINE_FUNC was a work-around for compilers that didn't support +static inline. Change uses of it to static inline. + +Upstream-Status: Backport +[https://github.com/vmware/open-vm-tools/commit/89c0d444567eb525e8d083fb564c46d68e96660c] + +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/include/vmware/tools/plugin.h | 2 +- + open-vm-tools/lib/include/vmware/tools/threadPool.h | 8 ++++---- + open-vm-tools/lib/include/vmware/tools/utils.h | 9 --------- + 3 files changed, 5 insertions(+), 14 deletions(-) + +diff --git a/open-vm-tools/lib/include/vmware/tools/plugin.h b/open-vm-tools/lib/include/vmware/tools/plugin.h +index f9acc6a2..deefd1f3 100644 +--- a/open-vm-tools/lib/include/vmware/tools/plugin.h ++++ b/open-vm-tools/lib/include/vmware/tools/plugin.h +@@ -290,7 +290,7 @@ typedef struct ToolsAppCtx { + * + * @return TRUE if COM is initialized when the function returns. + */ +-G_INLINE_FUNC gboolean ++static inline gboolean + ToolsCore_InitializeCOM(ToolsAppCtx *ctx) + { + if (!ctx->comInitialized) { +diff --git a/open-vm-tools/lib/include/vmware/tools/threadPool.h b/open-vm-tools/lib/include/vmware/tools/threadPool.h +index 3f2082b3..5880fbcf 100644 +--- a/open-vm-tools/lib/include/vmware/tools/threadPool.h ++++ b/open-vm-tools/lib/include/vmware/tools/threadPool.h +@@ -91,7 +91,7 @@ typedef struct ToolsCorePool { + ******************************************************************************* + */ + +-G_INLINE_FUNC ToolsCorePool * ++static inline ToolsCorePool * + ToolsCorePool_GetPool(ToolsAppCtx *ctx) + { + ToolsCorePool *pool = NULL; +@@ -123,7 +123,7 @@ ToolsCorePool_GetPool(ToolsAppCtx *ctx) + ******************************************************************************* + */ + +-G_INLINE_FUNC guint ++static inline guint + ToolsCorePool_SubmitTask(ToolsAppCtx *ctx, + ToolsCorePoolCb cb, + gpointer data, +@@ -153,7 +153,7 @@ ToolsCorePool_SubmitTask(ToolsAppCtx *ctx, + ******************************************************************************* + */ + +-G_INLINE_FUNC void ++static inline void + ToolsCorePool_CancelTask(ToolsAppCtx *ctx, + guint taskId) + { +@@ -197,7 +197,7 @@ ToolsCorePool_CancelTask(ToolsAppCtx *ctx, + ******************************************************************************* + */ + +-G_INLINE_FUNC gboolean ++static inline gboolean + ToolsCorePool_StartThread(ToolsAppCtx *ctx, + const gchar *threadName, + ToolsCorePoolCb cb, +diff --git a/open-vm-tools/lib/include/vmware/tools/utils.h b/open-vm-tools/lib/include/vmware/tools/utils.h +index f6574590..a3292d5c 100644 +--- a/open-vm-tools/lib/include/vmware/tools/utils.h ++++ b/open-vm-tools/lib/include/vmware/tools/utils.h +@@ -51,15 +51,6 @@ + # include + #endif + +- +-/* Work around a glib limitation: it doesn't set G_INLINE_FUNC on Win32. */ +-#if defined(G_PLATFORM_WIN32) +-# if defined(G_INLINE_FUNC) +-# undef G_INLINE_FUNC +-# endif +-# define G_INLINE_FUNC static __inline +-#endif +- + #ifndef ABS + # define ABS(x) (((x) >= 0) ? (x) : -(x)) + #endif +-- +2.23.0 + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch new file mode 100644 index 000000000..61a681f17 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch @@ -0,0 +1,78 @@ +From caf80e220b055dbce259078be96e899dc78ec1d2 Mon Sep 17 00:00:00 2001 +From: Bartosz Brachaczek +Date: Tue, 12 Nov 2019 14:31:08 +0100 +Subject: [PATCH] Make HgfsConvertFromNtTimeNsec aware of 64-bit time_t on i386 + +I verified that this function behaves as expected on x86_64, i386 with +32-bit time_t, and i386 with 64-bit time_t for the following values of +ntTtime: + +UNIX_EPOCH-1, UNIX_EPOCH, UNIX_EPOCH+1, UNIX_S32_MAX-1, UNIX_S32_MAX, +UNIX_S32_MAX+1, UNIX_S32_MAX*2+1 + +I did not verify whether the use of Div643264 is optimal, performance +wise. + +Upstream-Status: Submitted [https://github.com/vmware/open-vm-tools/pull/387] +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/hgfs/hgfsUtil.c | 34 +++++++++++++++++-------------- + 1 file changed, 19 insertions(+), 15 deletions(-) + +diff --git a/open-vm-tools/lib/hgfs/hgfsUtil.c b/open-vm-tools/lib/hgfs/hgfsUtil.c +index cc580ab8..49b10040 100644 +--- a/open-vm-tools/lib/hgfs/hgfsUtil.c ++++ b/open-vm-tools/lib/hgfs/hgfsUtil.c +@@ -110,23 +110,21 @@ HgfsConvertFromNtTimeNsec(struct timespec *unixTime, // OUT: Time in UNIX format + uint64 ntTime) // IN: Time in Windows NT format + { + #ifdef __i386__ +- uint32 sec; +- uint32 nsec; ++ uint64 sec64; ++ uint32 sec32, nsec; ++#endif + + ASSERT(unixTime); +- /* We assume that time_t is 32bit */ +- ASSERT_ON_COMPILE(sizeof (unixTime->tv_sec) == 4); + +- /* Cap NT time values that are outside of Unix time's range */ ++ if (sizeof (unixTime->tv_sec) == 4) { ++ /* Cap NT time values that are outside of Unix time's range */ + +- if (ntTime >= UNIX_S32_MAX) { +- unixTime->tv_sec = 0x7FFFFFFF; +- unixTime->tv_nsec = 0; +- return 1; ++ if (ntTime >= UNIX_S32_MAX) { ++ unixTime->tv_sec = 0x7FFFFFFF; ++ unixTime->tv_nsec = 0; ++ return 1; ++ } + } +-#else +- ASSERT(unixTime); +-#endif + + if (ntTime < UNIX_EPOCH) { + unixTime->tv_sec = 0; +@@ -135,9 +133,15 @@ HgfsConvertFromNtTimeNsec(struct timespec *unixTime, // OUT: Time in UNIX format + } + + #ifdef __i386__ +- Div643232(ntTime - UNIX_EPOCH, 10000000, &sec, &nsec); +- unixTime->tv_sec = sec; +- unixTime->tv_nsec = nsec * 100; ++ if (sizeof (unixTime->tv_sec) == 4) { ++ Div643232(ntTime - UNIX_EPOCH, 10000000, &sec32, &nsec); ++ unixTime->tv_sec = sec32; ++ unixTime->tv_nsec = nsec * 100; ++ } else { ++ Div643264(ntTime - UNIX_EPOCH, 10000000, &sec64, &nsec); ++ unixTime->tv_sec = sec64; ++ unixTime->tv_nsec = nsec * 100; ++ } + #else + unixTime->tv_sec = (ntTime - UNIX_EPOCH) / 10000000; + unixTime->tv_nsec = ((ntTime - UNIX_EPOCH) % 10000000) * 100; diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch new file mode 100644 index 000000000..a711f5e5d --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch @@ -0,0 +1,36 @@ +From fc9bf1ce9f1a21150b10736a1c968d4ca6d4eaa3 Mon Sep 17 00:00:00 2001 +From: Martin Kelly +Date: Fri, 7 Apr 2017 15:20:30 -0700 +Subject: [PATCH] configure.ac: don't use dnet-config + +The dnet-config tool doesn't know about cross-compilation, so it injects +-I/usr/include into the path, causing compiler errors. So instead find dnet via +-ldnet. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Martin Kelly +--- + open-vm-tools/configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/open-vm-tools/configure.ac ++++ b/open-vm-tools/configure.ac +@@ -937,7 +937,7 @@ if test "$with_dnet" = "yes"; then + AC_VMW_CHECK_LIB([dnet], + [DNET], + [], +- [dnet-config], ++ [], + [], + [dnet.h], + [intf_open], +@@ -947,7 +947,7 @@ if test "$with_dnet" = "yes"; then + + if test $have_dnet = "no"; then + AC_MSG_ERROR( +- [dnet-config was not found on your PATH. Please configure without dnet or install dnet - http://libdnet.sourceforge.net]) ++ [dnet was not found. Please configure without dnet (using --without-dnet) or install dnet - http://libdnet.sourceforge.net]) + fi + fi + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch new file mode 100644 index 000000000..82443ee66 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-hgfsmounter-Makefile.am-support-usrmerge.patch @@ -0,0 +1,33 @@ +From 33798f3e484ebd3470e9da791b73b4b90ba12bc3 Mon Sep 17 00:00:00 2001 +From: Yi Zhao +Date: Tue, 14 Jan 2020 15:04:03 +0800 +Subject: [PATCH] hgfsmounter/Makefile.am: support usrmerge + +There is a do_package error when enable usrmerge feature due to the +hardcoded sbin directory. Remove this piece of code because we already +create the symbolic link in do_install. + +Upstream-Status: Inappropriate [oe-specific] + +Signed-off-by: Yi Zhao +--- + open-vm-tools/hgfsmounter/Makefile.am | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/open-vm-tools/hgfsmounter/Makefile.am b/open-vm-tools/hgfsmounter/Makefile.am +index 7c1ba1a..58bd3f8 100644 +--- a/open-vm-tools/hgfsmounter/Makefile.am ++++ b/open-vm-tools/hgfsmounter/Makefile.am +@@ -39,9 +39,6 @@ uninstall-hook: + rm -f $(DESTDIR)$(sbindir)/mount_vmhgfs + else + install-exec-hook: +- -$(MKDIR_P) $(DESTDIR)/sbin +- -$(LN_S) $(DESTDIR)$(sbindir)/mount.vmhgfs \ +- $(DESTDIR)/sbin/mount.vmhgfs &> /dev/null + uninstall-hook: + rm -f $(DESTDIR)/sbin/mount.vmhgfs + endif !FREEBSD +-- +2.7.4 + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch new file mode 100644 index 000000000..adc6571f7 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-pollGtk-Drop-volatile-qualifier.patch @@ -0,0 +1,32 @@ +From 7bd280f3cc07208760759c98bbfbac3f9d28f77c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 5 Mar 2021 08:58:29 -0800 +Subject: [PATCH] pollGtk: Drop volatile qualifier + +glib-2.0 has changed the function interfaces as well and do not expect +it to be volatile. GCC 11 complains about it + +glib/gatomic.h:112:5: error: argument 2 of '__atomic_load' discards 'volatile' qualifier [-Werror=incompatible-pointer-types] + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/pollGtk/pollGtk.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/open-vm-tools/lib/pollGtk/pollGtk.c b/open-vm-tools/lib/pollGtk/pollGtk.c +index 6d95bf01..a941e7a7 100644 +--- a/open-vm-tools/lib/pollGtk/pollGtk.c ++++ b/open-vm-tools/lib/pollGtk/pollGtk.c +@@ -1473,7 +1473,7 @@ PollGtkBasicCallback(gpointer data) // IN: The eventEntry + void + Poll_InitGtk(void) + { +- static volatile gsize inited = 0; ++ static gsize inited = 0; + + static const PollImpl gtkImpl = + { +-- +2.30.1 + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch new file mode 100644 index 000000000..95664e855 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-utilBacktrace-Ignore-Warray-bounds.patch @@ -0,0 +1,33 @@ +From ac3f93ea087d3a5461fe57fe021d0fe9a959e13c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 25 Dec 2019 15:25:02 -0800 +Subject: [PATCH] utilBacktrace: Ignore -Warray-bounds + +This is new warning with gcc10, until its fixed ignore it like gcc<10 +did + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/user/utilBacktrace.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/open-vm-tools/lib/user/utilBacktrace.c b/open-vm-tools/lib/user/utilBacktrace.c +index b72340ad..97ca53f2 100644 +--- a/open-vm-tools/lib/user/utilBacktrace.c ++++ b/open-vm-tools/lib/user/utilBacktrace.c +@@ -517,6 +517,11 @@ Util_BacktraceWithFunc(int bugNr, // IN: + } else { + outFunc(outFuncData, "Backtrace for bugNr=%d\n",bugNr); + } ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Warray-bounds" ++ + Util_BacktraceFromPointerWithFunc(&x[-2], outFunc, outFuncData); ++#pragma GCC diagnostic pop + #endif + } ++ +-- +2.24.1 + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch new file mode 100644 index 000000000..34628ffbe --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-add-include-sys-sysmacros.h.patch @@ -0,0 +1,30 @@ +From 3fa237b3afabc293e563292b8d89265a871626ad Mon Sep 17 00:00:00 2001 +From: Martin Kelly +Date: Mon, 22 May 2017 17:00:05 -0700 +Subject: [PATCH] add #include + +In newer glibc versions, the definition for major() has been moved to +sys/sysmacros.h, and using the older version in has been +deprecated. So, add an include for . + +Upstream-Status: Pending + +Signed-off-by: Martin Kelly +--- + open-vm-tools/lib/wiper/wiperPosix.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/open-vm-tools/lib/wiper/wiperPosix.c b/open-vm-tools/lib/wiper/wiperPosix.c +index bd542410..ccf06293 100644 +--- a/open-vm-tools/lib/wiper/wiperPosix.c ++++ b/open-vm-tools/lib/wiper/wiperPosix.c +@@ -43,6 +43,9 @@ + # include + # endif /* __FreeBSD_version >= 500000 */ + #endif ++#if defined(__linux__) ++#include ++#endif + #include + + #include "vmware.h" diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch new file mode 100644 index 000000000..0f64eabc9 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-hgfsServerLinux-Consider-64bit-time_t-possibility.patch @@ -0,0 +1,41 @@ +From fe56b67a2915a8632ea30604c14241f335dd3c15 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 12 Nov 2019 10:49:46 -0800 +Subject: [PATCH] hgfsServerLinux: Consider 64bit time_t possibility + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + .../lib/hgfsServer/hgfsServerLinux.c | 19 +++++-------------- + 1 file changed, 5 insertions(+), 14 deletions(-) + +diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +index 03175623..554da67f 100644 +--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c ++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +@@ -2561,20 +2561,11 @@ HgfsStatToFileAttr(struct stat *stats, // IN: stat information + LOG(4, ("%s: done, permissions %o%o%o%o, size %"FMT64"u\n", __FUNCTION__, + attr->specialPerms, attr->ownerPerms, attr->groupPerms, + attr->otherPerms, attr->size)); +-#ifdef __FreeBSD__ +-# if !defined(VM_X86_64) && __FreeBSD_version >= 500043 +-# define FMTTIMET "" +-# else +-# define FMTTIMET "l" +-# endif +-#else +-# define FMTTIMET "l" +-#endif +- LOG(4, ("access: %"FMTTIMET"d/%"FMT64"u \nwrite: %"FMTTIMET"d/%"FMT64"u \n" +- "attr: %"FMTTIMET"d/%"FMT64"u\n", +- stats->st_atime, attr->accessTime, stats->st_mtime, attr->writeTime, +- stats->st_ctime, attr->attrChangeTime)); +-#undef FMTTIMET ++ LOG(4, ("access: %jd/%"FMT64"u \nwrite: %jd/%"FMT64"u \n" ++ "attr: %jd/%"FMT64"u\n", ++ (intmax_t)stats->st_atime, attr->accessTime, ++ (intmax_t)stats->st_mtime, attr->writeTime, ++ (intmax_t)stats->st_ctime, attr->attrChangeTime)); + + attr->userId = stats->st_uid; + attr->groupId = stats->st_gid; diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch new file mode 100644 index 000000000..6d2e49814 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Use-configure-test-for-struct-timespec.patch @@ -0,0 +1,45 @@ +From bf9292ff9bd25467a014d6c2070805d163daa4c9 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 09:03:00 +0000 +Subject: [PATCH] Use configure test for struct timespec + +Use the configure script to test for struct time spec instead of trying +to keep track of what platforms has it. + +Signed-off-by: Natanael Copa +--- + open-vm-tools/configure.ac | 1 + + open-vm-tools/lib/include/hgfsUtil.h | 8 +------- + 2 files changed, 2 insertions(+), 7 deletions(-) + +diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac +index 713ea683..48ff1ef3 100644 +--- a/open-vm-tools/configure.ac ++++ b/open-vm-tools/configure.ac +@@ -1208,6 +1208,7 @@ AC_TYPE_OFF_T + AC_TYPE_PID_T + AC_TYPE_SIZE_T + AC_CHECK_MEMBERS([struct stat.st_rdev]) ++AC_CHECK_MEMBERS([struct timespec.tv_sec],[],[],[[#include ]]) + AC_HEADER_TIME + AC_STRUCT_TM + AC_C_VOLATILE +diff --git a/open-vm-tools/lib/include/hgfsUtil.h b/open-vm-tools/lib/include/hgfsUtil.h +index 609f4c00..a3a022d4 100644 +--- a/open-vm-tools/lib/include/hgfsUtil.h ++++ b/open-vm-tools/lib/include/hgfsUtil.h +@@ -53,13 +53,7 @@ + # include + # endif + # include "vm_basic_types.h" +-# if !defined _STRUCT_TIMESPEC && \ +- !defined _TIMESPEC_DECLARED && \ +- !defined __timespec_defined && \ +- !defined sun && \ +- !defined __FreeBSD__ && \ +- !__APPLE__ && \ +- !defined _WIN32 ++# if !defined HAVE_STRUCT_TIMESPEC_TV_SEC + struct timespec { + time_t tv_sec; + long tv_nsec; diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch new file mode 100644 index 000000000..e107ecf23 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch @@ -0,0 +1,58 @@ +From 5a795b234c617150915a607776c76377948870a6 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 09:10:14 +0000 +Subject: [PATCH] Fix definition of ALLPERMS and ACCESSPERMS + +The ALLPERMS and ACCESSPERMS defines are not specified in POSIX so +assume it is not there instead of testing for specific implementations. + +This is needed for musl libc. + +Signed-off-by: Natanael Copa +--- + open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 8 +++++--- + open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c | 3 +-- + 2 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +index f2b7ce67..0e6351a9 100644 +--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c ++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +@@ -105,11 +105,13 @@ typedef struct DirectoryEntry { + #endif + + /* +- * ALLPERMS (mode 07777) and ACCESSPERMS (mode 0777) are not defined in the +- * Solaris version of . ++ * ALLPERMS (mode 07777) and ACCESSPERMS (mode 0777) are not specified in ++ * POSIX. + */ +-#ifdef sun ++#ifndef ACCESSPERMS + # define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) ++#endif ++#ifndef ALLPERMS + # define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) + #endif + +diff --git a/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c b/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c +index 89133652..7e9c3a91 100644 +--- a/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c ++++ b/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c +@@ -52,7 +52,7 @@ + + #define DND_ROOTDIR_PERMS (S_IRWXU | S_IRWXG | S_IRWXO) + #define DND_STAGINGDIR_PERMS (S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) +-#ifdef sun ++#ifndef ACCESSPERMS + #define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO) + #endif + #ifdef __ANDROID__ +@@ -61,7 +61,6 @@ + */ + #define NO_SETMNTENT + #define NO_ENDMNTENT +-#define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO) + #endif + + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch new file mode 100644 index 000000000..c6378b808 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch @@ -0,0 +1,135 @@ +From 719d60978f979cf2e03771a9b8a62e36c92639f9 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 10:05:07 +0000 +Subject: [PATCH] Use configure to test for feature instead of platform + +Test for various functions instead of trying to keep track of what +platform and what version of the given platform has support for what. + +This should make it easier to port to currently unknown platforms and +will solve the issue if a platform add support for a missing feature in +the future. + +The features we test for are: +- getifaddrs +- getauxval +- issetugid +- __secure_getenv + +This is needed for musl libc. + +Signed-off-by: Natanael Copa +--- + open-vm-tools/configure.ac | 4 ++++ + open-vm-tools/lib/misc/idLinux.c | 30 +++++++++++------------- + open-vm-tools/lib/nicInfo/nicInfoPosix.c | 6 ++++- + 3 files changed, 23 insertions(+), 17 deletions(-) + +diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac +index 48ff1ef3..71e684bb 100644 +--- a/open-vm-tools/configure.ac ++++ b/open-vm-tools/configure.ac +@@ -897,6 +897,7 @@ AC_CHECK_FUNCS( + + AC_CHECK_FUNCS([ecvt]) + AC_CHECK_FUNCS([fcvt]) ++AC_CHECK_FUNCS([getifaddrs getauxval issetugid __secure_getenv]) + + AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes]) + +@@ -1145,10 +1146,13 @@ fi + ### + + AC_CHECK_HEADERS([crypt.h]) ++AC_CHECK_HEADERS([ifaddrs.h]) + AC_CHECK_HEADERS([inttypes.h]) + AC_CHECK_HEADERS([stdint.h]) + AC_CHECK_HEADERS([stdlib.h]) + AC_CHECK_HEADERS([wchar.h]) ++AC_CHECK_HEADERS([net/if.h]) ++AC_CHECK_HEADERS([sys/auxv.h]) + AC_CHECK_HEADERS([sys/inttypes.h]) + AC_CHECK_HEADERS([sys/io.h]) + AC_CHECK_HEADERS([sys/param.h]) # Required to make the sys/user.h check work correctly on FreeBSD +diff --git a/open-vm-tools/lib/misc/idLinux.c b/open-vm-tools/lib/misc/idLinux.c +index b950cf84..1dcfb508 100644 +--- a/open-vm-tools/lib/misc/idLinux.c ++++ b/open-vm-tools/lib/misc/idLinux.c +@@ -27,12 +27,9 @@ + #include + #include + #include +-#ifdef __linux__ +-#if defined(__GLIBC__) && \ +- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16)) ++#ifdef HAVE_SYS_AUXV_H + #include + #endif +-#endif + #ifdef __APPLE__ + #include + #include +@@ -997,31 +994,32 @@ Id_EndSuperUser(uid_t uid) // IN: + static Bool + IdIsSetUGid(void) + { +-#if defined(__ANDROID__) +- /* Android does not have a secure_getenv, so be conservative. */ +- return TRUE; +-#else + /* + * We use __secure_getenv, which returns NULL if the binary is +- * setuid or setgid. Alternatives include, ++ * setuid or setgid, when issetugid or getauxval(AT_SECURE) is not ++ * available. Alternatives include, + * +- * a) getauxval(AT_SECURE); not available until glibc 2.16. +- * b) __libc_enable_secure; may not be exported. ++ * a) issetugid(); not (yet?) available in glibc. ++ * b) getauxval(AT_SECURE); not available until glibc 2.16. ++ * c) __libc_enable_secure; may not be exported. + * +- * Use (a) when we are based on glibc 2.16, or newer. ++ * Use (b) when we are based on glibc 2.16, or newer. + */ + +-#if defined(__GLIBC__) && \ +- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16)) ++#if HAVE_ISSETUGID ++ return issetugid(); ++#elif HAVE_GETAUXVAL + return getauxval(AT_SECURE) != 0; +-#else ++#elif HAVE___SECURE_GETENV + static const char envName[] = "VMW_SETUGID_TEST"; + + if (setenv(envName, "1", TRUE) == -1) { + return TRUE; /* Conservative */ + } + return __secure_getenv(envName) == NULL; +-#endif ++#else ++ /* Android does not have a secure_getenv, so be conservative. */ ++ return TRUE; + #endif + } + #endif +diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c +index a22981d5..b4e08681 100644 +--- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c ++++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c +@@ -34,9 +34,13 @@ + #include + #include + #include +-#if defined(__FreeBSD__) || defined(__APPLE__) ++#if HAVE_SYS_SYSCTL_H + # include ++#endif ++#if HAVE_IFADDRS_H + # include ++#endif ++#if HAVE_NET_IF_H + # include + #endif + #ifndef NO_DNET diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch new file mode 100644 index 000000000..9a227f9ec --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Use-configure-test-for-sys-stat.h-include.patch @@ -0,0 +1,25 @@ +From 11adcf43a1e7aa39ee4d82fa567f37e5b0c6ca81 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 10:41:01 +0000 +Subject: [PATCH] Use configure test for sys/stat.h include + +This is needed for musl libc. + +Signed-off-by: Natanael Copa +--- + open-vm-tools/services/plugins/vix/vixTools.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/open-vm-tools/services/plugins/vix/vixTools.c b/open-vm-tools/services/plugins/vix/vixTools.c +index e5273786..cabc4137 100644 +--- a/open-vm-tools/services/plugins/vix/vixTools.c ++++ b/open-vm-tools/services/plugins/vix/vixTools.c +@@ -66,7 +66,7 @@ + #include + #endif + +-#if defined(sun) || defined(__FreeBSD__) || defined(__APPLE__) ++#ifdef HAVE_SYS_STAT_H + #include + #endif + diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch new file mode 100644 index 000000000..11be2d4a0 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-Fix-subdir-objects-configure-error.patch @@ -0,0 +1,24 @@ +From cf1284fda8fb22a2b27cb2ce7962f166166e74c3 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 Jun 2018 23:48:04 -0700 +Subject: [PATCH] Fix subdir objects configure error + +Fix build on musl while here + +Signed-off-by: Khem Raj +--- + open-vm-tools/configure.ac | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac +index 71e684bb..b76a7966 100644 +--- a/open-vm-tools/configure.ac ++++ b/open-vm-tools/configure.ac +@@ -303,6 +303,7 @@ AC_ARG_ENABLE( + [], + [enable_resolutionkms="auto"]) + ++AM_INIT_AUTOMAKE([subdir-objects]) + AM_INIT_AUTOMAKE + + ### diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch new file mode 100644 index 000000000..814b9e3b2 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-include-poll.h-instead-of-sys-poll.h.patch @@ -0,0 +1,26 @@ +From e4f0b99d90e26b15106f634caad1c3dea9e09cb8 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 Jun 2018 23:02:50 -0700 +Subject: [PATCH] include poll.h instead of sys/poll.h + +including sys/poll.h is deprecated + +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/open-vm-tools/lib/asyncsocket/asyncsocket.c b/open-vm-tools/lib/asyncsocket/asyncsocket.c +index 65b07109..b41aa29d 100644 +--- a/open-vm-tools/lib/asyncsocket/asyncsocket.c ++++ b/open-vm-tools/lib/asyncsocket/asyncsocket.c +@@ -69,8 +69,8 @@ + #else + #include + #include ++#include + #include +-#include + #include + #include + #include diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch new file mode 100644 index 000000000..9cf54f6f4 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-Rename-poll.h-to-vm_poll.h.patch @@ -0,0 +1,742 @@ +From 8793466326dd10b0d2dbb83c64beff5cc8c0fc7d Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 Jun 2018 23:11:58 -0700 +Subject: [PATCH] Rename poll.h to vm_poll.h + +musl libc's system headers pulls in open-vm-tools' poll.h. To avoid this +we rename poll.h to vm_poll.h. + +Signed-off-by: Natanael Copa +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +- + open-vm-tools/lib/hgfsServer/hgfsServer.c | 2 +- + open-vm-tools/lib/include/asyncsocket.h | 2 +- + open-vm-tools/lib/include/pollImpl.h | 2 +- + open-vm-tools/lib/include/{poll.h => vm_poll.h} | 2 +- + open-vm-tools/lib/rpcIn/rpcin.c | 2 +- + .../services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c | 2 +- + 7 files changed, 7 insertions(+), 7 deletions(-) + rename open-vm-tools/lib/include/{poll.h => vm_poll.h} (99%) + +--- a/open-vm-tools/lib/asyncsocket/asyncsocket.c ++++ b/open-vm-tools/lib/asyncsocket/asyncsocket.c +@@ -86,7 +86,7 @@ + #include "random.h" + #include "asyncsocket.h" + #include "asyncSocketBase.h" +-#include "poll.h" ++#include "vm_poll.h" + #include "log.h" + #include "err.h" + #include "hostinfo.h" +--- a/open-vm-tools/lib/hgfsServer/hgfsServer.c ++++ b/open-vm-tools/lib/hgfsServer/hgfsServer.c +@@ -48,7 +48,7 @@ + #include "hgfsServerOplock.h" + #include "hgfsDirNotify.h" + #include "userlock.h" +-#include "poll.h" ++#include "vm_poll.h" + #include "mutexRankLib.h" + #include "vm_basic_asm.h" + #include "unicodeOperations.h" +--- a/open-vm-tools/lib/include/asyncsocket.h ++++ b/open-vm-tools/lib/include/asyncsocket.h +@@ -164,7 +164,7 @@ typedef struct AsyncSocket AsyncSocket; + * Or the client can specify its favorite poll class and locking behavior. + * Use of IVmdbPoll is only supported for regular sockets and for Attach. + */ +-#include "poll.h" ++#include "vm_poll.h" + struct IVmdbPoll; + typedef struct AsyncSocketPollParams { + int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */ +--- a/open-vm-tools/lib/include/pollImpl.h ++++ b/open-vm-tools/lib/include/pollImpl.h +@@ -44,7 +44,7 @@ + #define INCLUDE_ALLOW_USERLEVEL + #include "includeCheck.h" + +-#include "poll.h" ++#include "vm_poll.h" + #include "vm_basic_asm.h" + + #if defined(__cplusplus) +--- a/open-vm-tools/lib/include/poll.h ++++ /dev/null +@@ -1,330 +0,0 @@ +-/********************************************************* +- * Copyright (C) 1998-2018 VMware, Inc. All rights reserved. +- * +- * This program is free software; you can redistribute it and/or modify it +- * under the terms of the GNU Lesser General Public License as published +- * by the Free Software Foundation version 2.1 and no later version. +- * +- * This program is distributed in the hope that it will be useful, but +- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +- * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public +- * License for more details. +- * +- * You should have received a copy of the GNU Lesser General Public License +- * along with this program; if not, write to the Free Software Foundation, Inc., +- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +- * +- *********************************************************/ +- +-/********************************************************* +- * The contents of this file are subject to the terms of the Common +- * Development and Distribution License (the "License") version 1.0 +- * and no later version. You may not use this file except in +- * compliance with the License. +- * +- * You can obtain a copy of the License at +- * http://www.opensource.org/licenses/cddl1.php +- * +- * See the License for the specific language governing permissions +- * and limitations under the License. +- * +- *********************************************************/ +- +- +-#ifndef _POLL_H_ +-#define _POLL_H_ +- +-#define INCLUDE_ALLOW_USERLEVEL +-#define INCLUDE_ALLOW_VMCORE +-#include "includeCheck.h" +- +-#include "vm_basic_types.h" +-#include "vm_basic_defs.h" +-#include "vmware.h" +-#include "userlock.h" +- +-#if defined(__cplusplus) +-extern "C" { +-#endif +- +-#ifdef _WIN32 +-#define HZ 100 +-#elif defined linux +-#include +-#elif __APPLE__ +-#include +-/* +- * Old SDKs don't define TARGET_OS_IPHONE at all. +- * New ones define it to 0 on Mac OS X, 1 on iOS. +- */ +-#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0 +-#include +-#endif +-#include +-#define HZ 100 +-#endif +-#ifdef __ANDROID__ +-/* +- * of android should be included, but its name is same +- * with this file. So its content is put here to avoid conflict. +- */ +-#include +-#define HZ 100 +-typedef unsigned int nfds_t; +-int poll(struct pollfd *, nfds_t, long); +-#endif +- +- +-/* +- * Poll event types: each type has a different reason for firing, +- * or condition that must be met before firing. +- */ +- +-typedef enum { +- /* +- * Actual Poll queue types against which you can register callbacks. +- */ +- POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */ +- POLL_VTIME = 0, +- POLL_REALTIME, +- POLL_DEVICE, +- POLL_MAIN_LOOP, +- POLL_NUM_QUEUES +-} PollEventType; +- +- +-/* +- * Classes of events +- * +- * These are the predefined classes. More can be declared +- * with Poll_AllocClass(). +- */ +- +-typedef enum PollClass { +- POLL_CLASS_MAIN, +- POLL_CLASS_PAUSE, +- POLL_CLASS_IPC, +- POLL_CLASS_CPT, +- POLL_CLASS_MKS, +- POLL_FIXED_CLASSES, +- POLL_DEFAULT_FIXED_CLASSES, +- /* Size enum to maximum */ +- POLL_MAX_CLASSES = 31, +-} PollClass; +- +-/* +- * Do not use; Special pseudo private poll class supported by +- * PollDefault only +- */ +-#define POLL_DEFAULT_CLASS_NET POLL_FIXED_CLASSES +-#define POLL_DEFAULT_CS_NET PollClassSet_Singleton(POLL_DEFAULT_CLASS_NET) +- +-/* +- * Each callback is registered in a set of classes +- */ +- +-typedef struct PollClassSet { +- uintptr_t bits; +-} PollClassSet; +- +-/* An empty PollClassSet. */ +-static INLINE PollClassSet +-PollClassSet_Empty(void) +-{ +- PollClassSet set = { 0 }; +- return set; +-} +- +-/* A PollClassSet with the single member. */ +-static INLINE PollClassSet +-PollClassSet_Singleton(PollClass c) +-{ +- PollClassSet s = PollClassSet_Empty(); +- +- ASSERT_ON_COMPILE(POLL_MAX_CLASSES < sizeof s.bits * 8); +- ASSERT(c < POLL_MAX_CLASSES); +- +- s.bits = CONST3264U(1) << c; +- return s; +-} +- +-/* Combine two PollClassSets. */ +-static INLINE PollClassSet +-PollClassSet_Union(PollClassSet lhs, PollClassSet rhs) +-{ +- PollClassSet set; +- set.bits = lhs.bits | rhs.bits; +- return set; +-} +- +-/* Add single class to PollClassSet. */ +-static INLINE PollClassSet +-PollClassSet_Include(PollClassSet set, PollClass c) +-{ +- return PollClassSet_Union(set, PollClassSet_Singleton(c)); +-} +- +- +-#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN) +-#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \ +- PollClassSet_Singleton(POLL_CLASS_PAUSE)) +-#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \ +- PollClassSet_Singleton(POLL_CLASS_CPT)) +-#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \ +- PollClassSet_Singleton(POLL_CLASS_IPC)) +-#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */ +-#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS) +-/* +- * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it. +- */ +-#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC) +- +-/* +- * Poll class-set taxonomy: +- * POLL_CS_MAIN +- * - Unless you NEED another class, use POLL_CS_MAIN. +- * POLL_CS_PAUSE +- * - For callbacks that must occur even if the guest is paused. +- * Most VMDB or Foundry commands are in this category. +- * POLL_CS_CPT +- * - Only for callbacks which can trigger intermediate Checkpoint +- * transitions. +- * The ONLY such callback is Migrate. +- * POLL_CS_IPC +- * - Only for callbacks which can contain Msg_(Post|Hint|Question) +- * responses, and for signal handlers (why)? +- * Vigor, VMDB, and Foundry can contain Msg_* responses. +- * POLL_CS_MKS +- * - Callback runs in MKS thread. +- * POLL_CS_ALWAYS +- * - Only for events that must be processed immediately. +- * The ONLY such callback is OvhdMemVmxSizeCheck. +- */ +- +- +-/* +- * Poll_Callback flags +- */ +- +-#define POLL_FLAG_PERIODIC 0x01 // keep after firing +-#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory +-#define POLL_FLAG_READ 0x04 // device is ready for reading +-#define POLL_FLAG_WRITE 0x08 // device is ready for writing +-#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket +-#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking +-#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events +-#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor. +-#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl +-#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop +- +- +-typedef void (*PollerFunction)(void *clientData); +-typedef void (*PollerFireWrapper)(PollerFunction func, +- void *funcData, +- void *wrapperData); +-typedef Bool (*PollerErrorFn)(const char *errorStr); +- +-/* +- * Initialisers: +- * +- * For the sake of convenience, we declare the initialisers +- * for custom implmentations here, even though the actual +- * implementations are distinct from the core poll code. +- */ +- +-typedef struct PollOptions { +- Bool locked; // Use internal MXUser for locking +- Bool allowFullQueue; // Don't assert when device event queue is full. +- VThreadID windowsMsgThread; // thread that processes Windows messages +- PollerFireWrapper fireWrapperFn; // optional; may be useful for stats +- void *fireWrapperData; // optional +- PollerErrorFn errorFn; // optional; called upon unrecoverable error +-} PollOptions; +- +- +-void Poll_InitDefault(void); +-void Poll_InitDefaultEx(const PollOptions *opts); +-void Poll_InitGtk(void); // On top of glib for Linux +-void Poll_InitCF(void); // On top of CoreFoundation for OSX +- +- +-/* +- * Functions +- */ +-int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]); +-void Poll_Loop(Bool loop, Bool *exit, PollClass c); +-void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout); +-Bool Poll_LockingEnabled(void); +-void Poll_Exit(void); +- +- +-/* +- * Poll_Callback adds a callback regardless of whether an identical one exists. +- * The exception to this rule is POLL_DEVICE callbacks: there is a maximum of +- * one read and one write callback per fd. +- * +- * Poll_CallbackRemove removes one callback. If there are multiple identical +- * callbacks, which one is removed is an implementation detail. Note that in +- * the case of POLL_DEVICE and POLL_REALTIME callbacks, the fd/delay used to +- * create the callback is not specified when removing, so all callbacks +- * of those types with the same flags, function, and clientData are considered +- * "identical" even if their fd/delay differed. +- */ +- +-VMwareStatus Poll_Callback(PollClassSet classSet, +- int flags, +- PollerFunction f, +- void *clientData, +- PollEventType type, +- PollDevHandle info, // fd/microsec delay +- MXUserRecLock *lck); +-Bool Poll_CallbackRemove(PollClassSet classSet, +- int flags, +- PollerFunction f, +- void *clientData, +- PollEventType type); +-Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet, +- int flags, +- PollerFunction f, +- PollEventType type, +- void **clientData); +- +-void Poll_NotifyChange(PollClassSet classSet); +- +-/* +- * Wrappers for Poll_Callback and Poll_CallbackRemove that present +- * simpler subsets of those interfaces. +- */ +- +-VMwareStatus Poll_CB_Device(PollerFunction f, +- void *clientData, +- PollDevHandle device, +- Bool periodic); +- +-Bool Poll_CB_DeviceRemove(PollerFunction f, +- void *clientData, +- Bool periodic); +- +- +-VMwareStatus Poll_CB_RTime(PollerFunction f, +- void *clientData, +- int64 delay, // microseconds +- Bool periodic, +- MXUserRecLock *lock); +- +-Bool Poll_CB_RTimeRemove(PollerFunction f, +- void *clientData, +- Bool periodic); +- +- +-#ifdef _WIN32 +-void Poll_SetPumpsWindowsMessages(Bool pumps); +-void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk); +-Bool Poll_FireWndCallback(void *lparam); +-#endif +- +-#if defined(__cplusplus) +-} // extern "C" +-#endif +- +-#endif // _POLL_H_ +--- /dev/null ++++ b/open-vm-tools/lib/include/vm_poll.h +@@ -0,0 +1,330 @@ ++/********************************************************* ++ * Copyright (C) 1998-2018 VMware, Inc. All rights reserved. ++ * ++ * This program is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU Lesser General Public License as published ++ * by the Free Software Foundation version 2.1 and no later version. ++ * ++ * This program is distributed in the hope that it will be useful, but ++ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ++ * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public ++ * License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public License ++ * along with this program; if not, write to the Free Software Foundation, Inc., ++ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ *********************************************************/ ++ ++/********************************************************* ++ * The contents of this file are subject to the terms of the Common ++ * Development and Distribution License (the "License") version 1.0 ++ * and no later version. You may not use this file except in ++ * compliance with the License. ++ * ++ * You can obtain a copy of the License at ++ * http://www.opensource.org/licenses/cddl1.php ++ * ++ * See the License for the specific language governing permissions ++ * and limitations under the License. ++ * ++ *********************************************************/ ++ ++ ++#ifndef _POLL_H_ ++#define _POLL_H_ ++ ++#define INCLUDE_ALLOW_USERLEVEL ++#define INCLUDE_ALLOW_VMCORE ++#include "includeCheck.h" ++ ++#include "vm_basic_types.h" ++#include "vm_basic_defs.h" ++#include "vmware.h" ++#include "userlock.h" ++ ++#if defined(__cplusplus) ++extern "C" { ++#endif ++ ++#ifdef _WIN32 ++#define HZ 100 ++#elif defined linux ++#include ++#elif __APPLE__ ++#include ++/* ++ * Old SDKs don't define TARGET_OS_IPHONE at all. ++ * New ones define it to 0 on Mac OS X, 1 on iOS. ++ */ ++#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0 ++#include ++#endif ++#include ++#define HZ 100 ++#endif ++#ifdef __ANDROID__ ++/* ++ * of android should be included, but its name is same ++ * with this file. So its content is put here to avoid conflict. ++ */ ++#include ++#define HZ 100 ++typedef unsigned int nfds_t; ++int poll(struct pollfd *, nfds_t, long); ++#endif ++ ++ ++/* ++ * Poll event types: each type has a different reason for firing, ++ * or condition that must be met before firing. ++ */ ++ ++typedef enum { ++ /* ++ * Actual Poll queue types against which you can register callbacks. ++ */ ++ POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */ ++ POLL_VTIME = 0, ++ POLL_REALTIME, ++ POLL_DEVICE, ++ POLL_MAIN_LOOP, ++ POLL_NUM_QUEUES ++} PollEventType; ++ ++ ++/* ++ * Classes of events ++ * ++ * These are the predefined classes. More can be declared ++ * with Poll_AllocClass(). ++ */ ++ ++typedef enum PollClass { ++ POLL_CLASS_MAIN, ++ POLL_CLASS_PAUSE, ++ POLL_CLASS_IPC, ++ POLL_CLASS_CPT, ++ POLL_CLASS_MKS, ++ POLL_FIXED_CLASSES, ++ POLL_DEFAULT_FIXED_CLASSES, ++ /* Size enum to maximum */ ++ POLL_MAX_CLASSES = 31, ++} PollClass; ++ ++/* ++ * Do not use; Special pseudo private poll class supported by ++ * PollDefault only ++ */ ++#define POLL_DEFAULT_CLASS_NET POLL_FIXED_CLASSES ++#define POLL_DEFAULT_CS_NET PollClassSet_Singleton(POLL_DEFAULT_CLASS_NET) ++ ++/* ++ * Each callback is registered in a set of classes ++ */ ++ ++typedef struct PollClassSet { ++ uintptr_t bits; ++} PollClassSet; ++ ++/* An empty PollClassSet. */ ++static INLINE PollClassSet ++PollClassSet_Empty(void) ++{ ++ PollClassSet set = { 0 }; ++ return set; ++} ++ ++/* A PollClassSet with the single member. */ ++static INLINE PollClassSet ++PollClassSet_Singleton(PollClass c) ++{ ++ PollClassSet s = PollClassSet_Empty(); ++ ++ ASSERT_ON_COMPILE(POLL_MAX_CLASSES < sizeof s.bits * 8); ++ ASSERT(c < POLL_MAX_CLASSES); ++ ++ s.bits = CONST3264U(1) << c; ++ return s; ++} ++ ++/* Combine two PollClassSets. */ ++static INLINE PollClassSet ++PollClassSet_Union(PollClassSet lhs, PollClassSet rhs) ++{ ++ PollClassSet set; ++ set.bits = lhs.bits | rhs.bits; ++ return set; ++} ++ ++/* Add single class to PollClassSet. */ ++static INLINE PollClassSet ++PollClassSet_Include(PollClassSet set, PollClass c) ++{ ++ return PollClassSet_Union(set, PollClassSet_Singleton(c)); ++} ++ ++ ++#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN) ++#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \ ++ PollClassSet_Singleton(POLL_CLASS_PAUSE)) ++#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \ ++ PollClassSet_Singleton(POLL_CLASS_CPT)) ++#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \ ++ PollClassSet_Singleton(POLL_CLASS_IPC)) ++#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */ ++#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS) ++/* ++ * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it. ++ */ ++#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC) ++ ++/* ++ * Poll class-set taxonomy: ++ * POLL_CS_MAIN ++ * - Unless you NEED another class, use POLL_CS_MAIN. ++ * POLL_CS_PAUSE ++ * - For callbacks that must occur even if the guest is paused. ++ * Most VMDB or Foundry commands are in this category. ++ * POLL_CS_CPT ++ * - Only for callbacks which can trigger intermediate Checkpoint ++ * transitions. ++ * The ONLY such callback is Migrate. ++ * POLL_CS_IPC ++ * - Only for callbacks which can contain Msg_(Post|Hint|Question) ++ * responses, and for signal handlers (why)? ++ * Vigor, VMDB, and Foundry can contain Msg_* responses. ++ * POLL_CS_MKS ++ * - Callback runs in MKS thread. ++ * POLL_CS_ALWAYS ++ * - Only for events that must be processed immediately. ++ * The ONLY such callback is OvhdMemVmxSizeCheck. ++ */ ++ ++ ++/* ++ * Poll_Callback flags ++ */ ++ ++#define POLL_FLAG_PERIODIC 0x01 // keep after firing ++#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory ++#define POLL_FLAG_READ 0x04 // device is ready for reading ++#define POLL_FLAG_WRITE 0x08 // device is ready for writing ++#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket ++#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking ++#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events ++#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor. ++#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl ++#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop ++ ++ ++typedef void (*PollerFunction)(void *clientData); ++typedef void (*PollerFireWrapper)(PollerFunction func, ++ void *funcData, ++ void *wrapperData); ++typedef Bool (*PollerErrorFn)(const char *errorStr); ++ ++/* ++ * Initialisers: ++ * ++ * For the sake of convenience, we declare the initialisers ++ * for custom implmentations here, even though the actual ++ * implementations are distinct from the core poll code. ++ */ ++ ++typedef struct PollOptions { ++ Bool locked; // Use internal MXUser for locking ++ Bool allowFullQueue; // Don't assert when device event queue is full. ++ VThreadID windowsMsgThread; // thread that processes Windows messages ++ PollerFireWrapper fireWrapperFn; // optional; may be useful for stats ++ void *fireWrapperData; // optional ++ PollerErrorFn errorFn; // optional; called upon unrecoverable error ++} PollOptions; ++ ++ ++void Poll_InitDefault(void); ++void Poll_InitDefaultEx(const PollOptions *opts); ++void Poll_InitGtk(void); // On top of glib for Linux ++void Poll_InitCF(void); // On top of CoreFoundation for OSX ++ ++ ++/* ++ * Functions ++ */ ++int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]); ++void Poll_Loop(Bool loop, Bool *exit, PollClass c); ++void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout); ++Bool Poll_LockingEnabled(void); ++void Poll_Exit(void); ++ ++ ++/* ++ * Poll_Callback adds a callback regardless of whether an identical one exists. ++ * The exception to this rule is POLL_DEVICE callbacks: there is a maximum of ++ * one read and one write callback per fd. ++ * ++ * Poll_CallbackRemove removes one callback. If there are multiple identical ++ * callbacks, which one is removed is an implementation detail. Note that in ++ * the case of POLL_DEVICE and POLL_REALTIME callbacks, the fd/delay used to ++ * create the callback is not specified when removing, so all callbacks ++ * of those types with the same flags, function, and clientData are considered ++ * "identical" even if their fd/delay differed. ++ */ ++ ++VMwareStatus Poll_Callback(PollClassSet classSet, ++ int flags, ++ PollerFunction f, ++ void *clientData, ++ PollEventType type, ++ PollDevHandle info, // fd/microsec delay ++ MXUserRecLock *lck); ++Bool Poll_CallbackRemove(PollClassSet classSet, ++ int flags, ++ PollerFunction f, ++ void *clientData, ++ PollEventType type); ++Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet, ++ int flags, ++ PollerFunction f, ++ PollEventType type, ++ void **clientData); ++ ++void Poll_NotifyChange(PollClassSet classSet); ++ ++/* ++ * Wrappers for Poll_Callback and Poll_CallbackRemove that present ++ * simpler subsets of those interfaces. ++ */ ++ ++VMwareStatus Poll_CB_Device(PollerFunction f, ++ void *clientData, ++ PollDevHandle device, ++ Bool periodic); ++ ++Bool Poll_CB_DeviceRemove(PollerFunction f, ++ void *clientData, ++ Bool periodic); ++ ++ ++VMwareStatus Poll_CB_RTime(PollerFunction f, ++ void *clientData, ++ int64 delay, // microseconds ++ Bool periodic, ++ MXUserRecLock *lock); ++ ++Bool Poll_CB_RTimeRemove(PollerFunction f, ++ void *clientData, ++ Bool periodic); ++ ++ ++#ifdef _WIN32 ++void Poll_SetPumpsWindowsMessages(Bool pumps); ++void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk); ++Bool Poll_FireWndCallback(void *lparam); ++#endif ++ ++#if defined(__cplusplus) ++} // extern "C" ++#endif ++ ++#endif // _POLL_H_ +--- a/open-vm-tools/lib/rpcIn/rpcin.c ++++ b/open-vm-tools/lib/rpcIn/rpcin.c +@@ -57,7 +57,7 @@ + + #if defined(VMTOOLS_USE_VSOCKET) + # include +-# include "poll.h" ++# include "vm_poll.h" + # include "asyncsocket.h" + # include "vmci_defs.h" + #include "dataMap.h" diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch new file mode 100644 index 000000000..784b4fc6c --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-use-posix-strerror_r-unless-on-gnu-libc-system.patch @@ -0,0 +1,39 @@ +From e86a259e1ce19c70ecfdece69ab53a07c63a34e1 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 Jun 2018 23:16:53 -0700 +Subject: [PATCH] use posix strerror_r unless on gnu libc system + +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/err/errPosix.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/open-vm-tools/lib/err/errPosix.c b/open-vm-tools/lib/err/errPosix.c +index c81b4c13..7a403640 100644 +--- a/open-vm-tools/lib/err/errPosix.c ++++ b/open-vm-tools/lib/err/errPosix.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + + #include "vmware.h" + #include "errInt.h" +@@ -63,11 +64,13 @@ ErrErrno2String(Err_Number errorNumber, // IN + { + char *p; + +-#if defined(__linux__) && !defined(__ANDROID__) ++#if defined(__GLIBC__) && !defined(__ANDROID__) + p = strerror_r(errorNumber, buf, bufSize); + #else +- p = strerror(errorNumber); +-#endif ++ if (strerror_r(errorNumber, buf, bufSize) != 0) ++ snprintf(buf, bufSize, "unknown error %i", errorNumber); ++ p = buf; ++#endif /* defined __GLIBC__ */ + ASSERT(p != NULL); + return p; + } diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch new file mode 100644 index 000000000..0a1d00873 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-uintmax_t-for-handling-rlim_t.patch @@ -0,0 +1,29 @@ +From 18eea61a7a768c6c3b57c6683c7bef7049f0f6ab Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 Jun 2018 23:37:09 -0700 +Subject: [PATCH] Use uintmax_t for handling rlim_t + +rlimit types are not representable with long or long long +formats, therefore use uintmax_t to typecast rlim_t types +and use %j to print it + +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +index 0e6351a9..a2ee1740 100644 +--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c ++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +@@ -5294,8 +5294,8 @@ HgfsWriteCheckIORange(off_t offset, // IN: + goto exit; + } + +- LOG(6, ("%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n", +- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max)); ++ LOG(6, ("%s: File Size limits: 0x%jx 0x%jx\n", ++ __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max)); + + /* + * Check the offset is within the file size range. diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch new file mode 100644 index 000000000..d69b74e23 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-Use-off64_t-instead-of-__off64_t.patch @@ -0,0 +1,31 @@ +From 123c690f12f560022305b0cf19499e7f81a690ae Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 27 Aug 2018 23:22:21 -0700 +Subject: [PATCH] Use off64_t instead of __off64_t + +Fixes +unknown type name '__off64_t' + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/file/fileIOPosix.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/open-vm-tools/lib/file/fileIOPosix.c b/open-vm-tools/lib/file/fileIOPosix.c +index 23108279..bcd2ddc5 100644 +--- a/open-vm-tools/lib/file/fileIOPosix.c ++++ b/open-vm-tools/lib/file/fileIOPosix.c +@@ -206,10 +206,10 @@ static AlignedPool alignedPool; + * the symbols (and anyone building XOPEN<700 gets nothing). + */ + extern ssize_t preadv64(int fd, const struct iovec *iov, int iovcnt, +- __off64_t offset) __attribute__ ((weak)); ++ off64_t offset) __attribute__ ((weak)); + + extern ssize_t pwritev64(int fd, const struct iovec *iov, int iovcnt, +- __off64_t offset) __attribute__ ((weak)); ++ off64_t offset) __attribute__ ((weak)); + #else + #error "Large file support unavailable. Aborting." + #endif diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch new file mode 100644 index 000000000..3e4753b2a --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-misc-Do-not-print-NULL-string-into-logs.patch @@ -0,0 +1,27 @@ +From cfc6839362bd96bf2f42954160f16a60bf1de377 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 22 Dec 2018 19:59:02 -0800 +Subject: [PATCH] misc: Do not print NULL string into logs + +string format %s is getting a NULL pointer for 'expand' +parameter always since the check for chunks[i] == NULL will ensure that +its always null when the Log() API is called + +Upstream-Status: Submitted [https://github.com/vmware/open-vm-tools/pull/312] + +Signed-off-by: Khem Raj +--- + open-vm-tools/lib/misc/util_misc.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/open-vm-tools/lib/misc/util_misc.c ++++ b/open-vm-tools/lib/misc/util_misc.c +@@ -719,7 +719,7 @@ Util_ExpandString(const char *fileName) + ASSERT(!freeChunk[i]); + chunks[i] = expand; + if (chunks[i] == NULL) { +- Log("%s: Cannot allocate memory to expand $ in \"%s\".\n", ++ Log("%s: Cannot allocate memory to expand in \"%s\".\n", + __FUNCTION__, fileName); + goto out; + } diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf new file mode 100644 index 000000000..f6cae70cc --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf @@ -0,0 +1,2 @@ +[guestinfo] +disable-perf-mon=1 diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init new file mode 100644 index 000000000..38280464a --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init @@ -0,0 +1,66 @@ +#!/bin/sh +# +# vmtoolsd Start/stop the vmware tools daemon +# +# chkconfig: 2345 90 60 +# description: vmtoolsd is a daemon that starts up. for some reason, it +# doesn't include a sysv init startup file in the latest release. +# so i have to write this +# + +### BEGIN INIT INFO +# Provides: vmtoolsd +# Required-Start: $local_fs $syslog +# Required-Stop: $local_fs $syslog +# Default-Start: 2345 +# Default-Stop: 90 +# Short-Description: Run vmware tools daemon +### END INIT INFO + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/bin/vmtoolsd +NAME=vmtoolsd +DESC="vmware tools daemon" +VMTOOLSDARGS=" -b /var/run/vmtoolsd.pid " +RETVAL="1" + +# source function library +. /etc/init.d/functions + +test -f $DAEMON || exit 0 + + +case "$1" in + start) + echo -n "Starting vmware tools daemon: " + start-stop-daemon --start --quiet --exec $DAEMON -- $VMTOOLSDARGS + RETVAL=$? + if [ $RETVAL -eq 0 ] ; then + echo "OK" + else + echo "FAIL" + fi + ;; + stop) + echo -n "Stopping vmware tools daemon: " + start-stop-daemon --stop --quiet --pidfile /var/run/vmtoolsd.pid + RETVAL=$? + if [ $RETVAL -eq 0 ] ; then + echo "OK" + else + echo "FAIL" + fi + ;; + status) + status vmtoolsd + exit $? + ;; + restart) + $0 stop && sleep 1 && $0 start + ;; + *) + echo "Usage: /etc/init.d/vmtoolsd {start|stop|status|restart}" + exit 1 +esac + +exit $RETVAL diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service new file mode 100644 index 000000000..d30e38055 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service @@ -0,0 +1,11 @@ +[Unit] +Description=Open Virtual Machine Tools (VMware Tools) +ConditionVirtualization=vmware + +[Service] +ExecStart=/usr/bin/vmtoolsd +Restart=on-failure +KillSignal=SIGKILL + +[Install] +WantedBy=multi-user.target diff --git a/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb new file mode 100644 index 000000000..832fab1ea --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/open-vm-tools/open-vm-tools_11.0.1.bb @@ -0,0 +1,116 @@ +# 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" +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://0002-add-include-sys-sysmacros.h.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-GitHub-Issue-367.-Remove-references-to-deprecated-G_.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-utilBacktrace-Ignore-Warray-bounds.patch;patchdir=.. \ + file://0001-hgfsmounter-Makefile.am-support-usrmerge.patch;patchdir=.. \ + file://0001-pollGtk-Drop-volatile-qualifier.patch;patchdir=.. \ +" + +SRCREV = "d3edfd142a81096f9f58aff17d84219b457f4987" + +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.') +} diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb deleted file mode 100644 index e730b18a0..000000000 --- a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.3.bb +++ /dev/null @@ -1,87 +0,0 @@ -DESCRIPTION = "wireshark - a popular network protocol analyzer" -HOMEPAGE = "http://www.wireshark.org" -SECTION = "net" -LICENSE = "GPL-2.0" -LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77" - -DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native c-ares" - -DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native " - -SRC_URI = "https://1.eu.dl.wireshark.org/src/all-versions/wireshark-${PV}.tar.xz" - -SRC_URI += " \ - file://0001-wireshark-src-improve-reproducibility.patch \ - file://0002-flex-Remove-line-directives.patch \ - file://0003-bison-Remove-line-directives.patch \ - file://0004-lemon-Remove-line-directives.patch \ -" - -UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src" - -SRC_URI[sha256sum] = "f467cc77f0fc73fce0b854cdbc292f132d4879fca69d417eccad5f967fbf262b" - -PE = "1" - -inherit cmake pkgconfig python3native perlnative upstream-version-is-even mime mime-xdg - -PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc" - -PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh" - -PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap" -PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap" -PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi" -PACKAGECONFIG[libnl] = ",,libnl" -PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19" -PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls" -PACKAGECONFIG[ssl] = ",,openssl" -PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5" -PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua" -PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib" -PACKAGECONFIG[geoip] = ",, geoip" -PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF" -PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc" -PACKAGECONFIG[libssh] = ",,libssh2" -PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4" - -# these next two options require addional layers -PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares" -PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qttools-native qtmultimedia qtsvg" - -inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)} - -EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \ - -DBUILD_mmdbresolve=OFF \ - -DBUILD_randpktdump=OFF \ - -DBUILD_androiddump=OFF \ - -DBUILD_dcerpcidl2wrs=OFF \ - -DM_INCLUDE_DIR=${includedir} \ - -DM_LIBRARY=${libdir} \ - " -CFLAGS_append = " -lm" - -do_install_append_class-native() { - install -d ${D}${bindir} - for f in lemon - do - install -m 0755 ${B}/run/$f ${D}${bindir} - done -} - -do_install_append_class-target() { - for f in `find ${D}${libdir} ${D}${bindir} -type f -executable` - do - chrpath --delete $f - done -} - -PACKAGE_BEFORE_PN += "tshark" - -FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*" - -FILES_${PN} += "${datadir}*" - -RDEPENDS_tshark = "wireshark" - -BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb new file mode 100644 index 000000000..b75f41835 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.4.4.bb @@ -0,0 +1,87 @@ +DESCRIPTION = "wireshark - a popular network protocol analyzer" +HOMEPAGE = "http://www.wireshark.org" +SECTION = "net" +LICENSE = "GPL-2.0" +LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77" + +DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native c-ares" + +DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native " + +SRC_URI = "https://1.eu.dl.wireshark.org/src/all-versions/wireshark-${PV}.tar.xz" + +SRC_URI += " \ + file://0001-wireshark-src-improve-reproducibility.patch \ + file://0002-flex-Remove-line-directives.patch \ + file://0003-bison-Remove-line-directives.patch \ + file://0004-lemon-Remove-line-directives.patch \ +" + +UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src" + +SRC_URI[sha256sum] = "729cd11e9715c600e5ad74ca472bacf8af32c20902192d5f2b271268511d4d29" + +PE = "1" + +inherit cmake pkgconfig python3native perlnative upstream-version-is-even mime mime-xdg + +PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc" + +PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh" + +PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap" +PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap" +PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi" +PACKAGECONFIG[libnl] = ",,libnl" +PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19" +PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls" +PACKAGECONFIG[ssl] = ",,openssl" +PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5" +PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua" +PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib" +PACKAGECONFIG[geoip] = ",, geoip" +PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF" +PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc" +PACKAGECONFIG[libssh] = ",,libssh2" +PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4" + +# these next two options require addional layers +PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares" +PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qttools-native qtmultimedia qtsvg" + +inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)} + +EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \ + -DBUILD_mmdbresolve=OFF \ + -DBUILD_randpktdump=OFF \ + -DBUILD_androiddump=OFF \ + -DBUILD_dcerpcidl2wrs=OFF \ + -DM_INCLUDE_DIR=${includedir} \ + -DM_LIBRARY=${libdir} \ + " +CFLAGS_append = " -lm" + +do_install_append_class-native() { + install -d ${D}${bindir} + for f in lemon + do + install -m 0755 ${B}/run/$f ${D}${bindir} + done +} + +do_install_append_class-target() { + for f in `find ${D}${libdir} ${D}${bindir} -type f -executable` + do + chrpath --delete $f + done +} + +PACKAGE_BEFORE_PN += "tshark" + +FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*" + +FILES_${PN} += "${datadir}*" + +RDEPENDS_tshark = "wireshark" + +BBCLASSEXTEND = "native" -- cgit v1.2.3