contrib/shaderc/Pkgfile

62 lines
1.8 KiB
Plaintext
Raw Normal View History

2019-04-20 03:48:32 +02:00
# Description: Collection of tools, libraries and tests for shader compilation.
# URL: https://github.com/google/shaderc
# Maintainer: Danny Rawlins, crux at romster dot me
# Depends on: glslang
# Optional: asciidoctor
2019-04-20 03:48:32 +02:00
name=shaderc
2020-07-23 17:34:51 +02:00
version=2020.1
2020-06-07 09:49:26 +02:00
release=1
2020-07-23 17:34:51 +02:00
source=(https://github.com/google/$name/archive/v$version/$name-v$version.tar.gz
glslc.1 spvc.1 glslc-asciidoc.patch spvc-asciidoc.patch
2020-07-23 17:34:51 +02:00
shaderc-2020.1-fix-build.patch
0001-Drop-third-party-code-in-CMakeLists.txt.patch
2020-07-23 17:34:51 +02:00
0001-Fix-SPIRV-includes-location.patch)
2019-04-20 03:48:32 +02:00
build() {
2020-07-23 17:34:51 +02:00
cd $name-$version
2019-04-20 03:48:32 +02:00
patch -d glslc -p0 -i $SRC/glslc-asciidoc.patch
patch -d spvc -p0 -i $SRC/spvc-asciidoc.patch
2020-07-23 17:34:51 +02:00
patch -p1 -i $SRC/shaderc-2020.1-fix-build.patch
patch -p1 -i $SRC/0001-Drop-third-party-code-in-CMakeLists.txt.patch
2020-06-07 09:49:26 +02:00
patch -p1 -i $SRC/0001-Fix-SPIRV-includes-location.patch
2019-04-20 03:48:32 +02:00
# de-vendor libs and disable git versioning
sed '/examples/d;/third_party/d' -i CMakeLists.txt
sed '/build-version/d' -i glslc/CMakeLists.txt
cat <<- EOF > glslc/src/build-version.inc
"${version}\\n"
2019-04-20 03:48:32 +02:00
"$(prt-get info spirv-tools | awk '/^Version:/ {print $2}')\\n"
"$(prt-get info glslang | awk '/^Version:/ {print $2}')\\n"
EOF
mkdir build
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DSHADERC_SKIP_TESTS=ON \
2020-07-23 17:34:51 +02:00
-GNinja
2019-04-20 03:48:32 +02:00
ninja -j ${JOBS:-1}
DESTDIR=$PKG ninja install
if [ -e '/usr/bin/asciidoctor' ]; then
cd ../glslc
asciidoctor -b manpage README.asciidoc -o glslc.1
install -D -m 0644 -t $PKG/usr/share/man/man1 glslc.1
cd ../spvc
asciidoctor -b manpage README.asciidoc -o spvc.1
install -D -m 0644 -t $PKG/usr/share/man/man1 spvc.1
else
install -D -m 0644 -t $PKG/usr/share/man/man1 $SRC/glslc.1
install -D -m 0644 -t $PKG/usr/share/man/man1 $SRC/spvc.1
fi
2019-04-20 03:48:32 +02:00
}