Added kotlin code generation

This commit is contained in:
Abdelilah El Aissaoui 2024-07-15 14:17:56 +02:00
parent 618a5f805e
commit 633e75acaa
No known key found for this signature in database
GPG Key ID: 7587FC860F594869

View File

@ -171,12 +171,6 @@ task("fatJarLinux", type = Jar::class) {
with(tasks.jar.get() as CopySpec) with(tasks.jar.get() as CopySpec)
} }
//
//task("rust_generateKotlinFromUdl") {
// println("Generate Kotlin")
// generateKotlinFromUdl()
//}
task("rust_build") { task("rust_build") {
buildRust() buildRust()
} }
@ -206,7 +200,7 @@ task("tasksList") {
task("rustTasks") { task("rustTasks") {
buildRust() buildRust()
copyRustBuild() copyRustBuild()
// generateKotlinFromUdl() generateKotlinFromRs()
} }
task("rust_copyBuild") { task("rust_copyBuild") {
@ -214,7 +208,29 @@ task("rust_copyBuild") {
} }
fun generateKotlinFromRs() { fun generateKotlinFromRs() {
val outDir = "${project.projectDir}/src/main/kotlin/com/jetpackduba/gitnuro/autogenerated/"
println("Out dir is $outDir")
val outDirFile = File(outDir)
if (outDirFile.exists()) {
outDirFile.listFiles()?.forEach { file -> if (file.name != ".gitignore") file.delete() }
} else {
outDirFile.mkdirs()
}
// cargo-kotars must be preinstalled
val command = listOf(
"cargo-kotars",
"--kotlin-output",
outDir,
)
exec {
println("Generating Kotlin source files")
workingDir = File(project.projectDir, "rs")
commandLine = command
}
} }
fun buildRust() { fun buildRust() {