diff --git a/idea/idea-gradle-native/src/org/jetbrains/kotlin/ide/konan/gradle/KotlinNativeGradleConfigurator.kt b/idea/idea-gradle-native/src/org/jetbrains/kotlin/ide/konan/gradle/KotlinNativeGradleConfigurator.kt
new file mode 100644
index 00000000000..9cb2eae5666
--- /dev/null
+++ b/idea/idea-gradle-native/src/org/jetbrains/kotlin/ide/konan/gradle/KotlinNativeGradleConfigurator.kt
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2010-2018 JetBrains s.r.o. 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.ide.konan.gradle
+
+import org.jetbrains.kotlin.ide.konan.hasKotlinNativeRuntimeInScope
+import org.jetbrains.kotlin.idea.configuration.ConfigureKotlinStatus
+import org.jetbrains.kotlin.idea.configuration.KotlinWithGradleConfigurator
+import org.jetbrains.kotlin.idea.configuration.ModuleSourceRootGroup
+import org.jetbrains.kotlin.resolve.konan.platform.KonanPlatform
+
+
+open class KotlinNativeGradleConfigurator : KotlinWithGradleConfigurator() {
+ override fun getKotlinPluginExpression(forKotlinDsl: Boolean): String {
+ return ""
+ }
+
+ override fun getStatus(moduleSourceRootGroup: ModuleSourceRootGroup): ConfigureKotlinStatus {
+ if (moduleSourceRootGroup.sourceRootModules.any(::hasKotlinNativeRuntimeInScope)) {
+ return ConfigureKotlinStatus.CONFIGURED
+ }
+ return ConfigureKotlinStatus.NON_APPLICABLE
+ }
+
+ override val kotlinPluginName: String
+ get() = ""
+
+ override val name: String get() = NAME
+
+ override val targetPlatform get() = KonanPlatform
+
+ override val presentableText get() = PRESENTABLE_TEXT
+
+ companion object {
+ const val NAME = "KotlinNative"
+ const val PRESENTABLE_TEXT = "Native"
+ }
+}
\ No newline at end of file
diff --git a/idea/src/META-INF/native.xml b/idea/src/META-INF/native.xml
index 6062cdd42c7..60892a018ce 100644
--- a/idea/src/META-INF/native.xml
+++ b/idea/src/META-INF/native.xml
@@ -24,6 +24,6 @@
-
+