rendered paste body# Maintainer: Vi0L0 <vi0l093@gmail.com>
# Great Contributor: Shen Miren <dickeny@gmail.com> (catalyst_build_module idea and some important code)
# Great Contributor: B. M. Kwapinski <lord.xml@web.de> (makepkg idea)
# Contributor: aidanlinz
# Contributor: Spasswolf
_kernver=`uname -r`
pkgname=catalyst-test
pkgver=11.4
pkgrel=111
pkgdesc="AMD/ATI drivers for Radeon brand cards (based on ubuntu fglrx with xserver 1.10 support). catalyst-utils + catalyst-generator"
arch=('i686' 'x86_64')
url="http://www.ati.amd.com"
license=('custom')
depends=('xorg-server>=1.9.0' 'xorg-server<1.11.0' 'kernel26>=2.6.29' 'kernel26<2.6.40' 'kernel26-headers' 'netkit-bsd-finger' 'libxrandr' 'libsm' 'fontconfig' 'libxcursor' 'libxi' 'gcc-libs' 'gcc>4.0.0' 'make' 'patch')
optdepends=('qt: to run ATi Catalyst Control Center (amdcccle)')
conflicts=('catalyst' 'catalyst-utils' 'nvidia' 'libgl' 'catalyst-leaked' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri' 'catalyst-daemon' 'catalyst-generator' 'catalyst-hook')
provides=('catalyst' 'libgl' "libatical=${pkgver}" 'catalyst-utils' 'catalyst-generator')
install=catalyst-test.install
#patch_file="fglrx-2.6.36.patch"
#patch_md5="eb58dbf993dbf8d77924055cc8caaeb6"
#patch_ver="2.6.36"
source=(http://archive.ubuntu.com/ubuntu/pool/restricted/f/fglrx-installer/fglrx-installer_8.840.orig.tar.gz
catalyst.sh
amdcccle.desktop
atieventsd.sh
catalyst_build_module
catalyst-PKGBUILD
catalyst.install
ati_make.sh
makefile_compat.patch
no_bkl.patch
2.6.39_bkl.patch)
# ${patch_file})
md5sums=('9cd68187fcc17acb9548b4daaddaa67e'
'bdafe749e046bfddee2d1c5e90eabd83'
'4efa8414a8fe9eeb50da38b5522ef81d'
'f729bf913613f49b0b9759c246058a87'
'0b784d5749ff7e5bf135e94440bdcd72'
'7d7c9267e26b61e2716bd54d5cd13101'
'903bafc6654db3c27b269823281b9b4d'
'660396541b0ceaff71d6155c986734de'
'3e1b82bd69774ea808da69c983d6a43b'
'6a6b2133aa6ef3bcd377731b19c0553a'
'eb24250f8e537273bae9dbd79a022d61')
# ${patch_md5})
build() {
##Preparing ubuntu's fglrx to work with old archs pkgbuild
tar zxvf fglrx-installer_8.840.orig.tar.gz
#cd fglrx-installer-8.723.1
mkdir common
mv etc usr lib common
mkdir archive_files
mv arch common xpic xpic_64a archive_files
}
package() {
## Install userspace tools and libraries
# Create directories
install -m755 -d "${pkgdir}/etc/ati"
install -m755 -d "${pkgdir}/etc/rc.d"
install -m755 -d "${pkgdir}/etc/profile.d"
install -m755 -d "${pkgdir}/etc/acpi/events"
install -m755 -d "${pkgdir}/etc/security/console.apps"
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/dri"
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/drivers"
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions"
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions/fglrx" # since 11.4
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/linux"
install -m755 -d "${pkgdir}/usr/lib/dri"
install -m755 -d "${pkgdir}/usr/lib/fglrx" # since 11.4
install -m755 -d "${pkgdir}/usr/bin"
install -m755 -d "${pkgdir}/usr/sbin"
install -m755 -d "${pkgdir}/usr/include/X11/extensions"
install -m755 -d "${pkgdir}/usr/include/GL"
install -m755 -d "${pkgdir}/usr/share/applications"
install -m755 -d "${pkgdir}/usr/share/ati/amdcccle"
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
install -m755 -d "${pkgdir}/usr/share/man/man8"
install -m755 -d "${pkgdir}/usr/share/pixmaps"
# X.org driver
if [ "${CARCH}" = "i686" ]; then
cd "${srcdir}/archive_files/xpic/usr/X11R6/lib/modules" || return 1
elif [ "${CARCH}" = "x86_64" ]; then
cd "${srcdir}/archive_files/xpic_64a/usr/X11R6/lib64/modules" || return 1
fi
# *.a added in 11.2, and removed in 11.3...
#install -m644 *.a "${pkgdir}/usr/lib/xorg/modules/" || return 1
install -m755 *.so "${pkgdir}/usr/lib/xorg/modules/" || return 1
install -m755 drivers/*.so "${pkgdir}/usr/lib/xorg/modules/drivers/" || return 1
install -m755 linux/*.so "${pkgdir}/usr/lib/xorg/modules/linux/" || return 1
#install -m755 extensions/libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/" || return 1 #before 11.4
install -m755 extensions/libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so" || return 1 # since 11.4
ln -sf /usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/fglrx/libglx.so" # since 11.4
ln -sf /usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/fglrx-libglx.so" # since 11.4
ln -sf /usr/lib/xorg/modules/extensions/fglrx/fglrx-libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" # since 11.4
#install -m755 extensions/libdri.so "${pkgdir}/usr/lib/xorg/modules/extensions/libdri.ati" || return 1
# Controlcenter / libraries
if [ "${CARCH}" = "i686" ]; then
cd "${srcdir}/archive_files/arch/x86/usr" || return 1
_lib=lib
elif [ "${CARCH}" = "x86_64" ]; then
cd "${srcdir}/archive_files/arch/x86_64/usr" || return 1
_lib=lib64
fi
install -m755 X11R6/bin/* "${pkgdir}/usr/bin/" || return 1
install -m755 sbin/* "${pkgdir}/usr/sbin/" || return 1
#install -m755 X11R6/${_lib}/*.so* "${pkgdir}/usr/lib/" || return #before 11.4
install -m755 X11R6/${_lib}/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/fglrx" || return 1 # since 11.4
ln -sf /usr/lib/fglrx/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/fglrx/libGL.so.1.2" # since 11.4
ln -sf /usr/lib/fglrx/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/fglrx-libGL.so.1.2" # since 11.4
ln -sf /usr/lib/fglrx/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so.1.2" # since 11.4
ln -sf /usr/lib/fglrx/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so.1" # since 11.4
ln -sf /usr/lib/fglrx/fglrx-libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so" # since 11.4
install -m755 X11R6/${_lib}/libAMDXvBA.so.1.0 "${pkgdir}/usr/lib/" || return 1 # since 11.4
install -m755 X11R6/${_lib}/libatiadlxx.so "${pkgdir}/usr/lib/" || return 1 # since 11.4
install -m755 X11R6/${_lib}/libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/" || return 1 # since 11.4
install -m755 X11R6/${_lib}/libXvBAW.so.1.0 "${pkgdir}/usr/lib/" || return 1 # since 11.4
install -m644 X11R6/${_lib}/*.a "${pkgdir}/usr/lib/" || return 1 # really needed?
install -m644 X11R6/${_lib}/*.cap "${pkgdir}/usr/lib/" || return 1
install -m755 X11R6/${_lib}/modules/dri/*.so "${pkgdir}/usr/lib/xorg/modules/dri/" || return 1
install -m755 ${_lib}/*.so* "${pkgdir}/usr/lib/" || return 1
## QT libs (only 2 files) - un-comment 2 lines below if you don't want to install qt package
# install -m755 -d "${pkgdir}/usr/share/ati/${_lib}"
# install -m755 share/ati/${_lib}/*.so* "${pkgdir}/usr/share/ati/${_lib}/" || return 1
ln -sf /usr/lib/xorg/modules/dri/fglrx_dri.so ${pkgdir}/usr/lib/dri/fglrx_dri.so
ln -sf libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/libfglrx_dm.so.1"
ln -sf libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/libfglrx_dm.so"
#ln -sf libfglrx_pp.so.1.0 "${pkgdir}/usr/lib/libfglrx_pp.so.1"
#ln -sf libfglrx_tvout.so.1.0 "${pkgdir}/usr/lib/libfglrx_tvout.so.1"
#ln -sf libfglrx_gamma.so.1.0 "${pkgdir}/usr/lib/libfglrx_gamma.so.1"
#ln -sf libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so.1" #before 11.4
#ln -sf libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so" #before 11.4
ln -sf libatiuki.so.1.0 "${pkgdir}/usr/lib/libatiuki.so.1"
ln -sf libatiuki.so.1.0 "${pkgdir}/usr/lib/libatiuki.so"
cd "${srcdir}"/archive_files/common
install -m644 etc/ati/* "${pkgdir}/etc/ati/" || return 1
chmod 755 "${pkgdir}/etc/ati/authatieventsd.sh" || return 1
#security provided with 10.9, is it working fine?
install -m644 etc/security/console.apps/amdcccle-su "${pkgdir}/etc/security/console.apps/" || return 1
# *.h removed in 11.3...
#install -m644 usr/X11R6/include/X11/extensions/*.h "${pkgdir}/usr/include/X11/extensions/" || return 1
install -m644 usr/X11R6/bin/amdupdaterandrconfig "${pkgdir}/usr/bin/" || return 1
install -m644 usr/include/GL/*.h "${pkgdir}/usr/include/GL/" || return 1
install -m755 usr/sbin/*.sh "${pkgdir}/usr/sbin/" || return 1
install -m644 usr/share/ati/amdcccle/* "${pkgdir}/usr/share/ati/amdcccle/" || return 1
install -m644 usr/share/icons/*.xpm "${pkgdir}/usr/share/pixmaps/" || return 1
install -m644 usr/share/man/man8/*.8 "${pkgdir}/usr/share/man/man8/" || return 1
install -m644 "${srcdir}/amdcccle.desktop" "${pkgdir}/usr/share/applications/" || return 1
# ACPI example files
install -m755 usr/share/doc/fglrx/examples/etc/acpi/*.sh "${pkgdir}/etc/acpi/" || return 1
sed -i -e 's/usr\/X11R6/usr/g' "${pkgdir}/etc/acpi/ati-powermode.sh" || return 1
install -m644 usr/share/doc/fglrx/examples/etc/acpi/events/* "${pkgdir}/etc/acpi/events/" || return 1
# Add ATI Events Daemon launcher
install -m755 "${srcdir}/atieventsd.sh" "${pkgdir}/etc/rc.d/atieventsd" || return 1
# thanks to cerebral, we dont need that damned symlink
install -m755 "${srcdir}/catalyst.sh" "${pkgdir}/etc/profile.d/" || return 1
# License
install -m644 "${srcdir}/archive_files/common/usr/share/doc/fglrx/ATI_LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
## catalyst-generator section
# Prepare modules source files
_archdir=x86_64
test "${CARCH}" = "i686" && _archdir=x86
cd "${srcdir}/archive_files/"
install -m755 -d "${pkgdir}/usr/share/ati/build_mod" || return 1
install -m644 common/lib/modules/fglrx/build_mod/*.c \
"${pkgdir}/usr/share/ati/build_mod/" || return 1
install -m644 common/lib/modules/fglrx/build_mod/*.h \
"${pkgdir}/usr/share/ati/build_mod/" || return 1
install -m644 common/lib/modules/fglrx/build_mod/2.6.x/Makefile \
"${pkgdir}/usr/share/ati/build_mod/" || return 1
install -m644 arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a \
"${pkgdir}/usr/share/ati/build_mod/" || return 1
install -m755 -d "${pkgdir}/usr/bin" || return 1
install -m755 "${srcdir}/catalyst_build_module" "${pkgdir}/usr/bin" || return 1
sed -i -e "s/catver=.*/catver=${pkgver}-${pkgrel}/" "${pkgdir}/usr/bin/catalyst_build_module"
# catalyst pkgbuild
install -m644 "${srcdir}/catalyst-PKGBUILD" "${pkgdir}/usr/share/ati/build_mod/PKGBUILD" || return 1
sed -i -e "s/pkgver=.*/pkgver=${pkgver}/" "${pkgdir}/usr/share/ati/build_mod/PKGBUILD" || return 1
sed -i -e "s/pkgrel=.*/pkgrel=${pkgrel}/" "${pkgdir}/usr/share/ati/build_mod/PKGBUILD" || return 1
# catalyst.install
install -m644 "${srcdir}/catalyst.install" "${pkgdir}/usr/share/ati/build_mod/" || return 1
# modified ati's make.sh script
install -m755 "${srcdir}/ati_make.sh" "${pkgdir}/usr/share/ati/build_mod/" || return 1
# makefile patch to choose arch_compat_alloc_user_space or older compat_alloc_user_space
# works only in combination with ati_make.sh script
install -m644 "${srcdir}/makefile_compat.patch" "${pkgdir}/usr/share/ati/build_mod/" || return 1
# patch used when kernel's # CONFIG_BKL is not set
install -m644 "${srcdir}/no_bkl.patch" "${pkgdir}/usr/share/ati/build_mod/" || return 1
# 2.6.39 patch - in .39 bkl was completely removed
install -m644 "${srcdir}/2.6.39_bkl.patch" "${pkgdir}/usr/share/ati/build_mod/" || return 1
# optional patch
# for ver in ${patch_ver}; do
# install -m644 "${srcdir}/${patch_file}" \
# "${pkgdir}/usr/share/ati/build_mod/${ver}.patch" || return 1
# done
}