Files
BMLFS/build-scripts/glslang.build
2025-07-23 10:59:05 -05:00

61 lines
1.9 KiB
Bash

#! /bin/bash
# glslang
# Source: https://github.com/KhronosGroup/glslang/archive/15.4.0/glslang-15.4.0.tar.gz
#
# $BUILD = Directory to temporarily install
# $PKGS = Directory to store built packages
#
# DEPS
# Required: spirv-tools,cmake
# Recommended: NONE
# Optional: NONE
export PVER="15.4.0"
mkdir -p build-shared build-static
cd build-shared && \
cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DBUILD_SHARED_LIBS=ON \
-DALLOW_EXTERNAL_SPIRV_TOOLS=ON .. && \
ninja -j2
cd .. && \
sed -i '/add_library(glslang-default-resource-limits/ s/$/ STATIC/' StandAlone/CMakeLists.txt && \
cd build-static && \
cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DBUILD_SHARED_LIBS=OFF \
-DALLOW_EXTERNAL_SPIRV_TOOLS=ON .. && \
ninja -j2
cd .. && \
sudo -S DESTDIR=$BUILD ninja -C build-static install
sudo -S DESTDIR=$BUILD ninja -C build-shared install
cd $BUILD && sudo -S mkdir -v ${BUILD}/install &&
cat > /tmp/slack-desc << "EOF"
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in. You must
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
glslang: glslang
glslang:
glslang: Khronos reference front-end for GLSL, ESSL, and sample SPIR-V
glslang: generator.
glslang:
glslang: https://github.com/KhronosGroup/glslang
glslang:
EOF
sudo -S mv -v /tmp/slack-desc install/ &&
sudo -S makepkg -l y -c n $PKGS/glslang-$PVER-$PSUFFIX &&
sudo -S rm -rf ${BUILD}/*