All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCreateResourcesTaskSideEffect.kt Maven / Gradle / Ivy

There is a newer version: 2.0.0-RC2
Show newest version
/*
 * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
 * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
 */

package org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl

import org.gradle.language.jvm.tasks.ProcessResources
import org.jetbrains.kotlin.gradle.plugin.mpp.internal
import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask

internal val KotlinCreateResourcesTaskSideEffect = KotlinCompilationSideEffect { compilation ->
    val project = compilation.project
    compilation.internal.processResourcesTaskName?.let { processResourcesTaskName ->
        val resourceSet = project.files({ compilation.allKotlinSourceSets.map { it.resources } })
        val resourcesDestinationDir = project.file(compilation.output.resourcesDir)
        val resourcesTask = project.locateOrRegisterTask(processResourcesTaskName) { resourcesTask ->
            resourcesTask.description = "Processes ${resourceSet}."
            resourcesTask.from(resourceSet)
            resourcesTask.into(resourcesDestinationDir)
        }
        compilation.output.resourcesDirProvider = resourcesTask.map { resourcesDestinationDir }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy