Compare commits

..
Author SHA1 Message Date
sisungo 39f81d1714 feat: add package glslang
Signed-off-by: sisungo <[email protected]>
2026-08-11 21:06:36 +08:00
2 changed files with 46 additions and 35 deletions
+46
View File
@@ -0,0 +1,46 @@
import subprocess
import os
from lib.make import *
from lib import cpp, arch
version("16.5.0")
description("Khronos-reference front end for GLSL/ESSL, partial front end for HLSL, and a SPIR-V generator")
maintainer("sisungo <[email protected]>")
source_url("https://github.com/KhronosGroup/glslang/archive/refs/tags/16.5.0.tar.gz")
builddep("shortcut/cmake")
builddep("shortcut/c++")
builddep("spirv-tools-dev")
def build():
cpp.cmake([
"-DALLOW_EXTERNAL_SPIRV_TOOLS=ON",
f"-DSPIRV-Tools-opt_DIR=/lib/{arch.get_target()}/cmake/SPIRV-Tools-opt",
f"-DSPIRV-Tools_DIR=/lib/{arch.get_target()}/cmake/SPIRV-Tools",
"-DGLSLANG_TESTS=OFF",
f"-DCMAKE_INSTALL_PREFIX={get_prefix('glslang-dev')}"
])
cpp.ninja()
cpp.ninja_install()
on_build(build)
def pack_bin(composer):
composer.add_dir("bin", "bin")
package("glslang")
dep("libcxx @same-arch")
on_pack(pack_bin)
def pack_dev(composer):
composer.add_dir("include", "include")
composer.add_dir("lib64", "lib")
os.symlink("lib", f"{composer.workdir}/bundle/lib64")
package("glslang-dev")
dep("libcxx @same-arch")
on_pack(pack_dev)
-35
View File
@@ -1,35 +0,0 @@
from lib.make import *
from lib import cpp
version("1.4.357.0")
description("SPIR-V headers")
maintainer("sisungo <[email protected]>")
source_url("https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/vulkan-sdk-1.4.357.0.tar.gz")
builddep("shortcut/cmake")
builddep("shortcut/c")
def build():
cpp.cmake()
cpp.ninja()
cpp.ninja_install()
on_build(build)
def fix_pc(path):
with open(path, 'r') as file:
content = file.read()
content = content.replace("includedir=//usr/include", f"includedir={get_prefix('spirv-headers')}/include")
with open(path, 'wt+') as file:
file.write(content)
def pack(composer):
composer.add_dir("include", "include")
composer.add_dir("share", "lib")
fix_pc(f"{composer.workdir}/bundle/lib/pkgconfig/SPIRV-Headers.pc")
package("spirv-headers")
on_pack(pack)