aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/conf/proto.conf2
-rw-r--r--build/conf/ts/ts_proto.conf22
2 files changed, 22 insertions, 2 deletions
diff --git a/build/conf/proto.conf b/build/conf/proto.conf
index ab01c024b1..7fd77916e8 100644
--- a/build/conf/proto.conf
+++ b/build/conf/proto.conf
@@ -796,7 +796,7 @@ multimodule PROTO_LIBRARY {
module TS_PROTO: _TS_PROTO_IMPL {
# opt-in. We don't want to have TS_PROTO by default
- # To include TS_PROTO user have to set INCLUDE_TAGS(TS_PROTO) in ya.make
+ # To include TS_PROTO user have to set INCLUDE_TAGS(TS_PROTO TS_PREPARE_DEPS) in ya.make
.INCLUDE_TAG=no
.EPILOGUE=_TS_CONFIG_EPILOGUE
.PEERDIRSELF=TS_PREPARE_DEPS
diff --git a/build/conf/ts/ts_proto.conf b/build/conf/ts/ts_proto.conf
index 9ab222e8c9..305728a90c 100644
--- a/build/conf/ts/ts_proto.conf
+++ b/build/conf/ts/ts_proto.conf
@@ -1,7 +1,8 @@
-_TS_PROTO_SRCS_FILES=
+_TS_PROTO_OPT=
_TS_PROTO_IMPL_CMD=$TOUCH_UNIT \
&& $_TS_FILES_COPY_CMD \
&& $NOTS_TOOL $NOTS_TOOL_BASE_ARGS build-ts-proto $NOTS_TOOL_COMMON_BUILDER_ARGS \
+ ${_TS_PROTO_OPT} \
--protoc-bin $PROTOC \
--proto-srcs $_TS_PROTO_SRCS_FILES \
--proto-paths ./$PROTO_NAMESPACE $ARCADIA_ROOT/$PROTO_NAMESPACE $_PROTO__INCLUDE $ARCADIA_BUILD_ROOT $PROTOBUF_INCLUDE_PATH \
@@ -45,3 +46,22 @@ module _TS_PROTO_IMPL: _TS_BASE_UNIT {
macro _TS_PROTO_SRCS(FILES...) {
_SET_APPEND_WITH_DIRECTIVE(_TS_PROTO_SRCS_FILES input $FILES)
}
+
+### @usage: TS_PROTO_OPT(key1=value1 key2=value2)
+###
+### Overrides default options for `--ts_proto_opt`
+### ([supported options](https://github.com/stephenh/ts-proto?tab=readme-ov-file#supported-options)).
+###
+### Documentation: https://docs.yandex-team.ru/frontend-in-arcadia/references/PROTO_LIBRARY#ts_proto_opt
+###
+### @example
+###
+### TS_PROTO_OPT(env=browser)
+### TS_PROTO_OPT(
+### useJsonName=true
+### useJsonWireFormat=true
+### )
+###
+macro TS_PROTO_OPT(OPTS...) {
+ SET_APPEND(_TS_PROTO_OPT ${pre=--ts-proto-opt :OPTS})
+}