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", ], 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", ) filegroup( name = "all_assets", srcs = glob(["src/**"]) + [":compiled_js", ":public_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", )