core/catalyst-lts/PKGBUILD

103 lines
3.4 KiB
Bash
Raw Normal View History

2011-02-26 04:11:31 +08:00
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
_kernver="3.0.35-2-lts"
2011-02-26 04:11:31 +08:00
pkgname=catalyst-lts
pkgver=12.4
pkgrel=2
2012-02-21 02:19:17 +08:00
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only"
2011-02-26 04:11:31 +08:00
arch=('i686' 'x86_64')
url="http://www.ati.amd.com"
2012-04-09 10:23:38 +08:00
screenshot="http://linuxtation3.files.wordpress.com/2007/03/pantallazo.jpg"
2011-02-26 04:11:31 +08:00
license=('custom')
depends=('linux-lts=3.0.35' 'catalyst-utils')
2012-03-20 01:12:34 +08:00
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-lts-headers')
2012-04-09 10:04:40 +08:00
conflicts=('catalyst-test' 'nvidia' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri')
2011-02-26 04:11:31 +08:00
install=catalyst.install
2012-03-20 01:12:34 +08:00
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.run
2011-02-26 04:11:31 +08:00
ati_make.sh
2012-04-09 10:04:40 +08:00
makefile_compat.patch
3.2.8.patch)
2011-02-26 04:11:31 +08:00
md5sums=('e57d65cb9c9fa470d6d80072d5ab2785'
2012-04-09 10:04:40 +08:00
'660396540b0ceaff71d6155c986734de'
'3e1b82bd69774ea808da69c983d6a43b'
'32c8142c73dcfed5db426f494feda9e3')
2011-02-26 04:11:31 +08:00
build() {
msg "Setting compilation variables ..."
2012-04-09 10:04:40 +08:00
# include ati_make.sh and use _ati_check function from it
2011-02-26 04:11:31 +08:00
. ati_make.sh
_ati_check
msg "Unpacking archive ..."
2012-03-20 01:12:34 +08:00
/bin/sh ./amd-driver-installer-${pkgver/./-}-x86.x86_64.run --extract archive_files
2011-02-26 04:11:31 +08:00
if [ "${CARCH}" = "x86_64" ]; then
BUILDARCH=x86_64
_archdir=x86_64
fi
if [ "${CARCH}" = "i686" ]; then
BUILDARCH=i386
_archdir=x86
fi
cd "${srcdir}/archive_files/"
2012-04-09 10:04:40 +08:00
2011-02-26 04:11:31 +08:00
msg "Applying patch(es) ..."
2012-04-09 10:04:40 +08:00
# makefile patch to choose arch_compat_alloc_user_space or older compat_alloc_user_space
# works only in combination with ati_make.sh script
patch -p1 -i ../makefile_compat.patch || return 1
patch -p1 -i ../3.2.8.patch || return 1
2011-02-26 04:11:31 +08:00
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
2012-04-09 10:04:40 +08:00
cp "${srcdir}/archive_files/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a" . || return 1
cp 2.6.x/Makefile . || return 1
2011-02-26 04:11:31 +08:00
msg "Compiling fglrx module ..."
2012-04-09 10:04:40 +08:00
# Compile module using _ati_check variables
make -C /lib/modules/${_kernver}/build SUBDIRS="`pwd`" ARCH=${BUILDARCH} \
MODFLAGS="-DMODULE -DATI -DFGL -DPAGE_ATTR_FIX=$PAGE_ATTR_FIX -DCOMPAT_ALLOC_USER_SPACE=$COMPAT_ALLOC_USER_SPACE $def_smp $def_modversions" \
PAGE_ATTR_FIX=$PAGE_ATTR_FIX COMPAT_ALLOC_USER_SPACE=$COMPAT_ALLOC_USER_SPACE modules || return 1
2011-02-26 04:11:31 +08:00
}
package() {
2012-04-09 10:04:40 +08:00
# here we are checking kernel's extramodules dir
for r in /lib/modules/*; do
s=${r:13}
if [[ ${s:0:3} = "ext" ]]; then
if [[ `cat ${r}/version | grep -c ${_kernver}` != 0 ]]; then
_destidir=${s}
sed -i -e "s/EXTRAMODULES=.*/EXTRAMODULES=${s}/" $startdir/catalyst.install
fi
elif [[ ${s} = ${_kernver} ]] && [[ ! -e ${r}/extramodules ]]; then
_destidir=${_kernver}/video
sed -i -e "s/EXTRAMODULES=.*/EXTRAMODULES=null/" $startdir/catalyst.install
fi
done
2011-02-26 04:11:31 +08:00
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
2012-04-09 10:04:40 +08:00
install -m755 -d "${pkgdir}/lib/modules/${_destidir}/" || return 1
install -m644 fglrx.ko "${pkgdir}/lib/modules/${_destidir}/" || return 1
find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" $startdir/catalyst.install
2011-02-26 04:11:31 +08:00
2012-04-09 10:04:40 +08:00
# License
2011-02-26 04:11:31 +08:00
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
2012-04-09 10:04:40 +08:00
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
2011-02-26 04:11:31 +08:00
2012-04-09 10:04:40 +08:00
sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" $startdir/*.install
2012-02-21 02:19:17 +08:00
}