Allow not providing IR to serialize a klib with just the frontend metadata
This commit is contained in:
+2
-2
@@ -45,8 +45,8 @@ abstract class KlibMetadataSerializer(
|
|||||||
var classSerializer: DescriptorSerializer = topSerializer
|
var classSerializer: DescriptorSerializer = topSerializer
|
||||||
)
|
)
|
||||||
|
|
||||||
private fun declarationTableHandler(declarationDescriptor: DeclarationDescriptor): KlibMetadataProtoBuf.DescriptorUniqId {
|
private fun declarationTableHandler(declarationDescriptor: DeclarationDescriptor): KlibMetadataProtoBuf.DescriptorUniqId? {
|
||||||
val index = descriptorTable.get(declarationDescriptor) ?: error("No descriptor ID found for $declarationDescriptor")
|
val index = descriptorTable.get(declarationDescriptor) ?: return null
|
||||||
return newDescriptorUniqId(index)
|
return newDescriptorUniqId(index)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ class KoltinLibraryWriterImpl(
|
|||||||
fun buildKoltinLibrary(
|
fun buildKoltinLibrary(
|
||||||
linkDependencies: List<KotlinLibrary>,
|
linkDependencies: List<KotlinLibrary>,
|
||||||
metadata: SerializedMetadata,
|
metadata: SerializedMetadata,
|
||||||
ir: SerializedIrModule,
|
ir: SerializedIrModule?,
|
||||||
versions: KotlinLibraryVersioning,
|
versions: KotlinLibraryVersioning,
|
||||||
output: String,
|
output: String,
|
||||||
moduleName: String,
|
moduleName: String,
|
||||||
@@ -101,7 +101,10 @@ fun buildKoltinLibrary(
|
|||||||
val library = KoltinLibraryWriterImpl(File(output), moduleName, versions, nopack)
|
val library = KoltinLibraryWriterImpl(File(output), moduleName, versions, nopack)
|
||||||
|
|
||||||
library.addMetadata(metadata)
|
library.addMetadata(metadata)
|
||||||
library.addIr(ir)
|
|
||||||
|
if (ir != null) {
|
||||||
|
library.addIr(ir)
|
||||||
|
}
|
||||||
|
|
||||||
manifestProperties?.let { library.addManifestAddend(it) }
|
manifestProperties?.let { library.addManifestAddend(it) }
|
||||||
library.addLinkDependencies(linkDependencies)
|
library.addLinkDependencies(linkDependencies)
|
||||||
|
|||||||
Reference in New Issue
Block a user