diff gui_ze/gui_ze.bzl @ 241:9c2eec61a152

[assets] Generate site images as WebP with Bazel
author MrJuneJune <me@mrjunejune.com>
date Mon, 03 Aug 2026 11:26:30 -0700
parents 9f4429c49733
children 70f2a3dafc1c
line wrap: on
line diff
--- a/gui_ze/gui_ze.bzl	Mon Aug 03 10:48:59 2026 -0700
+++ b/gui_ze/gui_ze.bzl	Mon Aug 03 11:26:30 2026 -0700
@@ -307,6 +307,20 @@
   },
 )
 
+def webp_image(name, src, out, quality = 90, lossless = False):
+  """Convert one image to WebP as a Bazel build action."""
+  native.genrule(
+    name = name,
+    srcs = [src],
+    outs = [out],
+    tools = ["@libwebp_linux_x86_64//:bin/cwebp"],
+    cmd = "$(location @libwebp_linux_x86_64//:bin/cwebp) -quiet -m 6 {} -q {} $(location {}) -o $@".format(
+      "-lossless" if lossless else "",
+      quality,
+      src,
+    ),
+  )
+
 def _move_to_directory_impl(ctx):
   srcs = ctx.files.data
   res = []