summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 98bf429b1dd67130470ed1e6ac0a8ceb0e6b55c6 (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
# Maintainer: Scott Gigante <scottgigante@gmail.com>

_name=torch_scatter
_fullname=py$_name
pkgbase=python-$_fullname
pkgname=("python-$_fullname" "python-$_fullname-cuda")
pkgver=2.0.5
pkgrel=1
pkgdesc='PyTorch Extension Library of Optimized Scatter Operations'
arch=(any)
url="https://github.com/rusty1s/$_fullname"
license=(MIT)
depends=(python cuda gcc cmake python-setuptools python-pytest python-pytest-cov python-pytorch)
_tarball="${_name}-${pkgver}.tar.gz"
source=("${url}/archive/${pkgver}.tar.gz")
sha256sums=('e29b364beaa9c84a99e0e236be89ed19d4452d89010ff736184ddcce488b47f6')
_srcdir="${_fullname}-${pkgver}"

prepare() {
    export CXX=g++
}

build() {
    cd $_srcdir
    python setup.py build
    cd ..
}

check() {
    cd $_srcdir
    python setup.py test --addopts "-k 'not segment'" # skip failing tests
    cd ..
}

_package() {
    cd $_srcdir
    python setup.py bdist_wheel
    local site="$pkgdir/usr/lib/$(readlink /bin/python3)/site-packages"
    mkdir -p "$site"
    unzip "$(ls -1 dist/${_name}-${pkgver}-*.whl)" -d "$site"
    rm -r ${site}/test
    cd ..
}


package_python-pytorch_scatter() {
  _package
}


package_python-pytorch_scatter-cuda() {
  pkgdesc="PyTorch Extension Library of Optimized Scatter Operations (with CUDA)"
  depends+=(cuda cudnn python-pytorch-cuda)
  conflicts=(python-pytorch_scatter)
  provides=(python-pytorch_scatter)
  
  export CUDA_HOME=/opt/cuda
  export PATH=$CUDA_HOME/bin:$PATH
  export CPATH=$CUDA_HOME/include:$CPATH
  export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
  _package
}