[Commonizer] Provide union of forwardDeclarations as common dependencies

^KT-52050 Verification Pending

The issue described in KT-52050 happened, because forwardDeclarations
were not carried into next commonization steps. For commonization
it is fair to choose the union of all modules forwardDeclarations
as common dependency (instead of a union), since we can assume that
all those forward declarations will be provided.
This commit is contained in:
sebastian.sellmair
2022-04-20 13:45:40 +02:00
committed by Space
parent 99d995a313
commit 204bc4ca95
10 changed files with 67 additions and 44 deletions
@@ -103,6 +103,23 @@ class CommonizeNativeDistributionTest {
)
}
@Test
fun `commonize - linux macos - linux macos mingw`() {
val unixTarget = CommonizerTarget(LINUX_X64, MACOS_X64)
val nativeTarget = CommonizerTarget(MINGW_X64, LINUX_X64, MACOS_X64)
CliCommonizer(this::class.java.classLoader).commonizeNativeDistribution(
konanHome = konanHome,
outputTargets = setOf(unixTarget, nativeTarget),
outputDirectory = temporaryOutputDirectory.root,
logLevel = CommonizerLogLevel.Info
)
assertTrue(
resolveCommonizedDirectory(temporaryOutputDirectory.root, nativeTarget).isDirectory,
"Expected directory for $nativeTarget"
)
}
@Test
fun `commonize - no outputTargets specified`() {
CliCommonizer(this::class.java.classLoader).commonizeNativeDistribution(