[Commonizer] Support short library names

This commit is contained in:
Ilya Matveev
2020-04-06 18:19:20 +07:00
parent 7c0ab5a58e
commit ba6ca67e4f
3 changed files with 9 additions and 4 deletions
@@ -87,10 +87,11 @@ class KoltinLibraryWriterImpl(
versions: KotlinLibraryVersioning, versions: KotlinLibraryVersioning,
builtInsPlatform: BuiltInsPlatform, builtInsPlatform: BuiltInsPlatform,
nopack: Boolean = false, nopack: Boolean = false,
shortName: String? = null,
val layout: KotlinLibraryLayoutForWriter = KotlinLibraryLayoutForWriter(libDir), val layout: KotlinLibraryLayoutForWriter = KotlinLibraryLayoutForWriter(libDir),
val base: BaseWriter = BaseWriterImpl(layout, moduleName, versions, builtInsPlatform, nopack), val base: BaseWriter = BaseWriterImpl(layout, moduleName, versions, builtInsPlatform, nopack, shortName),
metadata: MetadataWriter = MetadataWriterImpl(layout), metadata: MetadataWriter = MetadataWriterImpl(layout),
ir: IrWriter = IrMonoliticWriterImpl(layout) ir: IrWriter = IrMonoliticWriterImpl(layout)
// ir: IrWriter = IrPerFileWriterImpl(layout) // ir: IrWriter = IrPerFileWriterImpl(layout)
@@ -222,7 +222,8 @@ class NativeDistributionCommonizer(
manifestData.uniqueName, manifestData.uniqueName,
manifestData.versions, manifestData.versions,
BuiltInsPlatform.NATIVE, BuiltInsPlatform.NATIVE,
nopack = true nopack = true,
shortName = manifestData.shortName
) )
library.addMetadata(metadata) library.addMetadata(metadata)
manifestData.applyTo(library.base as BaseWriterImpl) manifestData.applyTo(library.base as BaseWriterImpl)
@@ -15,7 +15,8 @@ internal data class NativeSensitiveManifestData(
val dependencies: List<String>, val dependencies: List<String>,
val isInterop: Boolean, val isInterop: Boolean,
val packageFqName: String?, val packageFqName: String?,
val exportForwardDeclarations: List<String> val exportForwardDeclarations: List<String>,
val shortName: String?
) { ) {
fun applyTo(library: BaseWriterImpl) { fun applyTo(library: BaseWriterImpl) {
library.manifestProperties[KLIB_PROPERTY_UNIQUE_NAME] = uniqueName library.manifestProperties[KLIB_PROPERTY_UNIQUE_NAME] = uniqueName
@@ -34,6 +35,7 @@ internal data class NativeSensitiveManifestData(
addOptionalProperty(KLIB_PROPERTY_EXPORT_FORWARD_DECLARATIONS, exportForwardDeclarations.isNotEmpty()) { addOptionalProperty(KLIB_PROPERTY_EXPORT_FORWARD_DECLARATIONS, exportForwardDeclarations.isNotEmpty()) {
exportForwardDeclarations.joinToString(separator = " ") exportForwardDeclarations.joinToString(separator = " ")
} }
addOptionalProperty(KLIB_PROPERTY_SHORT_NAME, shortName != null) { shortName!! }
} }
companion object { companion object {
@@ -43,7 +45,8 @@ internal data class NativeSensitiveManifestData(
dependencies = library.manifestProperties.propertyList(KLIB_PROPERTY_DEPENDS, escapeInQuotes = true), dependencies = library.manifestProperties.propertyList(KLIB_PROPERTY_DEPENDS, escapeInQuotes = true),
isInterop = library.isInterop, isInterop = library.isInterop,
packageFqName = library.packageFqName, packageFqName = library.packageFqName,
exportForwardDeclarations = library.exportForwardDeclarations exportForwardDeclarations = library.exportForwardDeclarations,
shortName = library.shortName
) )
} }
} }