view qwen3_vl/runtime.bzl @ 281:c57149ad216e default tip

Copilot-Session: f68442b1-fa8f-46a0-9689-81710613bbd4
author MrJuneJune <me@mrjunejune.com>
date Tue, 18 Aug 2026 22:18:15 -0700
parents 78699f810817
children
line wrap: on
line source

def _cuda_runtime_impl(ctx):
    output = ctx.actions.declare_directory(ctx.label.name)
    inputs = ctx.files.llama_runtime + ctx.files.cuda_runtime
    args = ctx.actions.args()
    args.add(output.path)
    args.add_all([file.path for file in inputs])

    ctx.actions.run_shell(
        inputs = inputs,
        outputs = [output],
        arguments = [args],
        command = """
set -euo pipefail
output="$1"
shift
mkdir -p "$output"
for input in "$@"; do
  cp -L "$input" "$output/$(basename "$input")"
done
chmod 0555 "$output"/*.exe
chmod 0444 "$output"/*.dll
""",
        progress_message = "Assembling llama.cpp CUDA runtime",
    )

    return [
        DefaultInfo(
            files = depset([output]),
            runfiles = ctx.runfiles(files = [output]),
        ),
    ]

cuda_runtime = rule(
    implementation = _cuda_runtime_impl,
    attrs = {
        "llama_runtime": attr.label(
            allow_files = True,
            mandatory = True,
        ),
        "cuda_runtime": attr.label(
            allow_files = True,
            mandatory = True,
        ),
    },
)