]>
Commit | Line | Data |
---|---|---|
9101e6ac | 1 | # |
2 | # Conditional build: | |
3 | # _without_dist_kernel - without distribution kernel | |
4 | # _without_smp - without UP kernel modules | |
5 | # _without_up - without SMP kernel modules | |
6 | # | |
1fa2b347 | 7 | |
8 | %define _build 4460 | |
9 | ||
10 | %include /usr/lib/rpm/macros.perl | |
11 | Summary: VMware Workstation | |
12 | #Summary(pl): | |
13 | Name: VMware-workstation | |
14 | Version: 4.0.0 | |
9101e6ac | 15 | Release: %{_build}.2 |
1fa2b347 | 16 | License: custom, non-distributable |
17 | Group: Applications/Emulators | |
18 | Source0: http://vmware-chil.www.conxion.com/software/%{name}-%{version}-%{_build}.tar.gz | |
19 | URL: http://www.vmware.com/ | |
20 | BuildRequires: rpm-perlprov | |
9101e6ac | 21 | BuildRequires: %{kgcc_package} |
22 | Requires: kernel(vmmon) = %{version}-%{_build} | |
23 | Requires: kernel(vmnet) = %{version}-%{_build} | |
24 | %{!?_without_dist_kernel:BuildRequires: kernel-headers} | |
1fa2b347 | 25 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
26 | ||
27 | %description | |
28 | VMware Workstation Virtual Platform is a thin software layer that allows | |
29 | multiple guest operating systems to run concurrently on a single standard | |
30 | PC, without repartitioning or rebooting, and without significant loss | |
31 | of performance. | |
32 | ||
33 | # %description -l pl | |
34 | ||
9101e6ac | 35 | %package -n kernel-misc-vmware_workstation |
36 | Summary: Kernel modules fov VMware Workstation | |
37 | Release: %{release}@@%{_kernel_ver_str} | |
38 | Group: Base/Kernel | |
39 | Provides: kernel(vmmon) = %{version}-%{_build} | |
40 | Provides: kernel(vmnet) = %{version}-%{_build} | |
41 | Requires(post,postun): /sbin/depmod | |
42 | %{!?_without_dist_kernel:%requires_releq_kernel_up} | |
43 | ||
44 | %description -n kernel-misc-vmware_workstation | |
45 | Kernel modules fov VMware Workstation: vmmon.o and vmnet.o. | |
46 | ||
47 | # %description -n kernel-misc-vmware_workstation -l pl | |
48 | ||
49 | %package -n kernel-smp-misc-vmware_workstation | |
50 | Summary: SMP kernel modules fov VMware Workstation | |
51 | Release: %{release}@@%{_kernel_ver_str} | |
52 | Group: Base/Kernel | |
53 | Provides: kernel(vmmon) = %{version}-%{_build} | |
54 | Provides: kernel(vmnet) = %{version}-%{_build} | |
55 | Requires(post,postun): /sbin/depmod | |
56 | %{!?_without_dist_kernel:%requires_releq_kernel_smp} | |
57 | ||
58 | %description -n kernel-smp-misc-vmware_workstation | |
59 | SMP kernel modules fov VMware Workstation: vmmon-smp.o and vmnet-smp.o. | |
60 | ||
61 | # %description -n kernel-smp-misc-vmware_workstation -l pl | |
62 | ||
1fa2b347 | 63 | %prep |
64 | %setup -q -n vmware-distrib | |
65 | tar xf lib/modules/source/vmmon.tar | |
66 | tar xf lib/modules/source/vmnet.tar | |
67 | ||
68 | %build | |
69 | ||
70 | FLAGS="-D__KERNEL__ -DMODULE -Wall -Wstrict-prototypes \ | |
71 | -fomit-frame-pointer -fno-strict-aliasing \ | |
72 | -pipe -fno-strength-reduce %{rpmcflags}" | |
73 | export FLAGS | |
74 | ||
75 | # vmmon | |
9101e6ac | 76 | %if %{?!_without_smp:1}0 |
1fa2b347 | 77 | make -C vmmon-only \ |
78 | HEADER_DIR=%{_kernelsrcdir}/include \ | |
79 | CC_OPTS="$FLAGS -DVMWARE__FIX_IO_APIC_BASE=FIX_IO_APIC_BASE_0 -D__SMP__" \ | |
80 | SUPPORT_SMP=1 | |
81 | mv vmmon-only/driver-*/vmmon-smp-* vmmon-smp.o | |
9101e6ac | 82 | %endif |
1fa2b347 | 83 | |
9101e6ac | 84 | %if %{?!_without_up:1}0 |
85 | make -C vmmon-only clean | |
1fa2b347 | 86 | make -C vmmon-only \ |
87 | HEADER_DIR=%{_kernelsrcdir}/include \ | |
88 | CC_OPTS="$FLAGS -DVMWARE__FIX_IO_APIC_BASE=FIX_IO_APIC_BASE_0" | |
89 | mv vmmon-only/driver-*/vmmon-* vmmon.o | |
9101e6ac | 90 | %endif |
1fa2b347 | 91 | |
92 | # vmnet, makefile passes also -falign-loops=2 -falign-jumps=2 -falign-functions=2 | |
9101e6ac | 93 | %if %{?!_without_smp:1}0 |
1fa2b347 | 94 | make -C vmnet-only \ |
95 | HEADER_DIR=%{_kernelsrcdir}/include \ | |
96 | CFLAGS="$FLAGS "'$(INCLUDE) -D__SMP__' \ | |
97 | SUPPORT_SMP=1 | |
98 | mv vmnet-only/vmnet-smp-* vmnet-smp.o | |
9101e6ac | 99 | %endif |
1fa2b347 | 100 | |
9101e6ac | 101 | %if %{?!_without_up:1}0 |
102 | make -C vmnet-only clean | |
1fa2b347 | 103 | make -C vmnet-only \ |
104 | HEADER_DIR=%{_kernelsrcdir}/include \ | |
105 | CFLAGS="$FLAGS "'$(INCLUDE)' | |
106 | mv vmnet-only/vmnet-up-* vmnet.o | |
9101e6ac | 107 | %endif |
1fa2b347 | 108 | |
109 | %install | |
110 | rm -rf $RPM_BUILD_ROOT | |
111 | install -d \ | |
112 | $RPM_BUILD_ROOT%{_bindir} \ | |
113 | $RPM_BUILD_ROOT%{_sysconfdir} \ | |
114 | $RPM_BUILD_ROOT%{_mandir} \ | |
115 | $RPM_BUILD_ROOT%{_libdir}/vmware \ | |
9101e6ac | 116 | $RPM_BUILD_ROOT%{_datadir}/vmware \ |
117 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc \ | |
118 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc | |
119 | ||
120 | %{?!_without_smp:mv vm*-smp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc} | |
121 | %{?!_without_up: mv vm*.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc} | |
1fa2b347 | 122 | |
123 | cp bin/* $RPM_BUILD_ROOT%{_bindir} | |
124 | cp -r etc $RPM_BUILD_ROOT%{_sysconfdir}/vmware | |
125 | cp -r man/* $RPM_BUILD_ROOT%{_mandir} | |
126 | ||
127 | cp -r lib/{bin*,config*,floppies,isoimages,lib,licenses,messages,smb,xkeymap} \ | |
128 | $RPM_BUILD_ROOT%{_libdir}/vmware | |
129 | ||
130 | gunzip $RPM_BUILD_ROOT%{_mandir}/man?/*.gz | |
131 | ||
132 | %clean | |
133 | rm -rf $RPM_BUILD_ROOT | |
134 | ||
9101e6ac | 135 | %post -n kernel-misc-vmware_workstation |
136 | /sbin/depmod -a %{!?_without_dist_kernel:-F /boot/System.map-%{_kernel_ver} }%{_kernel_ver} | |
137 | ||
138 | %postun -n kernel-misc-vmware_workstation | |
139 | /sbin/depmod -a %{!?_without_dist_kernel:-F /boot/System.map-%{_kernel_ver} }%{_kernel_ver} | |
140 | ||
141 | %post -n kernel-smp-misc-vmware_workstation | |
142 | /sbin/depmod -a %{!?_without_dist_kernel:-F /boot/System.map-%{_kernel_ver} }%{_kernel_ver} | |
143 | ||
144 | %postun -n kernel-smp-misc-vmware_workstation | |
145 | /sbin/depmod -a %{!?_without_dist_kernel:-F /boot/System.map-%{_kernel_ver} }%{_kernel_ver} | |
1fa2b347 | 146 | |
147 | %files | |
148 | %defattr(644,root,root,755) | |
149 | %doc doc/* | |
150 | %attr(755,root,root) %{_bindir}/* | |
151 | %{_mandir}/man1/* | |
152 | ||
153 | %dir %{_sysconfdir}/vmware | |
154 | %ghost %{_sysconfdir}/vmware/not_configured | |
155 | %attr(755,root,root) %{_sysconfdir}/vmware/*.sh | |
156 | ||
157 | %dir %{_libdir}/vmware | |
158 | %dir %{_libdir}/vmware/bin* | |
159 | %attr(755,root,root) %{_libdir}/vmware/bin*/* | |
160 | %{_libdir}/vmware/config | |
161 | %{_libdir}/vmware/configurator | |
162 | %{_libdir}/vmware/floppies | |
163 | %{_libdir}/vmware/isoimages | |
164 | %{_libdir}/vmware/lib | |
165 | %{_libdir}/vmware/licenses | |
166 | %dir %{_libdir}/vmware/messages | |
167 | %lang(ja) %{_libdir}/vmware/messages/ja | |
168 | %{_libdir}/vmware/smb | |
169 | %{_libdir}/vmware/xkeymap | |
9101e6ac | 170 | |
171 | %if %{?!_without_up:1}0 | |
172 | %files -n kernel-misc-vmware_workstation | |
173 | %defattr(644,root,root,755) | |
174 | /lib/modules/%{_kernel_ver}/misc/vmmon.o* | |
175 | /lib/modules/%{_kernel_ver}/misc/vmnet.o* | |
176 | %endif | |
177 | ||
178 | %if %{?!_without_smp:1}0 | |
179 | %files -n kernel-smp-misc-vmware_workstation | |
180 | %defattr(644,root,root,755) | |
181 | /lib/modules/%{_kernel_ver}smp/misc/vmmon-smp.o* | |
182 | /lib/modules/%{_kernel_ver}smp/misc/vmnet-smp.o* | |
183 | %endif |