Skip to content

Commit b142560

Browse files
committed
Update Package.swift
1 parent 79c8aa7 commit b142560

File tree

1 file changed

+35
-2
lines changed

1 file changed

+35
-2
lines changed

Package.swift

Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ let package = Package(
1414
traits: [
1515
.default(enabledTraits: ["SIMD"]),
1616

17+
.trait(
18+
name: "DISTRIBUTE",
19+
description: "Configures GateEngine for a distributable build. Disables some logging and enables optimizations that otherwise would inhibit development."
20+
),
1721
.trait(
1822
name: "SIMD",
1923
description: "Enables SIMD acceleration when available."
@@ -652,6 +656,9 @@ extension Array where Element == Platform {
652656
extension Array where Element == SwiftSetting {
653657
static var `default`: Self? {
654658
var settings: Self = []
659+
if let optionalFlags = Self.otherFlags {
660+
settings.append(contentsOf: optionalFlags)
661+
}
655662
if let upcommingFeatureFlags = Self.upcommingFeatureFlags {
656663
settings.append(contentsOf: upcommingFeatureFlags)
657664
}
@@ -752,7 +759,9 @@ extension Array where Element == SwiftSetting {
752759
#endif
753760
#endif
754761

755-
func enableFeature(_ feature: String) {settings.append(.enableUpcomingFeature(feature))}
762+
func enableFeature(_ feature: String, _ condition: PackageDescription.BuildSettingCondition? = nil) {
763+
settings.append(.enableUpcomingFeature(feature, condition))
764+
}
756765
return settings.isEmpty ? nil : settings
757766
}
758767

@@ -765,7 +774,31 @@ extension Array where Element == SwiftSetting {
765774
#endif
766775
#endif
767776

768-
func enableFeature(_ feature: String) {settings.append(.enableExperimentalFeature(feature))}
777+
func enableFeature(_ feature: String, _ condition: PackageDescription.BuildSettingCondition? = nil) {
778+
settings.append(.enableExperimentalFeature(feature, condition))
779+
}
780+
return settings.isEmpty ? nil : settings
781+
}
782+
783+
static var otherFlags: Self? {
784+
var settings: Self = []
785+
786+
// #if compiler(>=6.2)
787+
// addFlag("-strict-memory-safety", .when(configuration: .debug))
788+
// #endif
789+
790+
func enableFeature(_ feature: String, _ condition: PackageDescription.BuildSettingCondition? = nil) {
791+
settings.append(.enableExperimentalFeature(feature, condition))
792+
}
793+
func addFlags(_ flags: String...) {
794+
settings.append(.unsafeFlags(flags, nil))
795+
}
796+
func addFlags(_ flags: [String], _ condition: PackageDescription.BuildSettingCondition? = nil) {
797+
settings.append(.unsafeFlags(flags, condition))
798+
}
799+
func addFlag(_ flags: String, _ condition: PackageDescription.BuildSettingCondition? = nil) {
800+
settings.append(.unsafeFlags([flags], condition))
801+
}
769802
return settings.isEmpty ? nil : settings
770803
}
771804
}

0 commit comments

Comments
 (0)