mirror of
https://github.com/yonaskolb/XcodeGen.git
synced 2024-09-20 09:08:46 +03:00
45 lines
1.1 KiB
Swift
45 lines
1.1 KiB
Swift
import Foundation
|
|
|
|
public enum Linkage {
|
|
case dynamic
|
|
case `static`
|
|
case none
|
|
}
|
|
|
|
extension Target {
|
|
|
|
public var defaultLinkage: Linkage {
|
|
switch type {
|
|
case .none,
|
|
.appExtension,
|
|
.application,
|
|
.bundle,
|
|
.commandLineTool,
|
|
.instrumentsPackage,
|
|
.intentsServiceExtension,
|
|
.messagesApplication,
|
|
.messagesExtension,
|
|
.ocUnitTestBundle,
|
|
.stickerPack,
|
|
.tvExtension,
|
|
.uiTestBundle,
|
|
.unitTestBundle,
|
|
.watchApp,
|
|
.watchExtension,
|
|
.watch2App,
|
|
.watch2AppContainer,
|
|
.watch2Extension,
|
|
.xcodeExtension,
|
|
.xpcService:
|
|
return .none
|
|
case .framework:
|
|
// TODO: This should check `MACH_O_TYPE` in case this is a "Static Framework"
|
|
return .dynamic
|
|
case .dynamicLibrary:
|
|
return .dynamic
|
|
case .staticLibrary, .staticFramework:
|
|
return .static
|
|
}
|
|
}
|
|
}
|