name: DropTwo options: bundleIdPrefix: dev.zielke createIntermediateGroups: true deploymentTarget: macOS: "13.0" settings: base: SWIFT_VERSION: "5.9" MARKETING_VERSION: "0.1.0" CURRENT_PROJECT_VERSION: "1" # Ad-hoc-Signatur: laeuft lokal auf dem eigenen Rechner, braucht keine Team-ID. # Fuer den ersten echten Release auf Manual + DEVELOPMENT_TEAM umstellen. CODE_SIGN_STYLE: Automatic CODE_SIGN_IDENTITY: "-" configs: Release: ENABLE_HARDENED_RUNTIME: YES # Pflicht fuer die Notarisierung # Sparkle kommt erst in Schritt 6 dazu. Bis dahin auskommentiert -- # das haelt fruehe Builds schnell und die Signierung unkompliziert. # packages: # Sparkle: # url: https://github.com/sparkle-project/Sparkle # from: "2.6.0" targets: # Kern ohne jede UI-Abhaengigkeit -- von App und CLI gemeinsam genutzt. DropTwoCore: type: framework platform: macOS sources: - Sources/DropTwoCore settings: base: PRODUCT_BUNDLE_IDENTIFIER: dev.zielke.droptwo.core GENERATE_INFOPLIST_FILE: YES DropTwo: type: application platform: macOS sources: - Sources/DropTwo dependencies: - target: DropTwoCore # - package: Sparkle settings: base: PRODUCT_BUNDLE_IDENTIFIER: dev.zielke.droptwo PRODUCT_NAME: drop.two ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon info: path: Sources/DropTwo/Info.plist properties: CFBundleName: drop.two CFBundleDisplayName: drop.two LSMinimumSystemVersion: "13.0" LSUIElement: false # true = reiner Menu-Bar-Betrieb ohne Dock-Icon NSHumanReadableCopyright: "(c) Samuel Zielke" # Sparkle-Schluessel und Feed-URL folgen in Schritt 6: # SUFeedURL: https://.../droptwo/appcast.xml # SUPublicEDKey: ... # SUEnableAutomaticChecks: true # Pruefstein fuer den Kern: echte Datei durchjagen, bevor Oberflaeche entsteht. droptwo-cli: type: tool platform: macOS sources: - Sources/DropTwoCLI dependencies: - target: DropTwoCore settings: base: PRODUCT_NAME: droptwo DropTwoCoreTests: type: bundle.unit-test platform: macOS sources: - Tests/DropTwoCoreTests dependencies: - target: DropTwoCore settings: base: GENERATE_INFOPLIST_FILE: YES schemes: DropTwo: build: targets: DropTwo: all run: config: Debug test: config: Debug targets: - DropTwoCoreTests droptwo-cli: build: targets: droptwo-cli: all run: config: Debug