3 %bcond_without dist_kernel # without distribution kernel
4 %bcond_without kernel # don't build kernel modules
5 %bcond_without smp # don't build SMP module
6 %bcond_without userspace # don't build userspace tools
7 %bcond_with verbose # verbose build (V=1)
8 %bcond_without incall # include all sources in srpm
10 %define _min_eq_x11 1:6.9.0
11 %define _max_x11 1:7.0.0
15 %undefine with_dist_kernel
22 %define arch_sufix _64a
23 %define arch_dir x86_64
27 Summary: Linux Drivers for ATI graphics accelerators
28 Summary(pl): Sterowniki do akceleratorów graficznych ATI
29 Name: X11-driver-firegl
32 License: ATI Binary (parts are GPL)
34 Source0: http://dlmdownloads.ati.com/drivers/linux/ati-driver-installer-%{version}.run
35 # Source0-md5: 58189d7cc3625e399b1a434df893100f
36 Patch0: firegl-panel.patch
37 Patch1: firegl-panel-ugliness.patch
38 Patch2: %{name}-kh.patch
39 Patch3: %{name}-viak8t.patch
40 Patch4: %{name}-force-define-AGP.patch
41 URL: http://www.ati.com/support/drivers/linux/radeon-linux.html
42 #BuildRequires: X11-devel >= %{_min_eq_x11} # disabled for now
43 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.14}
44 %{?with_userspace:BuildRequires: qt-devel}
45 BuildRequires: rpmbuild(macros) >= 1.308
46 Requires: X11-OpenGL-core >= %{_min_eq_x11}
48 %{?with_kernel:Requires: X11-driver-firegl(kernel)}
49 Requires: X11-libs < %{_max_x11}
50 Requires: X11-libs >= %{_min_eq_x11}
51 Requires: X11-modules < %{_max_x11}
52 Requires: X11-modules >= %{_min_eq_x11}
53 Provides: X11-OpenGL-libGL
54 Provides: XFree86-OpenGL-libGL
56 Obsoletes: X11-OpenGL-libGL
57 Obsoletes: XFree86-OpenGL-libGL
58 Obsoletes: XFree86-driver-firegl
59 ExclusiveArch: i586 i686 athlon pentium3 pentium4 %{x8664}
60 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62 %define _noautoreqdep libGL.so.1
64 %define _prefix /usr/X11R6
65 %define _mandir %{_prefix}/man
68 Display driver files for the ATI Radeon 8500, 9700, Mobility M9 and
69 the FireGL 8700/8800, E1, Z1/X1 graphics accelerators. This package
70 provides 2D display drivers and hardware accelerated OpenGL.
73 Sterowniki do kart graficznych ATI Radeon 8500, 9700, Mobility M9 oraz
74 graficznych akceleratorów FireGL 8700/8800, E1, Z1/X1. Pakiet
75 dostarcza sterowniki obs³uguj±ce wy¶wietlanie 2D oraz sprzêtowo
78 %package -n kernel%{_alt_kernel}-video-firegl
79 Summary: ATI kernel module for FireGL support
80 Summary(pl): Modu³ j±dra oferuj±cy wsparcie dla ATI FireGL
81 Release: %{_rel}@%{_kernel_ver_str}
84 %{?with_dist_kernel:%requires_releq_kernel_up}
85 Requires(post,postun): /sbin/depmod
86 Provides: X11-driver-firegl(kernel)
88 %description -n kernel%{_alt_kernel}-video-firegl
89 ATI kernel module for FireGL support.
91 %description -n kernel%{_alt_kernel}-video-firegl -l pl
92 Modu³ j±dra oferuj±cy wsparcie dla ATI FireGL.
94 %package -n kernel%{_alt_kernel}-smp-video-firegl
95 Summary: ATI kernel module for FireGL support
96 Summary(pl): Modu³ j±dra oferuj±cy wsparcie dla ATI FireGL
97 Release: %{_rel}@%{_kernel_ver_str}
100 %{?with_dist_kernel:%requires_releq_kernel_smp}
101 Requires(post,postun): /sbin/depmod
102 Provides: X11-driver-firegl(kernel)
104 %description -n kernel%{_alt_kernel}-smp-video-firegl
105 ATI kernel module for FireGL support.
107 %description -n kernel%{_alt_kernel}-smp-video-firegl -l pl
108 Modu³ j±dra oferuj±cy wsparcie dla ATI FireGL.
113 sh %{SOURCE0} --extract .
115 cp arch/%{arch_dir}/lib/modules/fglrx/build_mod/* common/lib/modules/fglrx/build_mod
118 tar -xzf common/usr/src/ATI/fglrx_panel_sources.tgz -C panel_src
122 %{?with_dist_kernel:%patch2 -p1}
127 install -d common%{_prefix}/{%{_lib},bin}
128 cp -r %{x11ver}%{arch_sufix}%{_prefix}/%{_lib}/* common%{_prefix}/%{_lib}
129 cp -r %{x11ver}%{arch_sufix}%{_bindir}/* common%{_bindir}
130 cp -r arch/%{arch_dir}%{_prefix}/%{_lib}/* common%{_prefix}/%{_lib}
131 cp -r arch/%{arch_dir}%{_bindir}/* common%{_bindir}
135 cd common/lib/modules/fglrx/build_mod
136 cp -f 2.6.x/Makefile .
137 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
138 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
141 install -d o/include/linux
142 ln -sf %{_kernelsrcdir}/config-$cfg o/.config
143 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
144 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
145 %{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts -j1
146 %{__make} -C %{_kernelsrcdir} clean \
147 RCS_FIND_IGNORE="-name '*.ko' -o" \
150 %{__make} -C %{_kernelsrcdir} modules \
158 %if %{with userspace}
159 %{__make} -C panel_src \
162 CCFLAGS="%{rpmcflags} -DFGLRX_USE_XEXTENSIONS" \
168 rm -rf $RPM_BUILD_ROOT
171 cd common/lib/modules/fglrx/build_mod
172 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
174 install fglrx-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
175 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/fglrx.ko
176 %if %{with smp} && %{with dist_kernel}
177 install fglrx-smp.ko \
178 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/fglrx.ko
183 %if %{with userspace}
184 install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir}/X11/extensions} \
185 $RPM_BUILD_ROOT/usr/{%{_lib},include/GL}
187 install common%{_bindir}/{fgl_glxgears,fglrxinfo,aticonfig} \
188 $RPM_BUILD_ROOT%{_bindir}
189 install panel_src/fireglcontrol.qt3.gcc%(gcc -dumpversion) \
190 $RPM_BUILD_ROOT%{_bindir}/fireglcontrol
191 cp -r common%{_prefix}/%{_lib}/* $RPM_BUILD_ROOT%{_libdir}
193 ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/libGL.so
195 # OpenGL ABI for Linux compatibility
196 ln -sf %{_libdir}/libGL.so.1 $RPM_BUILD_ROOT/usr/%{_lib}/libGL.so.1
197 ln -sf %{_libdir}/libGL.so $RPM_BUILD_ROOT/usr/%{_lib}/libGL.so
199 install common/usr/include/GL/*.h $RPM_BUILD_ROOT/usr/include/GL
200 install common%{_includedir}/X11/extensions/*.h $RPM_BUILD_ROOT%{_includedir}/X11/extensions
204 rm -rf $RPM_BUILD_ROOT
206 %post -p /sbin/ldconfig
207 %postun -p /sbin/ldconfig
209 %post -n kernel%{_alt_kernel}-video-firegl
210 %depmod %{_kernel_ver}
212 %postun -n kernel%{_alt_kernel}-video-firegl
213 %depmod %{_kernel_ver}
215 %post -n kernel%{_alt_kernel}-smp-video-firegl
216 %depmod %{_kernel_ver}smp
218 %postun -n kernel%{_alt_kernel}-smp-video-firegl
219 %depmod %{_kernel_ver}smp
221 %if %{with userspace}
223 %defattr(644,root,root,755)
224 %attr(755,root,root) %{_bindir}/*
225 %attr(755,root,root) %{_libdir}/libGL.so.*.*
226 %attr(755,root,root) %{_libdir}/libGL.so
227 %attr(755,root,root) %{_libdir}/libfglrx_dm.so.*.*
228 %attr(755,root,root) %{_libdir}/libfglrx_gamma.so.*.*
229 %attr(755,root,root) %{_libdir}/libfglrx_pp.so.*.*
230 # Linux OpenGL ABI compatibility symlinks
231 %attr(755,root,root) /usr/%{_lib}/libGL.so.1
232 %attr(755,root,root) /usr/%{_lib}/libGL.so
234 %attr(755,root,root) %{_libdir}/modules/dri/atiogl_a_dri.so
235 %attr(755,root,root) %{_libdir}/modules/dri/fglrx_dri.so
236 %attr(755,root,root) %{_libdir}/modules/drivers/fglrx_drv.so
237 %attr(755,root,root) %{_libdir}/modules/linux/libfglrxdrm.so
238 %doc ATI_LICENSE.TXT common%{_docdir}/fglrx/*.html common%{_docdir}/fglrx/articles common%{_docdir}/fglrx/release-notes common%{_docdir}/fglrx/user-manual
241 #%attr(755,root,root) %{_libdir}/libfglrx_gamma.so
242 #%{_includedir}/X11/include/libfglrx_gamma.h
243 #/usr/include/GL/glATI.h
244 #/usr/include/GL/glxATI.h
247 #%{_libdir}/libfglrx_gamma.a
248 #%{_libdir}/libfglrx_pp.a
252 %files -n kernel%{_alt_kernel}-video-firegl
253 %defattr(644,root,root,755)
254 /lib/modules/%{_kernel_ver}/misc/*.ko*
256 %if %{with smp} && %{with dist_kernel}
257 %files -n kernel%{_alt_kernel}-smp-video-firegl
258 %defattr(644,root,root,755)
259 /lib/modules/%{_kernel_ver}smp/misc/*.ko*