Contents of /trunk/nonfree/ati-drivers/ati-drivers-12.3-r1.smage2
Parent Directory | Revision Log
Revision 12721 -
(show annotations)
(download)
Fri Jun 29 08:51:36 2012 UTC (12 years, 3 months ago) by niro
File size: 8754 byte(s)
Fri Jun 29 08:51:36 2012 UTC (12 years, 3 months ago) by niro
File size: 8754 byte(s)
-ver bump to 12.3-r1
1 | # $Id$ |
2 | |
3 | PNAME="ati-drivers" |
4 | PVER="12.3" |
5 | PBUILD="r1" |
6 | |
7 | PCAT="x11-drivers" |
8 | |
9 | DESCRIPTION="Display driver for the ATI Radeon and FireGL graphics accelerators with OpenGL suport." |
10 | HOMEPAGE="http://www.ati.com/" |
11 | |
12 | sminclude xorg mtools xdg |
13 | |
14 | COMMON_DEPEND=">= x11-base/xorg-server-1.11 |
15 | >= x11-libs/libX11-1.4 |
16 | >= x11-libs/libXext-1.3 |
17 | >= x11-libs/libXinerama-1.1 |
18 | >= x11-libs/libXrandr-1.3 |
19 | >= x11-libs/libXrender-0.9 |
20 | >= x11-apps/xauth-1" |
21 | |
22 | QT4_DEPEND=">= x11-libs/libICE-1 |
23 | >= x11-libs/libSM-1.2 |
24 | >= x11-libs/libXcursor-1.1 |
25 | >= x11-libs/libXfixes-5 |
26 | >= x11-libs/libXxf86vm-1.1 |
27 | >= x11-libs/qt4-core-4.8 |
28 | >= x11-libs/qt4-gui-4.8" |
29 | |
30 | SDEPEND=">= x11-proto/inputproto-2 |
31 | >= x11-proto/xf86miscproto-0.9 |
32 | >= x11-proto/xf86vidmodeproto-2.3 |
33 | >= x11-proto/xineramaproto-1.2 |
34 | >= x11-libs/libXtst-1.2 |
35 | >= sys-apps/findutils-4.4 |
36 | >= app-misc/pax-utils-0.3" |
37 | |
38 | PROVIDE="virtual/opengl |
39 | virtual/ati-drivers" |
40 | |
41 | # both files must be fetch or our md5-logic breaks |
42 | SRCFILE="amd-driver-installer-12-3-x86.x86_64.run" |
43 | SRCDIR="${BUILDDIR}/ati-drivers" |
44 | |
45 | # ati-module-sh cvs revision |
46 | MODULESH_REV=1.2 |
47 | |
48 | SRC_URI=( |
49 | http://www2.ati.com/drivers/linux/${SRCFILE} |
50 | mirror://${PNAME}/${SRCFILE} |
51 | mirror://${PNAME}/ati-module.sh-${MODULESH_REV} |
52 | mirror://${PNAME}/switchlibGL |
53 | mirror://${PNAME}/switchlibglx |
54 | ) |
55 | |
56 | # it's fatal if these drivers got stripped |
57 | msetfeature "!strip" |
58 | |
59 | src_prepare() |
60 | { |
61 | install -d ${SRCDIR} || die |
62 | cd ${SRCDIR} |
63 | sh ${SOURCEDIR}/${PNAME}/${SRCFILE} --extract ${SRCDIR} || die |
64 | } |
65 | |
66 | # fake (needed with the include of xorg.sminc) |
67 | src_compile() { return 0; } |
68 | |
69 | arch_src_install() |
70 | { |
71 | cd ${SRCDIR} |
72 | |
73 | # arch specific stuff |
74 | local arch="$1" |
75 | local abi |
76 | local abi_libdir |
77 | local modules_dir |
78 | case ${arch} in |
79 | x86_64) |
80 | abi="64" |
81 | abi_libdir="lib${abi}" |
82 | modules_dir="xpic_${abi}a" |
83 | ;; |
84 | i*86) |
85 | abi="32" |
86 | abi_libdir="lib" |
87 | modules_dir="xpic" |
88 | ;; |
89 | esac |
90 | local arch_dir="arch/${arch/i*86/x86}" |
91 | local ati_root="/usr/${abi_libdir}/opengl/ati" |
92 | local x11_libdir="/usr/${abi_libdir}/xorg" |
93 | |
94 | # gl libraries |
95 | minstalldir ${ati_root}/lib || die |
96 | minstallexec ${arch_dir}/usr/X11R6/${abi_libdir}/fglrx/fglrx-libGL.so.1.2 ${ati_root}/lib/libGL.so.1.2 || die |
97 | mlink libGL.so.1.2 ${ati_root}/lib/libGL.so.1 || die |
98 | mlink libGL.so.1.2 ${ati_root}/lib/libGL.so || die |
99 | |
100 | # same with extensions |
101 | minstalldir ${ati_root}/extensions || die |
102 | minstallexec ${modules_dir}/usr/X11R6/${abi_libdir}/modules/extensions/fglrx/fglrx-libglx.so ${ati_root}/extensions/libglx.so || die |
103 | |
104 | # other libs |
105 | minstalldir /usr/${abi_libdir} || die |
106 | # everything except for the libGL.so installed some row above |
107 | local i |
108 | for i in $(find ${arch_dir}/usr/X11R6/${abi_libdir} -maxdepth 1 -type f -name '*.so*' -not -name '*libGL.so*') |
109 | do |
110 | minstallexec ${i} /usr/${abi_libdir} || die |
111 | done |
112 | for i in $(find ${arch_dir}/usr/X11R6/${abi_libdir} -maxdepth 1 -type f -not -name '*.so*') |
113 | do |
114 | minstallfile ${i} /usr/${abi_libdir} || die |
115 | done |
116 | |
117 | # install drivers |
118 | minstalldir ${x11_libdir}/modules/drivers || die |
119 | minstallexec ${modules_dir}/usr/X11R6/${abi_libdir}/modules/drivers/fglrx_drv.so ${x11_libdir}/modules/drivers || die |
120 | |
121 | # xorg-modules |
122 | minstallexec ${modules_dir}/usr/X11R6/${abi_libdir}/modules/amdxmm.so ${x11_libdir}/modules || die |
123 | minstallexec ${modules_dir}/usr/X11R6/${abi_libdir}/modules/glesx.so ${x11_libdir}/modules || die |
124 | |
125 | # dri modules |
126 | minstalldir /usr/${abi_libdir}/dri || die |
127 | minstallexec ${arch_dir}/usr/X11R6/${abi_libdir}/modules/dri/fglrx_dri.so /usr/${abi_libdir}/dri || die |
128 | |
129 | # drm module |
130 | minstalldir ${x11_libdir}/modules/linux || die |
131 | minstallexec ${modules_dir}/usr/X11R6/${abi_libdir}/modules/linux/libfglrxdrm.so ${x11_libdir}/modules/linux || die |
132 | |
133 | # amd cal and opencl libs |
134 | minstalldir /usr/${abi_libdir}/OpenCL/vendors/amd || die |
135 | minstallexec ${arch_dir}/usr/${abi_libdir}/libamdocl\*.so\* /usr/${abi_libdir}/OpenCL/vendors/amd || die |
136 | minstallexec ${arch_dir}/usr/${abi_libdir}/libOpenCL\*.so\* /usr/${abi_libdir}/OpenCL/vendors/amd || die |
137 | mlink libOpenCL.so.1 /usr/${abi_libdir}/OpenCL/vendors/amd/libOpenCL.so || die |
138 | minstallexec ${arch_dir}/usr/${abi_libdir}/libati\*.so\* /usr/${abi_libdir} || die |
139 | minstalldir /etc/OpenCL/vendors || die |
140 | MCONFIG="/etc/OpenCL/vendors/amdocl${abi}" |
141 | mclearconfig || die |
142 | maddconfig "/usr/${abi_libdir}/OpenCL/vendors/amd/libamdocl${abi}.so" || die |
143 | |
144 | # environment |
145 | minstalldir /etc/env.d || die |
146 | MCONFIG="/etc/env.d/09ati-m${abi}" |
147 | mclearconfig || die |
148 | maddconfig "PATH=/opt/ati/bin" |
149 | maddconfig "ROOTPATH=/opt/ati/bin" |
150 | maddconfig "LIBGL_DRIVERS_PATH=/usr/${abi_libdir}/dri" |
151 | |
152 | # apps |
153 | minstalldir /opt/ati/bin || die |
154 | minstallexec ${arch_dir}/usr/sbin/atieventsd /opt/ati/bin || die |
155 | # qt4 |
156 | minstallexec ${arch_dir}/usr/sbin/amdnotifyui /opt/ati/bin || die |
157 | # clinfo |
158 | minstallexec ${arch_dir}/usr/bin/clinfo /opt/ati/bin || die |
159 | # other |
160 | minstallexec ${arch_dir}/usr/X11R6/bin/\* /opt/ati/bin || die |
161 | |
162 | # config stuff |
163 | minstalldir /etc/ati || die |
164 | minstallfile common/etc/ati/logo\* /etc/ati || die |
165 | minstallfile common/etc/ati/control /etc/ati || die |
166 | minstallfile common/etc/ati/atiogl.xml /etc/ati || die |
167 | minstallfile common/etc/ati/signature /etc/ati || die |
168 | minstallfile common/etc/ati/amdpcsdb.default /etc/ati || die |
169 | minstallexec common/etc/ati/authatieventsd.sh /etc/ati || die |
170 | # acpi config stuff |
171 | minstalldir /etc/acpi/events || die |
172 | minstallexec common/usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh /etc/acpi || die |
173 | minstallfile common/usr/share/doc/fglrx/examples/etc/acpi/events/\* /etc/acpi/events || die |
174 | |
175 | # includes |
176 | minstalldir /usr |
177 | mcopy -R common/usr/include /usr || die |
178 | # includes ( no includes provided here atm) |
179 | # minstalldir /usr/include/X11/extensions || die |
180 | # minstallfile common/usr/X11R6/include/X11/extensions/\*.h /usr/include/X11/extensions || die |
181 | |
182 | # for better support install systeminfo script |
183 | minstalldir /usr/sbin || die |
184 | minstallexec common/usr/sbin/atigetsysteminfo.sh /usr/sbin || die |
185 | |
186 | # qt4 stuff |
187 | minstalldir /usr/share || die |
188 | mcopy -R common/usr/share/ati /usr/share || die |
189 | minstallpixmap common/usr/share/icons/ccc_large.xpm || die |
190 | minstall_desktop_icon \ |
191 | --name 'ATI Catalyst Control Center' \ |
192 | --comment 'ATI graphics adapter settings' \ |
193 | --exec amdcccle \ |
194 | --file amdcccle \ |
195 | --icon ccc_large.xpm \ |
196 | --categories System \ |
197 | || die |
198 | |
199 | # install all related docs |
200 | minstalldocs common/usr/share/doc/fglrx/*LICENSE* || die |
201 | minstallhtml common/usr/share/doc/fglrx/*.html || die |
202 | mcopy -R common/usr/share/doc/fglrx/articles /usr/share/doc/${PNAME}-${PVER}/html || die |
203 | mcopy -R common/usr/share/doc/fglrx/user-manual /usr/share/doc/${PNAME}-${PVER}/html || die |
204 | |
205 | # man pages |
206 | minstallman common/usr/share/man/man8/atieventsd.8 || die |
207 | |
208 | # atieventsd initscript! |
209 | |
210 | # powerexpress stuff |
211 | minstalldir /usr/${abi_libdir}/fglrx || die |
212 | minstallexec -s switchlibGL /usr/${abi_libdir}/fglrx || die |
213 | minstallexec -s switchlibglx /usr/${abi_libdir}/fglrx || die |
214 | |
215 | # create a driver tarball |
216 | minstalldir /usr/src/ati-drivers || die |
217 | install -d ${BUILDDIR}/temp || die |
218 | cp -R ${SRCDIR}/common/lib/modules/fglrx/build_mod ${BUILDDIR}/temp/ati-drivers || die |
219 | # fix link issues; must be linked against the used xorg-lib |
220 | # so we copy them into our tarball |
221 | cp ${SRCDIR}/${arch_dir}/lib/modules/fglrx/build_mod/libfglrx_ip.a ${BUILDDIR}/temp/ati-drivers || die |
222 | pushd ${BUILDDIR}/temp |
223 | # from gentoo: |
224 | # When built with ati's make.sh it defines a bunch of macros if |
225 | # certain .config values are set, falling back to less reliable |
226 | # detection methods if linux/autoconf.h is not available. We |
227 | # simply use the linux/autoconf.h settings directly, bypassing the |
228 | # detection script. |
229 | sed -i "s:__SMP__:CONFIG_SMP:" ati-drivers/*.c ati-drivers/*.h || die |
230 | sed -i "s:ifdef\ MODVERSIONS:ifdef\ CONFIG_MODVERSIONS:" ati-drivers/*.c ati-drivers/*.h || die |
231 | tar cvjf ${BINDIR}/usr/src/ati-drivers/ati-drivers-${PVER}.tar.bz2 ati-drivers/ || die |
232 | # install module-build script |
233 | minstallexec -s ati-module.sh-${MODULESH_REV} /usr/src/ati-drivers/ati-module.sh || die |
234 | # fix pver in ati-module.sh |
235 | sed -i "s:@@PVER@@:${PVER}:" ${BINDIR}/usr/src/ati-drivers/ati-module.sh || die |
236 | popd |
237 | } |
238 | |
239 | src_install() |
240 | { |
241 | # honor multilib |
242 | if [[ $(mlibdir) != lib ]] |
243 | then |
244 | arch_src_install "i686" |
245 | arch_src_install "${ARCH}" |
246 | else |
247 | arch_src_install "${ARCH}" |
248 | fi |
249 | } |
250 | |
251 | postinstall() |
252 | { |
253 | ${MROOT}/usr/sbin/opengl-update --use-old ati |
254 | |
255 | echo |
256 | echo "To use these driver you need to compile the kernel module first." |
257 | echo "Goto /usr/src/ati-drivers and run ati-module.sh:" |
258 | echo " 'cd /usr/src/ati-drivers && ./ati-module.sh'" |
259 | echo |
260 | echo "Please switch your opengl extension with: " |
261 | echo " 'opengl-update ati'" |
262 | echo |
263 | echo "Next step is to create a new xorg.conf with" |
264 | echo " 'aticonfig --initial --input=/etc/X11/xorg.conf'" |
265 | echo |
266 | echo "Run 'aticonfig --help' for more options." |
267 | echo |
268 | } |