For the record: so far I came up with the following script
# build.gradle.kts
subprojects {
...
afterEvaluate {
childProjects.forEach {
tasks.forEach { task ->
task.dependsOn(":${project.path}:${it.value.name}:${task.name}")
}
}
}
}
which actually binds all child project tasks to the current subproject, in my case:
:samples:build dependsOn
:samples:beginner:build
:samples:intemediate:build
:samples:advanced:build
:samples:beginner:build dependsOn
:samples:beginner:sampleA:build
...
:samples:beginner:sampleB:build
:samples:intemediate:build dependsOn
:samples:intemediate:sampleC:build
...
:samples:intemediate:sampleD:build
etc.
Please let me know if you find a better way of doing this.