Date: Sunday, November 13, 2022 @ 13:18:00 Author: anthraxx Revision: 461523
upgpkg: glslang 11.12.0-1 Modified: glslang/trunk/PKGBUILD ----------+ PKGBUILD | 40 +++++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-11-13 12:41:39 UTC (rev 461522) +++ PKGBUILD 2022-11-13 13:18:00 UTC (rev 461523) @@ -1,28 +1,40 @@ -# Maintainer: Sven-Hendrik Haase <[email protected]> +# Maintainer: Sven-Hendrik Haase <[email protected]> # Careful when upgrading this package! It usually breaks ABI without bumping soname. pkgname=glslang -pkgver=11.11.0 +pkgver=11.12.0 pkgrel=1 pkgdesc='OpenGL and OpenGL ES shader front end and validator' arch=('x86_64') url='https://github.com/KhronosGroup/glslang' license=('BSD') -depends=('gcc-libs') -makedepends=('cmake' 'ninja' 'git' 'python' 'spirv-tools' 'spirv-headers') +depends=('gcc-libs' 'python') +makedepends=('cmake' 'ninja' 'git') options=('staticlibs') # Get the commits from known_good.json for every release -source=(${pkgname}-${pkgver}.tar.gz::https://github.com/KhronosGroup/glslang/archive/${pkgver}.tar.gz) -sha256sums=('26c216c3062512c018cbdd752224b8dad703b7e5bb90bf338ba2dbb5d4f11438') +source=(${pkgname}-${pkgver}.tar.gz::https://github.com/KhronosGroup/glslang/archive/${pkgver}.tar.gz + git+https://github.com/KhronosGroup/SPIRV-Tools.git#commit=eb0a36633d2acf4de82588504f951ad0f2cecacb + git+https://github.com/KhronosGroup/SPIRV-Headers.git#commit=85a1ed200d50660786c1a88d9166e871123cce39) +sha256sums=('7795a97450fecd9779f3d821858fbc2d1a3bf1dd602617d95b685ccbcabc302f' + 'SKIP' + 'SKIP') +prepare() { + # Sadly, glslang requires super specific versions of SPIRV headers and + # spirv-tools and so I'm afraid that for the time being we'll have to use + # their vendored version until we figure out a good way to use system + # libraries. + cp -r SPIRV-Tools ${pkgname}-${pkgver}/External/spirv-tools + cp -r SPIRV-Headers ${pkgname}-${pkgver}/External/spirv-tools/external/spirv-headers +} + build() { cd ${pkgname}-${pkgver} - export CXXFLAGS+=" -ffat-lto-objects" cmake \ -Bbuild-shared \ -GNinja \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_BUILD_TYPE=None \ -DBUILD_SHARED_LIBS=ON ninja -Cbuild-shared cmake \ @@ -29,11 +41,16 @@ -Bbuild-static \ -GNinja \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_BUILD_TYPE=None \ -DBUILD_SHARED_LIBS=OFF ninja -Cbuild-static } +check() { + cd ${pkgname}-${pkgver} + ninja -Cbuild-shared test +} + package() { cd ${pkgname}-${pkgver} DESTDIR="${pkgdir}" ninja -C build-shared install @@ -45,6 +62,11 @@ for lib in *.so; do ln -sf "${lib}" "${lib}.0" done + + # Delete the stuff that's been vendored in. It's not ideal but that's we'll deal with for now. + mv "${pkgdir}"/usr/bin/spirv-remap . + rm -r "${pkgdir}"/usr/{bin/spirv*,include/spirv-tools,lib/cmake/SPIRV-Tools*,lib/libSPIRV-*,lib/pkgconfig} + mv spirv-remap "${pkgdir}"/usr/bin/spirv-remap } # vim: ts=2 sw=2 et:
