summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordimdim11 <[email protected]>2025-04-10 18:20:12 +0300
committerdimdim11 <[email protected]>2025-04-10 18:37:20 +0300
commit566aa5b461d798813dfbf882c226ad0c9c5be071 (patch)
tree8499512abd0595c28df2a0083a276396c88ded46
parente43e3425034d03daaec5282fe1d8ec72fbe0b6dc (diff)
Fix codegen depends
Fix codegen depends commit_hash:923366206b7f7d49bf768a073a20224e396848f8
-rw-r--r--build/export_generators/ide-gradle/build.gradle.kts.common.jinja3
-rw-r--r--build/export_generators/ide-gradle/copy_file.jinja2
-rw-r--r--build/export_generators/ide-gradle/move_file.jinja13
-rw-r--r--build/export_generators/ide-gradle/repositories.jinja1
-rw-r--r--build/export_generators/ide-gradle/run_common.jinja2
-rw-r--r--build/export_generators/ide-gradle/run_depends.jinja42
-rw-r--r--build/export_generators/ide-gradle/run_java_program.jinja2
-rw-r--r--build/export_generators/ide-gradle/run_program.jinja2
8 files changed, 42 insertions, 25 deletions
diff --git a/build/export_generators/ide-gradle/build.gradle.kts.common.jinja b/build/export_generators/ide-gradle/build.gradle.kts.common.jinja
index 8e78dd15234..ee26a62fa7a 100644
--- a/build/export_generators/ide-gradle/build.gradle.kts.common.jinja
+++ b/build/export_generators/ide-gradle/build.gradle.kts.common.jinja
@@ -8,8 +8,9 @@
{#- Codegen -#}
{%- include "[generator]/run_program.jinja" -%}
{%- include "[generator]/run_java_program.jinja" -%}
-{%- include "[generator]/run_common.jinja" -%}
{%- include "[generator]/copy_file.jinja" -%}
+{%- include "[generator]/move_file.jinja" -%}
+{%- include "[generator]/run_common.jinja" -%}
{%- include "[generator]/run_depends.jinja" -%}
{%- include "[generator]/javadoc.jinja" -%}
diff --git a/build/export_generators/ide-gradle/copy_file.jinja b/build/export_generators/ide-gradle/copy_file.jinja
index 474b742009a..7a4a9a88431 100644
--- a/build/export_generators/ide-gradle/copy_file.jinja
+++ b/build/export_generators/ide-gradle/copy_file.jinja
@@ -10,7 +10,7 @@
{%- set dst_path = dst_split[0] -%}
{%- set dst_name = dst_split[1] %}
-val codegen{{ copy['_object_index'] }} = tasks.register<Copy>("copy{{ copy['_object_index'] }}") {
+val codegen{{ copy['_object_index'] }} = tasks.register<Copy>("codegen{{ copy['_object_index'] }}") {
from({{ PatchRoots(src_path) }}) {
include("{{ src_name }}")
}
diff --git a/build/export_generators/ide-gradle/move_file.jinja b/build/export_generators/ide-gradle/move_file.jinja
new file mode 100644
index 00000000000..cb2fc261ee8
--- /dev/null
+++ b/build/export_generators/ide-gradle/move_file.jinja
@@ -0,0 +1,13 @@
+{%- set moves = target.target_commands|selectattr("macro", "eq", "move_file") -%}
+{%- if moves|length -%}
+{%- for move in moves -%}
+{%- set src = move.args[0] -%}
+{%- set dst = move.args[1] %}
+
+val codegen{{ move['_object_index'] }} = tasks.register("codegen{{ move['_object_index'] }}") {
+ doLast {
+ file("{{ PatchRoots(src) }}").renameTo(file("{{ PatchRoots(dst) }}"))
+ }
+}
+{% endfor -%}
+{%- endif -%}
diff --git a/build/export_generators/ide-gradle/repositories.jinja b/build/export_generators/ide-gradle/repositories.jinja
index b55fc07ae5c..60d36c5f3cd 100644
--- a/build/export_generators/ide-gradle/repositories.jinja
+++ b/build/export_generators/ide-gradle/repositories.jinja
@@ -1,3 +1,4 @@
+{#- empty string #}
val bucketUsername: String by project
val bucketPassword: String by project
repositories {
diff --git a/build/export_generators/ide-gradle/run_common.jinja b/build/export_generators/ide-gradle/run_common.jinja
index 4f8a207bb4a..2492926c761 100644
--- a/build/export_generators/ide-gradle/run_common.jinja
+++ b/build/export_generators/ide-gradle/run_common.jinja
@@ -1,4 +1,4 @@
-{%- if not proto_template and (target.runs|length or target.custom_runs|length) %}
+{%- if not proto_template and (target.runs|length or target.custom_runs|length or copies|length or moves|length) %}
tasks.getByName("sourcesJar").dependsOn(tasks.compileJava)
{%- if with_kotlin %}
diff --git a/build/export_generators/ide-gradle/run_depends.jinja b/build/export_generators/ide-gradle/run_depends.jinja
index 65e9265fd9d..c58caad33b6 100644
--- a/build/export_generators/ide-gradle/run_depends.jinja
+++ b/build/export_generators/ide-gradle/run_depends.jinja
@@ -20,35 +20,37 @@ tasks.compileTestKotlin.configure {
{% endif -%}
{%- endmacro -%}
-{%- if target.custom_runs|length -%}
-{%- for obj in target.custom_runs -%}
-{%- if obj['_parent_object_index'] %}
+{%- macro ObjDepends(obj) -%}
+{%- set taskvar = "codegen" + obj['_object_index'] -%}
+{%- if obj['_parent_object_index'] -%}
+{%- set parent_taskvar = "codegen" + obj['_parent_object_index'] %}
+
+tasks.getByName("{{ parent_taskvar }}").dependsOn({{ taskvar }})
+{%- else -%}
+{{ TopDepends(taskvar) }}
+{%- endif -%}
+{%- endmacro -%}
-codegen{{ obj['_parent_object_index'] }}.dependsOn(codegen{{ obj['_object_index'] }})
-{%- else -%}
-{{ TopDepends("codegen" + obj['_object_index'])}}
-{%- endif -%}
+{%- if target.custom_runs|length -%}
+{%- for custom_run in target.custom_runs -%}
+{{ ObjDepends(custom_run) }}
{%- endfor -%}
{%- endif -%}
{%- if target.runs|length -%}
-{%- for obj in target.runs -%}
-{%- if obj['_parent_object_index'] %}
-
-codegen{{ obj['_parent_object_index'] }}.dependsOn(codegen{{ obj['_object_index'] }})
-{%- else -%}
-{{ TopDepends("codegen" + obj['_object_index'])}}
-{%- endif -%}
+{%- for run in target.runs -%}
+{{ ObjDepends(run) }}
{%- endfor -%}
{%- endif -%}
{%- if copies|length -%}
-{%- for obj in copies -%}
-{%- if obj['_parent_object_index'] %}
+{%- for copy in copies -%}
+{{ ObjDepends(copy) }}
+{%- endfor -%}
+{%- endif -%}
-codegen{{ obj['_parent_object_index'] }}.dependsOn(codegen{{ obj['_object_index'] }})
-{%- else -%}
-{{ TopDepends("codegen" + obj['_object_index'])}}
-{%- endif -%}
+{%- if moves|length -%}
+{%- for move in moves -%}
+{{ ObjDepends(move) }}
{%- endfor -%}
{%- endif -%}
diff --git a/build/export_generators/ide-gradle/run_java_program.jinja b/build/export_generators/ide-gradle/run_java_program.jinja
index 88a67f8f5cc..5e82fb3bc11 100644
--- a/build/export_generators/ide-gradle/run_java_program.jinja
+++ b/build/export_generators/ide-gradle/run_java_program.jinja
@@ -1,7 +1,7 @@
{%- if target.runs|length -%}
{%- for run in target.runs %}
-val codegen{{ run['_object_index'] }} = task<JavaExec>("runJavaProgram{{ run['_object_index'] }}") {
+val codegen{{ run['_object_index'] }} = task<JavaExec>("codegen{{ run['_object_index'] }}") {
group = "build"
description = "Code generation by run java program"
diff --git a/build/export_generators/ide-gradle/run_program.jinja b/build/export_generators/ide-gradle/run_program.jinja
index f7eeb9cd2d8..8c5f8db5110 100644
--- a/build/export_generators/ide-gradle/run_program.jinja
+++ b/build/export_generators/ide-gradle/run_program.jinja
@@ -1,7 +1,7 @@
{%- if target.custom_runs|length -%}
{%- for custom_run in target.custom_runs %}
-val codegen{{ custom_run['_object_index'] }} = task<Exec>("runProgram{{ custom_run['_object_index'] }}") {
+val codegen{{ custom_run['_object_index'] }} = task<Exec>("codegen{{ custom_run['_object_index'] }}") {
group = "build"
description = "Code generation by run custom program"