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