Browse Source

Fix LIST_PROTO dependency on incorrect properties passing between main and additional outputs
bb4a52dc41ed160f50f9dece539dbd788be97430

somov 6 months ago
parent
commit
397a82f8ab
1 changed files with 6 additions and 1 deletions
  1. 6 1
      build/conf/proto.conf

+ 6 - 1
build/conf/proto.conf

@@ -634,10 +634,15 @@ macro _GENERATE_PY_EVS_INTERNAL(FILES...) {
 ###
 ###
 ### TODO: proper implementation needed
 ### TODO: proper implementation needed
 macro LIST_PROTO(TO="files.proto", Files...) {
 macro LIST_PROTO(TO="files.proto", Files...) {
-    .CMD=$YMAKE_PYTHON3 ${input:"build/scripts/list.py"} ${Files} ${input;hide:Files} ${stdout;output;noauto:TO} ${output_include;from_input;hide:Files} && $YMAKE_PYTHON ${input:"build/scripts/touch.py"} ${output;noext;suf=.pb.h:TO}
+    .CMD=$YMAKE_PYTHON3 ${input:"build/scripts/list.py"} ${Files} ${input;hide:Files} ${stdout;output;noauto:TO} ${output_include;from_input;hide:Files}
+    _COMPILE_LIST_PROTO(${TO})
     _EXPOSE(${TO})
     _EXPOSE(${TO})
 }
 }
 
 
+macro _COMPILE_LIST_PROTO(SRC) {
+    .CMD=$YMAKE_PYTHON ${input:"build/scripts/touch.py"} ${input;hide:SRC} ${output;noext;suf=.pb.h:SRC}
+}
+
 # tag:proto
 # tag:proto
 macro _PROTO_DESC_RAWPROTO_CMD(File) {
 macro _PROTO_DESC_RAWPROTO_CMD(File) {
     .CMD=${cwd;rootdir;input:File} $YMAKE_PYTHON3 ${input:"build/scripts/desc_rawproto_wrapper.py"} --desc-output ${output;suf=.desc:File} --rawproto-output ${output;norel;suf=.${_MODDIR_HASH}.rawproto:File} --proto-file ${input;rootrel:File} -- $PROTOC -I=./$PROTO_NAMESPACE -I=$ARCADIA_ROOT/$PROTO_NAMESPACE ${pre=-I=:_PROTO__INCLUDE} -I=$ARCADIA_BUILD_ROOT -I=$PROTOBUF_INCLUDE_PATH --include_source_info $_PROTOC_FLAGS ${hide:PROTO_FAKEID}
     .CMD=${cwd;rootdir;input:File} $YMAKE_PYTHON3 ${input:"build/scripts/desc_rawproto_wrapper.py"} --desc-output ${output;suf=.desc:File} --rawproto-output ${output;norel;suf=.${_MODDIR_HASH}.rawproto:File} --proto-file ${input;rootrel:File} -- $PROTOC -I=./$PROTO_NAMESPACE -I=$ARCADIA_ROOT/$PROTO_NAMESPACE ${pre=-I=:_PROTO__INCLUDE} -I=$ARCADIA_BUILD_ROOT -I=$PROTOBUF_INCLUDE_PATH --include_source_info $_PROTOC_FLAGS ${hide:PROTO_FAKEID}