summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSvyatoslav Scherbina <svyatoslav.scherbina@jetbrains.com>2022-06-22 09:27:32 +0200
committerSpace <>2022-06-24 09:05:11 +0000
commit304bf926a7e9c30bc0bc7db747ad38e673478b91 (patch)
tree0adb5e4ca3e7b3b4106c87c030cc1193ee84cbc1
parent91863f20e6b7db9aef30fb74c29bc816bd97bc54 (diff)
downloadkotlin-304bf926a7e9c30bc0bc7db747ad38e673478b91.tar.gz
Revert "[Gradle] Propagate offline mode to Native compiler"
This reverts commit 15a52f33
-rw-r--r--libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt92
-rw-r--r--libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/KotlinToolRunner.kt6
-rw-r--r--libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/nativeToolRunners.kt7
3 files changed, 6 insertions, 99 deletions
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt
index 756c7653624..0cc45064a34 100644
--- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt
+++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/GeneralNativeIT.kt
@@ -21,8 +21,11 @@ import org.jetbrains.kotlin.konan.target.CompilerOutputKind
import org.jetbrains.kotlin.konan.target.HostManager
import org.jetbrains.kotlin.konan.target.KonanTarget
import org.jetbrains.kotlin.konan.target.presetName
-import org.junit.*
-import org.junit.rules.TemporaryFolder
+import org.junit.Assume
+import org.junit.Ignore
+import org.junit.Rule
+import org.junit.Test
+import org.junit.rules.ErrorCollector
import java.io.File
import java.nio.file.Files
import java.util.*
@@ -1094,81 +1097,6 @@ class GeneralNativeIT : BaseGradleIT() {
}
@Test
- fun `check offline mode is propagated to the compiler`() = with(
- transformNativeTestProjectWithPluginDsl(
- "executables",
- directoryPrefix = "native-binaries"
- )
- ) {
- val buildOptions = defaultBuildOptions()
-
- val linkTask = ":linkDebugExecutableHost"
- val compileTask = ":compileKotlinHost"
-
- build(linkTask, options = buildOptions) {
- assertSuccessful()
- }
-
- // Check that --offline works when all the dependencies are already downloaded:
- val buildOptionsOffline = buildOptions.copy(freeCommandLineArgs = buildOptions.freeCommandLineArgs + "--offline")
-
- build("clean", linkTask, options = buildOptionsOffline) {
- assertSuccessful()
- withNativeCommandLineArguments(compileTask, linkTask) {
- assertTrue(it.contains("-Xoverride-konan-properties=airplaneMode=true"))
- }
- }
-
- // Check that --offline fails when there are no downloaded dependencies:
- val customKonanDataDir = tempDir.newFolder("konanOffline")
- val buildOptionsOfflineWithCustomKonanDataDir = buildOptionsOffline.copy(
- customEnvironmentVariables = buildOptionsOffline.customEnvironmentVariables +
- ("KONAN_DATA_DIR" to customKonanDataDir.absolutePath)
- )
-
- build("clean", linkTask, options = buildOptionsOfflineWithCustomKonanDataDir) {
- assertFailed()
- assertTasksNotExecuted(listOf(linkTask))
- }
-
- checkNoDependenciesDownloaded(customKonanDataDir)
-
- // Check that the compiler is not extracted if it is not cached:
- assertTrue(customKonanDataDir.deleteRecursively())
- build(
- "clean", linkTask, "-Pkotlin.native.version=1.6.20-M1-9999",
- options = buildOptionsOfflineWithCustomKonanDataDir
- ) {
- assertFailed()
- assertTasksNotExecuted(listOf(linkTask, compileTask))
- }
-
- assertFalse(customKonanDataDir.exists())
- }
-
- private fun checkNoDependenciesDownloaded(customKonanDataDir: File) {
- // Check that no files have actually been downloaded or extracted,
- // except for maybe the compiler itself, which can be extracted from the Gradle cache
- // (see NativeCompilerDownloader, it uses regular dependency resolution,
- // so supports --offline properly by default).
- val cacheDirName = "cache"
- val dependenciesDirName = "dependencies"
-
- fun assertDirectoryHasNothingButMaybe(directory: File, vararg names: String) {
- assertEquals(emptyList(), directory.listFiles().orEmpty().map { it.name } - names)
- }
-
- assertDirectoryHasNothingButMaybe(File(customKonanDataDir, cacheDirName), ".lock")
- assertDirectoryHasNothingButMaybe(File(customKonanDataDir, dependenciesDirName), ".extracted")
-
- val customKonanDataDirFiles = customKonanDataDir.listFiles().orEmpty().map { it.name } - setOf(cacheDirName, dependenciesDirName)
- if (customKonanDataDirFiles.isNotEmpty()) {
- assertEquals(1, customKonanDataDirFiles.size, message = customKonanDataDirFiles.toString())
- assertTrue(customKonanDataDirFiles.single().startsWith("kotlin-native-"), message = customKonanDataDirFiles.single())
- }
- }
-
- @Test
fun allowToOverrideDownloadUrl() {
with(transformNativeTestProjectWithPluginDsl("native-parallel")) {
gradleProperties().appendText(
@@ -1263,15 +1191,5 @@ class GeneralNativeIT : BaseGradleIT() {
toolName: String = "konanc",
check: (Map<String, String>) -> Unit
) = taskPaths.forEach { taskPath -> check(extractNativeCustomEnvironment(taskPath, toolName)) }
-
- @field:ClassRule
- @JvmField
- val tempDir = TemporaryFolder()
-
- @JvmStatic
- @AfterClass
- fun deleteTempDir() {
- tempDir.delete()
- }
}
} \ No newline at end of file
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/KotlinToolRunner.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/KotlinToolRunner.kt
index c2dde3adb6f..49074724d84 100644
--- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/KotlinToolRunner.kt
+++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/KotlinToolRunner.kt
@@ -54,9 +54,6 @@ abstract class KotlinToolRunner(
abstract val mustRunViaExec: Boolean
open fun transformArgs(args: List<String>): List<String> = args
- internal open val defaultArguments: List<String>
- get() = emptyList()
-
// for the purpose if there is a way to specify JVM args, for instance, straight in project configs
open fun getCustomJvmArgs(): List<String> = emptyList()
@@ -80,9 +77,8 @@ abstract class KotlinToolRunner(
fun run(args: List<String>) {
checkClasspath()
- val argsWithDefault = args + defaultArguments
- if (mustRunViaExec) runViaExec(argsWithDefault) else runInProcess(argsWithDefault)
+ if (mustRunViaExec) runViaExec(args) else runInProcess(args)
}
private fun runViaExec(args: List<String>) {
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/nativeToolRunners.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/nativeToolRunners.kt
index 87ef98d9a87..d1b70a33ad4 100644
--- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/nativeToolRunners.kt
+++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/nativeToolRunners.kt
@@ -175,13 +175,6 @@ internal class KotlinNativeCompilerRunner(project: Project) : KotlinNativeToolRu
return listOf(toolName, "@${argFile.absolutePath}")
}
-
- override val defaultArguments: List<String>
- get() = mutableListOf<String>().apply {
- if (project.gradle.startParameter.isOffline) {
- add("-Xoverride-konan-properties=airplaneMode=true")
- }
- }
}
/** Platform libraries generation tool. Runs the cinterop tool under the hood. */