view hg-web/BUILD @ 207:58d9b64d8dca

Updated deployment script to include sqlite3
author MrJuneJune <me@mrjunejune.com>
date Sun, 15 Feb 2026 12:25:50 -0800
parents 9f4429c49733
children
line wrap: on
line source

load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
load("//gui_ze:gui_ze.bzl", "move_files_into_dir", "bundle", "bun_bundle")

# Source files
filegroup(
  name = "src_ts_files",
  srcs = glob([
    "src/**/*.ts",
    "src/**/*.tsx",
    "src/**/*.js",
    "src/**/*.jsx",
  ], allow_empty = True),
)

# Bundle TypeScript with Bun
bun_bundle(
  name = "page",
  src = "src/main.tsx",
  deps = [
    ":src_ts_files",
    "//markdown_converter:markdown_to_html_wasm",
    "//third_party/highlight:js",
  ],
  visibility = ["//visibility:public"],
)

# Prepare compiled assets
move_files_into_dir(
  name = "compiled_js",
  srcs = [
    ":page",
    "//markdown_converter:markdown_to_html_wasm",
    "//third_party/highlight:js",
  ],
  dest = "src",
)

move_files_into_dir(
  name = "public_files",
  srcs = ["//mrjunejune:public_files"],
  dest = "src/public",
)

move_files_into_dir(
  name = "public_fonts_files",
  srcs = ["//mrjunejune:public_fonts_files"],
  dest = "src/public/fonts",
)

filegroup(
  name = "all_assets",
  srcs = glob(["src/**"]) + [":compiled_js", ":public_files", ":public_fonts_files"],
)

# Server binaries
cc_binary(
  name = "hg_web_server",
  srcs = ["main.c"],
  deps = ["//seobeo:seobeo"],
  data = [":all_assets"],
)

cc_binary(
  name = "hg_web_server_debug",
  srcs = ["main.c"],
  deps = ["//seobeo:seobeo"],
  data = [":all_assets"],
)

bundle(
  name = "hg_web_server_bundle",
  binary = ":hg_web_server",
)