# Maintainer: CreamSodass <greatvaluecreamsoda@gmail.com>

pkgname=vapoursynth-plugin-vship-cuda-git
pkgrel=1
pkgver=5.1.0.14.g5975d8b
pkgdesc="Plugin for Vapoursynth: vship for nvidia gpus (GIT version)"
arch=('x86_64')
url='https://codeberg.org/Line-fr/Vship'
license=('MIT')
depends=('nvidia-utils' 'libgcc' 'libstdc++' 'glibc')
makedepends=('git' 'gcc15' 'cuda')
optdepends=('vapoursynth: vapoursynth plugin usage')
provides=("vapoursynth-plugin-vship" "libvship")
conflicts=("vapoursynth-plugin-vship" "libvship")
source=("vship::git+https://codeberg.org/Line-fr/Vship.git")
sha256sums=('SKIP')

prepare() {
  cd "$srcdir/vship"
  sed -i 's/nvcc -x cu/nvcc $(if $(CUDA_CCBIN),-ccbin $(CUDA_CCBIN),) -x cu/g' Makefile
  sed -i 's/ -o "\$(current_dir)libvship/ -lstdc++ -o "\$(current_dir)libvship/g' Makefile
}

build() {
  cd "$srcdir/vship"
  export PATH="/opt/cuda/bin:$PATH"

  unset CXXFLAGS LDFLAGS

  make build BACKEND=Cuda CUDA_CCBIN=gcc-15 \
    LDFLAGS="-Xlinker -z -Xlinker relro -Xlinker -z -Xlinker now"
  make genpkgConfig PREFIX=/usr
}

pkgver() {
  cd "${srcdir}/vship"
  # Generate pkgver like: v3.0.0.0.g7cd1d4f
  git describe --tags --long | sed 's/^v//;s/-/./g'
}

package(){
  cd "vship"
  install -Dm755 libvship.so "$pkgdir/usr/lib/libvship.so"
  install -d "$pkgdir/usr/lib/vapoursynth"
  ln -s /usr/lib/libvship.so "$pkgdir/usr/lib/vapoursynth/libvship.so"

  install -Dm644 src/VshipAPI.h "$pkgdir/usr/include/VshipAPI.h"
  install -Dm644 src/VshipColor.h "$pkgdir/usr/include/VshipColor.h"

  install -Dm644 libvship.pc "$pkgdir/usr/lib/pkgconfig/libvship.pc"
}
