]> git.pld-linux.org Git - packages/open-vm-tools.git/blame - open-vm-tools.spec
- fix building with gcc 5.x
[packages/open-vm-tools.git] / open-vm-tools.spec
CommitLineData
8bb2c909
JB
1#
2# Conditional build:
3%bcond_without kernel # without kernel modules
8bb2c909 4%bcond_without userspace # without userspace package
ab695592
JR
5%bcond_with verbose # verbose build (V=1)
6
ab695592
JR
7# The goal here is to have main, userspace, package built once with
8# simple release number, and only rebuild kernel packages with kernel
9# version as part of release number, without the need to bump release
10# with every kernel change.
11%if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
12%{error:kernel and userspace cannot be built at the same time on PLD builders}
13exit 1
14%endif
15
fcf94128
JR
16%if %{without userspace}
17# nothing to be placed to debuginfo package
18%define _enable_debug_packages 0
ab695592
JR
19%endif
20
49979e33 21%define snap 2011.10.26
ba6f6322 22%define subver %(echo %{snap} | tr -d .)
4241d495
JR
23%define ver 9.4.6
24%define rev 1770165
0406df1b 25%define rel 13
74404c53 26%define pname open-vm-tools
3eb519e0 27%define modsrc modules/linux
53ac4062 28Summary: VMWare guest utilities
d4ade506 29Summary(pl.UTF-8): Narzędzia dla systemu-gościa dla VMware
13e08991 30Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
de2750b2 31Version: %{ver}
ab695592 32#Release: 0.%{subver}.%{rel}%{?with_kernel:@%{_kernel_ver_str}}
13e08991 33Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
cdaec346 34Epoch: 1
4aca9bae 35License: GPL
d4ade506 36Group: Applications/System
0c6e0b9c 37Source0: http://downloads.sourceforge.net/project/open-vm-tools/open-vm-tools/stable-9.4.x/%{pname}-%{ver}-%{rev}.tar.gz
4241d495 38# Source0-md5: 3969daf1535d34e1c5f0c87a779b7642
74404c53
JR
39#Source0: http://downloads.sourceforge.net/open-vm-tools/open-vm-tools/%{snap}/%{pname}-%{snap}-%{rev}.tar.gz
40Source1: %{pname}-packaging
41Source2: %{pname}-modprobe.d
42Source3: %{pname}-init
43Source4: %{pname}-vmware-user.desktop
01d05bd9 44Patch0: %{pname}-linux-3.10.patch
4a655ebc 45Patch2: %{pname}-linux-3.12.patch
1f82966c 46Patch3: %{pname}-linux-3.14.patch
d3ec898f 47Patch4: %{pname}-linux-3.15.patch
4241d495 48Patch5: %{pname}-linux-3.16.patch
a74b146f 49Patch6: %{pname}-linux-3.18.3.patch
0406df1b 50Patch7: gcc5.patch
8bb2c909 51URL: http://open-vm-tools.sourceforge.net/
fcf94128 52BuildRequires: rpmbuild(macros) >= 1.701
8bb2c909 53%if %{with userspace}
8367fe7d 54BuildRequires: autoconf
d474f0cc 55BuildRequires: doxygen
bf05980f 56BuildRequires: glib2-devel >= 2.6.0
b2bc54b9 57BuildRequires: gtk+2-devel
66ec7164 58BuildRequires: gtkmm-devel >= 2.4.0
22bd0e3c 59BuildRequires: libdnet-devel
bf05980f 60BuildRequires: libfuse-devel
22bd0e3c 61BuildRequires: libicu-devel
d474f0cc 62BuildRequires: libnotify-devel
b2bc54b9 63BuildRequires: libpng-devel
64BuildRequires: libstdc++-devel
f497b93a 65BuildRequires: pam-devel
22bd0e3c 66BuildRequires: pkgconfig
83f92d13 67BuildRequires: procps-devel >= 1:3.3.3-2
22bd0e3c 68BuildRequires: uriparser-devel
d474f0cc 69BuildRequires: xorg-lib-libSM-devel
22bd0e3c 70BuildRequires: xorg-lib-libX11-devel
ca69b5c9 71BuildRequires: xorg-lib-libXScrnSaver-devel
22bd0e3c 72BuildRequires: xorg-lib-libXinerama-devel
73BuildRequires: xorg-lib-libXrandr-devel
74BuildRequires: xorg-lib-libXtst-devel
f4a5aeb8 75Requires: ethtool
85f364e1 76Requires: libdnet
77Requires: libicu
84b6db26
SP
78Obsoletes: kernel-misc-pvscsi
79Obsoletes: kernel-misc-vmmemctl
8bb2c909 80%endif
fcf94128 81%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
1ef93063 82ExclusiveArch: %{ix86} %{x8664} %{?with_kernel:x32}
74404c53 83BuildRoot: %{tmpdir}/%{pname}-%{version}-root-%(id -u -n)
4aca9bae 84
85%description
d4ade506 86VMWare guest utilities.
4aca9bae 87
88%description -l pl.UTF-8
d4ade506 89Narzędzia dla systemu-gościa dla VMware.
4aca9bae 90
abc2bafd
SP
91%package devel
92Summary: Header files for open-vm-tools
93Summary(pl.UTF-8): Pliki nagłówkowe open-vm-tools
94Group: Development/Libraries
74404c53 95Requires: %{pname} = %{epoch}:%{version}-%{release}
abc2bafd
SP
96
97%description devel
98Header files for open-vm-tools.
99
100%description devel -l pl.UTF-8
101Pliki nagłówkowe open-vm-tools.
102
54721943
MB
103%package static
104Summary: Static open-vm-tools libraries
105Summary(pl.UTF-8): Statyczne biblioteki open-vm-tools
106Group: Development/Libraries
74404c53 107Requires: %{pname}-devel = %{epoch}:%{version}-%{release}
54721943
MB
108
109%description static
110Static open-vm-tools libraries.
111
112%description static -l pl.UTF-8
113Statyczne biblioteki open-vm-tools.
114
f4a5aeb8 115%package gui
ca69b5c9 116Summary: VMware guest utitities
f4a5aeb8 117Summary(pl.UTF-8): Narzędzia dla systemu-gościa dla VMware.
118Group: Applications/System
74404c53 119Requires: %{pname} = %{epoch}:%{version}-%{release}
f4a5aeb8 120
121%description gui
122VMWare guest utilities. This package contains GUI part of tools.
123
124%description gui -l pl.UTF-8
ca69b5c9
ER
125Narzędzia dla systemu-gościa dla VMware. Ten pakiet zawiera graficzną
126część narzędzi.
f4a5aeb8 127
ab695592
JR
128%define kernel_pkg()\
129%package -n kernel%{_alt_kernel}-misc-vmblock\
130Summary: VMware vmblock Linux kernel module\
131Summary(pl.UTF-8): Moduł jądra Linuksa VMware vmblock\
132Release: %{rel}@%{_kernel_ver_str}\
133Group: Base/Kernel\
134Requires(post,postun): /sbin/depmod\
135Requires: dev >= 2.9.0-7\
ab695592
JR
136%requires_releq_kernel\
137Requires(postun): %releq_kernel\
ab695592
JR
138\
139%description -n kernel%{_alt_kernel}-misc-vmblock\
140VMware vmblock Linux kernel module.\
141\
142%description -n kernel%{_alt_kernel}-misc-vmblock -l pl.UTF-8\
143Moduł jądra Linuksa VMware vmblock.\
144\
145%package -n kernel%{_alt_kernel}-misc-vmci\
146Summary: VMware vmci Linux kernel module\
147Summary(pl.UTF-8): Moduł jądra Linuksa VMware vmci\
148Release: %{rel}@%{_kernel_ver_str}\
149Group: Base/Kernel\
150Requires(post,postun): /sbin/depmod\
151Requires: dev >= 2.9.0-7\
ab695592
JR
152%requires_releq_kernel\
153Requires(postun): %releq_kernel\
ab695592
JR
154\
155%description -n kernel%{_alt_kernel}-misc-vmci\
156VMware vmci Linux kernel module.\
157\
158%description -n kernel%{_alt_kernel}-misc-vmci -l pl.UTF-8\
159Moduł jądra Linuksa VMware vmci.\
160\
161%package -n kernel%{_alt_kernel}-misc-vmhgfs\
162Summary: VMware vmhgfs Linux kernel module\
163Summary(pl.UTF-8): Moduł jądra Linuksa VMware vmhgfs\
164Release: %{rel}@%{_kernel_ver_str}\
165Group: Base/Kernel\
166Requires(post,postun): /sbin/depmod\
167Requires: dev >= 2.9.0-7\
ab695592
JR
168%requires_releq_kernel\
169Requires(postun): %releq_kernel\
ab695592
JR
170\
171%description -n kernel%{_alt_kernel}-misc-vmhgfs\
172VMware vmhgfs Linux kernel module.\
173\
174%description -n kernel%{_alt_kernel}-misc-vmhgfs -l pl.UTF-8\
175Moduł jądra Linuksa VMware vmhgfs.\
176\
177%package -n kernel%{_alt_kernel}-misc-vmsync\
178Summary: VMware vmsync Linux kernel module\
179Summary(pl.UTF-8): Moduł jądra Linuksa VMware vmsync\
180Release: %{rel}@%{_kernel_ver_str}\
181Group: Base/Kernel\
182Requires(post,postun): /sbin/depmod\
183Requires: dev >= 2.9.0-7\
ab695592
JR
184%requires_releq_kernel\
185Requires(postun): %releq_kernel\
ab695592
JR
186\
187%description -n kernel%{_alt_kernel}-misc-vmsync\
188VMware vmsync Linux kernel module.\
189\
190%description -n kernel%{_alt_kernel}-misc-vmsync -l pl.UTF-8\
191Moduł jądra Linuksa VMware vmsync.\
192\
193%package -n kernel%{_alt_kernel}-misc-vmxnet\
194Summary: VMware vmxnet Linux kernel module\
195Summary(pl.UTF-8): Moduł jądra Linuksa VMware vmxnet\
196Release: %{rel}@%{_kernel_ver_str}\
197Group: Base/Kernel\
198Requires(post,postun): /sbin/depmod\
199Requires: dev >= 2.9.0-7\
ab695592
JR
200%requires_releq_kernel\
201Requires(postun): %releq_kernel\
ab695592
JR
202\
203%description -n kernel%{_alt_kernel}-misc-vmxnet\
204VMware vmxnet Linux kernel module.\
205\
206%description -n kernel%{_alt_kernel}-misc-vmxnet -l pl.UTF-8\
207Moduł jądra Linuksa VMware vmxnet.\
208\
209%package -n kernel%{_alt_kernel}-misc-vsock\
210Summary: VMware vsock Linux kernel module\
211Summary(pl.UTF-8): Moduł jądra Linuksa VMware vsock\
212Release: %{rel}@%{_kernel_ver_str}\
213Group: Base/Kernel\
214Requires(post,postun): /sbin/depmod\
215Requires: dev >= 2.9.0-7\
ab695592
JR
216%requires_releq_kernel\
217Requires(postun): %releq_kernel\
ab695592
JR
218\
219%description -n kernel%{_alt_kernel}-misc-vsock\
220VMware vsock Linux kernel module.\
221\
222%description -n kernel%{_alt_kernel}-misc-vsock -l pl.UTF-8\
223Moduł jądra Linuksa VMware vsock.\
224\
225%if %{with kernel}\
226%files -n kernel%{_alt_kernel}-misc-vmblock\
227%defattr(644,root,root,755)\
228/lib/modules/%{_kernel_ver}/misc/vmblock.ko*\
229\
230%files -n kernel%{_alt_kernel}-misc-vmhgfs\
231%defattr(644,root,root,755)\
232/lib/modules/%{_kernel_ver}/misc/vmhgfs.ko*\
233\
aa47ad04 234%if %{_kernel_version_code} < %{_kernel_version_magic 3 10 0}\
ab695592
JR
235%files -n kernel%{_alt_kernel}-misc-vmci\
236%defattr(644,root,root,755)\
237/lib/modules/%{_kernel_ver}/misc/vmci.ko*\
238\
239%files -n kernel%{_alt_kernel}-misc-vmsync\
240%defattr(644,root,root,755)\
241/lib/modules/%{_kernel_ver}/misc/vmsync.ko*\
242%endif\
243\
244%files -n kernel%{_alt_kernel}-misc-vmxnet\
245%defattr(644,root,root,755)\
246/lib/modules/%{_kernel_ver}/misc/vmxnet.ko*\
247\
248%files -n kernel%{_alt_kernel}-misc-vsock\
249%defattr(644,root,root,755)\
250/lib/modules/%{_kernel_ver}/misc/vsock.ko*\
251%endif\
252\
253%post -n kernel%{_alt_kernel}-misc-vmblock\
254%depmod %{_kernel_ver}\
255\
256%post -n kernel%{_alt_kernel}-misc-vmci\
257%depmod %{_kernel_ver}\
258\
259%post -n kernel%{_alt_kernel}-misc-vmhgfs\
260%depmod %{_kernel_ver}\
261\
262%post -n kernel%{_alt_kernel}-misc-vmsync\
263%depmod %{_kernel_ver}\
264\
265%post -n kernel%{_alt_kernel}-misc-vmxnet\
266%depmod %{_kernel_ver}\
267\
268%post -n kernel%{_alt_kernel}-misc-vsock\
269%depmod %{_kernel_ver}\
270%{nil}
271
272%define build_kernel_pkg()\
273export OVT_SOURCE_DIR=$PWD\
274%build_kernel_modules -C %{modsrc}/vmblock -m vmblock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}\
275%build_kernel_modules -C %{modsrc}/vmhgfs -m vmhgfs SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}\
276%build_kernel_modules -C %{modsrc}/vmxnet -m vmxnet SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}\
277%build_kernel_modules -C %{modsrc}/vsock -m vsock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}\
278%install_kernel_modules -D installed -m %{modsrc}/vmblock/vmblock -d misc\
279%install_kernel_modules -D installed -m %{modsrc}/vmhgfs/vmhgfs -d misc\
280%install_kernel_modules -D installed -m %{modsrc}/vmxnet/vmxnet -d misc\
281%install_kernel_modules -D installed -m %{modsrc}/vsock/vsock -d misc\
aa47ad04 282%if %{_kernel_version_code} < %{_kernel_version_magic 3 10 0}\
ab695592
JR
283%build_kernel_modules -C %{modsrc}/vmci -m vmci SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}\
284%build_kernel_modules -C %{modsrc}/vmsync -m vmsync SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}\
285%install_kernel_modules -D installed -m %{modsrc}/vmci/vmci -d misc\
286%install_kernel_modules -D installed -m %{modsrc}/vmsync/vmsync -d misc\
287%endif\
288%{nil}
289
fcf94128 290%{?with_kernel:%{expand:%create_kernel_packages}}
22bd0e3c 291
4aca9bae 292%prep
74404c53
JR
293#setup -q -n %{pname}-%{snap}-%{rev}
294%setup -q -n %{pname}-%{ver}-%{rev}
01d05bd9 295%patch0 -p1
4a655ebc 296%patch2 -p1
1f82966c 297%patch3 -p1
d3ec898f 298%patch4 -p1
4241d495 299%patch5 -p1
a74b146f 300%patch6 -p1
0406df1b 301%patch7 -p1
d54a43a0 302
22bd0e3c 303cp %{SOURCE1} packaging
35a35852 304%{__sed} -i -e 's|##{BUILD_OUTPUT}##|build|' docs/api/doxygen.conf
4aca9bae 305
306%build
fcf94128 307%{?with_kernel:%{expand:%build_kernel_packages}}
22bd0e3c 308
8bb2c909 309%if %{with userspace}
1c445e6b 310rm -rf autom4te.cache
4241d495
JR
311install -d config
312%{__libtoolize}
313%{__aclocal} -I m4
314%{__automake}
a95329f5 315%{__autoconf}
83f92d13 316export CUSTOM_PROCPS_NAME=procps
22bd0e3c 317%configure2_13 \
318 --without-kernel-modules
279724ba 319%{__make} \
0406df1b
JR
320 CFLAGS="%{rpmcflags} -Wno-unused-but-set-variable" \
321 CXXFLAGS="%{rpmcxxflags} -std=c++11 -Wno-unused-but-set-variable"
8bb2c909 322%endif
22bd0e3c 323
4aca9bae 324%install
325rm -rf $RPM_BUILD_ROOT
4aca9bae 326
8bb2c909 327%if %{with kernel}
ab695592
JR
328install -d $RPM_BUILD_ROOT
329cp -a installed/* $RPM_BUILD_ROOT
8bb2c909 330%endif
22bd0e3c 331
8bb2c909 332%if %{with userspace}
4aca9bae 333%{__make} install \
334 DESTDIR=$RPM_BUILD_ROOT
335
22bd0e3c 336rm $RPM_BUILD_ROOT/sbin/mount.vmhgfs
337ln -sf %{_sbindir}/mount.vmhgfs $RPM_BUILD_ROOT/sbin/mount.vmhgfs
54721943 338rm -f $RPM_BUILD_ROOT%{_libdir}/open-vm-tools/plugins/common/*.la
f4a5aeb8 339
340install -d $RPM_BUILD_ROOT/etc/{modprobe.d,rc.d/init.d,xdg/autostart}
74404c53
JR
341cp %{SOURCE2} $RPM_BUILD_ROOT/etc/modprobe.d/%{pname}.conf
342cp %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{pname}
f4a5aeb8 343cp %{SOURCE4} $RPM_BUILD_ROOT/etc/xdg/autostart/vmware-user.desktop
8bb2c909 344%endif
22bd0e3c 345
4aca9bae 346%clean
347rm -rf $RPM_BUILD_ROOT
348
f4a5aeb8 349%post
54721943 350/sbin/ldconfig
f4a5aeb8 351/sbin/chkconfig --add open-vm-tools
352%service open-vm-tools restart "Open Virtual Machine"
353
354%preun
355if [ "$1" = "0" ]; then
356 %service open-vm-tools stop
357 /sbin/chkconfig --del open-vm-tools
358fi
359
ab695592 360%postun -p /sbin/ldconfig
22bd0e3c 361
8bb2c909 362%if %{with userspace}
4aca9bae 363%files
364%defattr(644,root,root,755)
9cb359e3 365%doc AUTHORS ChangeLog NEWS README packaging
66ec7164 366%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/vmtoolsd
22bd0e3c 367%dir /etc/vmware-tools
368%attr(755,root,root) /etc/vmware-tools/*vm-*
53ac4062 369%attr(755,root,root) /etc/vmware-tools/statechange.subr
53ac4062
SP
370%dir /etc/vmware-tools/scripts
371%dir /etc/vmware-tools/scripts/vmware
372%attr(755,root,root) /etc/vmware-tools/scripts/vmware/network
8bb2c909 373%attr(755,root,root) /sbin/mount.vmhgfs
69a345d9 374%attr(755,root,root) %{_bindir}/vmtoolsd
22bd0e3c 375%attr(755,root,root) %{_bindir}/vmware-checkvm
376%attr(755,root,root) %{_bindir}/vmware-hgfsclient
66ec7164 377%attr(755,root,root) %{_bindir}/vmware-rpctool
22bd0e3c 378%attr(755,root,root) %{_bindir}/vmware-toolbox-cmd
22bd0e3c 379%attr(4755,root,root) %{_bindir}/vmware-user-suid-wrapper
380%attr(755,root,root) %{_bindir}/vmware-xferlogs
cd7044b8 381%attr(755,root,root) %{_bindir}/vmware-vmblock-fuse
22bd0e3c 382%attr(755,root,root) %{_sbindir}/mount.vmhgfs
54721943
MB
383%attr(755,root,root) %{_libdir}/libguestlib.so.*.*.*
384%attr(755,root,root) %ghost %{_libdir}/libguestlib.so.0
385%attr(755,root,root) %{_libdir}/libvmtools.so.*.*.*
386%attr(755,root,root) %ghost %{_libdir}/libvmtools.so.0
66d8e69c
JK
387%attr(755,root,root) %{_libdir}/libhgfs.so.*.*.*
388%attr(755,root,root) %ghost %{_libdir}/libhgfs.so.0
f8d4c3d1 389%dir %{_libdir}/open-vm-tools
20e58560
SP
390%dir %{_libdir}/open-vm-tools/plugins
391%dir %{_libdir}/open-vm-tools/plugins/vmsvc
69a345d9 392%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmsvc/libguestInfo.so
69a345d9
SP
393%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmsvc/libpowerOps.so
394%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmsvc/libtimeSync.so
69a345d9 395%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmsvc/libvmbackup.so
df165e11 396%dir %{_libdir}/open-vm-tools/plugins/common
53ac4062
SP
397%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/common/libhgfsServer.so
398%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/common/libvix.so
df165e11 399%dir %{_libdir}/open-vm-tools/plugins/vmusr
53ac4062
SP
400%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmusr/libdesktopEvents.so
401%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmusr/libdndcp.so
69a345d9 402%attr(755,root,root) %{_libdir}/open-vm-tools/plugins/vmusr/libresolutionSet.so
74404c53
JR
403%attr(754,root,root) /etc/rc.d/init.d/%{pname}
404/etc/modprobe.d/%{pname}.conf
27597e09 405%dir %{_datadir}/open-vm-tools
124deaa8
JR
406%dir %{_datadir}/open-vm-tools/messages
407%lang(de) %{_datadir}/open-vm-tools/messages/de
408%lang(ja) %{_datadir}/open-vm-tools/messages/ja
83f92d13 409%lang(ko) %{_datadir}/open-vm-tools/messages/ko
124deaa8 410%lang(zh_CN) %{_datadir}/open-vm-tools/messages/zh_CN
f4a5aeb8 411
54721943
MB
412%files devel
413%defattr(644,root,root,755)
414%attr(755,root,root) %{_libdir}/libguestlib.so
415%attr(755,root,root) %{_libdir}/libvmtools.so
53ac4062
SP
416%attr(755,root,root) %{_libdir}/libhgfs.so
417%dir %{_includedir}/vmGuestLib
418%{_includedir}/vmGuestLib/includeCheck.h
419%{_includedir}/vmGuestLib/vmGuestLib.h
420%{_includedir}/vmGuestLib/vmSessionId.h
421%{_includedir}/vmGuestLib/vm_basic_types.h
54721943
MB
422%{_libdir}/libguestlib.la
423%{_libdir}/libvmtools.la
53ac4062
SP
424%{_libdir}/libhgfs.la
425%{_pkgconfigdir}/vmguestlib.pc
54721943
MB
426
427%files static
428%defattr(644,root,root,755)
429%{_libdir}/libguestlib.a
430%{_libdir}/libvmtools.a
53ac4062 431%{_libdir}/libhgfs.a
54721943 432
f4a5aeb8 433%files gui
434%defattr(644,root,root,755)
69a345d9 435%{_sysconfdir}/xdg/autostart/vmware-user.desktop
20c619a7 436%endif
This page took 0.183369 seconds and 4 git commands to generate.