aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordimdim11 <dimdim11@yandex-team.com>2025-04-03 02:04:05 +0300
committerdimdim11 <dimdim11@yandex-team.com>2025-04-03 02:15:08 +0300
commit8ebf663ab7da3d503dc8294a305ea95503428275 (patch)
tree573a65706b11f29ebc5a619b559abdec5ca2a25b
parent8491a75624d02cedebcec8667d6fe69022d504db (diff)
downloadydb-8ebf663ab7da3d503dc8294a305ea95503428275.tar.gz
Fix usage generated proto
Fix usage generated proto commit_hash:080a437e62b2e0a1ba4670fc29cd1438efeb6c27
-rw-r--r--build/export_generators/ide-gradle/build.gradle.kts.proto.jinja8
-rw-r--r--build/export_generators/ide-gradle/proto_prepare.jinja23
2 files changed, 26 insertions, 5 deletions
diff --git a/build/export_generators/ide-gradle/build.gradle.kts.proto.jinja b/build/export_generators/ide-gradle/build.gradle.kts.proto.jinja
index 95dfa0cca7f..55b68381e8a 100644
--- a/build/export_generators/ide-gradle/build.gradle.kts.proto.jinja
+++ b/build/export_generators/ide-gradle/build.gradle.kts.proto.jinja
@@ -12,8 +12,12 @@
{%- endif -%}
{%- endmacro -%}
-{%- macro PatchGeneratedProto(arg) -%}
-"{{ arg|replace(export_root, "$mainExtractedIncludeProtosDir")|replace(arcadia_root, "$mainExtractedIncludeProtosDir") }}"
+{%- macro PatchGeneratedProto(arg, relative = false) -%}
+{%- if relative -%}
+"{{ arg|replace(export_root + "/", "")|replace(arcadia_root + "/", "") }}"
+{%- else -%}
+"{{ arg|replace(export_root, "$baseBuildDir")|replace(arcadia_root, "$baseBuildDir") }}"
+{%- endif -%}
{%- endmacro -%}
{%- include "[generator]/proto_vars.jinja" -%}
diff --git a/build/export_generators/ide-gradle/proto_prepare.jinja b/build/export_generators/ide-gradle/proto_prepare.jinja
index 7355872471a..056e2bf68c6 100644
--- a/build/export_generators/ide-gradle/proto_prepare.jinja
+++ b/build/export_generators/ide-gradle/proto_prepare.jinja
@@ -12,17 +12,34 @@ val prepareMainProtos = tasks.register<Copy>("prepareMainProtos") {
{%- endif %}
{% if extractIncludeTask -%}
+
val extractMainLibrariesProtos = tasks.register<Copy>("extractMainLibrariesProtos") {
+{%- if libraries|length -%}
from("$project_root") {
{#- list of all library directories -#}
{%- for library in libraries -%}
{%- set path_and_jar = rsplit(library.jar, '/', 2) %}
include("{{ path_and_jar[0] }}/**/*.proto")
+{%- endfor %}
+ }
+{% endif -%}
+{%- if target.runs|length or target.custom_runs|length %}
+ from("$baseBuildDir") {
+{%- for run in target.runs -%}
+{%- for out in run.out %}
+ include({{ PatchGeneratedProto(out, true) }})
+{%- endfor -%}
+{%- for out_dir in run.out_dir %}
+ include({{ PatchGeneratedProto(out_dir, true) }} + "/**/*.proto")
+{%- endfor -%}
{%- endfor -%}
-{%- if libraries|length == 0 %}
- include("dummy_path/*.proto")
-{%- endif %}
+{%- for custom_run in target.custom_runs -%}
+{%- for out in custom_run.outputs %}
+ include({{ PatchGeneratedProto(out, true) }})
+{%- endfor -%}
+{%- endfor %}
}
+{% endif -%}
into(mainExtractedIncludeProtosDir)
}