summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: d0db58e50d0fa192a86b9d97fc6675d7d54ac891 (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
# Maintainer: Chocobo1 <chocobo1 AT archlinux DOT net>

pkgname=iwlwifi
pkgver=2020.04.17.r0.g7219a63ab
pkgrel=1
pkgdesc="Intel wireless chips driver (current kernel release cycle)"
arch=('i686' 'x86_64')
url="https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi"
license=('GPL')
makedepends=('git' 'linux-headers' 'xz')
#source=('git+https://kernel.googlesource.com/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-fixes.git')
#sha256sums=('SKIP')


_gitsource="https://kernel.googlesource.com/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-fixes.git"
_gittag="iwlwifi-sent-for-review-2020-04-17"  # $(git ls-remote --refs --sort -v:refname "$_gitsource" "iwlwifi-next*" | grep -m 1 -o "iwlwifi.*")
_moduleSrc="iwlwifi-fixes/drivers/net/wireless/intel/iwlwifi"

prepare() {
  cd "$srcdir"
  if [ ! -d "iwlwifi-fixes" ]; then
    git clone --single-branch --branch "$_gittag" --depth 1 "$_gitsource"
  fi

  cd "iwlwifi-fixes"
  git checkout tags/"$_gittag"
}

pkgver() {
  cd "$_moduleSrc"

  _tag=$(sed 's/iwlwifi[^0-9]*//;s/-/./g' <<< "$_gittag")
  _hash=$(git rev-parse --short HEAD)
  _rev=$(git rev-list --count "$_hash"..HEAD)
  printf "%s.r%s.g%s" "$_tag" "$_rev" "$_hash"
}

build() {
  make -C "/usr/lib/modules/$(uname -r)/build" M="$srcdir/$_moduleSrc"
}

package() {
  cd "$_moduleSrc"

  find './' -name '*.ko' -exec xz -0 --force {} \;

  _updates="/usr/lib/modules/$(uname -r)/updates"
  install -Dm644 "iwlwifi.ko.xz" -t "$pkgdir/$_updates"
  install -Dm644 "dvm/iwldvm.ko.xz" -t "$pkgdir/$_updates"
  install -Dm644 "mvm/iwlmvm.ko.xz" -t "$pkgdir/$_updates"
}