summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCole Faust <colefaust@google.com>2023-11-08 15:42:59 -0800
committerCole Faust <colefaust@google.com>2023-11-08 15:42:59 -0800
commite0dcdf0702e9d0809d8b1dce003ae21c227df919 (patch)
tree60b06b2c402937bfa61cefe84cab4d4fcff29c13
parent0d8a53648a30e140e3faf29f7809c5e90963409b (diff)
downloadlibtextclassifier-e0dcdf0702e9d0809d8b1dce003ae21c227df919.tar.gz
Sandbox libtextclassifier genrules
go/roboleaf-busy-beavers-sandboxing Bug: 307824623 Test: ./build/soong/tests/genrule_sandbox_test.py libtextclassifier_fbgen_actions_actions-entity-data libtextclassifier_fbgen_actions_actions_model libtextclassifier_fbgen_annotator_datetime_datetime libtextclassifier_fbgen_annotator_entity-data libtextclassifier_fbgen_annotator_experimental_experimental libtextclassifier_fbgen_annotator_model libtextclassifier_fbgen_annotator_person_name_person_name_model libtextclassifier_fbgen_lang_id_common_flatbuffers_embedding-network libtextclassifier_fbgen_lang_id_common_flatbuffers_model libtextclassifier_fbgen_utils_codepoint-range libtextclassifier_fbgen_utils_container_bit-vector libtextclassifier_fbgen_utils_flatbuffers_flatbuffers libtextclassifier_fbgen_utils_flatbuffers_flatbuffers_test libtextclassifier_fbgen_utils_grammar_rules libtextclassifier_fbgen_utils_grammar_semantics_expression libtextclassifier_fbgen_utils_grammar_testing_value libtextclassifier_fbgen_utils_i18n_language-tag libtextclassifier_fbgen_utils_intents_intent-config libtextclassifier_fbgen_utils_lua_utils_tests libtextclassifier_fbgen_utils_normalization libtextclassifier_fbgen_utils_resources libtextclassifier_fbgen_utils_tflite_text_encoder_config libtextclassifier_fbgen_utils_tokenizer libtextclassifier_fbgen_utils_zlib_buffer Change-Id: Ieeaeae094d5fa0b0f45ed6e9e3d753e375d6b015
-rw-r--r--native/Android.bp16
-rw-r--r--native/FlatBufferHeaders.bp144
2 files changed, 121 insertions, 39 deletions
diff --git a/native/Android.bp b/native/Android.bp
index 5af5c50..8dde949 100644
--- a/native/Android.bp
+++ b/native/Android.bp
@@ -195,27 +195,23 @@ cc_library_static {
// -----------------
// Generate headers with FlatBuffer schema compiler.
// -----------------
-genrule_defaults {
- name: "fbgen",
- tools: ["flatc"],
- // "depfile" is used here in conjunction with flatc's -M to gather the deps
- cmd: "$(location flatc) --cpp --no-union-value-namespacing --gen-object-api --keep-prefix -I external/libtextclassifier/native -M $(in) >$(depfile) && " +
- "$(location flatc) --cpp --no-union-value-namespacing --gen-object-api --keep-prefix -I external/libtextclassifier/native -o $$(dirname $(out)) $(in)",
- depfile: true,
-}
+
+FBGEN_ARGS = "$(location flatc) --cpp --no-union-value-namespacing --gen-object-api --keep-prefix -I external/libtextclassifier/native -o $$(dirname $(out)) "
genrule {
name: "libtextclassifier_fbgen_utils_flatbuffers_flatbuffers_test",
srcs: ["utils/flatbuffers/flatbuffers_test.fbs"],
out: ["utils/flatbuffers/flatbuffers_test_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_lua_utils_tests",
srcs: ["utils/lua_utils_tests.fbs"],
out: ["utils/lua_utils_tests_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
// -----------------
diff --git a/native/FlatBufferHeaders.bp b/native/FlatBufferHeaders.bp
index 5ed09cc..17d77fe 100644
--- a/native/FlatBufferHeaders.bp
+++ b/native/FlatBufferHeaders.bp
@@ -18,154 +18,240 @@ genrule {
name: "libtextclassifier_fbgen_utils_i18n_language-tag",
srcs: ["utils/i18n/language-tag.fbs"],
out: ["utils/i18n/language-tag_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_tflite_text_encoder_config",
srcs: ["utils/tflite/text_encoder_config.fbs"],
out: ["utils/tflite/text_encoder_config_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_resources",
- srcs: ["utils/resources.fbs"],
+ srcs: [
+ "utils/i18n/language-tag.fbs",
+ "utils/resources.fbs",
+ "utils/zlib/buffer.fbs",
+ ],
out: ["utils/resources_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location utils/resources.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_utils_grammar_rules",
- srcs: ["utils/grammar/rules.fbs"],
+ srcs: [
+ "utils/flatbuffers/flatbuffers.fbs",
+ "utils/grammar/rules.fbs",
+ "utils/grammar/semantics/expression.fbs",
+ "utils/i18n/language-tag.fbs",
+ "utils/zlib/buffer.fbs",
+ ],
out: ["utils/grammar/rules_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location utils/grammar/rules.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_utils_grammar_testing_value",
srcs: ["utils/grammar/testing/value.fbs"],
out: ["utils/grammar/testing/value_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_grammar_semantics_expression",
- srcs: ["utils/grammar/semantics/expression.fbs"],
+ srcs: [
+ "utils/flatbuffers/flatbuffers.fbs",
+ "utils/grammar/semantics/expression.fbs",
+ ],
out: ["utils/grammar/semantics/expression_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location utils/grammar/semantics/expression.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_utils_zlib_buffer",
srcs: ["utils/zlib/buffer.fbs"],
out: ["utils/zlib/buffer_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_normalization",
srcs: ["utils/normalization.fbs"],
out: ["utils/normalization_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_intents_intent-config",
- srcs: ["utils/intents/intent-config.fbs"],
+ srcs: [
+ "utils/intents/intent-config.fbs",
+ "utils/zlib/buffer.fbs",
+ ],
out: ["utils/intents/intent-config_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location utils/intents/intent-config.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_utils_container_bit-vector",
srcs: ["utils/container/bit-vector.fbs"],
out: ["utils/container/bit-vector_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_codepoint-range",
srcs: ["utils/codepoint-range.fbs"],
out: ["utils/codepoint-range_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_tokenizer",
srcs: ["utils/tokenizer.fbs"],
out: ["utils/tokenizer_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_utils_flatbuffers_flatbuffers",
srcs: ["utils/flatbuffers/flatbuffers.fbs"],
out: ["utils/flatbuffers/flatbuffers_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_actions_actions_model",
- srcs: ["actions/actions_model.fbs"],
+ srcs: [
+ "actions/actions-entity-data.fbs",
+ "actions/actions_model.fbs",
+ "annotator/entity-data.fbs",
+ "annotator/experimental/experimental.fbs",
+ "annotator/model.fbs",
+ "utils/codepoint-range.fbs",
+ "utils/container/bit-vector.fbs",
+ "utils/flatbuffers/flatbuffers.fbs",
+ "utils/grammar/rules.fbs",
+ "utils/grammar/semantics/expression.fbs",
+ "utils/i18n/language-tag.fbs",
+ "utils/intents/intent-config.fbs",
+ "utils/normalization.fbs",
+ "utils/resources.fbs",
+ "utils/tokenizer.fbs",
+ "utils/zlib/buffer.fbs",
+ ],
out: ["actions/actions_model_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location actions/actions_model.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_actions_actions-entity-data",
srcs: ["actions/actions-entity-data.fbs"],
out: ["actions/actions-entity-data_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_lang_id_common_flatbuffers_embedding-network",
srcs: ["lang_id/common/flatbuffers/embedding-network.fbs"],
out: ["lang_id/common/flatbuffers/embedding-network_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_lang_id_common_flatbuffers_model",
srcs: ["lang_id/common/flatbuffers/model.fbs"],
out: ["lang_id/common/flatbuffers/model_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_annotator_entity-data",
srcs: ["annotator/entity-data.fbs"],
out: ["annotator/entity-data_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_annotator_person_name_person_name_model",
- srcs: ["annotator/person_name/person_name_model.fbs"],
+ srcs: [
+ "annotator/entity-data.fbs",
+ "annotator/experimental/experimental.fbs",
+ "annotator/model.fbs",
+ "annotator/person_name/person_name_model.fbs",
+ "utils/codepoint-range.fbs",
+ "utils/container/bit-vector.fbs",
+ "utils/flatbuffers/flatbuffers.fbs",
+ "utils/grammar/rules.fbs",
+ "utils/grammar/semantics/expression.fbs",
+ "utils/i18n/language-tag.fbs",
+ "utils/intents/intent-config.fbs",
+ "utils/normalization.fbs",
+ "utils/resources.fbs",
+ "utils/tokenizer.fbs",
+ "utils/zlib/buffer.fbs",
+ ],
out: ["annotator/person_name/person_name_model_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location annotator/person_name/person_name_model.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_annotator_experimental_experimental",
srcs: ["annotator/experimental/experimental.fbs"],
out: ["annotator/experimental/experimental_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
genrule {
name: "libtextclassifier_fbgen_annotator_model",
- srcs: ["annotator/model.fbs"],
+ srcs: [
+ "annotator/entity-data.fbs",
+ "annotator/experimental/experimental.fbs",
+ "annotator/model.fbs",
+ "utils/codepoint-range.fbs",
+ "utils/container/bit-vector.fbs",
+ "utils/flatbuffers/flatbuffers.fbs",
+ "utils/grammar/rules.fbs",
+ "utils/grammar/semantics/expression.fbs",
+ "utils/i18n/language-tag.fbs",
+ "utils/intents/intent-config.fbs",
+ "utils/normalization.fbs",
+ "utils/resources.fbs",
+ "utils/tokenizer.fbs",
+ "utils/zlib/buffer.fbs",
+ ],
out: ["annotator/model_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(location annotator/model.fbs)"
}
genrule {
name: "libtextclassifier_fbgen_annotator_datetime_datetime",
srcs: ["annotator/datetime/datetime.fbs"],
out: ["annotator/datetime/datetime_generated.h"],
- defaults: ["fbgen"],
+ tools: ["flatc"],
+ cmd: FBGEN_ARGS + "$(in)"
}
cc_library_headers {