Skip to content

Commit

Permalink
Use the correct source directory set for KGP (#3419)
Browse files Browse the repository at this point in the history
  • Loading branch information
Alec Strong committed Aug 6, 2022
1 parent a758b31 commit 1967c14
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 34 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ import org.gradle.api.Project
import org.gradle.api.Task
import org.gradle.api.file.SourceDirectorySet
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.SourceSetContainer
import org.gradle.api.tasks.TaskContainer
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.KotlinJsProjectExtension
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
import org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import java.io.File

Expand Down Expand Up @@ -50,13 +50,13 @@ internal fun SqlDelightDatabase.sources(project: Project): List<Source> {
}

// Kotlin project.
val sourceSets = project.extensions.getByName("sourceSets") as SourceSetContainer
val sourceSets = (project.extensions.getByName("kotlin") as KotlinProjectExtension).sourceSets
return listOf(
Source(
type = KotlinPlatformType.jvm,
name = "main",
sourceSets = listOf("main"),
sourceDirectorySet = sourceSets.getByName("main").kotlin ?: project.objects.sourceDirectorySet("empty", "Empty kotlin source set"),
sourceDirectorySet = sourceSets.getByName("main").kotlin,
),
)
}
Expand Down Expand Up @@ -94,18 +94,18 @@ private fun BaseExtension.sources(project: Project): List<Source> {
is LibraryExtension -> libraryVariants
else -> throw IllegalStateException("Unknown Android plugin $this")
}
val kotlinSourceSets = (project.extensions.getByName("kotlin") as KotlinProjectExtension).sourceSets
val sourceSets = sourceSets
.associate { sourceSet ->
sourceSet.name to sourceSet.kotlinSourceDirectorySet
sourceSet.name to kotlinSourceSets.getByName(sourceSet.name).kotlin
}

return variants.map { variant ->
Source(
type = KotlinPlatformType.androidJvm,
name = variant.name,
variantName = variant.name,
sourceDirectorySet = sourceSets[variant.name]
?: project.objects.sourceDirectorySet(variant.name, "Empty kotlin source set"),
sourceDirectorySet = sourceSets[variant.name]!!,
sourceSets = variant.sourceSets.map { it.name },
registerGeneratedDirectory = { outputDirectoryProvider ->
variant.addJavaSourceFoldersToModel(outputDirectoryProvider.get())
Expand Down

This file was deleted.

4 changes: 4 additions & 0 deletions sqldelight-gradle-plugin/src/test/variants/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ android {

compileSdk deps.versions.compileSdk.get() as int

defaultConfig {
minSdk deps.versions.minSdk.get() as int
}

lint {
textReport true
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"/>

0 comments on commit 1967c14

Please sign in to comment.