add patch to specify compiloer to use for nvcc

This commit is contained in:
2026-05-03 22:36:10 +02:00
parent 7aefe05810
commit 6e5a91a900
2 changed files with 47 additions and 14 deletions
+12 -14
View File
@@ -1,34 +1,32 @@
# Maintainer: CreamSodass <greatvaluecreamsoda@gmail.com>
pkgname=vapoursynth-plugin-vship-cuda-git
pkgrel=4
pkgrel=4.1
pkgver=5.0.1.4.gdc0f1ba
pkgdesc="Plugin for Vapoursynth: vship for nvidia gpus (GIT version)"
arch=('x86_64')
url='https://codeberg.org/Line-fr/Vship'
license=('MIT')
depends=('cuda')
makedepends=('git')
makedepends=('git' 'gcc15')
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')
source=("vship::git+https://codeberg.org/Line-fr/Vship.git"
"cuda-ccbin.patch")
sha256sums=('SKIP'
'a70e866937ef15324a77afa8a02bdcdfff838c1a35ceebbe66b5ac10575d54a9')
prepare() {
cd "$srcdir/vship"
patch -Np1 -i "$srcdir/cuda-ccbin.patch"
}
build() {
cd "$srcdir/vship"
export PATH="/opt/cuda/bin:$PATH"
nvcc -x cu src/VshipLib.cpp \
-t "$(nproc)" \
-ccbin "${CXX:-g++}" \
-std=c++17 \
-I include \
-arch=all \
--shared \
-Xcompiler "${CXXFLAGS} -fPIC" \
-O3 \
-o libvship.so
make buildcuda CUDA_CCBIN=gcc-15
}
pkgver() {
+35
View File
@@ -0,0 +1,35 @@
diff --git a/Makefile b/Makefile
index e6d65a4..cff93ea 100644
--- a/Makefile
+++ b/Makefile
@@ -5,6 +5,8 @@ DESTDIR ?=
HIPARCH := gfx1201,gfx1200,gfx1100,gfx1101,gfx1102,gfx1103,gfx1151,gfx1012,gfx1030,gfx1031,gfx1032,gfx906,gfx801,gfx802,gfx803
+CUDA_CCBIN ?=
+
ifeq ($(OS),Windows_NT)
vulkanLink := -I "${VULKAN_SDK}\Include" -L "${VULKAN_SDK}\Lib" -lvulkan-1
dllend := .dll
@@ -37,6 +39,8 @@ else
fatbincompresscuda :=
endif
+cudaccbin = $(if $(CUDA_CCBIN),-ccbin $(CUDA_CCBIN),)
+
.FORCE:
buildFFVSHIP: src/FFVship.cpp .FORCE
@@ -46,10 +50,10 @@ build: src/VshipLib.cpp .FORCE
hipcc src/VshipLib.cpp -g -std=c++17 -Wall -Wno-ignored-attributes -I "$(current_dir)include" --offload-arch=native -shared $(fpic) -o "$(current_dir)libvship$(dllend)"
buildcuda: src/VshipLib.cpp .FORCE
- nvcc -x cu src/VshipLib.cpp -g -std=c++17 -I "$(current_dir)include" -arch=native -shared $(fpiccuda) -o "$(current_dir)libvship$(dllend)"
+ nvcc $(cudaccbin) -x cu src/VshipLib.cpp -g -std=c++17 -I "$(current_dir)include" -arch=native -shared $(fpiccuda) -o "$(current_dir)libvship$(dllend)"
buildcudaall: src/VshipLib.cpp .FORCE
- nvcc -x cu src/VshipLib.cpp -g -std=c++17 -I "$(current_dir)include" $(fatbincompresscuda) -arch=all -shared $(fpiccuda) -o "$(current_dir)libvship$(dllend)"
+ nvcc $(cudaccbin) -x cu src/VshipLib.cpp -g -std=c++17 -I "$(current_dir)include" $(fatbincompresscuda) -arch=all -shared $(fpiccuda) -o "$(current_dir)libvship$(dllend)"
buildall: src/VshipLib.cpp .FORCE
hipcc src/VshipLib.cpp -g -std=c++17 -Wall -Wno-ignored-attributes -I "$(current_dir)include" $(fatbincompressamd) --offload-arch=$(HIPARCH) -shared $(fpic) -o "$(current_dir)libvship$(dllend)"