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