Annotation of /trunk/nonfree/ati-drivers/ati-drivers-12.3-r1.smage2
Parent Directory | Revision Log
Revision 12721 -
(hide 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 | niro | 12721 | # $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 | } |