Hello Gradle Community,
I’m working on integrating a custom toolchain for the our processor into a Gradle 8.8 project. Specifically, we have our own implementation of GCC for this architecture.
Context:
With the previous version of Gradle, we were using models and platforms, see below:
class coolidgePlugin implements Plugin<Project> {
@Override
void apply(Project project) {
project.plugins.apply('cpp-application')
project.model {
platforms {
coolidge {
architecture "brane"
operatingSystem "linux"
}
}
toolChains {
gcc(Gcc) {
target("braneManycore"){
cppCompiler.executable 'br-g++'
assembler.executable 'br-g++'
linker.executable 'br-g++'
}
}
}
}
}
}
Question:
-
What is the recommended approach for creating and integrating a custom toolchain in Gradle 8.8? There has been a lot of changes in the API and we’re don’t know what is the best option.
-
If extending
GccToolChain
is the recommended route, could you provide guidance or examples on how to properly set up and instantiate the necessary internal dependencies in Gradle 8.8? -
Which approach is likely to offer better stability and maintainability with future Gradle versions?
Thank you in advance for your insights and recommendations!
Nicolas