96 lines
2.1 KiB
Plaintext
96 lines
2.1 KiB
Plaintext
|
|
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",
|
||
|
|
"@zml//third_party/com_google_sentencepiece:absl",
|
||
|
|
],
|
||
|
|
)
|