# Copyright (c) Meta Platforms, Inc. and affiliates.

load("../../../defs.bzl", "zs_cxxbinary", "zs_cxxlibrary")

oncall("data_compression")

zs_cxxlibrary(
    name = "lib",
    srcs = glob(
        [
            "*.cpp",
            "tokenizer/*.cpp",
            "grouper/*.cpp",
            "parser/*.cpp",
            "codegen/*.cpp",
            "semantic_analyzer/*.cpp",
            "optimizer/*.cpp",
        ],
        exclude = ["main.cpp"],
    ),
    headers = glob([
        "*.h",
        "tokenizer/*.h",
        "grouper/*.h",
        "parser/*.h",
        "codegen/*.h",
        "semantic_analyzer/*.h",
        "optimizer/*.h",
    ]),
    exported_deps = [
        "../../../cpp:openzl_cpp",
    ],
)

zs_cxxbinary(
    name = "compiler",
    srcs = ["main.cpp"],
    deps = [
        "../../../tools:io",
        ":lib",
    ],
)
