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