diff --git a/.gitignore b/.gitignore index 84881fb..f6c5da5 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,4 @@ /open-vm-tools-13.0.0-24696409.tar.gz /open-vm-tools-13.0.5-24915695.tar.gz /open-vm-tools-13.0.10-25056151.tar.gz +/open-vm-tools-13.1.0-25218885.tar.gz diff --git a/open-vm-tools-13.1.0-1.el10.src.rpm b/open-vm-tools-13.1.0-1.el10.src.rpm new file mode 100644 index 0000000..bee4da2 Binary files /dev/null and b/open-vm-tools-13.1.0-1.el10.src.rpm differ diff --git a/open-vm-tools.spec b/open-vm-tools.spec index 22725c3..0748d0d 100644 --- a/open-vm-tools.spec +++ b/open-vm-tools.spec @@ -18,32 +18,18 @@ ### Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ################################################################################ -%global majorversion 13.0 -%global minorversion 10 -%global toolsbuild 25056151 +%global majorversion 13.1 +%global minorversion 0 +%global toolsbuild 25218885 %global toolsversion %{majorversion}.%{minorversion} %global toolsdaemon vmtoolsd %global vgauthdaemon vgauthd -# gtkmm3 is removed from RHEL 10, bundle it until the project is ported -# GTK 4, see RHEL-35537 -%global bundle_gtkmm3 1 - Name: open-vm-tools Version: %{toolsversion} Release: 1%{?dist} Summary: Open Virtual Machine Tools for virtual machines hosted on VMware -%if 0%{?bundle_gtkmm3} -# atkmm: LGPL-2.1-or-later -# cairomm: LGPL-2.0-or-later -# glibmm2.4: LGPL-2.1-or-later AND GPL-2.0-or-later -# gtkmm3.0: LGPL-2.1-or-later AND GPL-2.0-or-later -# libsigc++20: LGPL-2.1-or-later -# pangomm: LGPL-2.1-or-later AND GPL-2.0-only -License: GPL-2.0-only AND W3C AND LGPL-2.1-only AND ICU AND ISC AND MIT AND LGPL-2.1-or-later AND LGPL-2.0-or-later AND GPL-2.0-or-later -%else License: GPL-2.0-only AND W3C AND LGPL-2.1-only AND ICU AND ISC AND MIT -%endif URL: https://github.com/vmware/%{name} Source0: https://github.com/vmware/%{name}/releases/download/stable-%{version}/%{name}-%{version}-%{toolsbuild}.tar.gz @@ -53,23 +39,6 @@ Source3: run-vmblock\x2dfuse.mount Source4: open-vm-tools.conf Source5: vmtoolsd.pam -%if 0%{?bundle_gtkmm3} -%global bundled_install_path %{_libdir}/%{name} - -%global __provides_exclude_from ^%{bundled_install_path} -%global __requires_exclude ^(libatkmm|libcairomm|libgdkmm|libgiomm|libglibmm|libgtkmm|libpangomm|libsigc).*$ - -# Generally use the content that was already part of RHEL 10 apart from libsigc++20 -# as it was modified to not build documentation because of docbook5, see i.e. RHEL-45565 -# In order of use: -Source101: libsigc++20-2.12.1-4.el9.src.rpm -Source102: https://kojihub.stream.centos.org/kojifiles/vol/koji02/packages/glibmm2.4/2.66.6/5.el10/src/glibmm2.4-2.66.6-5.el10.src.rpm -Source103: https://kojihub.stream.centos.org/kojifiles/vol/koji02/packages/atkmm/2.28.4/2.el10/src/atkmm-2.28.4-2.el10.src.rpm -Source104: https://kojihub.stream.rdu2.redhat.com/kojifiles/vol/koji02/packages/cairomm/1.14.5/5.el10/src/cairomm-1.14.5-5.el10.src.rpm -Source105: https://kojihub.stream.rdu2.redhat.com/kojifiles/vol/koji02/packages/pangomm/2.46.4/2.el10/src/pangomm-2.46.4-2.el10.src.rpm -Source106: https://kojihub.stream.rdu2.redhat.com/kojifiles/vol/koji02/packages/gtkmm3.0/3.24.8/6.el10/src/gtkmm3.0-3.24.8-6.el10.src.rpm -%endif - %if 0%{?rhel} >= 7 ExclusiveArch: x86_64 aarch64 %else @@ -113,21 +82,8 @@ BuildRequires: procps-devel BuildRequires: xmlsec1-openssl-devel %if 0%{?fedora} || 0%{?rhel} >= 8 -BuildRequires: gtk3-devel >= 3.10.0 -%if 0%{?bundle_gtkmm3} -BuildRequires: atk-devel -# For cairomm tests, could be dropped -BuildRequires: boost-devel -BuildRequires: libxslt -BuildRequires: m4 -BuildRequires: meson -BuildRequires: mm-common -BuildRequires: perl-generators -BuildRequires: perl-interpreter -BuildRequires: perl(Getopt::Long) -%else -BuildRequires: gtkmm30-devel >= 3.10.0 -%endif +BuildRequires: gtk4-devel +BuildRequires: gtkmm4.0-devel BuildRequires: libtirpc-devel BuildRequires: rpcgen BuildRequires: systemd-udev @@ -223,107 +179,6 @@ machines. %autosetup -p2 -n %{name}-%{version}-%{toolsbuild} %build -%if 0%{?bundle_gtkmm3} -export PATH="%{_buildrootdir}/bin:$PATH" - -function install_rpms_to_current_dir() { - PACKAGE_RPM=$(eval echo $1) - PACKAGE_DIR=%{_rpmdir} - - echo "install_rpms_to_current_dir() for $PACKAGE_DIR/$PACKAGE_RPM" - if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then - # Hack for tps tests - ARCH_STR=%{_arch} - %ifarch %{ix86} - ARCH_STR="i?86" - %endif - PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR" - fi - - for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM) - do - echo "$package" - rpm2cpio "$package" | cpio -ivdu - done -} - -rpmbuild_bundled() { - rpmbuild --nodeps \ - --define '_prefix %{bundled_install_path}' \ - --define '__perl /usr/bin/perl' \ - $@ -} - -export LDFLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" -export LDFLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $LDFLAGS" -export LDFLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" -export PKG_CONFIG_PATH=%{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig -export PATH="%{_buildrootdir}%{bundled_install_path}/bin:$PATH" - -# libsigc++20 -rpm -ivh %{SOURCE101} -rpmbuild_bundled -ba %{_specdir}/libsigc++20.spec -pushd %{_buildrootdir} -install_rpms_to_current_dir libsigc++20*.rpm -popd - -sed -i 's@prefix=%{bundled_install_path}@prefix=%{_buildrootdir}%{bundled_install_path}@g' \ - %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/*.pc - -# glibmm2.4 -rpm -ivh %{SOURCE102} -rpmbuild_bundled -ba %{_specdir}/glibmm2.4.spec -pushd %{_buildrootdir} -install_rpms_to_current_dir glibmm2.4*.rpm -popd - -sed -i 's@prefix=%{bundled_install_path}@prefix=%{_buildrootdir}%{bundled_install_path}@g' \ - %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/*.pc - -# atkmm -rpm -ivh %{SOURCE103} -rpmbuild_bundled -ba %{_specdir}/atkmm.spec -pushd %{_buildrootdir} -install_rpms_to_current_dir atkmm*.rpm -popd - -sed -i 's@prefix=%{bundled_install_path}@prefix=%{_buildrootdir}%{bundled_install_path}@g' \ - %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/*.pc - -# cairomm -rpm -ivh %{SOURCE104} -rpmbuild_bundled --without=doc_pdf -ba %{_specdir}/cairomm.spec -pushd %{_buildrootdir} -install_rpms_to_current_dir cairomm*.rpm -popd - -sed -i 's@prefix=%{bundled_install_path}@prefix=%{_buildrootdir}%{bundled_install_path}@g' \ - %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/*.pc - -# pangomm -rpm -ivh %{SOURCE105} -rpmbuild_bundled -ba %{_specdir}/pangomm.spec -pushd %{_buildrootdir} -install_rpms_to_current_dir pangomm*.rpm -popd - -sed -i 's@prefix=%{bundled_install_path}@prefix=%{_buildrootdir}%{bundled_install_path}@g' \ - %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/*.pc - -# gtkmm3.0 -rpm -ivh %{SOURCE106} -rpmbuild_bundled -ba %{_specdir}/gtkmm3.0.spec -pushd %{_buildrootdir} -install_rpms_to_current_dir gtkmm*.rpm -popd - -sed -i 's@prefix=%{bundled_install_path}@prefix=%{_buildrootdir}%{bundled_install_path}@g' \ - %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/*.pc - -# Remove the doc subpackages as we don't need them -find %{_rpmdir} -name "*doc*.rpm" -delete -%endif - autoreconf -vif %configure \ @@ -336,11 +191,7 @@ autoreconf -vif %endif %if 0%{?fedora} || 0%{?rhel} >= 8 --with-tirpc \ - --without-gtk2 \ - --without-gtkmm \ -%if 0%{?bundle_gtk3mm} - --without-gtkmm3 \ -%endif + --with-gtk4 \ %else --without-tirpc \ --without-gtk3 \ @@ -354,54 +205,6 @@ sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool %install export DONT_STRIP=1 -%if 0%{?bundle_gtkmm3} -set -e -function install_rpms_to_current_dir() { - PACKAGE_RPM=$(eval echo $1) - PACKAGE_DIR=%{_rpmdir} - - echo "install_rpms_to_current_dir() for $PACKAGE_DIR/$PACKAGE_RPM" - if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then - # Hack for tps tests - ARCH_STR=%{_arch} - %ifarch %{ix86} - ARCH_STR="i?86" - %endif - PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR" - fi - - for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM) - do - echo "$package" - rpm2cpio "$package" | cpio -ivdu - done -} - -pushd %{buildroot} -# Install only what we need in runtime -install_rpms_to_current_dir atkmm-2.28.4-*.rpm -install_rpms_to_current_dir cairomm-1.14.5-*.rpm -install_rpms_to_current_dir glibmm2.4-2.66*.rpm -install_rpms_to_current_dir gtkmm3.0-3.24.8*.rpm -install_rpms_to_current_dir libsigc++20-2.12.1*.rpm -install_rpms_to_current_dir pangomm-2.46.4*.rpm -popd - -# clean the created bundled rpms if there are any -rm -rf %{_srcrpmdir}/libsigc++20*.src.rpm -find %{_rpmdir} -name "libsigc++20*.rpm" -delete -rm -rf %{_srcrpmdir}/glibmm2.4*.src.rpm -find %{_rpmdir} -name "glibmm2.4*.rpm" -delete -rm -rf %{_srcrpmdir}/atkmm*.src.rpm -find %{_rpmdir} -name "atkmm*.rpm" -delete -rm -rf %{_srcrpmdir}/cairomm*.src.rpm -find %{_rpmdir} -name "cairomm*.rpm" -delete -rm -rf %{_srcrpmdir}/pangomm*.src.rpm -find %{_rpmdir} -name "pangomm*.rpm" -delete -rm -rf %{_srcrpmdir}/gtkmm*.src.rpm -find %{_rpmdir} -name "gtkmm*.rpm" -delete -%endif - %make_install # Remove exec bit from config files @@ -582,19 +385,6 @@ fi %{_libdir}/%{name}/plugins/vmusr/ %{_unitdir}/run-vmblock\x2dfuse.mount -%if 0%{?bundle_gtkmm3} -%{bundled_install_path}/share/doc/ -%{bundled_install_path}/share/licenses/ -%{bundled_install_path}/%{_lib}/libatkmm* -%{bundled_install_path}/%{_lib}/libcairomm* -%{bundled_install_path}/%{_lib}/libgdkmm* -%{bundled_install_path}/%{_lib}/libgiomm* -%{bundled_install_path}/%{_lib}/libglibmm* -%{bundled_install_path}/%{_lib}/libgtkmm* -%{bundled_install_path}/%{_lib}/libpangomm* -%{bundled_install_path}/%{_lib}/libsigc* -%endif - %files sdmp %{_libdir}/%{name}/plugins/vmsvc/libserviceDiscovery.so %{_libdir}/%{name}/serviceDiscovery @@ -622,6 +412,12 @@ fi %{_bindir}/vmware-vgauth-smoketest %changelog +* Mon Aug 03 2026 Evgenii Kolesnikov - 13.1.0-1 +- Rebase to 13.1.0 [RHEL-180878] +- Switch to GTK4 and drop bundled gtkmm3 stack +- Resolves: RHEL-180878 + ([ESXi][RHEL10] open-vm-tools version 13.1.0 has been released - please rebase) + * Mon Feb 16 2026 Bo Yang - 13.0.10-1 - Rebase to 13.0.10 [RHEL-144577] - Resolves: RHEL-144577 diff --git a/sources b/sources index ef725cf..0385c6f 100644 --- a/sources +++ b/sources @@ -1,7 +1 @@ -SHA512 (open-vm-tools-13.0.10-25056151.tar.gz) = c332fd2efb3bc16f2fbb77b7b0d0f4a5bb251b5b4828260bb6cbd96903a38d492f90727dad54ef95e442cf3dcc043032e5581e64e3aee4afb55b9db568a29259 -SHA512 (atkmm-2.28.4-2.el10.src.rpm) = 55953c3221c228433e720b28517c1d23faba1091eb5d81be6522c096b7cf42828eaefe1c330aa2ca0b058188cf4ddd8549463d5817949a5a31efead72097d04e -SHA512 (cairomm-1.14.5-5.el10.src.rpm) = 2d036e83c63dd29a1933542de2274d74b4e63100d90dfd559eabdd00333ac4dd1ca25d810f5180c1c1afd71cd985376e7700beaff4f385132200c75633bfc980 -SHA512 (glibmm2.4-2.66.6-5.el10.src.rpm) = 78cd5d54f1ef9faf2be75f22550b5ec60b55f6c4345df91db95889762f606a0649905077934527b98ba325212bb460a19deadef9eea15bb0c50915e560621d4c -SHA512 (gtkmm3.0-3.24.8-6.el10.src.rpm) = e0e4c3c57cf384928c39b22ae81276ff9f2f34e7aa6914f7d9a3ce65b5e170d7d2edaa61678b8f2ac2e5b16072d796af74ca51ad560b6fc539c7796f318fa6eb -SHA512 (libsigc++20-2.12.1-4.el9.src.rpm) = cdb1800b2413794e83623871b2ca2cade0b444e0a90f6948e1f3f449cd92e10beb3dd76471023f95e4f795693b3ded09bc83f551a54dab065fdee5dbf67e9a40 -SHA512 (pangomm-2.46.4-2.el10.src.rpm) = ab9a723b4a90504101d544335333d9a2ec3c7558101c7005cc69aa05c115f4639d7e4110fb5a856f48e35ea062a5450adddca05f6866263fa8f20b8cecd12e6e +SHA512 (open-vm-tools-13.1.0-25218885.tar.gz) = 07086e2403bc4ab9727822ccfb7152e479f326a1d33c533bdcfb38b5ade8aa2ed3bc244130ab794ad5b99d9a0b3c3caecf0f37e2e1695bd97213f2236490bbb4