2 # - /usr/lib64/fglrx/libSlotMaximizerBe.so
5 %bcond_without dist_kernel # without distribution kernel
6 %bcond_without kernel # don't build kernel modules
7 %bcond_without userspace # don't build userspace tools
8 %bcond_with verbose # verbose build (V=1)
13 %undefine with_dist_kernel
15 %if "%{_alt_kernel}" != "%{nil}"
16 %undefine with_userspace
18 %if %{without userspace}
19 # nothing to be placed to debuginfo package
20 %define _enable_debug_packages 0
24 %define arch_sufix %{nil}
27 %define arch_sufix _64a
28 %define arch_dir x86_64
34 %define pname xorg-driver-video-fglrx
35 Summary: Linux Drivers for AMD/ATI graphics accelerators
36 Summary(pl.UTF-8): Sterowniki do akceleratorów graficznych AMD/ATI
37 Name: %{pname}%{_alt_kernel}
41 License: AMD Binary (parts are GPL)
43 # Download http://support.amd.com/us/gpudownload/linux/Pages/radeon_linux.aspx?type=2.4.1&product=2.4.1.3.42&lang=English
44 # or go to http://support.amd.com/ click through "download drivers", desktop -> radeon hd -> 7xxx -> linux
45 Source0: http://www2.ati.com/drivers/linux/amd-driver-installer-catalyst-%{version}-x86.x86_64.zip
46 # Source0-md5: ef6ecd984e47e80849215b33fbfa5b7f
47 Source1: atieventsd.init
48 Source2: atieventsd.sysconfig
50 Source4: 10-fglrx.conf
51 Source5: 10-fglrx-modules.conf
52 Patch0: %{pname}-kh.patch
53 Patch1: %{pname}-smp.patch
54 Patch2: %{pname}-x86genericarch.patch
55 Patch3: %{pname}-desktop.patch
56 Patch4: %{pname}-nofinger.patch
57 Patch5: %{pname}-GPL-only.patch
58 Patch7: %{pname}-kernel-fpu.patch
59 Patch8: linux-3.7.patch
60 URL: http://ati.amd.com/support/drivers/linux/linux-radeon.html
61 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20.2}
62 BuildRequires: rpmbuild(macros) >= 1.379
63 BuildRequires: sed >= 4.0
64 Requires: %{pname}-libs = %{epoch}:%{version}-%{rel}
65 Requires: xorg-xserver-server
66 Requires: xorg-xserver-server(videodrv-abi) <= 13.1
67 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
68 Suggests: kernel-video-firegl
69 Provides: xorg-driver-video
70 Provides: xorg-xserver-module(glx)
71 Obsoletes: X11-driver-firegl < 1:7.0.0
72 Obsoletes: XFree86-driver-firegl < 1:7.0.0
73 Obsoletes: xorg-driver-video-fglrx-config
74 Obsoletes: xorg-driver-video-fglrx-libdri
75 Obsoletes: xorg-driver-video-fglrx-libglx
76 ExclusiveArch: i586 i686 athlon pentium3 pentium4 %{x8664}
77 BuildRoot: %{tmpdir}/%{pname}-%{version}-root-%(id -u -n)
79 %define _ccver %(rpm -q --qf "%{VERSION}" gcc | sed 's/\\..*//')
81 %define _noautoreqdep libGL.so.1
82 %define no_install_post_check_so 1
85 AMD display driver which allows for hardware accelerated rendering
86 with ATI Mobility, FireGL and Desktop GPUs. Some of the Desktop and
87 Mobility GPUs supported are the Radeon HD 5xxx series to the
88 Radeon HD 7xxx series.
90 %description -l pl.UTF-8
91 Sterownik AMD umożliwiający sprzętowo akcelerowany rendering do kart
92 graficznych ATI Mobility, FireGL i Desktopowych. Niektóre ze
93 wspieranych Desktopowych i Mobilnych kart to Radeon HD 5xxx do
97 Summary: OpenGL (GL and GLX) ATI/AMD libraries
98 Summary(pl.UTF-8): Biblioteki OpenGL (GL i GLX) ATI/AMD
99 Group: X11/Development/Libraries
100 Requires(post,postun): /sbin/ldconfig
101 # 4.0 for Radeon HD 5000 Series
102 Provides: OpenGL = 3.3
103 Provides: OpenGL-GLX = 1.4
104 Obsoletes: X11-OpenGL-core < 1:7.0.0
105 Obsoletes: X11-OpenGL-libGL < 1:7.0.0
106 Obsoletes: XFree86-OpenGL-core < 1:7.0.0
107 Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0
110 ATI/AMD OpenGL (GL and GLX only) implementation libraries.
112 %description libs -l pl.UTF-8
113 Implementacja OpenGL (tylko GL i GLX) firmy ATI/AMD.
116 Summary: Header files for development for the ATI Radeon cards proprietary driver
117 Summary(pl.UTF-8): Pliki nagłówkowe do programowania z użyciem własnościowego sterownika dla kart ATI Radeon
118 Group: X11/Development/Libraries
119 Requires: %{pname}-libs = %{epoch}:%{version}-%{rel}
121 Requires: xorg-proto-glproto-devel
122 # 4.0 for Radeon HD 5000 Series
123 Provides: OpenGL-GLX-devel = 1.4
124 Provides: OpenGL-devel = 3.3
125 Obsoletes: X11-OpenGL-devel-base
126 Obsoletes: XFree86-OpenGL-devel-base
129 Header files for development for the ATI proprietary driver for ATI
130 Radeon graphic cards.
132 %description devel -l pl.UTF-8
133 Pliki nagłówkowe do programowania z użyciem własnościowego sterownika
134 ATI dla kart graficznych Radeon.
137 Summary: Static libraries for development for the ATI Radeon cards proprietary driver
138 Summary(pl.UTF-8): Biblioteki statyczne do programowania z użyciem własnościowego sterownika dla kart ATI Radeon
139 Group: X11/Development/Libraries
140 Requires: %{pname}-devel = %{epoch}:%{version}-%{rel}
143 Static libraries for development for the ATI proprietary driver for
144 ATI Radeon graphic cards.
146 %description static -l pl.UTF-8
147 Biblioteki statyczne do programowania z użyciem własnościowego
148 sterownika ATI dla kart graficznych ATI Radeon.
151 Summary: ATI external events daemon
152 Summary(pl.UTF-8): Demon zewnętrznych zdarzeń ATI
154 Requires: %{pname} = %{epoch}:%{version}-%{rel}
156 Requires(post,preun): /sbin/chkconfig
159 %description atieventsd
160 The ATI External Events Daemon is a user-level application that
161 monitors various system events such as ACPI or hotplug, then notifies
162 the driver via the X extensions interface that the event has occured.
164 %description atieventsd -l pl.UTF-8
165 Demon zewnętrznych zdarzeń ATI jest aplikacją monitorującą różne
166 zdarzenia systemowe, takie jak ACPI lub hotplug, a następnie
167 informującą sterownik poprzez interfejs rozszerzeń X, że zaszło
170 %package -n kernel%{_alt_kernel}-video-firegl
171 Summary: ATI kernel module for FireGL support
172 Summary(pl.UTF-8): Moduł jądra oferujący wsparcie dla ATI FireGL
173 Release: %{rel}@%{_kernel_ver_str}
176 %{?with_dist_kernel:%requires_releq_kernel}
177 %if "%{_alt_kernel}" != "%{nil}"
178 Provides: kernel-video-firegl = %{epoch}:%{version}-%{rel}@%{_kernel_ver_str}
180 Requires(post,postun): /sbin/depmod
182 %description -n kernel%{_alt_kernel}-video-firegl
183 ATI kernel module for FireGL support.
185 %description -n kernel%{_alt_kernel}-video-firegl -l pl.UTF-8
186 Moduł jądra oferujący wsparcie dla ATI FireGL.
192 #sh %{SOURCE0} --extract .
193 sh amd-driver-installer-catalyst-%{version}-x86.x86_64.run --extract .
195 cp -p arch/%{arch_dir}/lib/modules/fglrx/build_mod/* common/lib/modules/fglrx/build_mod
197 %if %{with dist_kernel}
208 install -d common{%{_prefix}/{%{_lib},bin,sbin},/etc}
209 cp -a %{x11ver}%{arch_sufix}/usr/X11R6/%{_lib}/* common%{_libdir}
210 mv common%{_libdir}/modules/extensions/{fglrx/fglrx-libglx.so,libglx.so}
211 cp -a arch/%{arch_dir}/usr/X11R6/%{_lib}/* common%{_libdir}
212 cp -a arch/%{arch_dir}/usr/X11R6/%{_lib}/modules common%{_libdir}/xorg
213 cp -a arch/%{arch_dir}/usr/X11R6/bin/* common%{_bindir}
214 cp -a arch/%{arch_dir}/usr/bin/* common%{_bindir}
215 cp -a arch/%{arch_dir}/usr/sbin/* common%{_sbindir}
216 cp -a arch/%{arch_dir}/usr/%{_lib}/*.so* common%{_libdir}
217 mv common%{_libdir}/{fglrx/fglrx-libGL.so.1.2,libGL.so.1.2}
218 cp -a arch/%{arch_dir}/etc/* common/etc
222 cd common/lib/modules/fglrx/build_mod
223 cp -pf 2.6.x/Makefile .
224 %build_kernel_modules -c -m fglrx GCC_VER_MAJ=%{_ccver}
229 rm -rf $RPM_BUILD_ROOT
232 %install_kernel_modules -m common/lib/modules/fglrx/build_mod/fglrx -d misc
235 %if %{with userspace}
236 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{ati,env.d,X11/xorg.conf.d,ld.so.conf.d} \
237 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_includedir}/GL} \
238 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_datadir}/ati,%{_mandir}/man8} \
239 $RPM_BUILD_ROOT%{_libdir}/{fglrx,xorg/modules/extensions/fglrx} \
240 $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d} \
241 $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors
243 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/atieventsd
244 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/atieventsd
246 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d
247 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d
248 sed -i -e 's|@@LIBDIR@@|%{_libdir}|g' $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-fglrx-modules.conf
250 cp -a common%{_datadir}/doc/fglrx/examples/etc/acpi $RPM_BUILD_ROOT/etc
251 install -p common/etc/OpenCL/vendors/*.icd $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors
253 install -p common%{_bindir}/* $RPM_BUILD_ROOT%{_bindir}
254 install -p common/usr/X11R6/bin/* $RPM_BUILD_ROOT%{_bindir}
255 install -p common%{_sbindir}/* $RPM_BUILD_ROOT%{_sbindir}
257 rm $RPM_BUILD_ROOT%{_sbindir}/atigetsysteminfo.sh
259 cp -a common%{_libdir}/modules/* $RPM_BUILD_ROOT%{_libdir}/xorg/modules
260 ln -s %{_libdir}/xorg/modules/dri $RPM_BUILD_ROOT%{_libdir}
261 cp -a common%{_sysconfdir}/ati/control $RPM_BUILD_ROOT%{_sysconfdir}/ati/control
262 cp -a common%{_sysconfdir}/ati/signature $RPM_BUILD_ROOT%{_sysconfdir}/ati/signature
263 cp -a common%{_sysconfdir}/ati/amdpcsdb.default $RPM_BUILD_ROOT%{_sysconfdir}/ati/amdpcsdb.default
264 cp -a common%{_sysconfdir}/ati/atiogl.xml $RPM_BUILD_ROOT%{_sysconfdir}/ati/atiogl.xml
266 cp -a common%{_datadir}/ati/* $RPM_BUILD_ROOT%{_datadir}/ati
267 cp -a common%{_datadir}/icons/*.xpm $RPM_BUILD_ROOT%{_pixmapsdir}
269 cp -r common%{_desktopdir}/*.desktop $RPM_BUILD_ROOT%{_desktopdir}
271 cp -a common%{_mandir}/man8/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
274 echo %{_libdir}/fglrx > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/fglrx64.conf
276 echo %{_libdir}/fglrx > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/fglrx.conf
279 cp -a common%{_libdir}/lib* $RPM_BUILD_ROOT%{_libdir}/fglrx
281 mv -f $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/{,fglrx}/libglx.so
283 /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/fglrx
284 ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/fglrx/libGL.so
285 ln -sf libfglrx_dm.so.*.* $RPM_BUILD_ROOT%{_libdir}/fglrx/libfglrx_dm.so
287 cp -p common%{_includedir}/GL/*.h $RPM_BUILD_ROOT%{_includedir}/GL
288 echo "LIBGL_DRIVERS_PATH=%{_libdir}/xorg/modules/dri" > $RPM_BUILD_ROOT%{_sysconfdir}/env.d/LIBGL_DRIVERS_PATH
290 install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
291 %{__sed} -e 's|@@prefix@@|%{_prefix}|g;s|@@libdir@@|%{_libdir}|g;s|@@includedir@@|%{_includedir}|g;s|@@version@@|%{version}|g' < %{SOURCE3} \
292 > $RPM_BUILD_ROOT%{_pkgconfigdir}/gl.pc
296 rm -rf $RPM_BUILD_ROOT
298 %post libs -p /sbin/ldconfig
299 %postun libs -p /sbin/ldconfig
302 /sbin/chkconfig --add atieventsd
303 %service atieventsd restart
306 if [ "$1" = "0" ]; then
307 %service -q atieventsd stop
308 /sbin/chkconfig --del atieventsd
311 %post -n kernel%{_alt_kernel}-video-firegl
312 %depmod %{_kernel_ver}
314 %postun -n kernel%{_alt_kernel}-video-firegl
315 %depmod %{_kernel_ver}
317 %if %{with userspace}
319 %defattr(644,root,root,755)
320 %doc LICENSE.TXT common%{_docdir}/fglrx/*.html common%{_docdir}/fglrx/articles common%{_docdir}/fglrx/user-manual
321 %dir %{_sysconfdir}/ati
322 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ati/control
323 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ati/signature
324 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ati/amdpcsdb.default
325 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ati/atiogl.xml
326 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/env.d/LIBGL_DRIVERS_PATH
327 %attr(755,root,root) %{_bindir}/*
328 %attr(755,root,root) %{_sbindir}/amdnotifyui
329 %{_desktopdir}/*.desktop
332 %dir %{_libdir}/xorg/modules/extensions/fglrx
333 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/fglrx/libglx.so
335 %attr(755,root,root) %{_libdir}/xorg/modules/dri/fglrx_dri.so
336 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/fglrx_drv.so
337 %dir %{_libdir}/xorg/modules/linux
338 %attr(755,root,root) %{_libdir}/xorg/modules/linux/libfglrxdrm.so
339 %attr(755,root,root) %{_libdir}/xorg/modules/amdxmm.so
340 %attr(755,root,root) %{_libdir}/xorg/modules/glesx.so
341 %{_sysconfdir}/X11/xorg.conf.d/10-fglrx.conf
342 %{_sysconfdir}/X11/xorg.conf.d/10-fglrx-modules.conf
345 %defattr(644,root,root,755)
346 %dir %{_sysconfdir}/OpenCL
347 %dir %{_sysconfdir}/OpenCL/vendors
348 %{_sysconfdir}/OpenCL/vendors/*.icd
349 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/fglrx*.conf
350 %dir %{_libdir}/fglrx
351 %attr(755,root,root) %{_libdir}/fglrx/libAMDXvBA.so.*.*
352 %attr(755,root,root) %ghost %{_libdir}/fglrx/libAMDXvBA.so.1
353 %attr(755,root,root) %{_libdir}/fglrx/libOpenCL.so.1
354 %attr(755,root,root) %{_libdir}/fglrx/libSlotMaximizerAg.so
356 %attr(755,root,root) %{_libdir}/fglrx/libSlotMaximizerBe.so
358 %attr(755,root,root) %{_libdir}/fglrx/libXvBAW.so.*.*
359 %attr(755,root,root) %ghost %{_libdir}/fglrx/libXvBAW.so.1
360 %{_libdir}/fglrx/libAMDXvBA.cap
361 %attr(755,root,root) %{_libdir}/fglrx/libamdocl*.so
362 %attr(755,root,root) %{_libdir}/fglrx/libatiadlxx.so
363 %attr(755,root,root) %{_libdir}/fglrx/libaticalcl.so
364 %attr(755,root,root) %{_libdir}/fglrx/libaticaldd.so
365 %attr(755,root,root) %{_libdir}/fglrx/libaticalrt.so
366 %attr(755,root,root) %{_libdir}/fglrx/libatiuki.so.*.*
367 %attr(755,root,root) %ghost %{_libdir}/fglrx/libatiuki.so.1
368 %attr(755,root,root) %{_libdir}/fglrx/libGL.so.*.*
369 %attr(755,root,root) %ghost %{_libdir}/fglrx/libGL.so.1
370 %attr(755,root,root) %{_libdir}/fglrx/libfglrx_dm.so.*.*
373 %defattr(644,root,root,755)
374 %attr(755,root,root) %{_libdir}/fglrx/libfglrx_dm.so
375 %attr(755,root,root) %{_libdir}/fglrx/libGL.so
377 %{_pkgconfigdir}/gl.pc
380 %defattr(644,root,root,755)
381 %{_libdir}/fglrx/libfglrx_dm.a
384 %defattr(644,root,root,755)
385 %attr(754,root,root) /etc/rc.d/init.d/atieventsd
386 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/atieventsd
387 %attr(755,root,root) %{_sbindir}/atieventsd
388 %attr(755,root,root) %{_sysconfdir}/acpi/ati-powermode.sh
389 %{_sysconfdir}/acpi/events/*
390 %{_mandir}/man8/atieventsd.8*
394 %files -n kernel%{_alt_kernel}-video-firegl
395 %defattr(644,root,root,755)
396 /lib/modules/%{_kernel_ver}/misc/*.ko*