MPP: Do not show -Xmultiplatform flag in facet settings
#KT-26484 Fixed
This commit is contained in:
+4
@@ -121,6 +121,10 @@ class NewMultiplatformProjectImportingTest : GradleImportingTestCase() {
|
|||||||
allModules {
|
allModules {
|
||||||
languageVersion("1.2")
|
languageVersion("1.2")
|
||||||
apiVersion("1.2")
|
apiVersion("1.2")
|
||||||
|
when (module.name) {
|
||||||
|
"project", "app", "lib" -> additionalArguments(null)
|
||||||
|
else -> additionalArguments("-version")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module("project")
|
module("project")
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import com.intellij.openapi.roots.*
|
|||||||
import com.intellij.openapi.util.io.FileUtil
|
import com.intellij.openapi.util.io.FileUtil
|
||||||
import org.jetbrains.jps.model.module.JpsModuleSourceRootType
|
import org.jetbrains.jps.model.module.JpsModuleSourceRootType
|
||||||
import org.jetbrains.jps.util.JpsPathUtil
|
import org.jetbrains.jps.util.JpsPathUtil
|
||||||
|
import org.jetbrains.kotlin.idea.facet.KotlinFacet
|
||||||
import org.jetbrains.kotlin.idea.project.languageVersionSettings
|
import org.jetbrains.kotlin.idea.project.languageVersionSettings
|
||||||
import org.jetbrains.kotlin.idea.project.platform
|
import org.jetbrains.kotlin.idea.project.platform
|
||||||
import org.jetbrains.kotlin.platform.IdePlatform
|
import org.jetbrains.kotlin.platform.IdePlatform
|
||||||
@@ -69,7 +70,7 @@ class ProjectInfo(project: Project, private val projectPath: String) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class ModuleInfo(
|
class ModuleInfo(
|
||||||
private val module: Module,
|
val module: Module,
|
||||||
private val messageCollector: MessageCollector,
|
private val messageCollector: MessageCollector,
|
||||||
private val projectPath: String
|
private val projectPath: String
|
||||||
) {
|
) {
|
||||||
@@ -109,6 +110,15 @@ class ModuleInfo(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun additionalArguments(arguments: String?) {
|
||||||
|
val actualArguments = KotlinFacet.get(module)?.configuration?.settings?.compilerSettings?.additionalArguments
|
||||||
|
if (actualArguments != arguments) {
|
||||||
|
messageCollector.report(
|
||||||
|
"Module '${module.name}': expected additional arguments '$arguments' but found '$actualArguments'"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fun libraryDependency(libraryName: String, scope: DependencyScope) {
|
fun libraryDependency(libraryName: String, scope: DependencyScope) {
|
||||||
val libraryEntry = rootModel.orderEntries.filterIsInstance<LibraryOrderEntry>().singleOrNull { it.libraryName == libraryName }
|
val libraryEntry = rootModel.orderEntries.filterIsInstance<LibraryOrderEntry>().singleOrNull { it.libraryName == libraryName }
|
||||||
if (libraryEntry == null) {
|
if (libraryEntry == null) {
|
||||||
|
|||||||
@@ -634,7 +634,7 @@ class KotlinMavenImporterTest : MavenImportingTestCase() {
|
|||||||
Assert.assertEquals("1.8", (compilerArguments as K2JVMCompilerArguments).jvmTarget)
|
Assert.assertEquals("1.8", (compilerArguments as K2JVMCompilerArguments).jvmTarget)
|
||||||
Assert.assertEquals("foobar.jar", (compilerArguments as K2JVMCompilerArguments).classpath)
|
Assert.assertEquals("foobar.jar", (compilerArguments as K2JVMCompilerArguments).classpath)
|
||||||
Assert.assertEquals(
|
Assert.assertEquals(
|
||||||
"-Xmulti-platform",
|
"-version",
|
||||||
compilerSettings!!.additionalArguments
|
compilerSettings!!.additionalArguments
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -832,7 +832,7 @@ class KotlinMavenImporterTest : MavenImportingTestCase() {
|
|||||||
Assert.assertEquals("commonjs", moduleKind)
|
Assert.assertEquals("commonjs", moduleKind)
|
||||||
}
|
}
|
||||||
Assert.assertEquals(
|
Assert.assertEquals(
|
||||||
"-meta-info -output test.js -Xmulti-platform",
|
"-meta-info -output test.js",
|
||||||
compilerSettings!!.additionalArguments
|
compilerSettings!!.additionalArguments
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -984,7 +984,7 @@ class KotlinMavenImporterTest : MavenImportingTestCase() {
|
|||||||
Assert.assertEquals("JVM 1.8", platform!!.description)
|
Assert.assertEquals("JVM 1.8", platform!!.description)
|
||||||
Assert.assertEquals("1.8", (compilerArguments as K2JVMCompilerArguments).jvmTarget)
|
Assert.assertEquals("1.8", (compilerArguments as K2JVMCompilerArguments).jvmTarget)
|
||||||
Assert.assertEquals("foobar.jar", (compilerArguments as K2JVMCompilerArguments).classpath)
|
Assert.assertEquals("foobar.jar", (compilerArguments as K2JVMCompilerArguments).classpath)
|
||||||
Assert.assertEquals("-Xmulti-platform", compilerSettings!!.additionalArguments)
|
Assert.assertEquals("-version", compilerSettings!!.additionalArguments)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -176,7 +176,8 @@ val commonUIExposedFields = listOf(
|
|||||||
)
|
)
|
||||||
private val commonUIHiddenFields = listOf(
|
private val commonUIHiddenFields = listOf(
|
||||||
CommonCompilerArguments::pluginClasspaths.name,
|
CommonCompilerArguments::pluginClasspaths.name,
|
||||||
CommonCompilerArguments::pluginOptions.name
|
CommonCompilerArguments::pluginOptions.name,
|
||||||
|
CommonCompilerArguments::multiPlatform.name
|
||||||
)
|
)
|
||||||
private val commonPrimaryFields = commonUIExposedFields + commonUIHiddenFields
|
private val commonPrimaryFields = commonUIExposedFields + commonUIHiddenFields
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user