]> git.pld-linux.org Git - packages/VMware-workstation.git/blob - VMware-workstation.spec
249d2acac235652bce1bf4897e5e59e24a5cfc1a
[packages/VMware-workstation.git] / VMware-workstation.spec
1 #
2 # TODO:
3 #       - Dependencies
4 #       - http://www.vmware.com/support/ws45/doc/devices_linux_kb_ws.html#1040861
5 #
6 # Conditional build:
7 %bcond_with     internal_libs   # internal libs stuff
8 %bcond_without  dist_kernel     # without distribution kernel
9 %bcond_without  smp             # without SMP kernel modules
10 #
11 %include        /usr/lib/rpm/macros.perl
12 #
13 %define         _ver    5.0.0
14 %define         _build  13124
15 %define         _rel    1
16 %define         _urel   90
17 #
18 Summary:        VMware Workstation
19 Summary(pl):    VMware Workstation - wirtualna platforma dla stacji roboczej
20 Name:           VMware-workstation
21 Version:        %{_ver}.%{_build}
22 Release:        %{_rel}
23 License:        custom, non-distributable
24 Group:          Applications/Emulators
25 Source0:        http://download3.vmware.com/software/wkst/%{name}-%{_ver}-%{_build}.tar.gz
26 # NoSource0-md5:        91821fc2649749911f0e2d0ca37b3eb8
27 Source1:        http://knihovny.cvut.cz/ftp/pub/vmware/vmware-any-any-update%{_urel}.tar.gz
28 # Source1-md5:  b8f6498f5275dc8ef3ea2d2e17061ede
29 Source2:        %{name}.init
30 Source3:        %{name}-vmnet.conf
31 Source4:        %{name}.png
32 Source5:        %{name}.desktop
33 Source6:        %{name}-nat.conf
34 Source7:        %{name}-dhcpd.conf
35 Patch0:         %{name}-Makefile.patch
36 Patch1:         %{name}-compat.patch
37 Patch2:         %{name}-run_script.patch
38 NoSource:       0
39 URL:            http://www.vmware.com/
40 BuildRequires:  gcc-c++
41 Requires:       kernel(vmmon) = %{version}-%{_rel}
42 %{?with_dist_kernel:BuildRequires:      kernel-module-build >= 2.6.7}
43 BuildRequires:  rpm-perlprov
44 BuildRequires:  rpmbuild(macros) >= 1.153
45 BuildRequires:  sed >= 4.0
46 ExclusiveArch:  %{ix86}
47 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49 %define         _noautoprovfiles %{_libdir}/vmware/lib/.*\.so.*
50
51 %description
52 VMware Workstation Virtual Platform is a thin software layer that
53 allows multiple guest operating systems to run concurrently on a
54 single standard PC, without repartitioning or rebooting, and without
55 significant loss of performance.
56
57 %description -l pl
58 VMware Workstation Virtual Platform to cienka warstwa oprogramowania
59 pozwalaj±ca na jednoczesne dzia³anie wielu go¶cinnych systemów
60 operacyjnych na jednym zwyk³ym PC, bez repartycjonowania ani
61 rebootowania, bez znacznej utraty wydajno¶ci.
62
63 %package debug
64 Summary:        VMware debug utility
65 Summary(pl):    Narzêdzie VMware do odpluskwiania
66 Group:          Applications/Emulators
67 Requires:       %{name} = %{version}-%{release}
68
69 %description debug
70 VMware debug utility.
71
72 %description debug -l pl
73 Narzêdzie VMware do odpluskwiania.
74
75 %package help
76 Summary:        VMware Workstation help files
77 Summary(pl):    Pliki pomocy dla VMware Workstation
78 Group:          Applications/Emulators
79 Requires:       %{name} = %{version}-%{release}
80 Requires:       mozilla
81
82 %description help
83 VMware Workstation help files.
84
85 %description help -l pl
86 Pliki pomocy dla VMware Workstation.
87
88 %package networking
89 Summary:        VMware networking utilities
90 Summary(pl):    Narzêdzia VMware do obs³ugi sieci
91 Group:          Applications/Emulators
92 Requires:       %{name} = %{version}-%{release}
93 Requires:       kernel(vmnet) = %{version}-%{_rel}
94 Obsoletes:      VMware-workstation-samba
95
96 %description networking
97 VMware networking utilities.
98
99 %description networking -l pl
100 Narzêdzia VMware do obs³ugi sieci.
101
102 %package samba
103 Summary:        VMware SMB utilities
104 Summary(pl):    Narzêdzia VMware do SMB
105 Group:          Applications/Emulators
106 Requires:       %{name} = %{version}-%{release}
107
108 %description samba
109 VMware SMB utilities.
110
111 %description samba -l pl
112 Narzêdzia VMware do SMB.
113
114 %package -n kernel-misc-vmmon
115 Summary:        Kernel module for VMware Workstation
116 Summary(pl):    Modu³ j±dra dla VMware Workstation
117 Release:        %{_rel}@%{_kernel_ver_str}
118 Group:          Base/Kernel
119 Requires(post,postun):  /sbin/depmod
120 Requires:       dev >= 2.9.0-7
121 %if %{with dist_kernel}
122 %requires_releq_kernel_up
123 Requires(postun):       %releq_kernel_up
124 %endif
125 Provides:       kernel(vmmon) = %{version}-%{_rel}
126
127 %description -n kernel-misc-vmmon
128 Kernel modules for VMware Workstation - vmmon.
129
130 %description -n kernel-misc-vmmon -l pl
131 Modu³y j±dra dla VMware Workstation - vmmon.
132
133 %package -n kernel-misc-vmnet
134 Summary:        Kernel module for VMware Workstation
135 Summary(pl):    Modu³ j±dra dla VMware Workstation
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_up
142 Requires(postun):       %releq_kernel_up
143 %endif
144 Provides:       kernel(vmnet) = %{version}-%{_rel}
145
146 %description -n kernel-misc-vmnet
147 Kernel modules for VMware Workstation - vmnet.
148
149 %description -n kernel-misc-vmnet -l pl
150 Modu³y j±dra dla VMware Workstation - vmnet.
151
152 %package -n kernel-smp-misc-vmmon
153 Summary:        SMP kernel module for VMware Workstation
154 Summary(pl):    Modu³ j±dra SMP dla VMware Workstation
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_smp
161 Requires(postun):       %releq_kernel_smp
162 %endif
163 Provides:       kernel(vmmon) = %{version}-%{_rel}
164
165 %description -n kernel-smp-misc-vmmon
166 SMP kernel modules fov VMware Workstation - vmmon-smp.
167
168 %description -n kernel-smp-misc-vmmon -l pl
169 Modu³y j±dra SMP dla VMware Workstation - vmmon-smp.
170
171 %package -n kernel-smp-misc-vmnet
172 Summary:        SMP kernel module for VMware Workstation
173 Summary(pl):    Modu³ j±dra SMP dla VMware Workstation
174 Release:        %{_rel}@%{_kernel_ver_str}
175 Group:          Base/Kernel
176 Requires(post,postun):  /sbin/depmod
177 Requires:       dev >= 2.9.0-7
178 %if %{with dist_kernel}
179 %requires_releq_kernel_smp
180 Requires(postun):       %releq_kernel_smp
181 %endif
182 Provides:       kernel(vmnet) = %{version}-%{_rel}
183
184 %description -n kernel-smp-misc-vmnet
185 SMP kernel module for VMware Workstation - vmnet-smp.
186
187 %description -n kernel-smp-misc-vmnet -l pl
188 Modu³y j±dra SMP dla VMware Workstation - vmnet-smp.
189
190 %prep
191 %setup -q -n vmware-distrib
192 %setup -qDT -n vmware-distrib -a1
193 cd vmware-any-any-update%{_urel}
194 tar xf vmmon.tar
195 tar xf vmnet.tar
196 %patch0 -p0
197 %patch1 -p0
198 cd -
199 %patch2 -p1
200
201 %build
202 sed -i 's:vm_db_answer_LIBDIR:VM_LIBDIR:g;s:vm_db_answer_BINDIR:VM_BINDIR:g' bin/vmware
203
204 cd vmware-any-any-update%{_urel}
205 chmod u+w ../lib/bin/vmware-vmx ../lib/bin-debug/vmware-vmx ../bin/vmnet-bridge
206
207 %if 0
208 rm -f update
209 %{__cc} %{rpmldflags} %{rpmcflags} -o update update.c
210 ./update vmx            ../lib/bin/vmware-vmx
211 ./update vmxdebug       ../lib/bin-debug/vmware-vmx
212 ./update bridge         ../bin/vmnet-bridge
213 %endif
214
215 rm -rf built
216 mkdir built
217 cp -a vmmon-only vmmon-only.clean
218 cp -a vmnet-only vmnet-only.clean
219 for mod in vmmon vmnet ; do
220         for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
221                 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
222                         exit 1
223                 fi
224                 rm -rf $mod-only
225                 cp -a $mod-only.clean $mod-only
226                 cd $mod-only
227                 install -d include/{linux,config}
228                 touch include/config/MARKER
229                 ln -sf %{_kernelsrcdir}/config-$cfg .config
230                 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
231                 ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
232                 %{__make} -C %{_kernelsrcdir} modules \
233                         VMWARE_VER=VME_V5 \
234                         M=$PWD O=$PWD \
235                         VM_KBUILD=26
236                 mv -f $mod.ko ../built/$mod-$cfg.ko
237                 cd -
238         done
239 done
240 cd ..
241
242 %install
243 rm -rf $RPM_BUILD_ROOT
244 install -d \
245         $RPM_BUILD_ROOT%{_sysconfdir}/vmware \
246         $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/{nat,dhcpd} \
247         $RPM_BUILD_ROOT%{_bindir} \
248         $RPM_BUILD_ROOT%{_libdir}/vmware/bin \
249         $RPM_BUILD_ROOT%{_mandir} \
250         $RPM_BUILD_ROOT%{_pixmapsdir} \
251         $RPM_BUILD_ROOT%{_desktopdir} \
252         $RPM_BUILD_ROOT/etc/rc.d/init.d \
253         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc \
254         $RPM_BUILD_ROOT/var/run/vmware
255
256 cd vmware-any-any-update%{_urel}
257 install built/vmmon-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
258         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmmon.ko
259 install built/vmnet-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
260         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmnet.ko
261 %if %{with smp} && %{with dist_kernel}
262 install built/vmmon-smp.ko \
263         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vmmon.ko
264 install built/vmnet-smp.ko \
265         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vmnet.ko
266 %endif
267 cd -
268
269 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vmnet
270 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet.conf
271 install %{SOURCE4} $RPM_BUILD_ROOT%{_pixmapsdir}
272 install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
273 install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf
274 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
275
276 touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases
277 touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases~
278
279 install bin/*-* $RPM_BUILD_ROOT%{_bindir}
280 install lib/bin/vmware-vmx $RPM_BUILD_ROOT%{_libdir}/vmware/bin
281
282 #cp -r  lib/{bin-debug,config,floppies,help*,isoimages,licenses,messages,smb,xkeymap} \
283 cp -r   lib/{bin-debug,config,floppies,help*,isoimages,licenses,messages,xkeymap} \
284         $RPM_BUILD_ROOT%{_libdir}/vmware
285
286 cp -r   man/* $RPM_BUILD_ROOT%{_mandir}
287 gunzip  $RPM_BUILD_ROOT%{_mandir}/man?/*.gz
288
289 cat > $RPM_BUILD_ROOT%{_sysconfdir}/vmware/locations <<EOF
290 VM_BINDIR=%{_bindir}
291 VM_LIBDIR=%{_libdir}/vmware
292 EOF
293
294 %if %{with internal_libs}
295 install bin/vmware $RPM_BUILD_ROOT%{_bindir}
296 install lib/bin/vmware $RPM_BUILD_ROOT%{_libdir}/vmware/bin
297 cp -r   lib/lib $RPM_BUILD_ROOT%{_libdir}/vmware
298 %else
299 install lib/bin/vmware $RPM_BUILD_ROOT%{_bindir}
300 %endif
301
302 %clean
303 rm -rf $RPM_BUILD_ROOT
304
305 %post networking
306 /sbin/chkconfig --add vmnet
307 if [ -r /var/lock/subsys/vmnet ]; then
308         /etc/rc.d/init.d/vmnet restart >&2
309 else
310         echo "Run \"/etc/rc.d/init.d/vmnet start\" to start VMware networking service."
311 fi
312
313 %preun networking
314 if [ "$1" = "0" ]; then
315         if [ -r /var/lock/subsys/vmnet ]; then
316                 /etc/rc.d/init.d/vmnet stop >&2
317         fi
318         /sbin/chkconfig --del vmnet
319 fi
320
321 %post   -n kernel-misc-vmmon
322 %depmod %{_kernel_ver}
323
324 %postun -n kernel-misc-vmmon
325 %depmod %{_kernel_ver}
326
327 %post   -n kernel-misc-vmnet
328 %depmod %{_kernel_ver}
329
330 %postun -n kernel-misc-vmnet
331 %depmod %{_kernel_ver}
332
333 %post   -n kernel-smp-misc-vmmon
334 %depmod %{_kernel_ver}smp
335
336 %postun -n kernel-smp-misc-vmmon
337 %depmod %{_kernel_ver}smp
338
339 %post   -n kernel-smp-misc-vmnet
340 %depmod %{_kernel_ver}smp
341
342 %postun -n kernel-smp-misc-vmnet
343 %depmod %{_kernel_ver}smp
344
345 %files
346 %defattr(644,root,root,755)
347 %doc doc/* lib/configurator/vmnet-{dhcpd,nat}.conf
348 %dir %{_sysconfdir}/vmware
349 %{_sysconfdir}/vmware/locations
350 %attr(755,root,root) %{_bindir}/vmware
351 %attr(755,root,root) %{_bindir}/vmware-loop
352 %attr(755,root,root) %{_bindir}/vmware-mount.pl
353 %attr(755,root,root) %{_bindir}/vmware-vdiskmanager
354 %dir %{_libdir}/vmware
355 %dir %{_libdir}/vmware/bin
356 # warning: SUID !!!
357 %attr(4755,root,root) %{_libdir}/vmware/bin/vmware-vmx
358 %{_libdir}/vmware/config
359 %{_libdir}/vmware/floppies
360 %{_libdir}/vmware/isoimages
361 %if %{with internal_libs}
362 %attr(755,root,root) %{_libdir}/vmware/bin/vmware
363 %{_libdir}/vmware/lib
364 %attr(755,root,root) %{_libdir}/vmware/lib/wrapper-gtk24.sh
365 %endif
366 %{_libdir}/vmware/licenses
367 %dir %{_libdir}/vmware/messages
368 %{_libdir}/vmware/messages/en
369 %lang(ja) %{_libdir}/vmware/messages/ja
370 %{_libdir}/vmware/xkeymap
371 %{_mandir}/man1/*
372 %attr(1777,root,root) %dir /var/run/vmware
373 %{_pixmapsdir}/*.png
374 %{_desktopdir}/%{name}.desktop
375
376 %files debug
377 %defattr(644,root,root,755)
378 %dir %{_libdir}/vmware/bin-debug
379 # warning: SUID !!!
380 %attr(4755,root,root) %{_libdir}/vmware/bin-debug/vmware-vmx
381
382 %files help
383 %defattr(644,root,root,755)
384 %{_libdir}/vmware/help*
385
386 %files networking
387 %defattr(644,root,root,755)
388 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet.conf
389 %attr(754,root,root) /etc/rc.d/init.d/vmnet
390 %attr(755,root,root) %{_bindir}/vmnet-bridge
391 %attr(755,root,root) %{_bindir}/vmnet-dhcpd
392 %attr(755,root,root) %{_bindir}/vmnet-natd
393 %attr(755,root,root) %{_bindir}/vmnet-netifup
394 %attr(755,root,root) %{_bindir}/vmnet-sniffer
395 %attr(755,root,root) %{_bindir}/vmware-ping
396 %dir %{_sysconfdir}/vmware/vmnet8
397 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
398 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/nat/nat.conf
399 %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases*
400
401 %if 0
402 %files samba
403 %defattr(644,root,root,755)
404 %doc lib/configurator/vmnet-smb.conf
405 %attr(755,root,root) %{_bindir}/vmware-nmbd
406 %attr(755,root,root) %{_bindir}/vmware-smbd
407 %attr(755,root,root) %{_bindir}/vmware-smbpasswd
408 %attr(755,root,root) %{_bindir}/vmware-smbpasswd.bin
409 %{_libdir}/vmware/smb
410 %endif
411
412 %files -n kernel-misc-vmmon
413 %defattr(644,root,root,755)
414 /lib/modules/%{_kernel_ver}/misc/vmmon.ko*
415
416 %files -n kernel-misc-vmnet
417 %defattr(644,root,root,755)
418 /lib/modules/%{_kernel_ver}/misc/vmnet.ko*
419
420 %if %{with smp} && %{with dist_kernel}
421 %files  -n kernel-smp-misc-vmmon
422 %defattr(644,root,root,755)
423 /lib/modules/%{_kernel_ver}smp/misc/vmmon.ko*
424
425 %files  -n kernel-smp-misc-vmnet
426 %defattr(644,root,root,755)
427 /lib/modules/%{_kernel_ver}smp/misc/vmnet.ko*
428 %endif
This page took 0.642667 seconds and 2 git commands to generate.