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