core/catalyst/PKGBUILD

125 lines
4.6 KiB
Bash
Raw Normal View History

2010-05-25 02:00:56 +08:00
#
# Chakra Packages for Chakra, part of chakra-project.org
2013-10-22 03:37:28 +08:00
#
2010-05-25 02:00:56 +08:00
2014-06-22 02:44:39 +08:00
_extramodules=extramodules-3.15.1-CHAKRA
_kernver=$(cat /lib/modules/${_extramodules}/version)
2010-08-08 18:57:30 +08:00
pkgname=(catalyst chd-catalyst)
2014-06-22 02:44:39 +08:00
pkgver=14.4
2014-06-22 06:29:49 +08:00
pkgrel=2
2014-06-22 02:44:39 +08:00
_amdver=14.10.1006.1001
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED"
screenshot="http://linuxtation3.files.wordpress.com/2007/03/pantallazo.jpg"
arch=('x86_64')
2014-06-22 02:44:39 +08:00
url="http://www.amd.com"
2010-05-25 02:00:56 +08:00
license=('custom')
2014-06-22 02:44:39 +08:00
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-headers')
conflicts=('nvidia' 'xf86-video-ati' 'xf86-video-radeonhd' 'catalyst-legacy')
source=(
http://www2.ati.com/drivers/linux/amd-catalyst-${pkgver/./-}-rev2-linux-x86-x86-64-may6.zip
2011-02-16 08:05:36 +08:00
ati_make.sh
2014-06-22 02:44:39 +08:00
makefile_compat.patch
lano1106_fglrx_intel_iommu.patch
lano1106_kcl_agp_13_4.patch
lano1106_fglrx-13.8_proc.patch
2014-06-22 02:44:39 +08:00
cold-fglrx-3.14-current_euid.patch
ati-compat_alloc_user_space.patch
fglrx_supported)
md5sums=('6e9483e8d34aea68af22fbb70116275f'
'fd98b7e486d7fd4cad8de7b95b5b031e'
2012-04-09 10:04:40 +08:00
'3e1b82bd69774ea808da69c983d6a43b'
'5184b94a2a40216a67996999481dd9ee'
'c5156eddf81c8a1719b160d05a2e8d67'
'2ab4837233de42332753882445373d7b'
2014-06-22 02:44:39 +08:00
'ba33b6ef10896d3e1b5e4cd96390b771'
'2fa9c81c5562ba40780f3cdc6224eb81'
'8bd182de340d6ed8b2dfcedfd3e5a389')
2010-05-25 02:00:56 +08:00
2014-06-22 02:44:39 +08:00
build() {
2010-07-28 19:11:28 +08:00
2014-06-22 02:44:39 +08:00
msg "Unpacking archive ..."
/bin/sh ./fglrx-${_amdver}/amd-driver-installer-${_amdver}-x86.x86_64.run --extract archive_files
2011-02-16 08:05:36 +08:00
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-16 08:05:36 +08:00
. ati_make.sh
_ati_check
BUILDARCH=x86_64
_archdir=x86_64
2010-08-08 18:57:30 +08:00
2010-10-27 08:36:46 +08:00
cd "${srcdir}/archive_files/"
2010-10-26 06:36:55 +08:00
2012-03-20 00:48:42 +08:00
2012-04-09 10:04:40 +08:00
msg "Applying patch(es) ..."
# makefile patch to choose arch_compat_alloc_user_space or older compat_alloc_user_space
# works only in combination with ati_make.sh script
# patches partially token from https://aur.archlinux.org/packages/ca/catalyst/PKGBUILD
patch -Np1 -i ../makefile_compat.patch
patch -Np1 -i ../lano1106_fglrx_intel_iommu.patch
patch -Np1 -i ../lano1106_kcl_agp_13_4.patch
patch -Np1 -i ../lano1106_fglrx-13.8_proc.patch
2014-06-22 02:44:39 +08:00
patch -Np1 -i ../cold-fglrx-3.14-current_euid.patch
patch -Np1 -i ../ati-compat_alloc_user_space.patch
2010-10-27 08:36:46 +08:00
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
cp "${srcdir}/archive_files/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a" .
cp 2.6.x/Makefile .
2010-10-27 08:36:46 +08:00
2011-02-16 08:05:36 +08:00
msg "Compiling fglrx module ..."
2012-04-09 10:04:40 +08:00
# Compile module using _ati_check variables
2014-06-22 02:44:39 +08:00
CFLAGS_MODULE="-DMODULE -DATI -DFGL -DPAGE_ATTR_FIX=$PAGE_ATTR_FIX -DCOMPAT_ALLOC_USER_SPACE=$COMPAT_ALLOC_USER_SPACE $def_smp $def_modversions"
2012-04-09 10:04:40 +08:00
make -C /lib/modules/${_kernver}/build SUBDIRS="`pwd`" ARCH=${BUILDARCH} \
2014-06-22 02:44:39 +08:00
MODFLAGS="$CFLAGS_MODULE" \
CFLAGS_MODULE="$CFLAGS_MODULE" \
PAGE_ATTR_FIX=$PAGE_ATTR_FIX COMPAT_ALLOC_USER_SPACE=$COMPAT_ALLOC_USER_SPACE modules
2010-08-08 18:57:30 +08:00
}
2010-10-27 08:36:46 +08:00
package_catalyst() {
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only"
screenshot="http://linuxtation3.files.wordpress.com/2007/03/pantallazo.jpg"
2014-06-22 06:29:49 +08:00
depends=('linux>=3.15' 'linux<3.16' 'catalyst-utils')
conflicts=('nvidia' 'xf86-video-ati' 'xf86-video-radeonhd' 'catalyst-legacy')
install=catalyst.install
2012-03-20 00:48:42 +08:00
2012-04-09 10:04:40 +08:00
# here we are checking kernel's extramodules dir
2012-03-20 00:48:42 +08:00
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
2012-04-09 10:04:40 +08:00
2010-10-27 08:36:46 +08:00
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
install -m755 -d "${pkgdir}/lib/modules/${_destidir}/"
install -m644 fglrx.ko "${pkgdir}/lib/modules/${_destidir}/"
2012-04-09 10:04:40 +08:00
find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" $startdir/catalyst.install
2010-10-27 08:36:46 +08:00
2012-04-09 10:04:40 +08:00
# License
2011-02-16 08:05:36 +08:00
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/"
}
package_chd-catalyst() {
pkgdesc="CHD ids for catalyst $pkgver"
arch=('any')
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod/"
install -dm755 "${pkgdir}/opt/chakra/hwdb"
sh -e "${srcdir}/fglrx_supported" fglrxko_pci_ids.h \
> "${pkgdir}/opt/chakra/hwdb/hw_ati_hwdb"
}