Skip to content

Commit e43c10e

Browse files
committed
Make the Gradle plugin buildSrc friendly
1 parent c8edc3e commit e43c10e

File tree

6 files changed

+23
-12
lines changed

6 files changed

+23
-12
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/**
2+
* 为了让 gradle 插件可以在 buildSrc 之类的地方使用。
3+
*/
4+
fun org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension.configGradleBuildSrcFriendly() {
5+
coreLibrariesVersion = "1.9.0"
6+
compilerOptions {
7+
apiVersion.set(org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9)
8+
languageVersion.set(org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9)
9+
}
10+
}

compiler/suspend-transform-plugin-cli/build.gradle.kts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,10 @@ dependencies {
2121
}
2222

2323
kotlin {
24+
configGradleBuildSrcFriendly()
2425
compilerOptions {
2526
jvmTarget.set(JvmTarget.JVM_1_8)
26-
freeCompilerArgs.addAll(
27-
"-Xjvm-default=all",
28-
)
27+
freeCompilerArgs.addAll("-Xjvm-default=all")
2928
}
3029
}
3130

compiler/suspend-transform-plugin-configuration/build.gradle.kts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,10 @@ dependencies {
1515
}
1616

1717
kotlin {
18+
configGradleBuildSrcFriendly()
1819
compilerOptions {
1920
jvmTarget.set(JvmTarget.JVM_1_8)
20-
freeCompilerArgs.addAll(
21-
"-Xjvm-default=all",
22-
)
21+
freeCompilerArgs.addAll("-Xjvm-default=all",)
2322
}
2423

2524
}

compiler/suspend-transform-plugin-deprecated-configuration/build.gradle.kts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,10 @@ dependencies {
1414
}
1515

1616
kotlin {
17+
configGradleBuildSrcFriendly()
1718
compilerOptions {
1819
jvmTarget.set(JvmTarget.JVM_1_8)
19-
freeCompilerArgs.addAll(
20-
"-Xjvm-default=all",
21-
)
20+
freeCompilerArgs.addAll("-Xjvm-default=all")
2221
}
2322

2423
}

compiler/suspend-transform-plugin/src/main/kotlin/love/forte/plugin/suspendtrans/fir/SuspendTransformFirTransformer.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ import love.forte.plugin.suspendtrans.configuration.TargetPlatform
66
import love.forte.plugin.suspendtrans.configuration.Transformer
77
import love.forte.plugin.suspendtrans.fqn
88
import love.forte.plugin.suspendtrans.utils.*
9+
import org.jetbrains.kotlin.KtFakeSourceElementKind
910
import org.jetbrains.kotlin.descriptors.Modality
11+
import org.jetbrains.kotlin.fakeElement
1012
import org.jetbrains.kotlin.fir.*
1113
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
1214
import org.jetbrains.kotlin.fir.analysis.checkers.context.MutableCheckerContext
@@ -55,6 +57,7 @@ import org.jetbrains.kotlin.platform.isJs
5557
import org.jetbrains.kotlin.platform.isWasm
5658
import org.jetbrains.kotlin.platform.jvm.isJvm
5759
import org.jetbrains.kotlin.platform.konan.isNative
60+
import org.jetbrains.kotlin.realElement
5861
import org.jetbrains.kotlin.utils.keysToMap
5962
import java.util.concurrent.ConcurrentHashMap
6063

@@ -607,6 +610,7 @@ class SuspendTransformFirTransformer(
607610
val newFunTarget = FirFunctionTarget(null, isLambda = false)
608611
val newFun = buildSimpleFunctionCopy(originFunc) {
609612
origin = FirDeclarationOrigin.Plugin(SuspendTransformK2V3Key)
613+
source = originFunc.source?.fakeElement(KtFakeSourceElementKind.PluginGenerated)
610614
name = callableId.callableName
611615
symbol = newFunSymbol
612616
status = originFunc.status.copy(
@@ -726,7 +730,7 @@ class SuspendTransformFirTransformer(
726730
val p1 = buildProperty {
727731
symbol = pSymbol
728732
name = callableId.callableName
729-
source = original.source
733+
source = original.source?.fakeElement(KtFakeSourceElementKind.PluginGenerated)
730734
resolvePhase = original.resolvePhase
731735
moduleData = original.moduleData
732736
origin = pKey.origin

plugins/suspend-transform-plugin-gradle/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import love.forte.gradle.common.publication.configure.configPublishMaven
33
import love.forte.gradle.common.publication.configure.publishingExtension
44
import love.forte.gradle.common.publication.configure.setupPom
55
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
6+
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion
67
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
78
import utils.isMainPublishable
89

@@ -33,10 +34,10 @@ dependencies {
3334
api(project(":compiler:suspend-transform-plugin-cli"))
3435
api(project(":compiler:suspend-transform-plugin-configuration"))
3536
api(project(":compiler:suspend-transform-plugin-deprecated-configuration"))
36-
3737
}
3838

3939
kotlin {
40+
configGradleBuildSrcFriendly()
4041
compilerOptions {
4142
freeCompilerArgs.addAll("-Xjvm-default=all")
4243
}
@@ -72,7 +73,6 @@ buildConfig {
7273

7374
//if (!isAutomatedGradlePluginPublishing()) {
7475
if (isMainPublishable()) {
75-
@Suppress("UnstableApiUsage")
7676
gradlePlugin {
7777
website = "https://github.com/ForteScarlet/kotlin-suspend-transform-compiler-plugin"
7878
vcsUrl = "https://github.com/ForteScarlet/kotlin-suspend-transform-compiler-plugin.git"

0 commit comments

Comments
 (0)