Accepting request 226514 from home:mlatimer:branches:Virtualization:VMware

Fixed issues in .changes and .spec, brought back libvmtools0

OBS-URL: https://build.opensuse.org/request/show/226514
OBS-URL: https://build.opensuse.org/package/show/Virtualization:VMware/open-vm-tools?expand=0&rev=256
This commit is contained in:
Tomáš Chvátal 2014-03-26 15:03:45 +00:00 committed by Git OBS Bridge
parent 9deaabefa0
commit eb8e0850ff
7 changed files with 148 additions and 53 deletions

14
g_info_redefine.patch Normal file
View File

@ -0,0 +1,14 @@
diff -uNr open-vm-tools-9.4.0-1280544.orig/lib/include/vmware/tools/log.h open-vm-tools-9.4.0-1280544/lib/include/vmware/tools/log.h
--- open-vm-tools-9.4.0-1280544.orig/lib/include/vmware/tools/log.h 2013-09-23 19:51:10.000000000 +0400
+++ open-vm-tools-9.4.0-1280544/lib/include/vmware/tools/log.h 2014-02-18 10:56:50.368604176 +0400
@@ -134,7 +134,9 @@
*******************************************************************************
*/
-#define g_info(fmt, ...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, fmt, ## __VA_ARGS__)
+#if !defined(g_info)
+# define g_info(fmt, ...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, fmt, ## __VA_ARGS__)
+#endif
/*

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1a004ea1675101fd44cddda299e2e9ac254388769b69f41b7ff5d1797549c8f1
size 3565935

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5d30652eb0f6dc5e930781029c184837e700be5543b6a7116db4c62a6f3ca399
size 3659504

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Tue Mar 17 21:52:29 UTC 2014 - mlatimer@suse.com
- Update to version 9.4.0:
+ Release of open-vm-tools matching vSphere 5.5.
- Remove build dependency on liburiparser (no longer necessary).
- Removed obsolete --disable-unity configure option.
- Use doxygen to generate devel docs.
- Require libprocps for openSUSE 12.3 and above.
- Added CUSTOM_PROCPS_NAME=procps (required for 9.4.0 build).
- Add g_info_redefine.patch: Fix redefine warnings during build.
- Add vmtoolsd.service for use with systemd.
- Drop open-vm-tools.permissions: No longer required.
- Only build kmp for specified distributions, and only require kernel-source
when kernel modules are being built.
- Rename -gui package to -desktop.
-------------------------------------------------------------------
Sat Nov 2 13:40:15 UTC 2013 - dimstar@opensuse.org

View File

@ -1 +0,0 @@
/usr/bin/vmware-user-suid-wrapper root.root 4755

View File

@ -1,7 +1,7 @@
#
# spec file for package open-vm-tools
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2010 Dominique Leuenberger, Amsterdam, Netherlands.
#
# All modifications and additions to the file contributed by third parties
@ -17,11 +17,18 @@
#
# vmhgfs modules doe not build on kernel 3.11
%define with_systemd 1
# vmhgfs modules does not build on kernel 3.11
%if 0%{suse_version} < 1310
%define vmhgfs vmhgfs
%endif
# disable systemd if before 13.1
%if 0%{suse_version} < 1310
%define with_systemd 0
%endif
# exclude AMD PCnet32 LANCE pci.id from Supplements list [bnc#397554]
%define __find_supplements sh -c '/usr/lib/rpm/find-supplements %{name} | grep -v pci:v00001022d00002000'
@ -31,38 +38,44 @@
%endif
%if 0%{?suse_version} <= 1230
# Modules to be built up to openSUSE 12.1, possibly not building on newer versions.
# Modules to be built up to openSUSE 12.3, possibly not building on newer versions.
%define vm_modules1230 vmci vsock vmsync
%endif
# Modules that have to be build up to version 12.2 (Last checked on 2012-02-05 with kernel 3.2.0)
# Modules that have to be build up to version 12.3 (Last checked on 2012-02-05 with kernel 3.2.0)
%define vm_modules %{?vm_modules1230} %{?vmhgfs} %{?vm_modules1210}
# X modules are lower prio upstream and once in a while fail. Offer an easy way to enable/disable them.
%define with_X 1
Name: open-vm-tools
Version: 9.2.3
Version: 9.4.0
Release: 0
%define svn_rev 1031360
%define svn_rev 1280544
Summary: Open Virtual Machine Tools
License: BSD-3-Clause and GPL-2.0 and LGPL-2.1
Group: System/Emulators/PC
Url: http://open-vm-tools.sourceforge.net/
Source: http://sourceforge.net/projects/open-vm-tools/files/open-vm-tools/stable-9.2.x/%{name}-%{version}-%{svn_rev}.tar.gz
Source: http://sourceforge.net/projects/open-vm-tools/files/open-vm-tools/stable-9.4.x/%{name}-%{version}-%{svn_rev}.tar.gz
Source1: vmtoolsd
Source2: vmware-user-autostart.desktop
Source4: open-vm-tools.permissions
Source2: vmtoolsd.service
Source3: vmware-user-autostart.desktop
Source5: vmware-user-autostart-wrapper
Source6: open-vm-tools-modprobe.conf
Source7: tools.conf
Source98: preamble
# PATCH-FIX-UPSTREAM g_info_redefine.patch (RHBZ#1063847)
Patch0: g_info_redefine.patch
BuildRequires: gcc-c++
# don't use pkgconfig(gtk+-2.0) so we can build on SLE
BuildRequires: gtk2-devel
BuildRequires: gtkmm2-devel
# Only require kernel packages if kernel modules are being built
%if "%{?vm_modules}" != " "
BuildRequires: kernel-source
BuildRequires: kernel-syms
%endif
BuildRequires: doxygen
BuildRequires: libdnet-devel
BuildRequires: libicu-devel
BuildRequires: module-init-tools
@ -71,17 +84,17 @@ BuildRequires: update-desktop-files
BuildRequires: xorg-x11-devel
BuildRequires: pkgconfig(fuse)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# liburiparser was not present before 11.0
%if 0%{?suse_version} >= 1100
BuildRequires: liburiparser-devel
# libprocps is required with 12.3 and above
%if 0%{?suse_version} >= 1230
BuildRequires: procps-devel
%endif
BuildRequires: pam-devel
%if 0%{?suse_version} < 1310
Requires: vmware-guest-kmp
%endif
%if "%{?vmhgfs}"
# In order to have access to vmblock-fuse, we do require fuse
Requires: fuse
# Fuse is optional and enables vmblock-fuse
BuildRequires: fuse-devel
%endif
Supplements: modalias(pci:v000015ADd*sv*sd*bc*sc*i*)
Requires(pre): %fillup_prereq
@ -89,10 +102,15 @@ Requires(pre): %insserv_prereq
Requires(pre): permissions
ExclusiveArch: %ix86 x86_64
# Only build KMP on versions below 13.1
%if 0%{?suse_version} < 1310
%suse_kernel_module_package -n vmware-guest -p %{SOURCE98} xen um
%endif
%if %{with_systemd}
%systemd_requires
%endif
%description
Open Virtual Machine Tools (open-vm-tools) are the open source
implementation of VMware Tools. They are a set of guest operating
@ -147,15 +165,19 @@ guests and from guest to guest
%if %{with_X}
%package gui
Summary: Open Virtual Machine Tools - GUI
%package desktop
Summary: User experience components for Open Virtual Machine Tools
Group: System/Emulators/PC
Requires: open-vm-tools
Requires: %{name}%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-gui < %{version}
Provides: %{name}-gui = %{version}
Supplements: packageand(open-vm-tools:xorg-x11-server)
Requires(pre): permissions
%description gui
GUI Toolbox for Open Virtual Machine Tools
%description desktop
This package contains only the user-space programs and libraries of
%{name} that are essential for improved user experience of VMware virtual
machines.
%endif
%package -n libvmtools0
@ -180,6 +202,7 @@ if you intend to create own plugins for vmtoolsd.
chmod -x AUTHORS COPYING ChangeLog NEWS README
# fix for an rpmlint warning regarding wrong line feeds
sed -i -e "s/\r//" README
%patch0 -p1 -b .g_info
%build
# disable warning unused-but-set-variable which will raise error because of -Werror
@ -187,21 +210,20 @@ sed -i -e "s/\r//" README
# (this is because of 'g_static_mutex_init' usage which is now deprecated)
%if 0%{?suse_version} > 1110
export CFLAGS="%{optflags} -Wno-unused-local-typedefs -Wno-unused-but-set-variable -Wno-deprecated-declarations -fPIE"
export CPPFLAGS="%{optflags} -Wno-unused-local-typedefs -Wno-unused-but-set-variable -Wno-deprecated-declarations -fPIE"
export CXXFLAGS="%{optflags} -Wno-unused-local-typedefs -Wno-unused-but-set-variable -Wno-deprecated-declarations -fPIE"
%else
export CFLAGS="%{optflags} -Wno-deprecated-declarations -fPIE"
export CPPFLAGS="%{optflags} -Wno-deprecated-declarations -fPIE"
export CXXFLAGS="%{optflags} -Wno-deprecated-declarations -fPIE"
%endif
export LDFLAGS="-pie"
# comments in a continued line seem not to work... shame
# --disable-unity : liburiparser was not present before 11.0
# Required for version 9.4.0
export CUSTOM_PROCPS_NAME=procps
%configure \
%if 0%{?suse_version} < 1140
--disable-unity \
%endif
--without-kernel-modules \
--without-root-privileges \
%if 0%{?suse_version} < 1230
--without-procps \
%endif
%if %{with_X}
--with-x \
%else
@ -211,6 +233,8 @@ export LDFLAGS="-pie"
--disable-static
make
# If a KMP is not being built, flavors_to_build will be undefined and no modules should be built
%if "%{?flavors_to_build}"
TOPDIR=$PWD
cd ..
mkdir -p obj
@ -228,8 +252,11 @@ for flavor in %{flavors_to_build}; do
done
popd
done
%endif
%install
# If a KMP is not being built, flavors_to_build will be undefined and no modules can be installed
%if "%{?flavors_to_build}"
# let's use the kernel's own modules_install routine
export INSTALL_MOD_PATH=%{buildroot}
export INSTALL_MOD_DIR=updates
@ -245,18 +272,31 @@ popd
# fix some rights on the kernel modules, to have a complete -debuginfo package; do not fail if there are no modules left.
chmod u+x %{buildroot}/lib/modules/*/updates/* || :
%endif
%if 0%{?suse_version} > 1110
%make_install
%else
%makeinstall
%endif
# Clean up the *.la files make install put all around
find %{buildroot} -name '*.la' -delete -print
# install the vmtoolsd init script and also it's rcvmtoolsd softlink
# Remove exec bit from config files
chmod a-x %{buildroot}%{_sysconfdir}/pam.d/*
# Remove unnecessary files from packaging
find %{buildroot}%{_libdir} -name '*.la' -delete
rm -fr %{buildroot}%{_defaultdocdir}
rm -fr %{buildroot}/usr/share/doc/open-vm-tools/api
rm -f docs/api/build/html/FreeSans.ttf
# install systemd/sysvinit init scripts and symlinks
%if %{with_systemd}
install -p -m 644 -D %{SOURCE2} %{buildroot}%{_unitdir}/vmtoolsd.service
ln -sf service %{buildroot}%{_sbindir}/rcvmtoolsd
%else
install -D -m 0755 %{SOURCE1} %{buildroot}%{_sysconfdir}/init.d/vmtoolsd
ln -sf ../../etc/init.d/vmtoolsd %{buildroot}%{_sbindir}/rcvmtoolsd
%endif
%if %{with_X}
# vmware-user is started by vmware-user-suid-wrapper by xdg-autostart
@ -264,13 +304,14 @@ ln -sf ../../etc/init.d/vmtoolsd %{buildroot}%{_sbindir}/rcvmtoolsd
# to appear. For this reason we have now a vmware-user-autostart-wrapper
# which checks for /proc/fs/vmblock/dev to appear and then starts vmware-user-suid-wrapper
install -D -m 0755 %{SOURCE5} %{buildroot}%{_bindir}/vmware-user-autostart-wrapper
install -D -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/xdg/autostart/vmware-user-autostart.desktop
install -D -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/xdg/autostart/vmware-user-autostart.desktop
# Install the default tools.conf
install -D -m 0644 %{S:7} %{buildroot}%{_sysconfdir}/vmware-tools/tools.conf
# In case we install vmware-user-suid-wrapper, we need to give it 4755 permissions.
#install -D -m 0644 %%{S:4} %%{buildroot}%%{_sysconfdir}/permissions.d/open-vm-tools
# Remove the 'disable-perl-mon=1' setting if procps is available
%if 0%{?suse_version} > 1220
sed -i '/openSUSE/,+2d' %{buildroot}%{_sysconfdir}/vmware-tools/tools.conf
%endif
# We have our own 'safe' autostart wrapper, which checks for modules to start in autologin mode...
# Thus we drop the 'original' autostartup
@ -280,8 +321,10 @@ rm %{buildroot}%{_sysconfdir}/xdg/autostart/vmware-user.desktop
%suse_update_desktop_file vmware-user-autostart
%endif
# modprobe configuration for vmnics.
# modprobe configuration for vmnics - only include if before SLE-12
%if 0%{?suse_version} < 1315
install -D -m 0644 %{SOURCE6} %{buildroot}%{_sysconfdir}/modprobe.d/50-vmnics.conf
%endif
%if "%{?vmhgfs}"
# fix a link pointing to the buildroot for mount.vmhgfs
@ -290,10 +333,6 @@ install -D -m 0644 %{SOURCE6} %{buildroot}%{_sysconfdir}/modprobe.d/50-vmnics.co
find %{buildroot} -name '*vmhgfs*' -delete -print
%endif
# the script installs some binaries into /usr/share/open-vm-tools which are just some tests.
# So we drop them for the moment. Upstream has been informed about this.
rm -r %{buildroot}%{_datadir}/%{name}
%post
%if 0%{?suse_version} <= 1130
%run_permissions
@ -301,14 +340,18 @@ rm -r %{buildroot}%{_datadir}/%{name}
%set_permissions /usr/bin/vmware-user-suid-wrapper
%endif
/sbin/ldconfig
%if %{with_systemd}
%service_add_post vmtoolsd.service
%else
%{fillup_and_insserv -Y vmtoolsd}
%endif
%if %{with_X}
%verifyscript gui
%verifyscript desktop
%verify_permissions -e /usr/bin/vmware-user-suid-wrapper
%post gui
%post desktop
%if 0%{?suse_version} <= 1130
%run_permissions
%else
@ -318,6 +361,9 @@ rm -r %{buildroot}%{_datadir}/%{name}
%endif
%preun
%if %{with_systemd}
%service_del_preun vmtoolsd.service
%else
# stop service with the old name (if exists) on update (something like %%stop_on_update)
test -n "$FIRST_ARG" || FIRST_ARG=$1
if test "$FIRST_ARG" -ge 1 ; then
@ -327,11 +373,16 @@ if test "$FIRST_ARG" -ge 1 ; then
fi
fi
%stop_on_removal vmtoolsd
%endif
vmware-rpctool "tools.set.version 0" || :
%postun
%if %{with_systemd}
%service_del_postun vmtoolsd.service
%else
%restart_on_update vmtoolsd
%insserv_cleanup
%endif
/sbin/ldconfig
%post -n libvmtools0 -p /sbin/ldconfig
@ -349,9 +400,6 @@ rm -rf %{buildroot}
%dir %{_libdir}/%{name}/plugins
%dir %{_libdir}/%{name}/plugins/common
%dir %{_libdir}/%{name}/plugins/vmsvc
%if %{with_X}
%dir %{_libdir}/%{name}/plugins/vmusr
%endif
%{_libdir}/%{name}/plugins/vmsvc/libguestInfo.so
%{_libdir}/%{name}/plugins/vmsvc/libpowerOps.so
%{_libdir}/%{name}/plugins/vmsvc/libtimeSync.so
@ -362,7 +410,6 @@ rm -rf %{buildroot}
%{_bindir}/vmware-hgfsclient
%{_bindir}/vmware-rpctool
%{_bindir}/vmware-toolbox-cmd
%{_bindir}/vmware-vmblock-fuse
%{_bindir}/vmware-xferlogs
%if "%{?vmhgfs}"
%{_sbindir}/mount.vmhgfs
@ -380,21 +427,27 @@ rm -rf %{buildroot}
%{_sysconfdir}/vmware-tools/suspend-vm-default
%config(noreplace) %{_sysconfdir}/vmware-tools/tools.conf
%{_sysconfdir}/vmware-tools/vm-support
%if 0%{?suse_version} < 1315
%config %{_sysconfdir}/modprobe.d/50-vmnics.conf
%endif
%{_datadir}/%{name}/
%if %{with_systemd}
%{_unitdir}/vmtoolsd.service
%else
%{_sysconfdir}/init.d/vmtoolsd
%{_sysconfdir}/modprobe.d/50-vmnics.conf
%endif
%{_sbindir}/rcvmtoolsd
%exclude %{_libdir}/*.so
%if %{with_X}
%files gui
%files desktop
%defattr(-, root, root)
%{_sysconfdir}/xdg/autostart/vmware-user-autostart.desktop
%verify(not mode) %attr(0755,root,root) %{_bindir}/vmware-user-suid-wrapper
%{_libdir}/%{name}/plugins/vmusr/libdesktopEvents.so
%{_libdir}/%{name}/plugins/vmusr/libdndcp.so
%{_libdir}/%{name}/plugins/vmusr/libresolutionSet.so
%{_libdir}/%{name}/plugins/vmusr/
%{_bindir}/vmware-user-autostart-wrapper
%{_bindir}/vmware-vmblock-fuse
%endif
%files -n libvmtools0
@ -405,6 +458,7 @@ rm -rf %{buildroot}
%files -n libvmtools-devel
%defattr(-,root,root)
%doc docs/api/build/*
%{_includedir}/vmGuestLib
%{_libdir}/*.so
%{_libdir}/pkgconfig/vmguestlib.pc

11
vmtoolsd.service Normal file
View File

@ -0,0 +1,11 @@
[Unit]
Description=Service for virtual machines hosted on VMware
Documentation=http://open-vm-tools.sourceforge.net/about.php
ConditionVirtualization=vmware
[Service]
ExecStart=/usr/bin/vmtoolsd
TimeoutStopSec=5
[Install]
WantedBy=multi-user.target