From 17cae7841443df386380a0d36f21243c0a669ea8 Mon Sep 17 00:00:00 2001 From: Jacob Sikorski Date: Sat, 28 Oct 2023 13:09:51 -0600 Subject: [PATCH] Move `WhiskyKit` to package (#567) --- Whisky.xcodeproj/project.pbxproj | 349 ++---------------- .../xcshareddata/xcschemes/WhiskyKit.xcscheme | 66 ---- WhiskyKit/.gitignore | 8 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + WhiskyKit/Package.resolved | 14 + WhiskyKit/Package.swift | 46 +++ .../Extensions/DataExtensions.swift | 0 .../WhiskyKit}/Extensions/URLExtensions.swift | 0 .../WhiskyKit}/GPTK/GPTKInstaller.swift | 0 .../WhiskyKit}/PE/BitmapInfo.swift | 0 .../WhiskyKit}/PE/PortableExecutable.swift | 0 .../WhiskyKit}/PE/ResourceSection.swift | 0 .../WhiskyKit}/PE/ShellLink.swift | 0 WhiskyKit/{ => Sources/WhiskyKit}/Tar.swift | 0 .../WhiskyKit}/Whisky/Bottle.swift | 0 .../WhiskyKit}/Whisky/BottleData.swift | 0 .../WhiskyKit}/Whisky/BottleSettings.swift | 0 .../WhiskyKit}/Whisky/Program.swift | 0 .../WhiskyKit}/Whisky/ProgramSettings.swift | 0 .../Tests/WhiskyKitTests/WhiskyKitTests.swift | 24 ++ 20 files changed, 135 insertions(+), 380 deletions(-) delete mode 100644 Whisky.xcodeproj/xcshareddata/xcschemes/WhiskyKit.xcscheme create mode 100644 WhiskyKit/.gitignore create mode 100644 WhiskyKit/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 WhiskyKit/Package.resolved create mode 100644 WhiskyKit/Package.swift rename WhiskyKit/{ => Sources/WhiskyKit}/Extensions/DataExtensions.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Extensions/URLExtensions.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/GPTK/GPTKInstaller.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/PE/BitmapInfo.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/PE/PortableExecutable.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/PE/ResourceSection.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/PE/ShellLink.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Tar.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Whisky/Bottle.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Whisky/BottleData.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Whisky/BottleSettings.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Whisky/Program.swift (100%) rename WhiskyKit/{ => Sources/WhiskyKit}/Whisky/ProgramSettings.swift (100%) create mode 100644 WhiskyKit/Tests/WhiskyKitTests/WhiskyKitTests.swift diff --git a/Whisky.xcodeproj/project.pbxproj b/Whisky.xcodeproj/project.pbxproj index f90c37af2..8c534bce0 100644 --- a/Whisky.xcodeproj/project.pbxproj +++ b/Whisky.xcodeproj/project.pbxproj @@ -3,18 +3,13 @@ archiveVersion = 1; classes = { }; - objectVersion = 56; + objectVersion = 60; objects = { /* Begin PBXBuildFile section */ 63FFDE862ADF0C7700178665 /* BottomBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63FFDE852ADF0C7700178665 /* BottomBar.swift */; }; 6E064B1229DD32A200D9A2D2 /* Sparkle in Frameworks */ = {isa = PBXBuildFile; productRef = 6E064B1129DD32A200D9A2D2 /* Sparkle */; }; 6E064B1429DD331F00D9A2D2 /* SparkleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E064B1329DD331F00D9A2D2 /* SparkleView.swift */; }; - 6E309A1E2AB3A12300D0167E /* BottleSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E5197D129D7202100CF655E /* BottleSettings.swift */; }; - 6E309A202AB3A6A100D0167E /* Bottle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E309A1F2AB3A6A100D0167E /* Bottle.swift */; }; - 6E309A222AB3A79300D0167E /* Program.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E309A212AB3A79300D0167E /* Program.swift */; }; - 6E309A232AB3A80400D0167E /* ProgramSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EA2D48429DF130F00C84668 /* ProgramSettings.swift */; }; - 6E309A242AB3A83D00D0167E /* ShellLink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E26058529D9267B00DDD788 /* ShellLink.swift */; }; 6E355E5829D78249002D83BE /* ConfigView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E355E5729D78249002D83BE /* ConfigView.swift */; }; 6E355E5A29D782B2002D83BE /* ProgramsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E355E5929D782B2002D83BE /* ProgramsView.swift */; }; 6E355E5E29D7D85D002D83BE /* ProgramView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E355E5D29D7D85D002D83BE /* ProgramView.swift */; }; @@ -46,45 +41,22 @@ 6E95F6732AB3F67200D585D1 /* Progress in Frameworks */ = {isa = PBXBuildFile; productRef = 6E95F6722AB3F67200D585D1 /* Progress */; }; 6EA2D47E29DDAE5E00C84668 /* BottleRenameView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EA2D47D29DDAE5E00C84668 /* BottleRenameView.swift */; }; 6EB58AC92AEACE5E00B1ED3F /* Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = 6EB58AC82AEACE5E00B1ED3F /* Localizable.xcstrings */; }; - 6EDF9AAF2A9A6CA9006CAA7E /* WhiskyKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */; }; - 6EDF9AB02A9A6CA9006CAA7E /* WhiskyKit.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 6EDF9AB62A9A6D8C006CAA7E /* BottleData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EDF9AB52A9A6D8C006CAA7E /* BottleData.swift */; }; - 6EDF9AB72A9A6E50006CAA7E /* WhiskyKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */; }; - 6EDF9ABD2A9A6E83006CAA7E /* SemanticVersion in Frameworks */ = {isa = PBXBuildFile; productRef = 6EDF9ABC2A9A6E83006CAA7E /* SemanticVersion */; }; - 6EDF9ABF2A9A6F3D006CAA7E /* GPTKInstaller.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E0822862A39D73800195094 /* GPTKInstaller.swift */; }; - 6EDF9AC32A9A6F46006CAA7E /* Tar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E0822852A39D73800195094 /* Tar.swift */; }; 6EF557982A410599001A4F09 /* SetupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EF557972A410599001A4F09 /* SetupView.swift */; }; 6EFDF64C2AAE2DA800EF622F /* QuickLookThumbnailing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6EFDF64B2AAE2DA800EF622F /* QuickLookThumbnailing.framework */; }; 6EFDF64E2AAE2DA800EF622F /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6EFDF64D2AAE2DA800EF622F /* Quartz.framework */; }; 6EFDF6512AAE2DA800EF622F /* ThumbnailProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFDF6502AAE2DA800EF622F /* ThumbnailProvider.swift */; }; 6EFDF6562AAE2DA800EF622F /* WhiskyThumbnail.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 6EFDF64A2AAE2DA800EF622F /* WhiskyThumbnail.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - 6EFDF65B2AAE2DB300EF622F /* WhiskyKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */; }; - 6EFDF6602AAE2DED00EF622F /* PortableExecutable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E8A3B3D2A3613F400D19632 /* PortableExecutable.swift */; }; - 6EFDF6612AAE2DF000EF622F /* ResourceSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E8A3B3F2A36140300D19632 /* ResourceSection.swift */; }; - 6EFDF6622AAE2DF300EF622F /* BitmapInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFDF6432AAD65F500EF622F /* BitmapInfo.swift */; }; - 6EFDF6632AAE2E1700EF622F /* DataExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E26058929D9282000DDD788 /* DataExtensions.swift */; }; - 6EFDF6642AAE2E1B00EF622F /* URLExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E5D41792A39021B0038ABEA /* URLExtensions.swift */; }; 6EFDF6662AAE303300EF622F /* Icons.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6EFDF6652AAE303300EF622F /* Icons.xcassets */; }; + 8C2AEFC82AED79B700CB568F /* WhiskyKit in Frameworks */ = {isa = PBXBuildFile; productRef = 8C2AEFC72AED79B700CB568F /* WhiskyKit */; }; + 8C2AEFCA2AED79CD00CB568F /* WhiskyKit in Frameworks */ = {isa = PBXBuildFile; productRef = 8C2AEFC92AED79CD00CB568F /* WhiskyKit */; }; + 8CB681E52AED7C6F0018D319 /* WhiskyKit in Resources */ = {isa = PBXBuildFile; fileRef = 8CB681E42AED7C6F0018D319 /* WhiskyKit */; }; + 8CB681E72AED7CD00018D319 /* WhiskyKit in Frameworks */ = {isa = PBXBuildFile; productRef = 8CB681E62AED7CD00018D319 /* WhiskyKit */; }; AB66A8642A4195B10006D238 /* Rosetta2.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB66A8632A4195B10006D238 /* Rosetta2.swift */; }; EB58FB552A499896002DC184 /* SemanticVersion in Frameworks */ = {isa = PBXBuildFile; productRef = EB58FB542A499896002DC184 /* SemanticVersion */; }; EEA5A2462A31DD65008274AE /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEA5A2452A31DD65008274AE /* AppDelegate.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 6EDF9AAD2A9A6CA9006CAA7E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6E40494A29CCA19C006E3F1B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 6EDF9AA82A9A6CA9006CAA7E; - remoteInfo = WhiskyKit; - }; - 6EDF9AB92A9A6E50006CAA7E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6E40494A29CCA19C006E3F1B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 6EDF9AA82A9A6CA9006CAA7E; - remoteInfo = WhiskyKit; - }; 6EFDF6542AAE2DA800EF622F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 6E40494A29CCA19C006E3F1B /* Project object */; @@ -92,13 +64,6 @@ remoteGlobalIDString = 6EFDF6492AAE2DA800EF622F; remoteInfo = WhiskyThumbnail; }; - 6EFDF65D2AAE2DB300EF622F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6E40494A29CCA19C006E3F1B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 6EDF9AA82A9A6CA9006CAA7E; - remoteInfo = WhiskyKit; - }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -122,17 +87,6 @@ name = "Embed WhiskyCmd"; runOnlyForDeploymentPostprocessing = 0; }; - 6EDF9AB42A9A6CA9006CAA7E /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 6EDF9AB02A9A6CA9006CAA7E /* WhiskyKit.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; 6EFDF65A2AAE2DA800EF622F /* Embed Foundation Extensions */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; @@ -149,12 +103,6 @@ /* Begin PBXFileReference section */ 63FFDE852ADF0C7700178665 /* BottomBar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BottomBar.swift; sourceTree = ""; }; 6E064B1329DD331F00D9A2D2 /* SparkleView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SparkleView.swift; sourceTree = ""; }; - 6E0822852A39D73800195094 /* Tar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Tar.swift; sourceTree = ""; }; - 6E0822862A39D73800195094 /* GPTKInstaller.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GPTKInstaller.swift; sourceTree = ""; }; - 6E26058529D9267B00DDD788 /* ShellLink.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShellLink.swift; sourceTree = ""; }; - 6E26058929D9282000DDD788 /* DataExtensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataExtensions.swift; sourceTree = ""; }; - 6E309A1F2AB3A6A100D0167E /* Bottle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Bottle.swift; sourceTree = ""; }; - 6E309A212AB3A79300D0167E /* Program.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Program.swift; sourceTree = ""; }; 6E355E5729D78249002D83BE /* ConfigView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigView.swift; sourceTree = ""; }; 6E355E5929D782B2002D83BE /* ProgramsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramsView.swift; sourceTree = ""; }; 6E355E5D29D7D85D002D83BE /* ProgramView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramView.swift; sourceTree = ""; }; @@ -171,8 +119,6 @@ 6E50D97F29CD0850008C39F6 /* Wine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Wine.swift; sourceTree = ""; }; 6E50D98229CD6066008C39F6 /* BottleVM.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottleVM.swift; sourceTree = ""; }; 6E50D98429CDF25B008C39F6 /* BottleCreationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottleCreationView.swift; sourceTree = ""; }; - 6E5197D129D7202100CF655E /* BottleSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottleSettings.swift; sourceTree = ""; }; - 6E5D41792A39021B0038ABEA /* URLExtensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = URLExtensions.swift; sourceTree = ""; }; 6E621CEE2A5F631200C9AAB3 /* Winetricks.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Winetricks.swift; sourceTree = ""; }; 6E6915442A3265BB0085BBB7 /* Logger.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Logger.swift; sourceTree = ""; }; 6E6C0CF12A419A6800356232 /* WelcomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeView.swift; sourceTree = ""; }; @@ -185,15 +131,9 @@ 6E7C07BD2AAE7B0100F6E66B /* ProgramShortcut.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramShortcut.swift; sourceTree = ""; }; 6E7C07BF2AAF570100F6E66B /* FileOpenView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileOpenView.swift; sourceTree = ""; }; 6E899D1129CFC41D00A4A083 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; - 6E8A3B3D2A3613F400D19632 /* PortableExecutable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PortableExecutable.swift; sourceTree = ""; }; - 6E8A3B3F2A36140300D19632 /* ResourceSection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResourceSection.swift; sourceTree = ""; }; 6EA2D47D29DDAE5E00C84668 /* BottleRenameView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottleRenameView.swift; sourceTree = ""; }; - 6EA2D48429DF130F00C84668 /* ProgramSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramSettings.swift; sourceTree = ""; }; 6EB58AC82AEACE5E00B1ED3F /* Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; path = Localizable.xcstrings; sourceTree = ""; }; - 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WhiskyKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 6EDF9AB52A9A6D8C006CAA7E /* BottleData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottleData.swift; sourceTree = ""; }; 6EF557972A410599001A4F09 /* SetupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SetupView.swift; sourceTree = ""; }; - 6EFDF6432AAD65F500EF622F /* BitmapInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BitmapInfo.swift; sourceTree = ""; }; 6EFDF64A2AAE2DA800EF622F /* WhiskyThumbnail.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WhiskyThumbnail.appex; sourceTree = BUILT_PRODUCTS_DIR; }; 6EFDF64B2AAE2DA800EF622F /* QuickLookThumbnailing.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickLookThumbnailing.framework; path = System/Library/Frameworks/QuickLookThumbnailing.framework; sourceTree = SDKROOT; }; 6EFDF64D2AAE2DA800EF622F /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = System/Library/Frameworks/Quartz.framework; sourceTree = SDKROOT; }; @@ -201,6 +141,7 @@ 6EFDF6522AAE2DA800EF622F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 6EFDF6532AAE2DA800EF622F /* WhiskyThumbnail.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WhiskyThumbnail.entitlements; sourceTree = ""; }; 6EFDF6652AAE303300EF622F /* Icons.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Icons.xcassets; sourceTree = ""; }; + 8CB681E42AED7C6F0018D319 /* WhiskyKit */ = {isa = PBXFileReference; lastKnownFileType = wrapper; path = WhiskyKit; sourceTree = ""; }; AB66A8632A4195B10006D238 /* Rosetta2.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Rosetta2.swift; sourceTree = ""; }; EEA5A2452A31DD65008274AE /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -210,9 +151,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 8C2AEFC82AED79B700CB568F /* WhiskyKit in Frameworks */, 6E064B1229DD32A200D9A2D2 /* Sparkle in Frameworks */, EB58FB552A499896002DC184 /* SemanticVersion in Frameworks */, - 6EDF9AAF2A9A6CA9006CAA7E /* WhiskyKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -220,7 +161,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6EDF9AB72A9A6E50006CAA7E /* WhiskyKit.framework in Frameworks */, + 8C2AEFCA2AED79CD00CB568F /* WhiskyKit in Frameworks */, 6E95F6732AB3F67200D585D1 /* Progress in Frameworks */, 6E5B61B62AC34E6D007B1913 /* SemanticVersion in Frameworks */, 6E95F6702AB3F33C00D585D1 /* SwiftyTextTable in Frameworks */, @@ -228,20 +169,12 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 6EDF9AA62A9A6CA9006CAA7E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 6EDF9ABD2A9A6E83006CAA7E /* SemanticVersion in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 6EFDF6472AAE2DA800EF622F /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 8CB681E72AED7CD00018D319 /* WhiskyKit in Frameworks */, 6EFDF64C2AAE2DA800EF622F /* QuickLookThumbnailing.framework in Frameworks */, - 6EFDF65B2AAE2DB300EF622F /* WhiskyKit.framework in Frameworks */, 6EFDF64E2AAE2DA800EF622F /* Quartz.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -257,27 +190,6 @@ path = Common; sourceTree = ""; }; - 6E26058729D927F900DDD788 /* Extensions */ = { - isa = PBXGroup; - children = ( - 6E26058929D9282000DDD788 /* DataExtensions.swift */, - 6E5D41792A39021B0038ABEA /* URLExtensions.swift */, - ); - path = Extensions; - sourceTree = ""; - }; - 6E309A1D2AB3A10E00D0167E /* Whisky */ = { - isa = PBXGroup; - children = ( - 6E309A1F2AB3A6A100D0167E /* Bottle.swift */, - 6E309A212AB3A79300D0167E /* Program.swift */, - 6E5197D129D7202100CF655E /* BottleSettings.swift */, - 6EA2D48429DF130F00C84668 /* ProgramSettings.swift */, - 6EDF9AB52A9A6D8C006CAA7E /* BottleData.swift */, - ); - path = Whisky; - sourceTree = ""; - }; 6E355E5629D78202002D83BE /* Bottle Views */ = { isa = PBXGroup; children = ( @@ -291,9 +203,9 @@ 6E40494929CCA19C006E3F1B = { isa = PBXGroup; children = ( + 8CB681E42AED7C6F0018D319 /* WhiskyKit */, 6E40495429CCA19C006E3F1B /* Whisky */, 6E70A4992A9A2197007799E9 /* WhiskyCmd */, - 6EDF9AAA2A9A6CA9006CAA7E /* WhiskyKit */, 6EFDF64F2AAE2DA800EF622F /* WhiskyThumbnail */, 6E40495329CCA19C006E3F1B /* Products */, 6E5967692A9A424900D64F70 /* Frameworks */, @@ -305,7 +217,6 @@ children = ( 6E40495229CCA19C006E3F1B /* Whisky.app */, 6E70A4982A9A2197007799E9 /* WhiskyCmd */, - 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */, 6EFDF64A2AAE2DA800EF622F /* WhiskyThumbnail.appex */, ); name = Products; @@ -421,37 +332,6 @@ path = WhiskyCmd; sourceTree = ""; }; - 6EDF9AAA2A9A6CA9006CAA7E /* WhiskyKit */ = { - isa = PBXGroup; - children = ( - 6E26058729D927F900DDD788 /* Extensions */, - 6EFDF6452AAE29FC00EF622F /* PE */, - 6EDF9AC42A9A6FB5006CAA7E /* GPTK */, - 6E309A1D2AB3A10E00D0167E /* Whisky */, - 6E0822852A39D73800195094 /* Tar.swift */, - ); - path = WhiskyKit; - sourceTree = ""; - }; - 6EDF9AC42A9A6FB5006CAA7E /* GPTK */ = { - isa = PBXGroup; - children = ( - 6E0822862A39D73800195094 /* GPTKInstaller.swift */, - ); - path = GPTK; - sourceTree = ""; - }; - 6EFDF6452AAE29FC00EF622F /* PE */ = { - isa = PBXGroup; - children = ( - 6E8A3B3D2A3613F400D19632 /* PortableExecutable.swift */, - 6E8A3B3F2A36140300D19632 /* ResourceSection.swift */, - 6EFDF6432AAD65F500EF622F /* BitmapInfo.swift */, - 6E26058529D9267B00DDD788 /* ShellLink.swift */, - ); - path = PE; - sourceTree = ""; - }; 6EFDF64F2AAE2DA800EF622F /* WhiskyThumbnail */ = { isa = PBXGroup; children = ( @@ -465,16 +345,6 @@ }; /* End PBXGroup section */ -/* Begin PBXHeadersBuildPhase section */ - 6EDF9AA42A9A6CA9006CAA7E /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - /* Begin PBXNativeTarget section */ 6E40495129CCA19C006E3F1B /* Whisky */ = { isa = PBXNativeTarget; @@ -484,20 +354,19 @@ 6E40494F29CCA19C006E3F1B /* Frameworks */, 6E40495029CCA19C006E3F1B /* Resources */, 6E50D98129CD0EAF008C39F6 /* SwiftLint */, - 6EDF9AB42A9A6CA9006CAA7E /* Embed Frameworks */, 6E95F66C2AB3EF2F00D585D1 /* Embed WhiskyCmd */, 6EFDF65A2AAE2DA800EF622F /* Embed Foundation Extensions */, ); buildRules = ( ); dependencies = ( - 6EDF9AAE2A9A6CA9006CAA7E /* PBXTargetDependency */, 6EFDF6552AAE2DA800EF622F /* PBXTargetDependency */, ); name = Whisky; packageProductDependencies = ( 6E064B1129DD32A200D9A2D2 /* Sparkle */, EB58FB542A499896002DC184 /* SemanticVersion */, + 8C2AEFC72AED79B700CB568F /* WhiskyKit */, ); productName = Whisky; productReference = 6E40495229CCA19C006E3F1B /* Whisky.app */; @@ -514,7 +383,6 @@ buildRules = ( ); dependencies = ( - 6EDF9ABA2A9A6E50006CAA7E /* PBXTargetDependency */, ); name = WhiskyCmd; packageProductDependencies = ( @@ -522,32 +390,12 @@ 6E95F66F2AB3F33C00D585D1 /* SwiftyTextTable */, 6E95F6722AB3F67200D585D1 /* Progress */, 6E5B61B52AC34E6D007B1913 /* SemanticVersion */, + 8C2AEFC92AED79CD00CB568F /* WhiskyKit */, ); productName = WhiskyCmd; productReference = 6E70A4982A9A2197007799E9 /* WhiskyCmd */; productType = "com.apple.product-type.tool"; }; - 6EDF9AA82A9A6CA9006CAA7E /* WhiskyKit */ = { - isa = PBXNativeTarget; - buildConfigurationList = 6EDF9AB12A9A6CA9006CAA7E /* Build configuration list for PBXNativeTarget "WhiskyKit" */; - buildPhases = ( - 6EDF9AA42A9A6CA9006CAA7E /* Headers */, - 6EDF9AA52A9A6CA9006CAA7E /* Sources */, - 6EDF9AA62A9A6CA9006CAA7E /* Frameworks */, - 6EDF9AA72A9A6CA9006CAA7E /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WhiskyKit; - packageProductDependencies = ( - 6EDF9ABC2A9A6E83006CAA7E /* SemanticVersion */, - ); - productName = WhiskyKit; - productReference = 6EDF9AA92A9A6CA9006CAA7E /* WhiskyKit.framework */; - productType = "com.apple.product-type.framework"; - }; 6EFDF6492AAE2DA800EF622F /* WhiskyThumbnail */ = { isa = PBXNativeTarget; buildConfigurationList = 6EFDF6572AAE2DA800EF622F /* Build configuration list for PBXNativeTarget "WhiskyThumbnail" */; @@ -559,9 +407,11 @@ buildRules = ( ); dependencies = ( - 6EFDF65E2AAE2DB300EF622F /* PBXTargetDependency */, ); name = WhiskyThumbnail; + packageProductDependencies = ( + 8CB681E62AED7CD00018D319 /* WhiskyKit */, + ); productName = WhiskyThumbnail; productReference = 6EFDF64A2AAE2DA800EF622F /* WhiskyThumbnail.appex */; productType = "com.apple.product-type.app-extension"; @@ -582,10 +432,6 @@ 6E70A4972A9A2197007799E9 = { CreatedOnToolsVersion = 15.0; }; - 6EDF9AA82A9A6CA9006CAA7E = { - CreatedOnToolsVersion = 15.0; - LastSwiftMigration = 1500; - }; 6EFDF6492AAE2DA800EF622F = { CreatedOnToolsVersion = 15.0; }; @@ -624,6 +470,7 @@ 6E5967682A9A421800D64F70 /* XCRemoteSwiftPackageReference "swift-argument-parser" */, 6E95F66E2AB3F33C00D585D1 /* XCRemoteSwiftPackageReference "SwiftyTextTable" */, 6E95F6712AB3F67200D585D1 /* XCRemoteSwiftPackageReference "Progress" */, + 8C2AEFC62AED79B700CB568F /* XCLocalSwiftPackageReference "WhiskyKit" */, ); productRefGroup = 6E40495329CCA19C006E3F1B /* Products */; projectDirPath = ""; @@ -631,7 +478,6 @@ targets = ( 6E40495129CCA19C006E3F1B /* Whisky */, 6E70A4972A9A2197007799E9 /* WhiskyCmd */, - 6EDF9AA82A9A6CA9006CAA7E /* WhiskyKit */, 6EFDF6492AAE2DA800EF622F /* WhiskyThumbnail */, ); }; @@ -642,19 +488,13 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 8CB681E52AED7C6F0018D319 /* WhiskyKit in Resources */, 6E40495D29CCA19C006E3F1B /* Preview Assets.xcassets in Resources */, 6EB58AC92AEACE5E00B1ED3F /* Localizable.xcstrings in Resources */, 6E40495A29CCA19C006E3F1B /* Assets.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6EDF9AA72A9A6CA9006CAA7E /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; 6EFDF6482AAE2DA800EF622F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -730,26 +570,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 6EDF9AA52A9A6CA9006CAA7E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6E309A1E2AB3A12300D0167E /* BottleSettings.swift in Sources */, - 6EFDF6632AAE2E1700EF622F /* DataExtensions.swift in Sources */, - 6EDF9ABF2A9A6F3D006CAA7E /* GPTKInstaller.swift in Sources */, - 6E309A232AB3A80400D0167E /* ProgramSettings.swift in Sources */, - 6E309A202AB3A6A100D0167E /* Bottle.swift in Sources */, - 6EFDF6602AAE2DED00EF622F /* PortableExecutable.swift in Sources */, - 6EFDF6642AAE2E1B00EF622F /* URLExtensions.swift in Sources */, - 6EDF9AC32A9A6F46006CAA7E /* Tar.swift in Sources */, - 6E309A222AB3A79300D0167E /* Program.swift in Sources */, - 6EFDF6622AAE2DF300EF622F /* BitmapInfo.swift in Sources */, - 6EDF9AB62A9A6D8C006CAA7E /* BottleData.swift in Sources */, - 6E309A242AB3A83D00D0167E /* ShellLink.swift in Sources */, - 6EFDF6612AAE2DF000EF622F /* ResourceSection.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 6EFDF6462AAE2DA800EF622F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -761,26 +581,11 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 6EDF9AAE2A9A6CA9006CAA7E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 6EDF9AA82A9A6CA9006CAA7E /* WhiskyKit */; - targetProxy = 6EDF9AAD2A9A6CA9006CAA7E /* PBXContainerItemProxy */; - }; - 6EDF9ABA2A9A6E50006CAA7E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 6EDF9AA82A9A6CA9006CAA7E /* WhiskyKit */; - targetProxy = 6EDF9AB92A9A6E50006CAA7E /* PBXContainerItemProxy */; - }; 6EFDF6552AAE2DA800EF622F /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 6EFDF6492AAE2DA800EF622F /* WhiskyThumbnail */; targetProxy = 6EFDF6542AAE2DA800EF622F /* PBXContainerItemProxy */; }; - 6EFDF65E2AAE2DB300EF622F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 6EDF9AA82A9A6CA9006CAA7E /* WhiskyKit */; - targetProxy = 6EFDF65D2AAE2DB300EF622F /* PBXContainerItemProxy */; - }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ @@ -1029,96 +834,6 @@ }; name = Release; }; - 6EDF9AB22A9A6CA9006CAA7E /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = arm64; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application"; - CODE_SIGN_STYLE = Manual; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - "DEVELOPMENT_TEAM[sdk=macosx*]" = 92S3SG4PTH; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_MODULE_VERIFIER = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_NSHumanReadableCopyright = ""; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/Frameworks", - ); - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MACOSX_DEPLOYMENT_TARGET = 14.0; - MARKETING_VERSION = 1.0; - MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; - MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; - PRODUCT_BUNDLE_IDENTIFIER = com.isaacmarovitz.WhiskyKit; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 6EDF9AB32A9A6CA9006CAA7E /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = arm64; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application"; - CODE_SIGN_STYLE = Manual; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - "DEVELOPMENT_TEAM[sdk=macosx*]" = 92S3SG4PTH; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_MODULE_VERIFIER = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_NSHumanReadableCopyright = ""; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/Frameworks", - ); - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MACOSX_DEPLOYMENT_TARGET = 14.0; - MARKETING_VERSION = 1.0; - MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; - MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; - PRODUCT_BUNDLE_IDENTIFIER = com.isaacmarovitz.WhiskyKit; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; 6EFDF6582AAE2DA800EF622F /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1216,15 +931,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 6EDF9AB12A9A6CA9006CAA7E /* Build configuration list for PBXNativeTarget "WhiskyKit" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 6EDF9AB22A9A6CA9006CAA7E /* Debug */, - 6EDF9AB32A9A6CA9006CAA7E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 6EFDF6572AAE2DA800EF622F /* Build configuration list for PBXNativeTarget "WhiskyThumbnail" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -1236,6 +942,13 @@ }; /* End XCConfigurationList section */ +/* Begin XCLocalSwiftPackageReference section */ + 8C2AEFC62AED79B700CB568F /* XCLocalSwiftPackageReference "WhiskyKit" */ = { + isa = XCLocalSwiftPackageReference; + relativePath = WhiskyKit; + }; +/* End XCLocalSwiftPackageReference section */ + /* Begin XCRemoteSwiftPackageReference section */ 6E064B1029DD32A200D9A2D2 /* XCRemoteSwiftPackageReference "Sparkle" */ = { isa = XCRemoteSwiftPackageReference; @@ -1305,10 +1018,18 @@ package = 6E95F6712AB3F67200D585D1 /* XCRemoteSwiftPackageReference "Progress" */; productName = Progress; }; - 6EDF9ABC2A9A6E83006CAA7E /* SemanticVersion */ = { + 8C2AEFC72AED79B700CB568F /* WhiskyKit */ = { isa = XCSwiftPackageProductDependency; - package = EB58FB532A499896002DC184 /* XCRemoteSwiftPackageReference "SemanticVersion" */; - productName = SemanticVersion; + productName = WhiskyKit; + }; + 8C2AEFC92AED79CD00CB568F /* WhiskyKit */ = { + isa = XCSwiftPackageProductDependency; + package = 8C2AEFC62AED79B700CB568F /* XCLocalSwiftPackageReference "WhiskyKit" */; + productName = WhiskyKit; + }; + 8CB681E62AED7CD00018D319 /* WhiskyKit */ = { + isa = XCSwiftPackageProductDependency; + productName = WhiskyKit; }; EB58FB542A499896002DC184 /* SemanticVersion */ = { isa = XCSwiftPackageProductDependency; diff --git a/Whisky.xcodeproj/xcshareddata/xcschemes/WhiskyKit.xcscheme b/Whisky.xcodeproj/xcshareddata/xcschemes/WhiskyKit.xcscheme deleted file mode 100644 index c7e68a5e9..000000000 --- a/Whisky.xcodeproj/xcshareddata/xcschemes/WhiskyKit.xcscheme +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WhiskyKit/.gitignore b/WhiskyKit/.gitignore new file mode 100644 index 000000000..0023a5340 --- /dev/null +++ b/WhiskyKit/.gitignore @@ -0,0 +1,8 @@ +.DS_Store +/.build +/Packages +xcuserdata/ +DerivedData/ +.swiftpm/configuration/registries.json +.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +.netrc diff --git a/WhiskyKit/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/WhiskyKit/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/WhiskyKit/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/WhiskyKit/Package.resolved b/WhiskyKit/Package.resolved new file mode 100644 index 000000000..7b3666c7c --- /dev/null +++ b/WhiskyKit/Package.resolved @@ -0,0 +1,14 @@ +{ + "pins" : [ + { + "identity" : "semanticversion", + "kind" : "remoteSourceControl", + "location" : "git@github.com:SwiftPackageIndex/SemanticVersion.git", + "state" : { + "revision" : "45e2ec89fee3b76cd6dde3f9a507e4348f194b79", + "version" : "0.3.7" + } + } + ], + "version" : 2 +} diff --git a/WhiskyKit/Package.swift b/WhiskyKit/Package.swift new file mode 100644 index 000000000..019df84ae --- /dev/null +++ b/WhiskyKit/Package.swift @@ -0,0 +1,46 @@ +// swift-tools-version: 5.9 +// +// PortableExecutable.swift +// WhiskyKit +// +// This file is part of Whisky. +// +// Whisky is free software: you can redistribute it and/or modify it under the terms +// of the GNU General Public License as published by the Free Software Foundation, +// either version 3 of the License, or (at your option) any later version. +// +// Whisky is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +// without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +// See the GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along with Whisky. +// If not, see https://www.gnu.org/licenses/. +// + +import PackageDescription + +let package = Package( + name: "WhiskyKit", + platforms: [ + .macOS(.v14) + ], + products: [ + .library( + name: "WhiskyKit", + targets: ["WhiskyKit"] + ) + ], + dependencies: [ + .package(url: "git@github.com:SwiftPackageIndex/SemanticVersion.git", from: "0.3.0") + ], + targets: [ + .target( + name: "WhiskyKit", + dependencies: ["SemanticVersion"] + ), + .testTarget( + name: "WhiskyKitTests", + dependencies: ["WhiskyKit"] + ) + ] +) diff --git a/WhiskyKit/Extensions/DataExtensions.swift b/WhiskyKit/Sources/WhiskyKit/Extensions/DataExtensions.swift similarity index 100% rename from WhiskyKit/Extensions/DataExtensions.swift rename to WhiskyKit/Sources/WhiskyKit/Extensions/DataExtensions.swift diff --git a/WhiskyKit/Extensions/URLExtensions.swift b/WhiskyKit/Sources/WhiskyKit/Extensions/URLExtensions.swift similarity index 100% rename from WhiskyKit/Extensions/URLExtensions.swift rename to WhiskyKit/Sources/WhiskyKit/Extensions/URLExtensions.swift diff --git a/WhiskyKit/GPTK/GPTKInstaller.swift b/WhiskyKit/Sources/WhiskyKit/GPTK/GPTKInstaller.swift similarity index 100% rename from WhiskyKit/GPTK/GPTKInstaller.swift rename to WhiskyKit/Sources/WhiskyKit/GPTK/GPTKInstaller.swift diff --git a/WhiskyKit/PE/BitmapInfo.swift b/WhiskyKit/Sources/WhiskyKit/PE/BitmapInfo.swift similarity index 100% rename from WhiskyKit/PE/BitmapInfo.swift rename to WhiskyKit/Sources/WhiskyKit/PE/BitmapInfo.swift diff --git a/WhiskyKit/PE/PortableExecutable.swift b/WhiskyKit/Sources/WhiskyKit/PE/PortableExecutable.swift similarity index 100% rename from WhiskyKit/PE/PortableExecutable.swift rename to WhiskyKit/Sources/WhiskyKit/PE/PortableExecutable.swift diff --git a/WhiskyKit/PE/ResourceSection.swift b/WhiskyKit/Sources/WhiskyKit/PE/ResourceSection.swift similarity index 100% rename from WhiskyKit/PE/ResourceSection.swift rename to WhiskyKit/Sources/WhiskyKit/PE/ResourceSection.swift diff --git a/WhiskyKit/PE/ShellLink.swift b/WhiskyKit/Sources/WhiskyKit/PE/ShellLink.swift similarity index 100% rename from WhiskyKit/PE/ShellLink.swift rename to WhiskyKit/Sources/WhiskyKit/PE/ShellLink.swift diff --git a/WhiskyKit/Tar.swift b/WhiskyKit/Sources/WhiskyKit/Tar.swift similarity index 100% rename from WhiskyKit/Tar.swift rename to WhiskyKit/Sources/WhiskyKit/Tar.swift diff --git a/WhiskyKit/Whisky/Bottle.swift b/WhiskyKit/Sources/WhiskyKit/Whisky/Bottle.swift similarity index 100% rename from WhiskyKit/Whisky/Bottle.swift rename to WhiskyKit/Sources/WhiskyKit/Whisky/Bottle.swift diff --git a/WhiskyKit/Whisky/BottleData.swift b/WhiskyKit/Sources/WhiskyKit/Whisky/BottleData.swift similarity index 100% rename from WhiskyKit/Whisky/BottleData.swift rename to WhiskyKit/Sources/WhiskyKit/Whisky/BottleData.swift diff --git a/WhiskyKit/Whisky/BottleSettings.swift b/WhiskyKit/Sources/WhiskyKit/Whisky/BottleSettings.swift similarity index 100% rename from WhiskyKit/Whisky/BottleSettings.swift rename to WhiskyKit/Sources/WhiskyKit/Whisky/BottleSettings.swift diff --git a/WhiskyKit/Whisky/Program.swift b/WhiskyKit/Sources/WhiskyKit/Whisky/Program.swift similarity index 100% rename from WhiskyKit/Whisky/Program.swift rename to WhiskyKit/Sources/WhiskyKit/Whisky/Program.swift diff --git a/WhiskyKit/Whisky/ProgramSettings.swift b/WhiskyKit/Sources/WhiskyKit/Whisky/ProgramSettings.swift similarity index 100% rename from WhiskyKit/Whisky/ProgramSettings.swift rename to WhiskyKit/Sources/WhiskyKit/Whisky/ProgramSettings.swift diff --git a/WhiskyKit/Tests/WhiskyKitTests/WhiskyKitTests.swift b/WhiskyKit/Tests/WhiskyKitTests/WhiskyKitTests.swift new file mode 100644 index 000000000..079177282 --- /dev/null +++ b/WhiskyKit/Tests/WhiskyKitTests/WhiskyKitTests.swift @@ -0,0 +1,24 @@ +// +// WhiskyKitTests.swift +// WhiskyKit +// +// This file is part of Whisky. +// +// Whisky is free software: you can redistribute it and/or modify it under the terms +// of the GNU General Public License as published by the Free Software Foundation, +// either version 3 of the License, or (at your option) any later version. +// +// Whisky is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +// without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +// See the GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along with Whisky. +// If not, see https://www.gnu.org/licenses/. +// + +import XCTest +@testable import WhiskyKit + +final class WhiskyKitTests: XCTestCase { + // TODO: Add some tests here +}