mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-03 19:57:14 +08:00
Simplify the stuff
This commit is contained in:
parent
d7011563d9
commit
8127fe7993
21
catalyst-lts/3.2.8.patch
Normal file
21
catalyst-lts/3.2.8.patch
Normal file
@ -0,0 +1,21 @@
|
||||
Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
|
||||
---
|
||||
--- 12.1/common/lib/modules/fglrx/build_mod/firegl_public.c
|
||||
+++ 12.1/common/lib/modules/fglrx/build_mod/firegl_public.c
|
||||
@@ -5797,10 +5797,16 @@ void ATI_API_CALL KCL_fpu_begin(void)
|
||||
#ifdef CONFIG_X86_64
|
||||
kernel_fpu_begin();
|
||||
#else
|
||||
+#ifndef TS_USEDFPU
|
||||
+ preempt_disable();
|
||||
+ if (__thread_has_fpu(current))
|
||||
+ __save_init_fpu(current);
|
||||
+#else
|
||||
struct thread_info *cur_task = current_thread_info();
|
||||
preempt_disable();
|
||||
if (cur_task->status & TS_USEDFPU)
|
||||
__save_init_fpu(cur_task->task);
|
||||
+#endif
|
||||
else
|
||||
clts();
|
||||
#endif
|
@ -1,39 +1,36 @@
|
||||
#
|
||||
# Chakra Packages for Chakra, part of chakra-project.org
|
||||
#
|
||||
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
|
||||
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
|
||||
|
||||
# Find the kernel name inside the chroot
|
||||
_extramodules=extramodules-`pacman -Q linux-lts | cut -c11-13 | sed 's/linux-lts //g'`-CHAKRA-LTS
|
||||
_kver="$(cat /lib/modules/${_extramodules}/version)"
|
||||
_kernver="3.0-CHAKRA-LTS"
|
||||
|
||||
pkgname=catalyst-lts
|
||||
pkgver=12.2
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only"
|
||||
arch=('i686' 'x86_64')
|
||||
url="http://www.ati.amd.com"
|
||||
license=('custom')
|
||||
depends=('linux-lts>=3.0' 'linux-lts<3.1' 'catalyst-utils')
|
||||
depends=('linux-lts=3.0.22' 'catalyst-utils')
|
||||
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-lts-headers')
|
||||
conflicts=('catalyst-test' 'nvidia-lts' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri')
|
||||
conflicts=('catalyst-test' 'nvidia' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri')
|
||||
install=catalyst.install
|
||||
|
||||
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.run
|
||||
ati_make.sh
|
||||
makefile_compat.patch)
|
||||
makefile_compat.patch
|
||||
3.2.8.patch)
|
||||
|
||||
md5sums=('7764bd0343ed542a8e0ebed05e347865'
|
||||
'660396540b0ceaff71d6155c986734de'
|
||||
'3e1b82bd69774ea808da69c983d6a43b')
|
||||
|
||||
|
||||
'660396540b0ceaff71d6155c986734de'
|
||||
'3e1b82bd69774ea808da69c983d6a43b'
|
||||
'32c8142c73dcfed5db426f494feda9e3')
|
||||
|
||||
build() {
|
||||
|
||||
msg "Setting compilation variables ..."
|
||||
## include ati_make.sh and use _ati_check function from it
|
||||
# include ati_make.sh and use _ati_check function from it
|
||||
. ati_make.sh
|
||||
_ati_check
|
||||
|
||||
@ -45,7 +42,6 @@ build() {
|
||||
if [ "${CARCH}" = "x86_64" ]; then
|
||||
BUILDARCH=x86_64
|
||||
_archdir=x86_64
|
||||
sed -i -e s'~COMPAT_ALLOC_USER_SPACE~arch_compat_alloc_user_space~' ${srcdir}/archive_files/common/lib/modules/fglrx/build_mod//kcl_ioctl.c
|
||||
fi
|
||||
if [ "${CARCH}" = "i686" ]; then
|
||||
BUILDARCH=i386
|
||||
@ -54,36 +50,52 @@ build() {
|
||||
|
||||
cd "${srcdir}/archive_files/"
|
||||
|
||||
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
|
||||
patch -Np1 -i ../makefile_compat.patch
|
||||
|
||||
#if [[ ${_kver:0:6} < "2.6.39" ]] && [[ `cat /lib/modules/${_kver}/build/.config | grep -c CONFIG_BKL=y` = 0 ]]; then
|
||||
# patch -Np1 -i ../no_bkl.patch
|
||||
#fi
|
||||
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
|
||||
patch -Np1 -i ../makefile_compat.patch || return 1
|
||||
|
||||
patch -Np1 -i ../3.2.8.patch || return 1
|
||||
|
||||
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 .
|
||||
cp "${srcdir}/archive_files/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a" . || return 1
|
||||
cp 2.6.x/Makefile . || return 1
|
||||
|
||||
|
||||
msg "Compiling fglrx module ..."
|
||||
## Compile module using _ati_check variables
|
||||
make -C /lib/modules/${_kver}/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
|
||||
# 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
|
||||
}
|
||||
|
||||
package() {
|
||||
|
||||
# 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
|
||||
|
||||
|
||||
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
|
||||
install -m755 -d "${pkgdir}/lib/modules/${_extramodules}"
|
||||
install -m644 fglrx.ko "${pkgdir}/lib/modules/${_extramodules}"
|
||||
gzip "${pkgdir}/lib/modules/${_extramodules}/fglrx.ko"
|
||||
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
|
||||
|
||||
## License
|
||||
# License
|
||||
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
|
||||
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/"
|
||||
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
|
||||
|
||||
sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" ${startdir}/*.install
|
||||
sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" $startdir/*.install
|
||||
}
|
||||
|
@ -7,18 +7,18 @@ remove_hook(){
|
||||
}
|
||||
|
||||
post_install() {
|
||||
EXTRAMODULES='extramodules-3.0-CHAKRA-LTS'
|
||||
EXTRAMODULES=extramodules-3.0-CHAKRA-LTS
|
||||
depmod $(cat /lib/modules/$EXTRAMODULES/version)
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
remove_hook
|
||||
EXTRAMODULES='extramodules-3.0-CHAKRA-LTS'
|
||||
EXTRAMODULES=extramodules-3.0-CHAKRA-LTS
|
||||
depmod $(cat /lib/modules/$EXTRAMODULES/version)
|
||||
}
|
||||
|
||||
post_remove() {
|
||||
EXTRAMODULES='extramodules-3.0-CHAKRA-LTS'
|
||||
EXTRAMODULES=extramodules-3.0-CHAKRA-LTS
|
||||
depmod $(cat /lib/modules/$EXTRAMODULES/version)
|
||||
echo "----------------------------------------------------------------"
|
||||
echo "Don't forget to remove fglrx from MODULES array of /etc/rc.conf"
|
||||
|
@ -1,16 +1,13 @@
|
||||
#
|
||||
# Chakra Packages for Chakra, part of chakra-project.org
|
||||
#
|
||||
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
|
||||
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
|
||||
|
||||
# Find the kernel name inside the chroot
|
||||
_extramodules=extramodules-`pacman -Q linux | cut -c7-9 | sed 's/linux //g'`-CHAKRA
|
||||
_kver="$(cat /lib/modules/${_extramodules}/version)"
|
||||
_kernver="3.2-CHAKRA"
|
||||
|
||||
pkgname=catalyst
|
||||
pkgname=catalyst-lts
|
||||
pkgver=12.2
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only"
|
||||
arch=('i686' 'x86_64')
|
||||
url="http://www.ati.amd.com"
|
||||
@ -18,7 +15,7 @@ license=('custom')
|
||||
depends=('linux>=3.2' 'linux<3.3' 'catalyst-utils')
|
||||
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-headers')
|
||||
conflicts=('catalyst-test' 'nvidia' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri')
|
||||
install=${pkgname}.install
|
||||
install=catalyst.install
|
||||
|
||||
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.run
|
||||
ati_make.sh
|
||||
@ -26,16 +23,14 @@ source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86
|
||||
3.2.8.patch)
|
||||
|
||||
md5sums=('7764bd0343ed542a8e0ebed05e347865'
|
||||
'660396540b0ceaff71d6155c986734de'
|
||||
'3e1b82bd69774ea808da69c983d6a43b'
|
||||
'32c8142c73dcfed5db426f494feda9e3')
|
||||
|
||||
|
||||
'660396540b0ceaff71d6155c986734de'
|
||||
'3e1b82bd69774ea808da69c983d6a43b'
|
||||
'32c8142c73dcfed5db426f494feda9e3')
|
||||
|
||||
build() {
|
||||
|
||||
msg "Setting compilation variables ..."
|
||||
## include ati_make.sh and use _ati_check function from it
|
||||
# include ati_make.sh and use _ati_check function from it
|
||||
. ati_make.sh
|
||||
_ati_check
|
||||
|
||||
@ -47,7 +42,6 @@ build() {
|
||||
if [ "${CARCH}" = "x86_64" ]; then
|
||||
BUILDARCH=x86_64
|
||||
_archdir=x86_64
|
||||
sed -i -e s'~COMPAT_ALLOC_USER_SPACE~arch_compat_alloc_user_space~' ${srcdir}/archive_files/common/lib/modules/fglrx/build_mod//kcl_ioctl.c
|
||||
fi
|
||||
if [ "${CARCH}" = "i686" ]; then
|
||||
BUILDARCH=i386
|
||||
@ -56,32 +50,29 @@ build() {
|
||||
|
||||
cd "${srcdir}/archive_files/"
|
||||
|
||||
|
||||
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
|
||||
patch -Np1 -i ../makefile_compat.patch
|
||||
# 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 -Np1 -i ../makefile_compat.patch || return 1
|
||||
|
||||
patch -Np1 -i ../3.2.8.patch
|
||||
|
||||
#if [[ ${_kver:0:6} < "2.6.39" ]] && [[ `cat /lib/modules/${_kver}/build/.config | grep -c CONFIG_BKL=y` = 0 ]]; then
|
||||
# patch -Np1 -i ../no_bkl.patch
|
||||
#fi
|
||||
patch -Np1 -i ../3.2.8.patch || return 1
|
||||
|
||||
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 .
|
||||
cp "${srcdir}/archive_files/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a" . || return 1
|
||||
cp 2.6.x/Makefile . || return 1
|
||||
|
||||
|
||||
msg "Compiling fglrx module ..."
|
||||
## Compile module using _ati_check variables
|
||||
make -C /lib/modules/${_kver}/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
|
||||
# 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
|
||||
}
|
||||
|
||||
package() {
|
||||
|
||||
## here we are checking kernel's extramodules dir
|
||||
# here we are checking kernel's extramodules dir
|
||||
for r in /lib/modules/*; do
|
||||
s=${r:13}
|
||||
if [[ ${s:0:3} = "ext" ]]; then
|
||||
@ -95,14 +86,16 @@ package() {
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
|
||||
install -m755 -d "${pkgdir}/lib/modules/${_extramodules}"
|
||||
install -m644 fglrx.ko "${pkgdir}/lib/modules/${_extramodules}"
|
||||
gzip "${pkgdir}/lib/modules/${_extramodules}/fglrx.ko"
|
||||
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
|
||||
|
||||
## License
|
||||
# License
|
||||
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
|
||||
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/"
|
||||
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
|
||||
|
||||
sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" ${startdir}/*.install
|
||||
sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" $startdir/*.install
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
|
||||
KERNEL_VERSION="3.2-CHAKRA"
|
||||
KERNEL_VERSION=3.2-CHAKRA
|
||||
|
||||
|
||||
remove_hook(){
|
||||
|
Loading…
Reference in New Issue
Block a user