Merge pull request 'feat: add package spirv-tools' (#147) from sisungo/semios-packages:spirvtools into master

Reviewed-on: semios/semios-packages#147
This commit is contained in:
2026-08-17 10:10:23 +08:00
2 changed files with 44 additions and 0 deletions
+1
View File
@@ -117,6 +117,7 @@ def _is_dev_file(ent) -> bool:
or ent.name.endswith(".la")
or ent.name.endswith(".pc")
or ent.name.endswith(".h")
or ent.name.endswith(".hpp")
or ent.name.endswith(".cmake")
or ent.name.endswith(".inc")
or ("Makefile" in ent.name)
+43
View File
@@ -0,0 +1,43 @@
import os
import shutil
from lib.make import *
from lib import cpp, arch
sdk_version = "1.4.357.0"
version(sdk_version)
description("an API and commands for processing SPIR-V modules")
maintainer("sisungo <[email protected]>")
source_url("https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/vulkan-sdk-1.4.357.0.tar.gz")
builddep("shortcut/cmake")
builddep("shortcut/c++")
builddep(f"spirv-headers (={sdk_version}) @{arch.get_target()}")
def build():
cpp.cmake([
f"-DSPIRV-Headers_SOURCE_DIR=/lib/{arch.get_target()}",
"-DCMAKE_CXX_FLAGS=-Wno-error=switch",
f"-DCMAKE_INSTALL_PREFIX={get_prefix('spirv-tools-dev')}",
])
cpp.ninja()
cpp.ninja_install()
try:
os.rename("lib64", "lib")
os.rename("lib32", "lib")
except:
pass
on_build(build)
package("spirv-tools")
dep("libcxx @same-arch")
cpp.use_auto_pack(["bin"])
package("spirv-tools-dev")
dep("spirv-tools (same)")
cpp.use_auto_pack(["lib", "dev"])