🔒 Repository is read-only – file editing is disabled.

recipes/utils/glslang/PAGBUILD.yaml main

60 linii Raw ← Powrót
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
pkgname: glslang
pkgver: '16.5.0'
pkgrel: 1
pkgdesc: OpenGL and OpenGL ES shader front end and validator
url: 'https://github.com/KhronosGroup/glslang'
arch: x86_64
license:
- BSD
depends: []
makedepends:
- cmake
- ninja
- spirv-tools
source:
- 'https://github.com/KhronosGroup/glslang/archive/refs/tags/${pkgver}.tar.gz'
sha256sums:
- SKIP
build: |
  cd ${pkgname}-${pkgver}

  # Czyszczenie starych katalogów i cache CMake
  rm -rf build-shared build-static

  # 1. Build bibliotek współdzielonych (.so)
  cmake \
    -B build-shared \
    -G Ninja \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_LIBDIR=lib \
    -DENABLE_OPT=OFF \
    -DALLOW_EXTERNAL_SPIRV_TOOLS=OFF \
    -DBUILD_SHARED_LIBS=ON
  ninja -C build-shared

  # 2. Build bibliotek statycznych (.a)
  cmake \
    -B build-static \
    -G Ninja \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_LIBDIR=lib \
    -DENABLE_OPT=OFF \
    -DALLOW_EXTERNAL_SPIRV_TOOLS=OFF \
    -DBUILD_SHARED_LIBS=OFF
  ninja -C build-static
package: |-
  cd ${pkgname}-${pkgver}

  DESTDIR="${PKGDIR}" ninja -C build-shared install
  DESTDIR="${PKGDIR}" ninja -C build-static install

  install -Dm644 LICENSE.txt "${PKGDIR}/usr/share/licenses/${pkgname}/LICENSE"

  if [ -d "${PKGDIR}/usr/lib" ]; then
    cd "${PKGDIR}/usr/lib"
    for lib in *.so; do
      [ -f "$lib" ] && ln -sf "${lib}" "${lib}.0" 2>/dev/null || true
    done
  fi