ModuleInterface: preserve AutolinkForceLoad option when generating .swiftmodule from .swiftinterface

This change ensures using .swiftmodule built from source has the same behavior as
using .swiftmodule built from .swiftinterface.

A swift-ide-test utility is added to print linked libraries from a Swift module for
testing purposes.

rdar://58057556
This commit is contained in:
Xi Ge
2019-12-20 14:12:58 -08:00
parent d903ca9a9c
commit 133e8a186f
3 changed files with 87 additions and 1 deletions

View File

@@ -0,0 +1,8 @@
// RUN: %empty-directory(%t)
// RUN: %target-swift-frontend -typecheck -module-name Foo -emit-module-interface-path %t/Foo.swiftinterface %s -module-link-name Foo -enable-library-evolution -autolink-force-load
// RUN: %target-swift-frontend -compile-module-from-interface -o %t/Foo.swiftmodule %t/Foo.swiftinterface
// RUN: %target-swift-ide-test -print-module-metadata -module-to-print Foo -I %t -source-filename %s | %FileCheck %s
public func foo() {}
// CHECK: link library: Foo, force load: true