Radix/third_party/com_google_sentencepiece/sentencepiece.bazel

97 lines
2.1 KiB
Plaintext
Raw Normal View History

load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
load("@protobuf//bazel:cc_proto_library.bzl", "cc_proto_library")
load("@protobuf//bazel:proto_library.bzl", "proto_library")
package(
default_visibility = ["//visibility:public"],
features = [
"layering_check",
"parse_headers",
],
)
licenses(["notice"]) # Apache 2, BSD, MIT
proto_library(
name = "sentencepiece_proto",
srcs = ["src/sentencepiece.proto"],
)
cc_proto_library(
name = "sentencepiece_cc_proto",
deps = [":sentencepiece_proto"],
)
proto_library(
name = "sentencepiece_model_proto",
srcs = ["src/sentencepiece_model.proto"],
)
cc_proto_library(
name = "sentencepiece_model_cc_proto",
deps = [":sentencepiece_model_proto"],
)
copy_file(
name = "config_h",
src = "config.h.in",
out = "config.h",
allow_symlink = True,
)
cc_library(
name = "darts_clone",
hdrs = glob([
"third_party/darts_clone/*.h",
]),
includes = ["."],
)
cc_library(
name = "sentencepiece_processor",
srcs = [
"src/bpe_model.cc",
"src/char_model.cc",
"src/error.cc",
"src/filesystem.cc",
"src/model_factory.cc",
"src/model_interface.cc",
"src/normalizer.cc",
"src/sentencepiece_processor.cc",
"src/unigram_model.cc",
"src/util.cc",
"src/word_model.cc",
],
hdrs = [
":config_h",
"src/common.h",
"src/bpe_model.h",
"src/char_model.h",
"src/filesystem.h",
"src/freelist.h",
"src/init.h",
"src/model_factory.h",
"src/model_interface.h",
"src/normalizer.h",
"src/sentencepiece_processor.h",
"src/trainer_interface.h",
"src/unigram_model.h",
"src/util.h",
"src/word_model.h",
],
defines = [
"_USE_EXTERNAL_PROTOBUF",
"_USE_EXTERNAL_ABSL",
],
includes = [
"src",
],
deps = [
":darts_clone",
":sentencepiece_cc_proto",
":sentencepiece_model_cc_proto",
"@protobuf//:protobuf_lite",
"@zml//third_party/com_google_sentencepiece:absl",
],
)