Compare commits

..
Author SHA1 Message Date
sisungo 4e84558f9a feat: add package spirv-headers
Signed-off-by: sisungo <[email protected]>
2026-08-11 19:46:49 +08:00
3 changed files with 44 additions and 9 deletions
+6 -6
View File
@@ -4,16 +4,16 @@ from . import packie
all: dict[str, dict[str, str]] = {
"aarch64-semios-linux": {
"CC": "clang -target aarch64-unknown-linux-musl",
"CXX": "clang++ -target aarch64-unknown-linux-musl",
"CC": "clang -target aarch64-semios-linux-musl",
"CXX": "clang++ -target aarch64-semios-linux-musl",
},
"x86_64-semios-linux": {
"CC": "clang -target x86_64-unknown-linux-musl",
"CXX": "clang++ -target x86_64-unknown-linux-musl",
"CC": "clang -target x86_64-semios-linux-musl",
"CXX": "clang++ -target x86_64-semios-linux-musl",
},
"riscv64-semios-linux": {
"CC": "clang -target riscv64-unknown-linux-musl",
"CXX": "clang++ -target riscv64-unknown-linux-musl",
"CC": "clang -target riscv64-semios-linux-musl",
"CXX": "clang++ -target riscv64-semios-linux-musl",
},
}
_target: str = packie.host_arch()
+3 -3
View File
@@ -28,7 +28,7 @@ srcdir = None
packname = None
def llvm_host_triple():
return arch.get_target().replace("-semios-linux", "-unknown-linux-musl")
return arch.get_target().replace("-semios-linux", "-semios-linux-musl")
def cmake(sourcedir, args):
builddir = os.getcwd() + f"/../_build_{sourcedir}"
@@ -76,7 +76,7 @@ def auto_pack_dev(composer, name, devbins=[], extdirs=["lib/cmake"]):
composer.makedir("lib")
for i in os.listdir("lib"):
prefix = None
if os.path.isdir(f"lib/{i}") and f"lib/{i}" in extdirs:
if os.path.isdir(i) and f"lib/{i}" in extdirs:
composer.add_dir(f"lib/{i}", f"lib/{i}")
elif ".so" in i:
prefix = get_prefix(f"lib{name}")
@@ -132,7 +132,7 @@ def build_clang():
"-DCLANG_DEFAULT_CXX_STDLIB=libc++",
"-DCLANG_DEFAULT_RTLIB=compiler-rt",
"-DLLVM_INCLUDE_TESTS=OFF",
f"-DC_INCLUDE_DIRS=/lib/{arch.get_target()}/include:{get_prefix('clang')}/lib/clang/{pkgver_major}/include",
f"-DC_INCLUDE_DIRS=/lib/{arch.get_target()}/include",
]
cmake("clang", import_llvm() + options)
+35
View File
@@ -0,0 +1,35 @@
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)