blob: 4405a1fe96d14d3a083b825ae36db894968fd0df (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
|
# Maintainer: Vi0L0 <vi0l093@gmail.com>
# Great Contributor: Shen Miren <dickeny@gmail.com> (build_module/hook idea and code)
# Contributor: aidanlinz
# Contributor: cyberpatrol
# Contributor: Rip-Rip
# Contributor: nob
# Contributor: lano1106 (patch to fix support of intel's iommu and to remove dependency of kernel's CONFIG_AGP option)
# Contributor: lano1106 (patch to remove dependency of kernel's CONFIG_AGP option)
# Contributor: lano1106 (patch to improve jacob's patch)
# Contributor: zoopp
# Contributor: Cold (current_euid patch)
# Contributor: kolasa (part of 4.3 kernel patches)
# Contributor: gentoo (part of 4.3 kernel patches)
# Contributor: Philip Muller @ Manjaro (4.4 kernel patch)
# Contributor: sling00 (4.10 kernel patch)
# Contributor: npfeiler (4.11, 4.12, 4.13, 4.14 and 4.15.5 kernel patch)
pkgname=catalyst-hook
pkgver=15.9
pkgrel=19
_amdver=15.201.1151
pkgdesc="AMD/ATI drivers. Auto re-compile fglrx module while shutdown/reboot."
arch=('i686' 'x86_64')
url="http://www.amd.com"
license=('custom')
options=('staticlibs' 'libtool' '!strip' '!upx')
depends=('catalyst-utils' 'gcc-libs' 'gcc>4.0.0' 'make' 'patch' 'linux>=3.0' 'linux<4.16' 'linux-headers')
optdepends=('linux-lts-headers: to build the fglrx module for the linux-lts kernel')
conflicts=('catalyst-test' 'catalyst-daemon' 'catalyst' 'catalyst-generator' 'catalyst-dkms')
provides=("catalyst=${pkgver}")
install=${pkgname}.install
url_ref="http://support.amd.com/en-us/download/desktop?os=Linux+x86"
DLAGENTS="http::/usr/bin/curl --referer ${url_ref} -o %o %u"
source=(
http://www2.ati.com/drivers/linux/amd-catalyst-${pkgver}-linux-installer-${_amdver}-x86.x86_64.zip
hook-fglrx
catalyst_build_module
ati_make.sh
makefile_compat.patch
catalyst-hook.service
lano1106_fglrx_intel_iommu.patch
lano1106_kcl_agp_13_4.patch
fglrx_gpl_symbol.patch
4.3-kolasa-seq_printf.patch
4.3-gentoo-mtrr.patch
4.2-amd-from_crimson_15.11.patch
crimson_i686_xg.patch
4.4-manjaro-xstate.patch
grsec_arch.patch
4.6-arch-get_user_pages-page_cache_release.patch
4.7-arch-cpu_has_pge-v2.patch
4.9_over_4.6-arch-get_user_pages_remote.patch
4.10-arch-sling00-virtual_address-acpi_get_table_with_size.patch
4.11-npfeiler-signal_vmf.patch
4.12-npfeiler-PUD_OFFSET.patch
4.12-arch-remove_clts.patch
4.12-npfeiler-movsl_mask.patch
4.13-npfeiler-wait_queue_t.patch
4.14-npfeiler-task_struct-mm_segment_t.patch
4.14.21_4.15.5-npfeiler-flush_tlb_one_kernel.patch)
md5sums=('d2de2df6946b452c266a3c892e6e46ff'
'9126e1ef0c724f8b57d3ac0fe77efe2f'
'601d9c756571dd79d26944e54827631e'
'62239156a9656c6f41e89a879578925c'
'3e1b82bd69774ea808da69c983d6a43b'
'a64e2eae5addc6d670911ccf94b8cda4'
'5184b94a2a40216a67996999481dd9ee'
'c5156eddf81c8a1719b160d05a2e8d67'
'ef97fc080ce7e5a275fe0c372bc2a418'
'0e0666e95d1d590a7a83192805679485'
'98828e3eeaec2b3795e584883cc1b746'
'fd2851026228ca72124972d1ea0335ea'
'6cdbaf5f71d867d225721a0369413616'
'd9bea135ae3e1b3ca87c5bbe6dcf8e72'
'8941e91fc58cb44ce21ab9bda135754e'
'11b7c2e0dc4794801005d66b0e7608a3'
'37eef5103a11d8136979463e7bc31091'
'194cb44e9e2ab0e65b6267aca66d0400'
'05f6364db877d9c4bdf1592deda905b7'
'8e53ba65a0aad42eb2ff771c1ace6609'
'f090e47160403e4ba65d1e0de69973c9'
'782769206ed12ded10c347be3e476729'
'cb25bc7fbb7d5cb1c07d2f3fa5fda826'
'0a725f40bc980d578cbed3e57a05b765'
'5ba3bf9f58aa63c1849b056cf23022c9'
'10af58c21e4e972115dda6dbd8279594')
build() {
/bin/sh ./AMD-Catalyst-${pkgver}-Linux-installer-${_amdver}-x86.x86_64.run --extract archive_files
}
package() {
# License
install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname}
install -m644 ${srcdir}/archive_files/LICENSE.TXT ${pkgdir}/usr/share/licenses/${pkgname}
cd ${srcdir}/archive_files
# Patching
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 ../4.2-amd-from_crimson_15.11.patch
patch -Np1 -i ../4.3-kolasa-seq_printf.patch
patch -Np1 -i ../4.3-gentoo-mtrr.patch
patch -Np1 -i ../fglrx_gpl_symbol.patch
test "${CARCH}" = "i686" && patch -Np1 -i ../crimson_i686_xg.patch
patch -Np1 -i ../4.4-manjaro-xstate.patch
patch -Np1 -i ../grsec_arch.patch
patch -Np1 -i ../4.6-arch-get_user_pages-page_cache_release.patch
patch -Np1 -i ../4.7-arch-cpu_has_pge-v2.patch
patch -Np1 -i ../4.9_over_4.6-arch-get_user_pages_remote.patch
patch -Np1 -i ../4.10-arch-sling00-virtual_address-acpi_get_table_with_size.patch
patch -Np1 -i ../4.11-npfeiler-signal_vmf.patch
patch -Np1 -i ../4.12-npfeiler-PUD_OFFSET.patch
patch -Np1 -i ../4.12-arch-remove_clts.patch
patch -Np1 -i ../4.12-npfeiler-movsl_mask.patch
patch -Np1 -i ../4.13-npfeiler-wait_queue_t.patch
patch -Np1 -i ../4.14-npfeiler-task_struct-mm_segment_t.patch
patch -Np1 -i ../4.14.21_4.15.5-npfeiler-flush_tlb_one_kernel.patch
# Prepare modules source files
_archdir=x86_64
test "${CARCH}" = "i686" && _archdir=x86
install -m755 -d ${pkgdir}/usr/share/ati/build_mod
install -m644 common/lib/modules/fglrx/build_mod/*.c \
${pkgdir}/usr/share/ati/build_mod
install -m644 common/lib/modules/fglrx/build_mod/*.h \
${pkgdir}/usr/share/ati/build_mod
install -m644 common/lib/modules/fglrx/build_mod/2.6.x/Makefile \
${pkgdir}/usr/share/ati/build_mod
install -m644 arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a \
${pkgdir}/usr/share/ati/build_mod
install -m755 -d ${pkgdir}/usr/bin
install -m755 ${srcdir}/catalyst_build_module ${pkgdir}/usr/bin
# modified ati's make.sh script
install -m755 ${srcdir}/ati_make.sh ${pkgdir}/usr/share/ati/build_mod
# hook fglrx
install -m755 -d ${pkgdir}/usr/lib/initcpio/install
install -m644 ${srcdir}/hook-fglrx ${pkgdir}/usr/lib/initcpio/install/fglrx
# systemd service to perform fglrx module build at shutdown
install -m755 -d ${pkgdir}/usr/lib/systemd/system
install -m644 ${srcdir}/catalyst-hook.service ${pkgdir}/usr/lib/systemd/system
}
|