]> git.pld-linux.org Git - packages/VMware-player.git/blame - VMware-player.spec
- up to 2.0.3
[packages/VMware-player.git] / VMware-player.spec
CommitLineData
3082a3b1 1#
c744b566 2# Conditional build:
3%bcond_without dist_kernel # without distribution kernel
4%bcond_without kernel # don't build kernel modules
c744b566 5%bcond_without userspace # don't build userspace utilities
c744b566 6%bcond_with internal_libs # internal libs stuff
7%bcond_with verbose # verbose build (V=1)
8#
9%include /usr/lib/rpm/macros.perl
c744b566 10
397503c2
ER
11%if %{without kernel}
12%undefine with_dist_kernel
13%endif
c744b566 14%ifarch %{x8664}
15%undefine with_userspace
16%endif
17#
33400f6e 18%define ver 2.0.3
19%define buildid 80004
397503c2
ER
20%define urel 115
21%define ccver %(rpm -q --qf '%{V}' gcc)
171d2608 22%define _rel 0.13
c744b566 23#
24Summary: VMware player
ae690285 25Summary(pl.UTF-8): VMware player - wirtualna platforma dla stacji roboczej
c744b566 26Name: VMware-player
397503c2 27Version: %{ver}.%{buildid}
c744b566 28Release: %{_rel}
29License: custom, non-distributable
30Group: Applications/Emulators
397503c2 31Source0: http://download3.vmware.com/software/vmplayer/%{name}-%{ver}-%{buildid}.i386.tar.gz
33400f6e 32# NoSource0-md5:
6f6022e1 33NoSource: 0
397503c2 34Source1: http://download3.vmware.com/software/vmplayer/%{name}-%{ver}-%{buildid}.x86_64.tar.gz
33400f6e 35# NoSource1-md5:
6f6022e1 36NoSource: 1
397503c2 37Source2: http://knihovny.cvut.cz/ftp/pub/vmware/vmware-any-any-update%{urel}.tar.gz
c4faee42 38# Source2-md5: ab33ff7a799fee77f0f4ba5667cd4b9a
c744b566 39Source3: %{name}-vmnet.conf
40Source4: %{name}.png
41Source5: %{name}.desktop
42Source6: %{name}-nat.conf
43Source7: %{name}-dhcpd.conf
a0a85295 44Source8: %{name}.init
c744b566 45Patch0: %{name}-Makefile.patch
46Patch1: %{name}-run_script.patch
c744b566 47URL: http://www.vmware.com/
7116706d 48%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.7}
452a70f0 49BuildRequires: libstdc++-devel
c744b566 50BuildRequires: rpm-perlprov
51BuildRequires: rpmbuild(macros) >= 1.268
52BuildRequires: sed >= 4.0
c744b566 53Requires: libgnomecanvasmm
54Requires: libview >= 0.5.5-2
4b4af15f 55Requires: openssl >= 0.9.7
b9c0b061 56Requires(post,postun): desktop-file-utils
c744b566 57ExclusiveArch: %{ix86} %{x8664}
58BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
59
60%define _noautoprovfiles %{_libdir}/vmware/lib/.*\.so.*
61
62%description
63VMware Player Virtual Platform is a thin software layer that allows
64multiple guest operating systems to run concurrently on a single
65standard PC, without repartitioning or rebooting, and without
66significant loss of performance.
67
8cef0267 68%description -l pl.UTF-8
c744b566 69VMware Player Virtual Platform to cienka warstwa oprogramowania
8cef0267
JR
70pozwalająca na jednoczesne działanie wielu gościnnych systemów
71operacyjnych na jednym zwykłym PC, bez repartycjonowania ani
72rebootowania, bez znacznej utraty wydajności.
c744b566 73
74%package debug
75Summary: VMware debug utility
ae690285 76Summary(pl.UTF-8): Narzędzie VMware do odpluskwiania
c744b566 77Group: Applications/Emulators
78Requires: %{name} = %{version}-%{release}
79
80%description debug
81VMware debug utility.
82
8cef0267
JR
83%description debug -l pl.UTF-8
84Narzędzie VMware do odpluskwiania.
c744b566 85
86%package help
87Summary: VMware Player help files
ae690285 88Summary(pl.UTF-8): Pliki pomocy dla VMware Player
c744b566 89Group: Applications/Emulators
90Requires: %{name} = %{version}-%{release}
c744b566 91
92%description help
93VMware Player help files.
94
8cef0267 95%description help -l pl.UTF-8
c744b566 96Pliki pomocy dla VMware Player.
97
98%package networking
99Summary: VMware networking utilities
ae690285 100Summary(pl.UTF-8): Narzędzia VMware do obsługi sieci
c744b566 101Group: Applications/Emulators
102Requires(post,preun): /sbin/chkconfig
103Requires: %{name} = %{version}-%{release}
c744b566 104Requires: rc-scripts
105Obsoletes: VMware-Player-samba
106
107%description networking
108VMware networking utilities.
109
8cef0267
JR
110%description networking -l pl.UTF-8
111Narzędzia VMware do obsługi sieci.
c744b566 112
7eb646b8 113%package -n kernel%{_alt_kernel}-misc-vmmon
c744b566 114Summary: Kernel module for VMware Player
ae690285 115Summary(pl.UTF-8): Moduł jądra dla VMware Player
c744b566 116Release: %{_rel}@%{_kernel_ver_str}
117Group: Base/Kernel
118Requires(post,postun): /sbin/depmod
119Requires: dev >= 2.9.0-7
120%if %{with dist_kernel}
a0a85295 121%requires_releq_kernel
122Requires(postun): %releq_kernel
c744b566 123%endif
124Provides: kernel(vmmon) = %{version}-%{_rel}
125
7eb646b8 126%description -n kernel%{_alt_kernel}-misc-vmmon
c744b566 127Kernel modules for VMware Player - vmmon.
128
8cef0267
JR
129%description -n kernel%{_alt_kernel}-misc-vmmon -l pl.UTF-8
130Moduły jądra dla VMware Player - vmmon.
c744b566 131
7eb646b8 132%package -n kernel%{_alt_kernel}-misc-vmnet
c744b566 133Summary: Kernel module for VMware Player
ae690285 134Summary(pl.UTF-8): Moduł jądra dla VMware Player
c744b566 135Release: %{_rel}@%{_kernel_ver_str}
136Group: Base/Kernel
137Requires(post,postun): /sbin/depmod
138Requires: dev >= 2.9.0-7
139%if %{with dist_kernel}
a0a85295 140%requires_releq_kernel
141Requires(postun): %releq_kernel
c744b566 142%endif
143Provides: kernel(vmnet) = %{version}-%{_rel}
144
7eb646b8 145%description -n kernel%{_alt_kernel}-misc-vmnet
c744b566 146Kernel modules for VMware Player - vmnet.
147
8cef0267
JR
148%description -n kernel%{_alt_kernel}-misc-vmnet -l pl.UTF-8
149Moduły jądra dla VMware Player - vmnet.
c744b566 150
c744b566 151%prep
a0a85295 152%setup -q -n vmware-player-distrib -a2
397503c2 153cd vmware-any-any-update%{urel}
c744b566 154tar xf vmmon.tar
155tar xf vmnet.tar
156cp -a vmmon-only{,.clean}
157cp -a vmnet-only{,.clean}
158sed -e 's/filter x86_64%/filter x86_64% amd64% ia64%/' \
159 -i vmnet-only.clean/Makefile.kernel
160cd -
161
397503c2
ER
162%patch0 -p1
163%patch1 -p1
164
165# will never use these
166rm -f lib/libconf/lib/gtk-2.0/2.10.0/engines/*.a
167rm -f lib/libconf/lib/gtk-2.0/2.10.0/immodules/*.a
168rm -f lib/libconf/lib/gtk-2.0/2.10.0/loaders/*.a
169rm -f lib/libconf/lib/pango/1.5.0/modules/*.a
170
171%{__sed} -i -e 's#/build/.*/libconf/#%{_libdir}/vmware/libconf/#' \
172 lib/libconf/etc/gtk-2.0/{gdk-pixbuf.loaders,gtk.immodules} \
173 lib/libconf/etc/pango/{pango.modules,pangorc}
174
175# typo?
176%{__sed} -i -e 's#/etc/pango/pango/pangox.aliases#/etc/pango/pangox.aliases#' \
177 lib/libconf/etc/pango/pangorc
178
c744b566 179%build
180sed -i 's:vm_db_answer_LIBDIR:VM_LIBDIR:g;s:vm_db_answer_BINDIR:VM_BINDIR:g' bin/vmplayer
181
397503c2 182cd vmware-any-any-update%{urel}
c744b566 183chmod u+w ../lib/bin/vmware-vmx ../lib/bin-debug/vmware-vmx ../bin/vmnet-bridge
184
0a20f560 185# hack until new any-any-update version available
8c9de6a7 186sed -i -e 's/#define.*VMMON_VERSION_V6.*/#define VMMON_VERSION_V6 (167 << 16 | 0)/g' vmmon-only.clean/include/iocontrols_compat.h
0a20f560 187
c744b566 188%if %{with kernel}
189rm -rf built
190mkdir built
191
c744b566 192for mod in vmmon vmnet ; do
f91e9f90 193 for cfg in %{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}; do
c744b566 194 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
195 exit 1
196 fi
197 rm -rf $mod-only
198 cp -a $mod-only.clean $mod-only
199 cd $mod-only
200 install -d o/include/linux
201 ln -sf %{_kernelsrcdir}/config-$cfg o/.config
202 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
203 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
204 if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then
205 sed -e '/pollQueueLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(pollQueueLock)/' \
206 -e '/timerLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(timerLock)/' \
207 -i ../vmmon-only/linux/driver.c
208 sed -e 's/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(vnetHubLock)/' \
209 -i ../vmnet-only/hub.c
210 sed -e 's/RW_LOCK_UNLOCKED/RW_LOCK_UNLOCKED(vnetPeerLock)/' \
211 -i ../vmnet-only/driver.c
212 fi
213 %if %{with dist_kernel}
8bbcec96 214 %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
c744b566 215 %else
216 install -d o/include/config
217 touch o/include/config/MARKER
218 ln -sf %{_kernelsrcdir}/scripts o/scripts
219 %endif
220 %{__make} -C %{_kernelsrcdir} modules \
221 VMWARE_VER=VME_V5 \
222 SRCROOT=$PWD \
223 M=$PWD O=$PWD/o \
224 VM_KBUILD=26 \
225 %{?with_verbose:V=1} \
397503c2 226 VM_CCVER=%{ccver}
c744b566 227 mv -f $mod.ko ../built/$mod-$cfg.ko
228 cd -
229 done
230done
c744b566 231%endif
232
233%install
234rm -rf $RPM_BUILD_ROOT
235
236%if %{with userspace}
237install -d \
7fc500cc 238 $RPM_BUILD_ROOT%{_sysconfdir}/vmware \
c744b566 239 $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/{nat,dhcpd} \
240 $RPM_BUILD_ROOT%{_bindir} \
88741604 241 $RPM_BUILD_ROOT%{_libdir}/vmware/{bin,lib,share/pixmaps} \
c744b566 242 $RPM_BUILD_ROOT%{_mandir} \
243 $RPM_BUILD_ROOT%{_pixmapsdir} \
a9f9d85a 244 $RPM_BUILD_ROOT%{_iconsdir}/hicolor \
c744b566 245 $RPM_BUILD_ROOT%{_desktopdir} \
246 $RPM_BUILD_ROOT/etc/rc.d/init.d \
247 $RPM_BUILD_ROOT/var/run/vmware
248%endif
249
250%if %{with kernel}
7fc500cc 251install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d
252echo "options vmmon vmversion=16" > $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{name}-vmmon.conf
4b4af15f 253
c744b566 254install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
255
397503c2 256cd vmware-any-any-update%{urel}/built
f91e9f90 257install vmmon* $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmmon.ko
258install vmnet* $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmnet.ko
c744b566 259cd -
260%endif
261
262%if %{with userspace}
a0a85295 263install %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/vmnet
c744b566 264install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet.conf
265install %{SOURCE4} $RPM_BUILD_ROOT%{_pixmapsdir}
266install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
267install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf
268install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
269
270touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases
271touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases~
272
a9f9d85a
AM
273cp -a lib/share/icons/hicolor/* $RPM_BUILD_ROOT%{_iconsdir}/hicolor
274
c744b566 275install lib/share/pixmaps/* $RPM_BUILD_ROOT%{_libdir}/vmware/share/pixmaps
35a6bee6 276install doc/EULA $RPM_BUILD_ROOT%{_libdir}/vmware/share/EULA.txt
c744b566 277
278install bin/*-* $RPM_BUILD_ROOT%{_bindir}
279install lib/bin/vmware-vmx $RPM_BUILD_ROOT%{_libdir}/vmware/bin
88741604 280install lib/lib/libvmwarebase.so.0/libvmwarebase.so.0 $RPM_BUILD_ROOT%{_libdir}
281install lib/lib/libvmwareui.so.0/libvmwareui.so.0 $RPM_BUILD_ROOT%{_libdir}
c744b566 282
283cp -r lib/{bin-debug,config,help*,messages,xkeymap} \
284 $RPM_BUILD_ROOT%{_libdir}/vmware
285
286cat > $RPM_BUILD_ROOT%{_sysconfdir}/vmware/locations <<EOF
287VM_BINDIR=%{_bindir}
288VM_LIBDIR=%{_libdir}/vmware
289EOF
290
291%if %{with internal_libs}
292install bin/vmplayer $RPM_BUILD_ROOT%{_bindir}
293install lib/bin/vmplayer $RPM_BUILD_ROOT%{_libdir}/vmware/bin
397503c2
ER
294cp -a lib/lib/* $RPM_BUILD_ROOT%{_libdir}/vmware/lib
295cp -a lib/libconf $RPM_BUILD_ROOT%{_libdir}/vmware
c744b566 296%else
297install lib/bin/vmplayer $RPM_BUILD_ROOT%{_bindir}
40eb876e 298install -d $RPM_BUILD_ROOT%{_libdir}/vmware/lib/lib{crypto,ssl}.so.0.9.7
171d2608
MWP
299ln -s %{_libdir}/libcrypto.so.0.9.7 $RPM_BUILD_ROOT%{_libdir}/vmware/lib/libcrypto.so.0.9.7/libcrypto.so.0.9.7
300ln -s %{_libdir}/libssl.so.0.9.7 $RPM_BUILD_ROOT%{_libdir}/vmware/lib/libssl.so.0.9.7/libssl.so.0.9.7
c744b566 301%endif
19788557 302
303# remove not needed files
304rm -rf $RPM_BUILD_ROOT%{_bindir}/vmware-{config,uninstall}.pl $RPM_BUILD_ROOT%{_iconsdir}/hicolor/index.theme
c744b566 305%endif
306
307%clean
308rm -rf $RPM_BUILD_ROOT
309
397503c2 310%post
b9c0b061
PZ
311%update_icon_cache hicolor
312%if %{with internal_libs}
397503c2
ER
313gdk-pixbuf-query-loaders %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/*.so \
314 > %{_libdir}/vmware/libconf/etc/gtk-2.0/gdk-pixbuf.loaders
315gtk-query-immodules-2.0 %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/immodules/*.so \
316 > %{_libdir}/vmware/libconf/etc/gtk-2.0/gtk.immodules
317pango-querymodules %{_libdir}/vmware/libconf/lib/pango/1.5.0/modules/*.so \
318 > %{_libdir}/vmware/libconf/etc/pango/pango.modules
319%endif
320
b9c0b061
PZ
321%postun
322%update_icon_cache hicolor
323
c744b566 324%post networking
325/sbin/chkconfig --add vmnet
326%service vmnet restart "VMware networking service"
327
328%preun networking
329if [ "$1" = "0" ]; then
330 %service vmnet stop
331 /sbin/chkconfig --del vmnet
332fi
333
7eb646b8 334%post -n kernel%{_alt_kernel}-misc-vmmon
c744b566 335%depmod %{_kernel_ver}
336
7eb646b8 337%postun -n kernel%{_alt_kernel}-misc-vmmon
c744b566 338%depmod %{_kernel_ver}
339
7eb646b8 340%post -n kernel%{_alt_kernel}-misc-vmnet
c744b566 341%depmod %{_kernel_ver}
342
7eb646b8 343%postun -n kernel%{_alt_kernel}-misc-vmnet
c744b566 344%depmod %{_kernel_ver}
345
c744b566 346%if %{with userspace}
347%files
348%defattr(644,root,root,755)
349%doc doc/* lib/configurator/vmnet-{dhcpd,nat}.conf
350%dir %{_sysconfdir}/vmware
351%{_sysconfdir}/vmware/locations
352%attr(755,root,root) %{_bindir}/vmplayer
152da996
AM
353%attr(755,root,root) %{_bindir}/vmware-acetool
354%attr(755,root,root) %{_bindir}/vm-support
88741604 355%attr(755,root,root) %{_libdir}/libvmwarebase.so.*
356%attr(755,root,root) %{_libdir}/libvmwareui.so.*
c744b566 357%dir %{_libdir}/vmware
358%dir %{_libdir}/vmware/bin
359# warning: SUID !!!
360%attr(4755,root,root) %{_libdir}/vmware/bin/vmware-vmx
397503c2 361%dir %{_libdir}/vmware/lib
c744b566 362%{_libdir}/vmware/config
363%if %{with internal_libs}
40eb876e 364%attr(755,root,root) %{_libdir}/vmware/bin/vmplayer
397503c2 365%attr(755,root,root) %{_libdir}/vmware/lib/lib*
c744b566 366%attr(755,root,root) %{_libdir}/vmware/lib/wrapper-gtk24.sh
397503c2
ER
367
368%dir %{_libdir}/vmware/libconf
369%dir %{_libdir}/vmware/libconf/etc
370%{_libdir}/vmware/libconf/etc/fonts
371%{_libdir}/vmware/libconf/etc/gtk-2.0
372%{_libdir}/vmware/libconf/etc/pango
373%dir %{_libdir}/vmware/libconf/lib
374%dir %{_libdir}/vmware/libconf/lib/gtk-2.0
375%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0
376%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/engines
377%attr(755,root,root) %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/engines/*.so
378%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/immodules
379%attr(755,root,root) %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/immodules/*.so
380%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/loaders
381%attr(755,root,root) %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/*.so
382%dir %{_libdir}/vmware/libconf/lib/pango
383%dir %{_libdir}/vmware/libconf/lib/pango/1.5.0
384%dir %{_libdir}/vmware/libconf/lib/pango/1.5.0/modules
385%attr(755,root,root) %{_libdir}/vmware/libconf/lib/pango/1.5.0/modules/*.so
386%else
387# package old openssl (buggy but needed to work)
388%dir %{_libdir}/vmware/lib/libcrypto.so.0.9.7
389%attr(755,root,root) %{_libdir}/vmware/lib/libcrypto.so.0.9.7/libcrypto.so.0.9.7
a36c3d9b 390%dir %{_libdir}/vmware/lib/libssl.so.0.9.7
71989034 391%attr(755,root,root) %{_libdir}/vmware/lib/libssl.so.0.9.7/libssl.so.0.9.7
c744b566 392%endif
393%dir %{_libdir}/vmware/messages
88741604 394%lang(en) %{_libdir}/vmware/messages/en
c744b566 395%lang(ja) %{_libdir}/vmware/messages/ja
396%{_libdir}/vmware/share
397%{_libdir}/vmware/xkeymap
398%attr(1777,root,root) %dir /var/run/vmware
a9f9d85a
AM
399%{_iconsdir}/hicolor/*/*/*.png
400%{_iconsdir}/hicolor/*/*/*.svg
c744b566 401%{_pixmapsdir}/*.png
402%{_desktopdir}/%{name}.desktop
403
404%files debug
405%defattr(644,root,root,755)
406%dir %{_libdir}/vmware/bin-debug
407# warning: SUID !!!
408%attr(4755,root,root) %{_libdir}/vmware/bin-debug/vmware-vmx
409
410%files help
411%defattr(644,root,root,755)
412%{_libdir}/vmware/help*
413
414%files networking
415%defattr(644,root,root,755)
416%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet.conf
417%attr(754,root,root) /etc/rc.d/init.d/vmnet
418%attr(755,root,root) %{_bindir}/vmnet-bridge
152da996 419%attr(755,root,root) %{_bindir}/vmnet-detect
c744b566 420%attr(755,root,root) %{_bindir}/vmnet-dhcpd
421%attr(755,root,root) %{_bindir}/vmnet-natd
422%attr(755,root,root) %{_bindir}/vmnet-netifup
423%attr(755,root,root) %{_bindir}/vmnet-sniffer
424%attr(755,root,root) %{_bindir}/vmware-ping
425%dir %{_sysconfdir}/vmware/vmnet8
88741604 426%dir %{_sysconfdir}/vmware/vmnet8/dhcpd
427%dir %{_sysconfdir}/vmware/vmnet8/nat
c744b566 428%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
429%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/nat/nat.conf
430%verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases*
431
c744b566 432%endif
433
434%if %{with kernel}
7eb646b8 435%files -n kernel%{_alt_kernel}-misc-vmmon
c744b566 436%defattr(644,root,root,755)
7fc500cc 437%{_sysconfdir}/modprobe.d/%{name}-vmmon.conf
c744b566 438/lib/modules/%{_kernel_ver}/misc/vmmon.ko*
439
7eb646b8 440%files -n kernel%{_alt_kernel}-misc-vmnet
c744b566 441%defattr(644,root,root,755)
442/lib/modules/%{_kernel_ver}/misc/vmnet.ko*
443
c744b566 444%endif
This page took 0.146416 seconds and 4 git commands to generate.