]> git.pld-linux.org Git - packages/VMware-player.git/blob - VMware-player.spec
- updated pl for modules
[packages/VMware-player.git] / VMware-player.spec
1 # TODO
2 # - sync modules -pl
3 # Conditional build:
4 %bcond_without  dist_kernel     # without distribution kernel
5 %bcond_without  kernel          # don't build kernel modules
6 %bcond_without  userspace       # don't build userspace utilities
7 %bcond_with     internal_libs   # internal libs stuff
8 %bcond_with     verbose         # verbose build (V=1)
9
10 %if %{without kernel}
11 %undefine       with_dist_kernel
12 %endif
13 %ifarch %{x8664}
14 %undefine       with_userspace
15 %endif
16
17 %define         ver             3.0.0
18 %define         buildid 203739
19 %define         rel             0.1
20
21 # point to some working url
22 %define         download_url    %{nil}
23
24 Summary:        VMware player
25 Summary(pl.UTF-8):      VMware player - wirtualna platforma dla stacji roboczej
26 Name:           VMware-player
27 Version:        %{ver}.%{buildid}
28 Release:        %{rel}
29 License:        custom, non-distributable
30 Group:          Applications/Emulators
31 # https://www.vmware.com/go/downloadplayer/
32 Source0:        %{download_url}VMware-Player-%{ver}-%{buildid}.i386.bundle
33 # NoSource0-md5:        1c273da70347a381dc685b5fdf922e7d
34 NoSource:       0
35 Source1:        %{download_url}VMware-Player-%{ver}-%{buildid}.x86_64.bundle
36 # NoSource1-md5:        cf8ac6a75e4fd51a8c9c527a594f5ffc
37 NoSource:       1
38 Patch0:         installer.patch
39 URL:            http://www.vmware.com/
40 %{?with_dist_kernel:BuildRequires:      kernel%{_alt_kernel}-module-build >= 3:2.6.7}
41 BuildRequires:  rpmbuild(macros) >= 1.268
42 BuildRequires:  sed >= 4.0
43 Requires:       atk
44 Requires:       cairo
45 Requires:       cairomm
46 Requires:       curl-libs >= 7.19.7-2
47 Requires:       expat
48 Requires:       fontconfig-libs
49 Requires:       freetype
50 Requires:       glib2
51 Requires:       glibmm
52 Requires:       gtk+2
53 Requires:       gtkmm
54 Requires:       gtkmm-atk
55 Requires:       libaio
56 Requires:       libarchive
57 Requires:       libart_lgpl
58 Requires:       libgcc
59 Requires:       libpng
60 Requires:       librsvg
61 Requires:       libsexy
62 Requires:       libsexymm
63 Requires:       libsigc++
64 Requires:       libstdc++
65 Requires:       libview >= 0.5.5-2
66 Requires:       libxml2
67 Requires:       openssl >= 0.9.7
68 Requires:       pango
69 Requires:       pangomm
70 Requires:       xorg-lib-libXau
71 Requires:       xorg-lib-libXcomposite
72 Requires:       xorg-lib-libXcursor
73 Requires:       xorg-lib-libXdamage
74 Requires:       xorg-lib-libXdmcp
75 Requires:       xorg-lib-libXfixes
76 Requires:       xorg-lib-libXft
77 Requires:       xorg-lib-libXinerama
78 Requires:       xorg-lib-libXrandr
79 Requires:       xorg-lib-libXrender
80 ExclusiveArch:  %{ix86} %{x8664}
81 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
82
83 %define         _noautoprovfiles %{_libdir}/vmware/lib/.*\.so.*
84
85 %description
86 VMware Player Virtual Platform is a thin software layer that allows
87 multiple guest operating systems to run concurrently on a single
88 standard PC, without repartitioning or rebooting, and without
89 significant loss of performance.
90
91 %description -l pl.UTF-8
92 VMware Player Virtual Platform to cienka warstwa oprogramowania
93 pozwalająca na jednoczesne działanie wielu gościnnych systemów
94 operacyjnych na jednym zwykłym PC, bez repartycjonowania ani
95 rebootowania, bez znacznej utraty wydajności.
96
97 %package debug
98 Summary:        VMware debug utility
99 Summary(pl.UTF-8):      Narzędzie VMware do odpluskwiania
100 Group:          Applications/Emulators
101 Requires:       %{name} = %{version}-%{release}
102
103 %description debug
104 VMware debug utility.
105
106 %description debug -l pl.UTF-8
107 Narzędzie VMware do odpluskwiania.
108
109 %package help
110 Summary:        VMware Player help files
111 Summary(pl.UTF-8):      Pliki pomocy dla VMware Player
112 Group:          Applications/Emulators
113 Requires:       %{name} = %{version}-%{release}
114
115 %description help
116 VMware Player help files.
117
118 %description help -l pl.UTF-8
119 Pliki pomocy dla VMware Player.
120
121 %package networking
122 Summary:        VMware networking utilities
123 Summary(pl.UTF-8):      Narzędzia VMware do obsługi sieci
124 Group:          Applications/Emulators
125 Requires(post,preun):   /sbin/chkconfig
126 Requires:       %{name} = %{version}-%{release}
127 Requires:       rc-scripts
128 Obsoletes:      VMware-Player-samba
129
130 %description networking
131 VMware networking utilities.
132
133 %description networking -l pl.UTF-8
134 Narzędzia VMware do obsługi sieci.
135
136 %package -n kernel%{_alt_kernel}-misc-vmci
137 Summary:        VMware Virtual Machine Communication Interface (VMCI)
138 Summary(pl.UTF-8):      VMCI (Virtual Machine Communication Interface) - interfejs komunikacyjny VMware
139 Release:        %{rel}@%{_kernel_ver_str}
140 Group:          Base/Kernel
141 Requires(post,postun):  /sbin/depmod
142 Requires:       dev >= 2.9.0-7
143 %if %{with dist_kernel}
144 %requires_releq_kernel
145 Requires(postun):       %releq_kernel
146 %endif
147
148 %description -n kernel%{_alt_kernel}-misc-vmci
149 VMware Virtual Machine Communication Interface (VMCI).
150
151 %description -n kernel%{_alt_kernel}-misc-vmci -l pl.UTF-8
152 Moduł jądra Linuksa będący interfejsem komunikacyjnym VMware (VMCI -
153 Virtual Machine Communication Interface).
154
155 %package -n kernel%{_alt_kernel}-misc-vmblock
156 Summary:        VMware Blocking File System
157 Summary(pl.UTF-8):      Moduł jądra dla VMware Player
158 Release:        %{rel}@%{_kernel_ver_str}
159 Group:          Base/Kernel
160 Requires(post,postun):  /sbin/depmod
161 Requires:       dev >= 2.9.0-7
162 %if %{with dist_kernel}
163 %requires_releq_kernel
164 Requires(postun):       %releq_kernel
165 %endif
166
167 %description -n kernel%{_alt_kernel}-misc-vmblock
168 VMware Blocking File System.
169
170 %description -n kernel%{_alt_kernel}-misc-vmblock -l pl.UTF-8
171 Moduły jądra dla VMware Player - vmblock.
172
173 %package -n kernel%{_alt_kernel}-misc-vmmon
174 Summary:        VMware Virtual Machine Monitor
175 Summary(pl.UTF-8):      Moduł jądra dla VMware Player
176 Release:        %{rel}@%{_kernel_ver_str}
177 Group:          Base/Kernel
178 Requires(post,postun):  /sbin/depmod
179 Requires:       dev >= 2.9.0-7
180 %if %{with dist_kernel}
181 %requires_releq_kernel
182 Requires(postun):       %releq_kernel
183 %endif
184
185 %description -n kernel%{_alt_kernel}-misc-vmmon
186 VMware Virtual Machine Monitor.
187
188 %description -n kernel%{_alt_kernel}-misc-vmmon -l pl.UTF-8
189 Moduły jądra dla VMware Player - vmmon.
190
191 %package -n kernel%{_alt_kernel}-misc-vmnet
192 Summary:        VMware Virtual Networking Driver
193 Summary(pl.UTF-8):      Moduł jądra dla VMware Player
194 Release:        %{rel}@%{_kernel_ver_str}
195 Group:          Base/Kernel
196 Requires(post,postun):  /sbin/depmod
197 Requires:       dev >= 2.9.0-7
198 %if %{with dist_kernel}
199 %requires_releq_kernel
200 Requires(postun):       %releq_kernel
201 %endif
202
203 %description -n kernel%{_alt_kernel}-misc-vmnet
204 VMware Virtual Networking Driver.
205
206 %description -n kernel%{_alt_kernel}-misc-vmnet -l pl.UTF-8
207 Moduły jądra dla VMware Player - vmnet.
208
209 %package -n kernel%{_alt_kernel}-misc-vsock
210 Summary:        VMware Virtual Socket Family
211 Summary(pl.UTF-8):      Obsługa Virtual Socket Family - rodziny gniazd wirtualnych VMware
212 Release:        %{rel}@%{_kernel_ver_str}
213 Group:          Base/Kernel
214 Requires(post,postun):  /sbin/depmod
215 Requires:       dev >= 2.9.0-7
216 %if %{with dist_kernel}
217 %requires_releq_kernel
218 Requires(postun):       %releq_kernel
219 %endif
220 Requires:       kernel%{_alt_kernel}-misc-vmci = %{version}-%{rel}@%{_kernel_ver_str}
221
222 %description -n kernel%{_alt_kernel}-misc-vsock
223 VMware Virtual Socket Family.
224
225 %description -n kernel%{_alt_kernel}-misc-vsock -l pl.UTF-8
226 Moduł jądra Linuksa obsługujący rodzinę gniazd wirtualnych VMware
227 (Virtual Socket Family).
228
229 %prep
230 %setup -qcT
231 %ifarch %{ix86}
232 export SOURCE=%{SOURCE0}
233 %endif
234 %ifarch %{x8664}
235 export SOURCE=%{SOURCE1}
236 %endif
237
238 # extract installer shell blob
239 %{__sed} -ne '1,/^exit/{s,$0,$SOURCE,;p}' $SOURCE > install.sh
240 %{__sed} -i -e "2iSOURCE=$SOURCE" install.sh
241 %patch0 -p1
242 chmod a+x install.sh
243
244 ./install.sh --extract bundles
245
246 cd bundles/vmware-player-app/lib/modules
247 %{__tar} xf source/vmblock.tar
248 %{__tar} xf source/vmci.tar
249 %{__tar} xf source/vmmon.tar
250 %{__tar} xf source/vmnet.tar
251 %{__tar} xf source/vsock.tar
252 mv vmmon-only/linux/driver.c{,.dist}
253 mv vmnet-only/hub.c{,.dist}
254 mv vmnet-only/driver.c{,.dist}
255 rm -rf binary # unusable
256 cd -
257
258 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
259
260 %build
261 %if %{with kernel}
262 cd bundles/vmware-player-app/lib/modules
263
264 %build_kernel_modules -C vmblock-only -m vmblock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}
265 %build_kernel_modules -C vmci-only -m vmci SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}
266 %build_kernel_modules -C vmmon-only -m vmmon SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} <<'EOF'
267 if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then
268         sed -e '/pollQueueLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(pollQueueLock)/' \
269                 -e '/timerLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(timerLock)/' \
270         linux/driver.c.dist > linux/driver.c
271 else
272         cat linux/driver.c.dist > linux/driver.c
273 fi
274 EOF
275
276 %build_kernel_modules -C vmnet-only -m vmnet SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} <<'EOF'
277 if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then
278         sed -e 's/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(vnetHubLock)/' \
279                  hub.c.dist > hub.c
280         sed -e 's/RW_LOCK_UNLOCKED/RW_LOCK_UNLOCKED(vnetPeerLock)/' \
281                 driver.c.dist > driver.c
282 else
283         cat hub.c.dist > hub.c
284         cat driver.c.dist > driver.c
285 fi
286 EOF
287
288 cp -a vmci-only/Module.symvers vsock-only
289 %build_kernel_modules -C vsock-only -m vsock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} -c
290 %endif
291
292 %install
293 rm -rf $RPM_BUILD_ROOT
294 %if %{with kernel}
295 %install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmblock-only/vmblock -d misc
296 %install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmci-only/vmci -d misc
297 %install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmmon-only/vmmon -d misc
298 %install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmnet-only/vmnet -d misc
299 %install_kernel_modules -m bundles/vmware-player-app/lib/modules/vsock-only/vsock -d misc
300 %endif
301
302 %clean
303 rm -rf $RPM_BUILD_ROOT
304
305 %post   -n kernel%{_alt_kernel}-misc-vmblock
306 %depmod %{_kernel_ver}
307
308 %postun -n kernel%{_alt_kernel}-misc-vmblock
309 %depmod %{_kernel_ver}
310
311 %post   -n kernel%{_alt_kernel}-misc-vmci
312 %depmod %{_kernel_ver}
313
314 %postun -n kernel%{_alt_kernel}-misc-vmci
315 %depmod %{_kernel_ver}
316
317 %post   -n kernel%{_alt_kernel}-misc-vmmon
318 %depmod %{_kernel_ver}
319
320 %postun -n kernel%{_alt_kernel}-misc-vmmon
321 %depmod %{_kernel_ver}
322
323 %post   -n kernel%{_alt_kernel}-misc-vmnet
324 %depmod %{_kernel_ver}
325
326 %postun -n kernel%{_alt_kernel}-misc-vmnet
327 %depmod %{_kernel_ver}
328
329 %post   -n kernel%{_alt_kernel}-misc-vsock
330 %depmod %{_kernel_ver}
331
332 %postun -n kernel%{_alt_kernel}-misc-vsock
333 %depmod %{_kernel_ver}
334
335 %if %{with userspace}
336 %files
337 %defattr(644,root,root,755)
338 %endif
339
340 %if %{with kernel}
341 %files -n kernel%{_alt_kernel}-misc-vmblock
342 %defattr(644,root,root,755)
343 /lib/modules/%{_kernel_ver}/misc/vmblock.ko*
344
345 %files -n kernel%{_alt_kernel}-misc-vmci
346 %defattr(644,root,root,755)
347 /lib/modules/%{_kernel_ver}/misc/vmci.ko*
348
349 %files -n kernel%{_alt_kernel}-misc-vmmon
350 %defattr(644,root,root,755)
351 /lib/modules/%{_kernel_ver}/misc/vmmon.ko*
352
353 %files -n kernel%{_alt_kernel}-misc-vmnet
354 %defattr(644,root,root,755)
355 /lib/modules/%{_kernel_ver}/misc/vmnet.ko*
356
357 %files -n kernel%{_alt_kernel}-misc-vsock
358 %defattr(644,root,root,755)
359 /lib/modules/%{_kernel_ver}/misc/vsock.ko*
360 %endif
This page took 0.102672 seconds and 3 git commands to generate.