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 ") source_managed("github://KhronosGroup/glslang#16.5.0") 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_LIBDIR={get_prefix('glslang-dev')}/lib", f"-DCMAKE_INSTALL_INCLUDEDIR={get_prefix('glslang-dev')}/include", f"-DCMAKE_INSTALL_BINDIR={get_prefix('glslang')}/bin", ]) cpp.ninja() cpp.ninja_install() on_build(build) def pack_glslang(composer): composer.add_dir("bin") package("glslang") dep("libcxx @same-arch") on_pack(pack_glslang) package("glslang-dev") dep("libcxx-dev @same-arch") cpp.use_auto_pack(["lib", "dev"])