Magellan Linux

Annotation of /trunk/nonfree/ati-drivers/ati-drivers-12.4-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 12722 - (hide annotations) (download)
Fri Jun 29 08:51:45 2012 UTC (11 years, 11 months ago) by niro
File size: 8771 byte(s)
-ver bump to 12.4-r1
1 niro 12722 # $Id$
2    
3     PNAME="ati-drivers"
4     PVER="12.4"
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     COMMON_DEPEND=">= x11-base/xorg-server-1.11
13     >= x11-libs/libX11-1.4
14     >= x11-libs/libXext-1.3
15     >= x11-libs/libXinerama-1.1
16     >= x11-libs/libXrandr-1.3
17     >= x11-libs/libXrender-0.9
18     >= x11-apps/xauth-1"
19    
20     QT4_DEPEND=">= x11-libs/libICE-1
21     >= x11-libs/libSM-1.2
22     >= x11-libs/libXcursor-1.1
23     >= x11-libs/libXfixes-5
24     >= x11-libs/libXxf86vm-1.1
25     >= x11-libs/qt4-core-4.8
26     >= x11-libs/qt4-gui-4.8"
27    
28     SDEPEND=">= x11-proto/inputproto-2
29     >= x11-proto/xf86miscproto-0.9
30     >= x11-proto/xf86vidmodeproto-2.3
31     >= x11-proto/xineramaproto-1.2
32     >= x11-libs/libXtst-1.2
33     >= sys-apps/findutils-4.4
34     >= app-misc/pax-utils-0.3"
35    
36     PROVIDE="virtual/opengl
37     virtual/ati-drivers"
38    
39     # both files must be fetch or our md5-logic breaks
40     SRCFILE="amd-driver-installer-${PVER%.*}-${PVER#*.}-x86.x86_64.run"
41     SRCDIR="${BUILDDIR}/ati-drivers"
42    
43     # ati-module-sh cvs revision
44     MODULESH_REV=1.2
45    
46     sminclude xorg mtools xdg
47    
48     # it's fatal if these drivers got stripped
49     msetfeature "!strip"
50    
51     SRC_URI=(
52     http://www2.ati.com/drivers/linux/${SRCFILE}
53     mirror://${PNAME}/${SRCFILE}
54     mirror://${PNAME}/ati-module.sh-${MODULESH_REV}
55     mirror://${PNAME}/switchlibGL
56     mirror://${PNAME}/switchlibglx
57     )
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     }