]>
Commit | Line | Data |
---|---|---|
33afafb0 | 1 | # TODO |
08e9ec22 | 2 | # - drop binary-only nvidia-settings from here, and use nvidia-settings.spec for it |
8c8adc06 | 3 | # - kernel-drm is required on newer kernels. driver for kernel-longterm not requires drm |
33afafb0 JR |
4 | # |
5 | # Conditional build: | |
33afafb0 JR |
6 | %bcond_without kernel # without kernel packages |
7 | %bcond_without userspace # don't build userspace programs | |
33afafb0 JR |
8 | %bcond_with settings # package nvidia-settings here (GPL version of same packaged from nvidia-settings.spec) |
9 | %bcond_with verbose # verbose build (V=1) | |
10 | ||
8c8adc06 JR |
11 | # The goal here is to have main, userspace, package built once with |
12 | # simple release number, and only rebuild kernel packages with kernel | |
13 | # version as part of release number, without the need to bump release | |
14 | # with every kernel change. | |
15 | %if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace} | |
16 | %{error:kernel and userspace cannot be built at the same time on PLD builders} | |
17 | exit 1 | |
18 | %endif | |
19 | ||
33afafb0 JR |
20 | %if %{without userspace} |
21 | # nothing to be placed to debuginfo package | |
22 | %define _enable_debug_packages 0 | |
23 | %endif | |
8c8adc06 | 24 | |
33afafb0 JR |
25 | %define no_install_post_check_so 1 |
26 | ||
106a8a79 | 27 | %define rel 3 |
a4b73fc5 ER |
28 | %define mname nvidia-legacy-304xx |
29 | %define pname xorg-driver-video-%{mname} | |
33afafb0 JR |
30 | Summary: Linux Drivers for nVidia GeForce/Quadro Chips |
31 | Summary(hu.UTF-8): Linux meghajtók nVidia GeForce/Quadro chipekhez | |
32 | Summary(pl.UTF-8): Sterowniki do kart graficznych nVidia GeForce/Quadro | |
8c8adc06 | 33 | Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel} |
376740b2 | 34 | Version: 304.137 |
8c8adc06 | 35 | Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}} |
33afafb0 JR |
36 | Epoch: 1 |
37 | License: nVidia Binary | |
38 | Group: X11 | |
39 | Source0: http://us.download.nvidia.com/XFree86/Linux-x86/%{version}/NVIDIA-Linux-x86-%{version}.run | |
376740b2 | 40 | # Source0-md5: 133098e70581f6b81c481338cc20f100 |
33afafb0 | 41 | Source1: http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}-no-compat32.run |
376740b2 | 42 | # Source1-md5: 485506ee6a7c54780488dacddf1d56b1 |
33afafb0 JR |
43 | Source2: xinitrc.sh |
44 | Source3: gl.pc.in | |
45 | Source4: 10-nvidia.conf | |
46 | Source5: 10-nvidia-modules.conf | |
33afafb0 JR |
47 | Patch0: X11-driver-nvidia-GL.patch |
48 | Patch1: X11-driver-nvidia-desktop.patch | |
4bf93903 | 49 | Patch2: linux-4.0.patch |
d5c3d152 JR |
50 | Patch3: linux-4.12.patch |
51 | Patch4: kernel-4.14.patch | |
106a8a79 | 52 | Patch5: kernel-4.15.patch |
08e9ec22 | 53 | URL: https://www.nvidia.com/en-us/drivers/unix/ |
7df6db17 | 54 | BuildRequires: rpm-build >= 4.6 |
32bd4b25 JR |
55 | BuildRequires: rpmbuild(macros) >= 1.701 |
56 | %{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}} | |
33afafb0 JR |
57 | BuildRequires: sed >= 4.0 |
58 | BuildConflicts: XFree86-nvidia | |
59 | Requires: %{pname}-libs = %{epoch}:%{version}-%{rel} | |
60 | Requires: xorg-xserver-server | |
5e7c686c | 61 | Requires: xorg-xserver-server(videodrv-abi) <= 23.0 |
33afafb0 JR |
62 | Requires: xorg-xserver-server(videodrv-abi) >= 2.0 |
63 | Provides: xorg-driver-video | |
64 | Provides: xorg-xserver-module(glx) | |
a6ccc509 JB |
65 | Obsoletes: XFree86-driver-nvidia < 1.0.5336-4 |
66 | Obsoletes: XFree86-nvidia < 1.0 | |
33afafb0 JR |
67 | Conflicts: XFree86-OpenGL-devel <= 4.2.0-3 |
68 | ExclusiveArch: %{ix86} %{x8664} | |
69 | BuildRoot: %{tmpdir}/%{pname}-%{version}-root-%(id -u -n) | |
70 | ||
33afafb0 JR |
71 | # libnvidia-encode.so.*.* links with libnvcuvid.so instead of libnvcuvid.so.1 |
72 | %define _noautoreq libnvcuvid.so | |
73 | ||
74 | %description | |
75 | This driver set adds improved 2D functionality to the Xorg X server as | |
76 | well as high performance OpenGL acceleration, AGP support, support for | |
fae719c5 | 77 | most flat panels, and 2D multiple monitor support. |
33afafb0 | 78 | |
fae719c5 JB |
79 | Supported hardware: |
80 | - GeForce 6 series | |
81 | - GeForce 7/Go 7 series | |
82 | - GeForce 8/8M series | |
83 | - GeForce 9/9M series | |
84 | - GeForce 100/100M series | |
85 | - GeForce 200/200M series (excluding G205M) | |
86 | - GeForce 300/300M series | |
87 | - GeForce 400/400M series (excluding 405M) | |
88 | - GeForce 500/500M series | |
89 | - GeForce 600 series (excluding GT 635/GTX 645/GTX 650 Ti BOOST) | |
90 | - GeForce 600M series (excluding GT 625M/GTX 680MX) | |
91 | - ION | |
92 | - X class (Tesla X2090) | |
93 | - M class (M1060/M2050/M2070/M2070-Q/M2075/M2090) | |
94 | - C class (Tesla C*) | |
95 | - NVS series (NVS 300/NVS 310/315/NVS 510) | |
96 | - NVS mobile series (NVS 2100M/NVS 3100M/NVS 4200M/NVS 5100M/ | |
97 | NVS 5200M/NVS 5400M) | |
98 | - Quadro SDI | |
99 | - Quadro Sync series (G-Sync II/Sync) | |
100 | - Quadro Plex series | |
101 | - Quadro NVS series (NVS 285/NVS 290/NVS 295/NVS 420/NVS 440/NVS 450) | |
102 | - Quadro NVS mobile series (NVS 110M/NVS 120M/MVS 130M/NVS 135M/ | |
103 | NVS 140M/NVS 150M/NVS 160M/NVS 320M/NVS 510M) | |
104 | - Quadro FX series (CX, FX 350/370/380/470/540/550/560/570/580/1400/ | |
105 | 1500/1700/1800/2000/3450/3500/3700/3800/4000/4500/4500 X2/4600/ | |
106 | 4700 X2/4800/5500/5600/5800) | |
107 | - Quadro FX mobile series | |
108 | - Quadro series (400/410/600/2000/2000D/4000/5000/6000/K5000) | |
109 | - Quadro mobile series (1000M/2000M/3000M/4000M/5000M/5010M/K1000M/ | |
110 | K2000M/K3000M/K4000M/K5000M) | |
111 | - GRID (K1/K2) | |
33afafb0 JR |
112 | |
113 | %description -l hu.UTF-8 | |
114 | Ez a meghajtó kibővíti az Xorg X szerver 2D működését OpenGL | |
115 | gyorsítással, AGP támogatással és támogatja a több monitort. | |
33afafb0 | 116 | |
fae719c5 JB |
117 | Támogatott hardverek: |
118 | - GeForce 6 series | |
119 | - GeForce 7/Go 7 series | |
120 | - GeForce 8/8M series | |
121 | - GeForce 9/9M series | |
122 | - GeForce 100/100M series | |
123 | - GeForce 200/200M series (- G205M) | |
124 | - GeForce 300/300M series | |
125 | - GeForce 400/400M series (- 405M) | |
126 | - GeForce 500/500M series | |
127 | - GeForce 600 series (- GT 635/GTX 645/GTX 650 Ti BOOST) | |
128 | - GeForce 600M series (- GT 625M/GTX 680MX) | |
129 | - ION | |
130 | - X class (Tesla X2090) | |
131 | - M class (M1060/M2050/M2070/M2070-Q/M2075/M2090) | |
132 | - C class (Tesla C*) | |
133 | - NVS series (NVS 300/NVS 310/315/NVS 510) | |
134 | - NVS mobile series (NVS 2100M/NVS 3100M/NVS 4200M/NVS 5100M/ | |
135 | NVS 5200M/NVS 5400M) | |
136 | - Quadro SDI | |
137 | - Quadro Sync series (G-Sync II/Sync) | |
138 | - Quadro Plex series | |
139 | - Quadro NVS series (NVS 285/NVS 290/NVS 295/NVS 420/NVS 440/NVS 450) | |
140 | - Quadro NVS mobile series (NVS 110M/NVS 120M/MVS 130M/NVS 135M/ | |
141 | NVS 140M/NVS 150M/NVS 160M/NVS 320M/NVS 510M) | |
142 | - Quadro FX series (CX, FX 350/370/380/470/540/550/560/570/580/1400/ | |
143 | 1500/1700/1800/2000/3450/3500/3700/3800/4000/4500/4500 X2/4600/ | |
144 | 4700 X2/4800/5500/5600/5800) | |
145 | - Quadro FX mobile series | |
146 | - Quadro series (400/410/600/2000/2000D/4000/5000/6000/K5000) | |
147 | - Quadro mobile series (1000M/2000M/3000M/4000M/5000M/5010M/K1000M/ | |
148 | K2000M/K3000M/K4000M/K5000M) | |
149 | - GRID (K1/K2) | |
33afafb0 JR |
150 | |
151 | %description -l pl.UTF-8 | |
152 | Usprawnione sterowniki dla kart graficznych nVidia do serwera Xorg, | |
153 | dające wysokowydajną akcelerację OpenGL, obsługę AGP i wielu monitorów | |
fae719c5 | 154 | 2D. |
33afafb0 | 155 | |
fae719c5 JB |
156 | Obsługują karty: |
157 | - GeForce serii 6 | |
158 | - GeForce serii 7/Go 7 | |
159 | - GeForce serii 8/8M | |
160 | - GeForce serii 9/9M | |
161 | - GeForce serii 100/100M | |
162 | - GeForce serii 200/200M (oprócz G205M) | |
163 | - GeForce serii 300/300M | |
164 | - GeForce serii 400/400M (oprócz 405M) | |
165 | - GeForce serii 500/500M | |
166 | - GeForce serii 600 (oprócz GT 635/GTX 645/GTX 650 Ti BOOST) | |
167 | - GeForce serii 600M (oprócz GT 625M/GTX 680MX) | |
168 | - ION | |
169 | - X class (Tesla X2090) | |
170 | - M class (M1060/M2050/M2070/M2070-Q/M2075/M2090) | |
171 | - C class (Tesla C*) | |
172 | - serii NVS (NVS 300/NVS 310/315/NVS 510) | |
173 | - serii NVS mobile (NVS 2100M/NVS 3100M/NVS 4200M/NVS 5100M/ | |
174 | NVS 5200M/NVS 5400M) | |
175 | - Quadro SDI | |
176 | - Quadro serii Sync (G-Sync II/Sync) | |
177 | - Quadro serii Plex | |
178 | - Quadro serii NVS (NVS 285/NVS 290/NVS 295/NVS 420/NVS 440/NVS 450) | |
179 | - Quadro serii NVS mobile (NVS 110M/NVS 120M/MVS 130M/NVS 135M/ | |
180 | NVS 140M/NVS 150M/NVS 160M/NVS 320M/NVS 510M) | |
181 | - Quadro serii FX (CX, FX 350/370/380/470/540/550/560/570/580/1400/ | |
182 | 1500/1700/1800/2000/3450/3500/3700/3800/4000/4500/4500 X2/4600/ | |
183 | 4700 X2/4800/5500/5600/5800) | |
184 | - Quadro serii FX mobile | |
185 | - Quadro (400/410/600/2000/2000D/4000/5000/6000/K5000) | |
186 | - Quadro mobile (1000M/2000M/3000M/4000M/5000M/5010M/K1000M/ | |
187 | K2000M/K3000M/K4000M/K5000M) | |
188 | - GRID (K1/K2) | |
33afafb0 JR |
189 | |
190 | %package libs | |
191 | Summary: OpenGL (GL and GLX) Nvidia libraries | |
192 | Summary(pl.UTF-8): Biblioteki OpenGL (GL i GLX) Nvidia | |
193 | Group: X11/Development/Libraries | |
194 | Requires(post,postun): /sbin/ldconfig | |
195 | Requires: libvdpau >= 0.3 | |
80d3ab8e | 196 | Provides: OpenGL = 4.1 |
33afafb0 JR |
197 | Provides: OpenGL-GLX = 1.4 |
198 | Obsoletes: X11-OpenGL-core < 1:7.0.0 | |
199 | Obsoletes: X11-OpenGL-libGL < 1:7.0.0 | |
200 | Obsoletes: XFree86-OpenGL-core < 1:7.0.0 | |
201 | Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0 | |
202 | ||
203 | %description libs | |
204 | NVIDIA OpenGL (GL and GLX only) implementation libraries. | |
205 | ||
206 | %description libs -l pl.UTF-8 | |
207 | Implementacja OpenGL (tylko GL i GLX) firmy NVIDIA. | |
208 | ||
209 | %package devel | |
210 | Summary: OpenGL (GL and GLX) header files | |
211 | Summary(hu.UTF-8): OpenGL (GL és GLX) fejléc fájlok | |
212 | Summary(pl.UTF-8): Pliki nagłówkowe OpenGL (GL i GLX) | |
213 | Group: X11/Development/Libraries | |
214 | Requires: %{pname}-libs = %{epoch}:%{version}-%{rel} | |
215 | Provides: OpenGL-GLX-devel = 1.4 | |
80d3ab8e | 216 | Provides: OpenGL-devel = 3.0 |
a6ccc509 JB |
217 | Obsoletes: X11-OpenGL-devel-base < 1:7.0.0 |
218 | Obsoletes: XFree86-OpenGL-devel-base < 1:7.0.0 | |
219 | Obsoletes: XFree86-driver-nvidia-devel < 1.0.5336-4 | |
33afafb0 JR |
220 | Conflicts: XFree86-OpenGL-devel < 4.3.99.902-0.3 |
221 | ||
222 | %description devel | |
223 | OpenGL header files (GL and GLX only) for NVIDIA OpenGL | |
224 | implementation. | |
225 | ||
226 | %description devel -l hu.UTF-8 | |
227 | OpenGL fejléc fájlok (csak GL és GLX) NVIDIA OpenGL implementációhoz. | |
228 | ||
229 | %description devel -l pl.UTF-8 | |
230 | Pliki nagłówkowe OpenGL (tylko GL i GLX) dla implementacji OpenGL | |
231 | firmy NVIDIA. | |
232 | ||
233 | %package doc | |
234 | Summary: Documentation for NVIDIA Graphics Driver | |
7df6db17 | 235 | Summary(pl.UTF-8): Dokumentacja do sterownika graficznego NVIDIA |
33afafb0 | 236 | Group: Documentation |
7df6db17 | 237 | BuildArch: noarch |
33afafb0 JR |
238 | |
239 | %description doc | |
240 | NVIDIA Accelerated Linux Graphics Driver README and Installation | |
241 | Guide. | |
242 | ||
7df6db17 JB |
243 | %description doc -l pl.UTF-8 |
244 | Plik README oraz przewodnik instalacji do akcelerowanego sterownika | |
245 | graficznego NVIDIA dla Linuksa. | |
246 | ||
33afafb0 JR |
247 | %package progs |
248 | Summary: Tools for advanced control of nVidia graphic cards | |
249 | Summary(hu.UTF-8): Eszközök az nVidia grafikus kártyák beállításához | |
250 | Summary(pl.UTF-8): Narzędzia do zarządzania kartami graficznymi nVidia | |
251 | Group: Applications/System | |
252 | Requires: %{pname} = %{epoch}:%{version} | |
253 | Suggests: pkgconfig | |
a6ccc509 | 254 | Obsoletes: XFree86-driver-nvidia-progs < 1.0.5336-4 |
33afafb0 JR |
255 | |
256 | %description progs | |
257 | Tools for advanced control of nVidia graphic cards. | |
258 | ||
259 | %description progs -l hu.UTF-8 | |
260 | Eszközök az nVidia grafikus kártyák beállításához. | |
261 | ||
262 | %description progs -l pl.UTF-8 | |
263 | Narzędzia do zarządzania kartami graficznymi nVidia. | |
264 | ||
8c8adc06 JR |
265 | %define kernel_pkg()\ |
266 | %package -n kernel%{_alt_kernel}-%{mname}\ | |
267 | Summary: nVidia kernel module for nVidia Architecture support\ | |
268 | Summary(de.UTF-8): Das nVidia-Kern-Modul für die nVidia-Architektur-Unterstützung\ | |
269 | Summary(hu.UTF-8): nVidia Architektúra támogatás Linux kernelhez\ | |
270 | Summary(pl.UTF-8): Moduł jądra dla obsługi kart graficznych nVidia\ | |
271 | Release: %{rel}@%{_kernel_ver_str}\ | |
272 | Group: Base/Kernel\ | |
273 | Requires(post,postun): /sbin/depmod\ | |
274 | Requires: dev >= 2.7.7-10\ | |
8c8adc06 JR |
275 | %requires_releq_kernel\ |
276 | %if %{_kernel_version_code} >= %{_kernel_version_magic 3 10 0}\ | |
277 | Requires: %{releq_kernel -n drm}\ | |
278 | %endif\ | |
279 | Requires(postun): %releq_kernel\ | |
8c8adc06 JR |
280 | Requires: %{pname} = %{epoch}:%{version}\ |
281 | Provides: X11-driver-nvidia(kernel)\ | |
a6ccc509 | 282 | Obsoletes: XFree86-nvidia-kernel < 1.0.5336-4\ |
8c8adc06 JR |
283 | \ |
284 | %description -n kernel%{_alt_kernel}-%{mname}\ | |
285 | nVidia Architecture support for Linux kernel.\ | |
286 | \ | |
287 | %description -n kernel%{_alt_kernel}-%{mname} -l de.UTF-8\ | |
288 | Die nVidia-Architektur-Unterstützung für den Linux-Kern.\ | |
289 | \ | |
290 | %description -n kernel%{_alt_kernel}-%{mname} -l hu.UTF-8\ | |
291 | nVidia Architektúra támogatás Linux kernelhez.\ | |
292 | \ | |
293 | %description -n kernel%{_alt_kernel}-%{mname} -l pl.UTF-8\ | |
294 | Obsługa architektury nVidia dla jądra Linuksa. Pakiet wymagany przez\ | |
295 | sterownik nVidii dla Xorg/XFree86.\ | |
296 | \ | |
297 | %files -n kernel%{_alt_kernel}-%{mname}\ | |
298 | %defattr(644,root,root,755)\ | |
299 | /lib/modules/%{_kernel_ver}/misc/*.ko*\ | |
300 | \ | |
301 | %post -n kernel%{_alt_kernel}-%{mname}\ | |
302 | %depmod %{_kernel_ver}\ | |
303 | \ | |
304 | %postun -n kernel%{_alt_kernel}-%{mname}\ | |
305 | %depmod %{_kernel_ver}\ | |
306 | %{nil} | |
307 | ||
308 | %define build_kernel_pkg()\ | |
309 | cd kernel\ | |
310 | ln -sf Makefile.kbuild Makefile\ | |
311 | #cat >> Makefile <<'EOF'\ | |
312 | #\ | |
313 | #$(obj)/nv-kernel.o: $(src)/nv-kernel.o.bin\ | |
314 | # cp $< $@\ | |
315 | #EOF\ | |
316 | #mv nv-kernel.o{,.bin}\ | |
317 | #build_kernel_modules -m nvidia\ | |
318 | %{__make} SYSSRC=%{_kernelsrcdir} clean\ | |
319 | ln -sf Makefile.kbuild Makefile\ | |
320 | %{__make} SYSSRC=%{_kernelsrcdir} module\ | |
321 | cd ..\ | |
322 | %install_kernel_modules -D installed -m kernel/nvidia -d misc\ | |
323 | %{nil} | |
324 | ||
32bd4b25 | 325 | %{?with_kernel:%{expand:%create_kernel_packages}} |
33afafb0 JR |
326 | |
327 | %prep | |
328 | cd %{_builddir} | |
329 | rm -rf NVIDIA-Linux-x86*-%{version}* | |
330 | %ifarch %{ix86} | |
331 | /bin/sh %{SOURCE0} --extract-only | |
332 | %setup -qDT -n NVIDIA-Linux-x86-%{version} | |
333 | %else | |
334 | /bin/sh %{SOURCE1} --extract-only | |
335 | %setup -qDT -n NVIDIA-Linux-x86_64-%{version}-no-compat32 | |
336 | %endif | |
337 | %patch0 -p1 | |
338 | %patch1 -p1 | |
4bf93903 | 339 | %patch2 -p1 |
d5c3d152 JR |
340 | %patch3 -p0 |
341 | %patch4 -p1 | |
106a8a79 | 342 | %patch5 -p1 |
33afafb0 JR |
343 | |
344 | %build | |
32bd4b25 | 345 | %{?with_kernel:%{expand:%build_kernel_packages}} |
33afafb0 JR |
346 | |
347 | %install | |
348 | rm -rf $RPM_BUILD_ROOT | |
349 | ||
350 | %if %{with userspace} | |
351 | install -d $RPM_BUILD_ROOT%{_libdir}/{nvidia,xorg/modules/{drivers,extensions/nvidia}} \ | |
352 | $RPM_BUILD_ROOT{%{_includedir}/GL,%{_libdir}/vdpau,%{_bindir},%{_mandir}/man1} \ | |
353 | $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},/etc/X11/xinit/xinitrc.d} \ | |
354 | $RPM_BUILD_ROOT%{_sysconfdir}/{OpenCL/vendors,ld.so.conf.d,X11/xorg.conf.d} | |
355 | ||
356 | %if %{with settings} | |
357 | install -p nvidia-settings $RPM_BUILD_ROOT%{_bindir} | |
358 | cp -p nvidia-settings.1* $RPM_BUILD_ROOT%{_mandir}/man1 | |
359 | cp -p nvidia-settings.desktop $RPM_BUILD_ROOT%{_desktopdir} | |
360 | cp -p nvidia-settings.png $RPM_BUILD_ROOT%{_pixmapsdir} | |
361 | install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/nvidia-settings.sh | |
362 | %endif | |
363 | ||
364 | install -p nvidia-{smi,xconfig,bug-report.sh} $RPM_BUILD_ROOT%{_bindir} | |
365 | cp -p nvidia-{smi,xconfig}.1* $RPM_BUILD_ROOT%{_mandir}/man1 | |
366 | install -p nvidia.icd $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors | |
367 | ||
368 | install %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d | |
369 | install %{SOURCE5} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d | |
370 | sed -i -e 's|@@LIBDIR@@|%{_libdir}|g' $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nvidia-modules.conf | |
371 | ||
372 | for f in \ | |
373 | libGL.so.%{version} \ | |
374 | libOpenCL.so.1.0.0 \ | |
375 | libcuda.so.%{version} \ | |
376 | libnvcuvid.so.%{version} \ | |
377 | libnvidia-cfg.so.%{version} \ | |
378 | libnvidia-compiler.so.%{version} \ | |
379 | libnvidia-glcore.so.%{version} \ | |
380 | libnvidia-ml.so.%{version} \ | |
381 | libnvidia-opencl.so.%{version} \ | |
382 | tls/libnvidia-tls.so.%{version} \ | |
383 | ; do | |
384 | install -p $f $RPM_BUILD_ROOT%{_libdir}/nvidia | |
385 | done | |
386 | ||
387 | install -p libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau | |
388 | ||
389 | install -p libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia | |
390 | ln -s libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libglx.so | |
391 | install -p nvidia_drv.so $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so.%{version} | |
392 | ln -s nvidia_drv.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so | |
393 | install -p libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia | |
394 | ln -s libnvidia-wfb.so.1 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so | |
395 | ||
396 | /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/nvidia | |
397 | /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia | |
398 | ||
399 | cp -p gl*.h $RPM_BUILD_ROOT%{_includedir}/GL | |
400 | ||
401 | ln -sf libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_nvidia.so.1 | |
402 | ||
403 | %ifarch %{x8664} | |
404 | echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf | |
405 | echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf | |
406 | %else | |
407 | echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf | |
408 | echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf | |
409 | %endif | |
410 | ||
411 | # OpenGL ABI for Linux compatibility | |
412 | ln -sf libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1 | |
413 | ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so | |
414 | ln -sf libOpenCL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libOpenCL.so | |
415 | ln -sf libcuda.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libcuda.so | |
416 | ln -sf libnvcuvid.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libnvcuvid.so | |
417 | %endif | |
418 | ||
419 | %if %{with kernel} | |
8c8adc06 JR |
420 | install -d $RPM_BUILD_ROOT |
421 | cp -a installed/* $RPM_BUILD_ROOT | |
33afafb0 JR |
422 | %endif |
423 | ||
424 | install -d $RPM_BUILD_ROOT%{_pkgconfigdir} | |
425 | sed -e ' | |
426 | s|@@prefix@@|%{_prefix}|g; | |
427 | s|@@libdir@@|%{_libdir}|g; | |
428 | s|@@includedir@@|%{_includedir}|g; | |
429 | s|@@version@@|%{version}|g' < %{SOURCE3} \ | |
430 | > $RPM_BUILD_ROOT%{_pkgconfigdir}/gl.pc | |
431 | ||
432 | %clean | |
433 | rm -rf $RPM_BUILD_ROOT | |
434 | ||
435 | %post | |
436 | cat << 'EOF' | |
b5349b12 ER |
437 | NOTE: You must also install kernel module for this driver to work: |
438 | kernel%{_alt_kernel}-%{mname}-%{version} | |
33afafb0 JR |
439 | |
440 | EOF | |
441 | ||
b5349b12 | 442 | %post libs -p /sbin/ldconfig |
33afafb0 JR |
443 | %postun libs -p /sbin/ldconfig |
444 | ||
33afafb0 JR |
445 | %if %{with userspace} |
446 | %files | |
447 | %defattr(644,root,root,755) | |
448 | %doc LICENSE NVIDIA_Changelog README.txt | |
449 | %dir %{_libdir}/xorg/modules/extensions/nvidia | |
450 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.*.* | |
451 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.1 | |
452 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so | |
453 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so.* | |
454 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so | |
455 | %attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so.* | |
456 | %attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so | |
457 | %{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf | |
458 | %{_sysconfdir}/X11/xorg.conf.d/10-nvidia-modules.conf | |
459 | ||
460 | %files libs | |
461 | %defattr(644,root,root,755) | |
462 | %dir %{_sysconfdir}/OpenCL | |
463 | %dir %{_sysconfdir}/OpenCL/vendors | |
464 | %{_sysconfdir}/OpenCL/vendors/nvidia.icd | |
465 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/nvidia*.conf | |
466 | %dir %{_libdir}/nvidia | |
467 | %attr(755,root,root) %{_libdir}/nvidia/libGL.so.*.* | |
468 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1 | |
7b22eea5 | 469 | %attr(755,root,root) %{_libdir}/nvidia/libGL.so |
33afafb0 JR |
470 | %attr(755,root,root) %{_libdir}/nvidia/libOpenCL.so.*.* |
471 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libOpenCL.so.1 | |
472 | %attr(755,root,root) %{_libdir}/nvidia/libOpenCL.so | |
473 | %attr(755,root,root) %{_libdir}/nvidia/libcuda.so.*.* | |
474 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libcuda.so.1 | |
475 | %attr(755,root,root) %{_libdir}/nvidia/libcuda.so | |
476 | %attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so.*.* | |
477 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvcuvid.so.1 | |
478 | %attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so | |
479 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.* | |
480 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-cfg.so.1 | |
481 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-compiler.so.*.* | |
482 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-glcore.so.*.* | |
483 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ml.so.*.* | |
484 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ml.so.1 | |
485 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-opencl.so.*.* | |
486 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-opencl.so.1 | |
487 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-tls.so.*.* | |
488 | %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nvidia.so.*.* | |
489 | %attr(755,root,root) %ghost %{_libdir}/vdpau/libvdpau_nvidia.so.1 | |
490 | ||
491 | %files devel | |
492 | %defattr(644,root,root,755) | |
493 | %dir %{_includedir}/GL | |
494 | %{_includedir}/GL/gl.h | |
495 | %{_includedir}/GL/glext.h | |
496 | %{_includedir}/GL/glx.h | |
497 | %{_includedir}/GL/glxext.h | |
33afafb0 JR |
498 | %{_pkgconfigdir}/gl.pc |
499 | ||
500 | %files doc | |
501 | %defattr(644,root,root,755) | |
502 | %doc html/* | |
503 | ||
504 | %files progs | |
505 | %defattr(644,root,root,755) | |
506 | %attr(755,root,root) %{_bindir}/nvidia-bug-report.sh | |
507 | %attr(755,root,root) %{_bindir}/nvidia-smi | |
508 | %attr(755,root,root) %{_bindir}/nvidia-xconfig | |
509 | %{_mandir}/man1/nvidia-smi.1* | |
510 | %{_mandir}/man1/nvidia-xconfig.1* | |
511 | %if %{with settings} | |
512 | %attr(755,root,root) /etc/X11/xinit/xinitrc.d/*.sh | |
513 | %attr(755,root,root) %{_bindir}/nvidia-settings | |
514 | %{_mandir}/man1/nvidia-settings.1* | |
515 | %{_desktopdir}/nvidia-settings.desktop | |
516 | %{_pixmapsdir}/nvidia-settings.png | |
517 | %endif | |
518 | %endif |