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