Files
openide/build/src/OpenSourceCommunityInstallersBuildTarget.kt
Nikita Kudrin 1eb5ca1f13 [workspace model metrics] IJ-CR-107012 move some extension function to telemetry api module
GitOrigin-RevId: 6dd3c1abea0974e15207335602fc94edf278a00f
2023-06-20 09:44:29 +00:00

32 lines
1.4 KiB
Kotlin

// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
import com.intellij.platform.diagnostic.telemetry.helpers.useWithScope2
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.runBlocking
import org.jetbrains.intellij.build.*
import org.jetbrains.intellij.build.TraceManager.spanBuilder
import org.jetbrains.intellij.build.impl.buildDistributions
object OpenSourceCommunityInstallersBuildTarget {
@JvmStatic
fun main(args: Array<String>) {
val options = BuildOptions().apply {
// we cannot provide consistent build number for IDEA Community if it's built separately so use *.SNAPSHOT number to avoid confusion
buildNumber = null
// do not bother external users about clean/incremental
// just remove out/ directory for clean build
incrementalCompilation = true
useCompiledClassesFromProjectOutput = false
buildStepsToSkip += BuildOptions.MAC_SIGN_STEP
}
val context = createCommunityBuildContext(IdeaProjectLoaderUtil.guessCommunityHome(javaClass), options)
BuildTasks.create(context).compileProjectAndTests(listOf("intellij.platform.jps.build.tests"))
runBlocking(Dispatchers.Default) {
buildDistributions(context)
spanBuilder("build standalone JPS").useWithScope2 {
buildCommunityStandaloneJpsBuilder(targetDir = context.paths.artifactDir.resolve("jps"), context = context)
}
}
}
}