diff --git a/.gitignore b/.gitignore index 5429390..54a41b1 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ captures local.properties xcuserdata .kotlin +localBinarySample/archives diff --git a/localBinarySample/DummyFramework.xcodeproj/project.pbxproj b/localBinarySample/DummyFramework.xcodeproj/project.pbxproj new file mode 100644 index 0000000..870b308 --- /dev/null +++ b/localBinarySample/DummyFramework.xcodeproj/project.pbxproj @@ -0,0 +1,393 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 77; + objects = { + +/* Begin PBXFileReference section */ + 07F1B0412CDB717E00279900 /* DummyFramework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DummyFramework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ + 07616B662CDBBAA4009EC3FC /* Exceptions for "DummyFramework" folder in "DummyFramework" target */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + publicHeaders = ( + DummyFramework.h, + ); + target = 07F1B0402CDB717E00279900 /* DummyFramework */; + }; +/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ + +/* Begin PBXFileSystemSynchronizedRootGroup section */ + 07F1B0432CDB717E00279900 /* DummyFramework */ = { + isa = PBXFileSystemSynchronizedRootGroup; + exceptions = ( + 07616B662CDBBAA4009EC3FC /* Exceptions for "DummyFramework" folder in "DummyFramework" target */, + ); + path = DummyFramework; + sourceTree = ""; + }; +/* End PBXFileSystemSynchronizedRootGroup section */ + +/* Begin PBXFrameworksBuildPhase section */ + 07F1B03E2CDB717E00279900 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 07F1B0372CDB717E00279900 = { + isa = PBXGroup; + children = ( + 07F1B0432CDB717E00279900 /* DummyFramework */, + 07F1B0422CDB717E00279900 /* Products */, + ); + sourceTree = ""; + }; + 07F1B0422CDB717E00279900 /* Products */ = { + isa = PBXGroup; + children = ( + 07F1B0412CDB717E00279900 /* DummyFramework.framework */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 07F1B03C2CDB717E00279900 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 07F1B0402CDB717E00279900 /* DummyFramework */ = { + isa = PBXNativeTarget; + buildConfigurationList = 07F1B0472CDB717E00279900 /* Build configuration list for PBXNativeTarget "DummyFramework" */; + buildPhases = ( + 07F1B03C2CDB717E00279900 /* Headers */, + 07F1B03D2CDB717E00279900 /* Sources */, + 07F1B03E2CDB717E00279900 /* Frameworks */, + 07F1B03F2CDB717E00279900 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + fileSystemSynchronizedGroups = ( + 07F1B0432CDB717E00279900 /* DummyFramework */, + ); + name = DummyFramework; + packageProductDependencies = ( + ); + productName = DummyFramework; + productReference = 07F1B0412CDB717E00279900 /* DummyFramework.framework */; + productType = "com.apple.product-type.framework"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 07F1B0382CDB717E00279900 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastUpgradeCheck = 1610; + TargetAttributes = { + 07F1B0402CDB717E00279900 = { + CreatedOnToolsVersion = 16.1; + LastSwiftMigration = 1610; + }; + }; + }; + buildConfigurationList = 07F1B03B2CDB717E00279900 /* Build configuration list for PBXProject "DummyFramework" */; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 07F1B0372CDB717E00279900; + minimizedProjectReferenceProxies = 1; + preferredProjectObjectVersion = 77; + productRefGroup = 07F1B0422CDB717E00279900 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 07F1B0402CDB717E00279900 /* DummyFramework */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 07F1B03F2CDB717E00279900 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 07F1B03D2CDB717E00279900 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 07F1B0482CDB717E00279900 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES; + BUILD_LIBRARY_FOR_DISTRIBUTION = YES; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DRIVERKIT_DEPLOYMENT_TARGET = 20.0; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_NSHumanReadableCopyright = ""; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + "LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = ( + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 11.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.dummy.DummyFramework; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = auto; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "appletvos appletvsimulator driverkit iphoneos iphonesimulator macosx watchos watchsimulator"; + SUPPORTS_MACCATALYST = YES; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_INSTALL_OBJC_HEADER = NO; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; + TVOS_DEPLOYMENT_TARGET = 15.0; + WATCHOS_DEPLOYMENT_TARGET = 8.0; + XROS_DEPLOYMENT_TARGET = 1.3; + }; + name = Debug; + }; + 07F1B0492CDB717E00279900 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES; + BUILD_LIBRARY_FOR_DISTRIBUTION = YES; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DRIVERKIT_DEPLOYMENT_TARGET = 20.0; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_NSHumanReadableCopyright = ""; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + "LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = ( + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 11.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.dummy.DummyFramework; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = auto; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "appletvos appletvsimulator driverkit iphoneos iphonesimulator macosx watchos watchsimulator"; + SUPPORTS_MACCATALYST = YES; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_INSTALL_OBJC_HEADER = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; + TVOS_DEPLOYMENT_TARGET = 15.0; + WATCHOS_DEPLOYMENT_TARGET = 8.0; + XROS_DEPLOYMENT_TARGET = 1.3; + }; + name = Release; + }; + 07F1B04A2CDB717E00279900 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 07F1B04B2CDB717E00279900 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SWIFT_COMPILATION_MODE = wholemodule; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 07F1B03B2CDB717E00279900 /* Build configuration list for PBXProject "DummyFramework" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 07F1B04A2CDB717E00279900 /* Debug */, + 07F1B04B2CDB717E00279900 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 07F1B0472CDB717E00279900 /* Build configuration list for PBXNativeTarget "DummyFramework" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 07F1B0482CDB717E00279900 /* Debug */, + 07F1B0492CDB717E00279900 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 07F1B0382CDB717E00279900 /* Project object */; +} diff --git a/localBinarySample/DummyFramework.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/localBinarySample/DummyFramework.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/localBinarySample/DummyFramework.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/localBinarySample/DummyFramework/DummyFramework.h b/localBinarySample/DummyFramework/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/localBinarySample/DummyFramework/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/localBinarySample/DummyFramework/DummyFramework.swift b/localBinarySample/DummyFramework/DummyFramework.swift new file mode 100644 index 0000000..30abe66 --- /dev/null +++ b/localBinarySample/DummyFramework/DummyFramework.swift @@ -0,0 +1,17 @@ +// +// DummyFramwork.swift +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +import Foundation + +open class MyDummyFramework { + + public init() {} + + public func printSomeValue() { + print("Hello the work") + } +} diff --git a/localBinarySample/README.md b/localBinarySample/README.md new file mode 100644 index 0000000..49ff036 --- /dev/null +++ b/localBinarySample/README.md @@ -0,0 +1,7 @@ +Build a dummy xcframework for testing local binary import. + +The xcframework should already be available in the repository and used by the tests. + +If you need to update the source, update the code, run `./build.sh` and the framework will be generated in this folder : ../plugin/src/functionalTest/resources/ + +Note: Update the checksum show in the output of the command in the test `build with remote binary xcframework`. diff --git a/localBinarySample/build.sh b/localBinarySample/build.sh new file mode 100755 index 0000000..dd00d47 --- /dev/null +++ b/localBinarySample/build.sh @@ -0,0 +1,75 @@ +#!/bin/sh + +rm -rf ../plugin/src/functionalTest/resources/DummyFramework.xcframework +rm -rf ../plugin/src/functionalTest/resources/DummyFramework.xcframework.zip + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=iOS" \ +-archivePath archives/DummyFramework-iOS \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=iOS Simulator" \ +-archivePath archives/DummyFramework-iOS_Simulator \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=macOS" \ +-archivePath archives/DummyFramework-macOS \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=watchOS" \ +-archivePath archives/DummyFramework-watchOS \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=watchOS Simulator" \ +-archivePath archives/DummyFramework-watchOS_Simulator \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=tvOS" \ +-archivePath archives/DummyFramework-tvOS \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + +xcodebuild archive \ +-scheme DummyFramework \ +-destination "generic/platform=tvOS Simulator" \ +-archivePath archives/DummyFramework-tvOS_Simulator \ +SKIP_INSTALL=NO \ +BUILD_LIBRARY_FOR_DISTRIBUTION=YES + + +xcodebuild -create-xcframework \ + -archive archives/DummyFramework-iOS.xcarchive -framework DummyFramework.framework \ + -archive archives/DummyFramework-iOS_Simulator.xcarchive -framework DummyFramework.framework \ + -archive archives/DummyFramework-macOS.xcarchive -framework DummyFramework.framework \ + -archive archives/DummyFramework-watchOS.xcarchive -framework DummyFramework.framework \ + -archive archives/DummyFramework-watchOS_Simulator.xcarchive -framework DummyFramework.framework \ + -archive archives/DummyFramework-tvOS.xcarchive -framework DummyFramework.framework \ + -archive archives/DummyFramework-tvOS_Simulator.xcarchive -framework DummyFramework.framework \ + -output DummyFramework.xcframework + + +zip -r DummyFramework.xcframework.zip DummyFramework.xcframework +echo "Use the checksum to update the correct test" +swift package compute-checksum DummyFramework.xcframework.zip + +mv DummyFramework.xcframework.zip ../plugin/src/functionalTest/resources/DummyFramework.xcframework.zip +mv DummyFramework.xcframework ../plugin/src/functionalTest/resources/DummyFramework.xcframework + + + diff --git a/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageModulesTest.kt b/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageModulesTest.kt index 135ec6f..e1e29ff 100644 --- a/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageModulesTest.kt +++ b/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageModulesTest.kt @@ -8,6 +8,7 @@ import io.github.ttypic.swiftklib.gradle.fixture.SwiftSource import org.junit.jupiter.api.Assertions.assertTrue import org.junit.jupiter.api.Test import java.io.File +import java.net.URI class SwiftPackageModulesTest { @@ -375,6 +376,11 @@ class SwiftPackageModulesTest { @Test fun `build with complex and mix spm repo`() { + val xcframeworkDirectory = File("src/functionalTest/resources/DummyFramework.xcframework") + assertTrue( + xcframeworkDirectory.exists(), + "Dummy XCFramework not found, see localbinary folder" + ) // Given val fixture = SwiftKlibTestFixture.builder() .withSwiftSources( @@ -384,6 +390,7 @@ class SwiftPackageModulesTest { import FirebaseRemoteConfig import KeychainAccess import SwiftyJSON + import DummyFramework @objc public class FirebaseData: NSObject { @objc public func testLinking() { @@ -418,6 +425,7 @@ class SwiftPackageModulesTest { github("SwiftyJSON", "SwiftyJSON") versionRange("5.0.0", "6.0.0", true) } + localBinary("DummyFramework", xcframeworkDirectory) } } .build() @@ -480,6 +488,71 @@ class SwiftPackageModulesTest { } } + @Test + fun `build with local binary xcframework`() { + val xcframeworkDirectory = File("src/functionalTest/resources/DummyFramework.xcframework") + assertTrue( + xcframeworkDirectory.exists(), + "Dummy XCFramework not found, see localbinary folder" + ) + + val fixture = SwiftKlibTestFixture.builder() + .withSwiftSources( + SwiftSource.of( + content = """ + import DummyFramework + + @objc public class DummyCode: NSObject { + @objc public func testLinking() { + MyDummyFramework().printSomeValue() + } + } + """.trimIndent() + ) + ) + .withConfiguration { + dependencies { + localBinary("DummyFramework", xcframeworkDirectory) + } + } + .build() + + // When + build(fixture.gradleProject.rootDir, "build") + } + + @Test + fun `build with remote binary xcframework`() { + val fixture = SwiftKlibTestFixture.builder() + .withSwiftSources( + SwiftSource.of( + content = """ + import DummyFramework + + @objc public class DummyCode: NSObject { + @objc public func testLinking() { + MyDummyFramework().printSomeValue() + } + } + """.trimIndent() + ) + ) + .withConfiguration { + dependencies { + remoteBinary( + "DummyFramework", + URI("https://raw.githubusercontent.com/frankois944/swift-klib-plugin/refs/heads/swift-spm-local-remote-lib/plugin/src/functionalTest/resources/DummyFramework.xcframework.zip"), + "20f6264c95e80b6e2da7d2c9b9abe44b4426dac799927ea49fb7a4982f1affdb" + ) + } + } + .build() + + // When + build(fixture.gradleProject.rootDir, "build") + } + + private fun assertPackageResolved(fixture: SwiftKlibTestFixture, vararg packageNames: String) { val resolvedFile = File( fixture.gradleProject.rootDir, diff --git a/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/fixture/SwiftKlibTestFixture.kt b/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/fixture/SwiftKlibTestFixture.kt index b1d2264..ad7ecf8 100644 --- a/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/fixture/SwiftKlibTestFixture.kt +++ b/plugin/src/functionalTest/kotlin/io/github/ttypic/swiftklib/gradle/fixture/SwiftKlibTestFixture.kt @@ -9,6 +9,8 @@ import io.github.ttypic.swiftklib.gradle.api.RemotePackageConfiguration import io.github.ttypic.swiftklib.gradle.api.SwiftKlibEntry import io.github.ttypic.swiftklib.gradle.api.SwiftPackageConfiguration import java.io.File +import java.net.URI +import java.net.URL import kotlin.properties.ReadWriteProperty import kotlin.reflect.KProperty @@ -227,6 +229,14 @@ private class TestSwiftPackageConfigurationImpl : SwiftPackageConfiguration { dependencies.add(TestDependencyConfig.Local(name, path)) } + override fun localBinary(name: String, path: File) { + dependencies.add(TestDependencyConfig.LocalBinary(name, path)) + } + + override fun remoteBinary(name: String, url: URI, checksum: String) { + dependencies.add(TestDependencyConfig.RemoteBinary(name, url, checksum)) + } + override fun remote(name: String, configuration: RemotePackageConfiguration.() -> Unit) { remote(listOf(name), configuration) } @@ -288,6 +298,14 @@ private sealed interface TestDependencyConfig { override fun toConfigString() = """local("$name", file("${path.absolutePath}"))""" } + data class LocalBinary(val name: String, val path: File) : TestDependencyConfig { + override fun toConfigString() = """localBinary("$name", File("${path.absolutePath}"))""" + } + + data class RemoteBinary(val name: String, val url: URI, val checksum: String) : TestDependencyConfig { + override fun toConfigString() = """remoteBinary("$name", uri("$url"), "$checksum")""" + } + data class Remote( val name: List, val url: String?, diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework.zip b/plugin/src/functionalTest/resources/DummyFramework.xcframework.zip new file mode 100644 index 0000000..68ec897 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework.zip differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/Info.plist new file mode 100644 index 0000000..3296a6b --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/Info.plist @@ -0,0 +1,137 @@ + + + + + AvailableLibraries + + + BinaryPath + DummyFramework.framework/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + watchos-arm64_x86_64-simulator + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + watchos + SupportedPlatformVariant + simulator + + + BinaryPath + DummyFramework.framework/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + watchos-arm64_arm64_32_armv7k + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + arm64_32 + armv7k + + SupportedPlatform + watchos + + + BinaryPath + DummyFramework.framework/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + DummyFramework.framework/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + ios-arm64 + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + BinaryPath + DummyFramework.framework/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + tvos-arm64_x86_64-simulator + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + tvos + SupportedPlatformVariant + simulator + + + BinaryPath + DummyFramework.framework/Versions/A/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + macos-arm64_x86_64 + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + macos + + + BinaryPath + DummyFramework.framework/DummyFramework + DebugSymbolsPath + dSYMs + LibraryIdentifier + tvos-arm64 + LibraryPath + DummyFramework.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + tvos + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/DummyFramework new file mode 100755 index 0000000..81f19ea Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Info.plist new file mode 100644 index 0000000..dc1a4f4 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Info.plist differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.private.swiftinterface new file mode 100644 index 0000000..6715ae6 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-ios12.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.swiftdoc new file mode 100644 index 0000000..995fbb5 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.swiftinterface new file mode 100644 index 0000000..6715ae6 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-ios12.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/DummyFramework.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..e419bd4 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..5838e03 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x323F0, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x63A0, symSize: 0x0 } + - { offset: 0x32424, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x63D8, symSize: 0x0 } + - { offset: 0x32460, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x32509, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x40A0, symSize: 0x40 } + - { offset: 0x3251C, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x40F0, symSize: 0x20 } + - { offset: 0x32536, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x32549, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x4010, symSize: 0x8 } + - { offset: 0x3259F, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x4018, symSize: 0x88 } + - { offset: 0x32600, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x40E0, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework new file mode 100755 index 0000000..adcacee Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Info.plist new file mode 100644 index 0000000..3c04135 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Info.plist differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface new file mode 100644 index 0000000..cce456b --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-ios12.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftdoc new file mode 100644 index 0000000..7284034 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftinterface new file mode 100644 index 0000000..cce456b --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-ios12.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface new file mode 100644 index 0000000..20650cf --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-ios12.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftdoc new file mode 100644 index 0000000..3fd7b70 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftinterface new file mode 100644 index 0000000..20650cf --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-ios12.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources new file mode 100644 index 0000000..8a6a76c --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources @@ -0,0 +1,234 @@ + + + + + files + + Headers/DummyFramework.h + + U0W7fIDFlydigSeggyxfJ7QcNMs= + + Info.plist + + JrEUBvHnnXDGrtM2Ub6kPgltgH8= + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.abi.json + + fBHaty4gcQ7+QbxisJ+/Kp8RtNo= + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface + + ZOMectvW2o9XnrGmpbXeMC9CCTk= + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftdoc + + NW7OIOMw6ddFWW4cIj/76xUvLfg= + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftinterface + + ZOMectvW2o9XnrGmpbXeMC9CCTk= + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftmodule + + 5H78IK3P20vxtP6GaZUu9Us27Vw= + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.abi.json + + fBHaty4gcQ7+QbxisJ+/Kp8RtNo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface + + BhjvzXv3H1mkl40zPg1+Z1Xs1RM= + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftdoc + + RMd78+HjiHNhCIqGtTB9f/qKCW8= + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftinterface + + BhjvzXv3H1mkl40zPg1+Z1Xs1RM= + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftmodule + + dKD8PgNtlrSVw5c13MgL7h32P3s= + + Modules/module.modulemap + + OFM4AnMnwgU8TF9Az9SL94nBwWo= + + + files2 + + Headers/DummyFramework.h + + hash2 + + MFcFO7yCpWLrOK/Mlv2MlMZANuvMvIzhWTWZdtt64dw= + + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface + + hash2 + + iwED8qO2fraY3Zc1RLIXGLyv+M6h3UeeYMKiODizhGs= + + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftdoc + + hash2 + + qmsDzdqgQYkDgKajumrYeFWLiZOv5XrfQbGZUDFRXuk= + + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftinterface + + hash2 + + iwED8qO2fraY3Zc1RLIXGLyv+M6h3UeeYMKiODizhGs= + + + Modules/DummyFramework.swiftmodule/arm64-apple-ios-simulator.swiftmodule + + hash2 + + GVyYJV6hwpmBxMrzTzietcOVccAKVkHDPiDH1NV4giI= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface + + hash2 + + nBXauYe4lC0Bf6c4rc6GmnloEzAJFZaS9tx2LozRrgY= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftdoc + + hash2 + + vR+0gwTKu6tmcCYpSxaO8oDueqxqa7jRGKTeLso9ho0= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftinterface + + hash2 + + nBXauYe4lC0Bf6c4rc6GmnloEzAJFZaS9tx2LozRrgY= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-ios-simulator.swiftmodule + + hash2 + + T8oj8WnKnlBRTJfggLgOZ/D5mPKN7/0p1hsISmwoM1o= + + + Modules/module.modulemap + + hash2 + + WrwwKLNwTjFu8yXXdvhC/bjqeh6u8QwUHT/0vTxDigA= + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..a65f9c9 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..28e9fd7 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x32B11, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x3CD0, symSize: 0x0 } + - { offset: 0x32B45, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x3D08, symSize: 0x0 } + - { offset: 0x32B81, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x2CAC, symSize: 0x10 } + - { offset: 0x32C2A, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x2D4C, symSize: 0x40 } + - { offset: 0x32C3D, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x2D9C, symSize: 0x20 } + - { offset: 0x32C57, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x2CAC, symSize: 0x10 } + - { offset: 0x32C6A, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x2CBC, symSize: 0x8 } + - { offset: 0x32CC0, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x2CC4, symSize: 0x88 } + - { offset: 0x32D21, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x2D8C, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml new file mode 100644 index 0000000..464d4bd --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/ios-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'x86_64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x34209, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x3C20, symSize: 0x0 } + - { offset: 0x3423D, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x3C58, symSize: 0x0 } + - { offset: 0x34279, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x1940, symSize: 0x20 } + - { offset: 0x34322, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xC0, symBinAddr: 0x1A00, symSize: 0x40 } + - { offset: 0x34335, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0x130, symBinAddr: 0x1A60, symSize: 0x20 } + - { offset: 0x3434F, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x1940, symSize: 0x20 } + - { offset: 0x34362, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x20, symBinAddr: 0x1960, symSize: 0x10 } + - { offset: 0x343B7, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x30, symBinAddr: 0x1970, symSize: 0x90 } + - { offset: 0x34438, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0x110, symBinAddr: 0x1A40, symSize: 0x20 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/DummyFramework new file mode 120000 index 0000000..0684efe --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/DummyFramework @@ -0,0 +1 @@ +Versions/Current/DummyFramework \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Headers b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Modules b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Modules new file mode 120000 index 0000000..5736f31 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Modules @@ -0,0 +1 @@ +Versions/Current/Modules \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Resources b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/DummyFramework new file mode 100755 index 0000000..be16ea2 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.private.swiftinterface new file mode 100644 index 0000000..00cf38c --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-macos11.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftdoc new file mode 100644 index 0000000..7c134fd Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftinterface new file mode 100644 index 0000000..00cf38c --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-macos11.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.private.swiftinterface new file mode 100644 index 0000000..66e7050 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-macos11.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftdoc new file mode 100644 index 0000000..c6886f7 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftinterface new file mode 100644 index 0000000..66e7050 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-macos11.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Resources/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..1807ea7 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,46 @@ + + + + + BuildMachineOSBuild + 24B83 + CFBundleDevelopmentRegion + en + CFBundleExecutable + DummyFramework + CFBundleIdentifier + com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + DummyFramework + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSupportedPlatforms + + MacOSX + + CFBundleVersion + 1 + DTCompiler + com.apple.compilers.llvm.clang.1_0 + DTPlatformBuild + 24B75 + DTPlatformName + macosx + DTPlatformVersion + 15.1 + DTSDKBuild + 24B75 + DTSDKName + macosx15.1 + DTXcode + 1610 + DTXcodeBuild + 16B40 + LSMinimumSystemVersion + 11.0 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/_CodeSignature/CodeResources b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/_CodeSignature/CodeResources new file mode 100644 index 0000000..9b88afc --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/A/_CodeSignature/CodeResources @@ -0,0 +1,212 @@ + + + + + files + + Resources/Info.plist + + YMwSoE1Avekv3sGeK73mRJ2lSkg= + + + files2 + + Headers/DummyFramework.h + + hash2 + + MFcFO7yCpWLrOK/Mlv2MlMZANuvMvIzhWTWZdtt64dw= + + + Modules/DummyFramework.swiftmodule/arm64-apple-macos.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/arm64-apple-macos.private.swiftinterface + + hash2 + + NcAj7l0lGt6nRq/f51CiN0FeAoJSP5D4piFVwJE/3ZU= + + + Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftdoc + + hash2 + + gLI/GSZu+kQ9HpSRk83Tf76UyDv53e+pzZ1CH9+IU7E= + + + Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftinterface + + hash2 + + NcAj7l0lGt6nRq/f51CiN0FeAoJSP5D4piFVwJE/3ZU= + + + Modules/DummyFramework.swiftmodule/arm64-apple-macos.swiftmodule + + hash2 + + ENvCZJF0jhT7mWMtZAPutnL/B+puyAYPF0nlub0Kjd0= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-macos.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-macos.private.swiftinterface + + hash2 + + rFOMzNe+ZFrobetUQEXAtWAY6Dk8GmYOZObmzbd2198= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftdoc + + hash2 + + 0pC9nClcZTb27pfjzeArkV4WBammIZOGUO0rTv4Hj+8= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftinterface + + hash2 + + rFOMzNe+ZFrobetUQEXAtWAY6Dk8GmYOZObmzbd2198= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-macos.swiftmodule + + hash2 + + JPyu24xxqD/L95z1KvBU+pN2PrpuLY7TI3kEVkGsyBA= + + + Modules/module.modulemap + + hash2 + + WrwwKLNwTjFu8yXXdvhC/bjqeh6u8QwUHT/0vTxDigA= + + + Resources/Info.plist + + hash2 + + CdVbot+TZC4cnotlXU90Us5WdDkRGA8LNXZuXElBO0Q= + + + + rules + + ^Resources/ + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Resources/Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ + + nested + + weight + 10 + + ^.* + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^Resources/ + + weight + 20 + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Resources/Base\.lproj/ + + weight + 1010 + + ^[^/]+$ + + nested + + weight + 10 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/Current b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/DummyFramework.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..3ca106b Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..25916a3 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/Versions/A/DummyFramework' +relocations: + - { offset: 0x87BCC, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x3950, symSize: 0x0 } + - { offset: 0x87C01, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x3988, symSize: 0x0 } + - { offset: 0x87C3E, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x1F80, symSize: 0x10 } + - { offset: 0x87CF2, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x2020, symSize: 0x40 } + - { offset: 0x87D06, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x2070, symSize: 0x20 } + - { offset: 0x87D21, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x1F80, symSize: 0x10 } + - { offset: 0x87D35, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x1F90, symSize: 0x8 } + - { offset: 0x87D8C, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x1F98, symSize: 0x88 } + - { offset: 0x87DEE, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x2060, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml new file mode 100644 index 0000000..d9e04b4 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/macos-arm64_x86_64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'x86_64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/Versions/A/DummyFramework' +relocations: + - { offset: 0x8AEA4, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x2990, symSize: 0x0 } + - { offset: 0x8AED9, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x29C8, symSize: 0x0 } + - { offset: 0x8AF16, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x1010, symSize: 0x20 } + - { offset: 0x8AFCA, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xC0, symBinAddr: 0x10D0, symSize: 0x40 } + - { offset: 0x8AFDE, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0x130, symBinAddr: 0x1130, symSize: 0x20 } + - { offset: 0x8AFF9, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x1010, symSize: 0x20 } + - { offset: 0x8B00D, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x20, symBinAddr: 0x1030, symSize: 0x10 } + - { offset: 0x8B064, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x30, symBinAddr: 0x1040, symSize: 0x90 } + - { offset: 0x8B0E6, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0x110, symBinAddr: 0x1110, symSize: 0x20 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/DummyFramework new file mode 100755 index 0000000..bf40b49 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Info.plist new file mode 100644 index 0000000..e9427a2 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Info.plist differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.private.swiftinterface new file mode 100644 index 0000000..4bb2cff --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-tvos15.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.swiftdoc new file mode 100644 index 0000000..d5c5448 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.swiftinterface new file mode 100644 index 0000000..4bb2cff --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-tvos15.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/DummyFramework.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..ac08c28 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..85c92ab --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x31E12, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x4FF0, symSize: 0x0 } + - { offset: 0x31E46, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x5028, symSize: 0x0 } + - { offset: 0x31E82, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x31F2B, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x40A0, symSize: 0x40 } + - { offset: 0x31F3E, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x40F0, symSize: 0x20 } + - { offset: 0x31F58, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x31F6B, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x4010, symSize: 0x8 } + - { offset: 0x31FC1, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x4018, symSize: 0x88 } + - { offset: 0x32022, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x40E0, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework new file mode 100755 index 0000000..791e71e Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Info.plist new file mode 100644 index 0000000..64107d3 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Info.plist differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.private.swiftinterface new file mode 100644 index 0000000..39a1b07 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-tvos15.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftdoc new file mode 100644 index 0000000..48841ae Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftinterface new file mode 100644 index 0000000..39a1b07 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-tvos15.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.private.swiftinterface new file mode 100644 index 0000000..2ff2209 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-tvos15.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftdoc new file mode 100644 index 0000000..f68193c Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftinterface new file mode 100644 index 0000000..2ff2209 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-tvos15.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources new file mode 100644 index 0000000..260ac73 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources @@ -0,0 +1,234 @@ + + + + + files + + Headers/DummyFramework.h + + U0W7fIDFlydigSeggyxfJ7QcNMs= + + Info.plist + + tZip1ktoKT4yZtEY5gsBNaRxVT0= + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.abi.json + + fBHaty4gcQ7+QbxisJ+/Kp8RtNo= + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.private.swiftinterface + + u5AHSzHHFLDHqFE9MW61KJYXVl4= + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftdoc + + ZIAkMyD1OVF2qFzOVdcw/q/PVw8= + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftinterface + + u5AHSzHHFLDHqFE9MW61KJYXVl4= + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftmodule + + Jhj0L0UPRCsuPfoclS9fcnVEn3g= + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.abi.json + + fBHaty4gcQ7+QbxisJ+/Kp8RtNo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.private.swiftinterface + + O8d7VoGt/vXOx1OPITuFI6IGWpo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftdoc + + Hn8FdIZknjiXNzf2vsW2CgmkMvE= + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftinterface + + O8d7VoGt/vXOx1OPITuFI6IGWpo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftmodule + + iAo/8feUPyFRLTYG9ui6vgnXI5c= + + Modules/module.modulemap + + OFM4AnMnwgU8TF9Az9SL94nBwWo= + + + files2 + + Headers/DummyFramework.h + + hash2 + + MFcFO7yCpWLrOK/Mlv2MlMZANuvMvIzhWTWZdtt64dw= + + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.private.swiftinterface + + hash2 + + FLfzh+tieGsfP1vP/Bys6QjUoR9KCbevs/uhV6OTzp8= + + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftdoc + + hash2 + + vmHeMu+KvmaPmY8PC0cEvMQTdbdds93rbA8429TQ7Rc= + + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftinterface + + hash2 + + FLfzh+tieGsfP1vP/Bys6QjUoR9KCbevs/uhV6OTzp8= + + + Modules/DummyFramework.swiftmodule/arm64-apple-tvos-simulator.swiftmodule + + hash2 + + 3bPHQH47C2ht2J3wAI5G56+cG45Di0kPUVBdC4ofepc= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.private.swiftinterface + + hash2 + + AdNfMdsf3Q8GlsHbKIqYp8LNjbwbhUwZjtHg5nRLVko= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftdoc + + hash2 + + MhbfMl62/LsQ4o7W+nyEFw51YyV916toD1WsV1Z7U00= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftinterface + + hash2 + + AdNfMdsf3Q8GlsHbKIqYp8LNjbwbhUwZjtHg5nRLVko= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-tvos-simulator.swiftmodule + + hash2 + + 6UXle4e8MGNW5clyL++JPAtlroG3Ja89BNGiGCDLGQM= + + + Modules/module.modulemap + + hash2 + + WrwwKLNwTjFu8yXXdvhC/bjqeh6u8QwUHT/0vTxDigA= + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..d891754 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..e2f08b8 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x32533, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x3CD0, symSize: 0x0 } + - { offset: 0x32567, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x3D08, symSize: 0x0 } + - { offset: 0x325A3, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x2DA0, symSize: 0x10 } + - { offset: 0x3264C, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x2E40, symSize: 0x40 } + - { offset: 0x3265F, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x2E90, symSize: 0x20 } + - { offset: 0x32679, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x2DA0, symSize: 0x10 } + - { offset: 0x3268C, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x2DB0, symSize: 0x8 } + - { offset: 0x326E2, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x2DB8, symSize: 0x88 } + - { offset: 0x32743, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x2E80, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml new file mode 100644 index 0000000..1d59033 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/tvos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'x86_64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x33C2B, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x1CF0, symSize: 0x0 } + - { offset: 0x33C5F, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x1D28, symSize: 0x0 } + - { offset: 0x33C9B, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0xCC0, symSize: 0x20 } + - { offset: 0x33D44, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xC0, symBinAddr: 0xD80, symSize: 0x40 } + - { offset: 0x33D57, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0x130, symBinAddr: 0xDE0, symSize: 0x20 } + - { offset: 0x33D71, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0xCC0, symSize: 0x20 } + - { offset: 0x33D84, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x20, symBinAddr: 0xCE0, symSize: 0x10 } + - { offset: 0x33DD9, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x30, symBinAddr: 0xCF0, symSize: 0x90 } + - { offset: 0x33E5A, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0x110, symBinAddr: 0xDC0, symSize: 0x20 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/DummyFramework new file mode 100755 index 0000000..5545a57 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Info.plist new file mode 100644 index 0000000..4af06d9 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Info.plist differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.private.swiftinterface new file mode 100644 index 0000000..e83a017 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-watchos8.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.swiftdoc new file mode 100644 index 0000000..77dbc4b Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.swiftinterface new file mode 100644 index 0000000..e83a017 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-watchos8.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.private.swiftinterface new file mode 100644 index 0000000..2ebc190 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64_32-apple-watchos8.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.swiftdoc new file mode 100644 index 0000000..61a050b Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.swiftinterface new file mode 100644 index 0000000..2ebc190 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64_32-apple-watchos.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64_32-apple-watchos8.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.private.swiftinterface new file mode 100644 index 0000000..a566051 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target armv7k-apple-watchos8.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.swiftdoc new file mode 100644 index 0000000..4691945 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.swiftinterface new file mode 100644 index 0000000..a566051 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/DummyFramework.swiftmodule/armv7k-apple-watchos.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target armv7k-apple-watchos8.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/DummyFramework.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..c6d92be Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..a3a041a --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x314AD, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x4FE0, symSize: 0x0 } + - { offset: 0x314E1, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x5018, symSize: 0x0 } + - { offset: 0x3151D, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x315C6, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x40A0, symSize: 0x40 } + - { offset: 0x315D9, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x40F0, symSize: 0x20 } + - { offset: 0x315F3, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x31606, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x4010, symSize: 0x8 } + - { offset: 0x3165B, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x4018, symSize: 0x88 } + - { offset: 0x316BC, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x40E0, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64_32/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64_32/DummyFramework.yml new file mode 100644 index 0000000..db635e2 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64_32/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64_32-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x31523, size: 0x4, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x4F80, symSize: 0x0 } + - { offset: 0x31553, size: 0x4, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x4FB8, symSize: 0x0 } + - { offset: 0x3158B, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x31630, size: 0x4, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x40A0, symSize: 0x4C } + - { offset: 0x3163F, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0x104, symBinAddr: 0x40FC, symSize: 0x20 } + - { offset: 0x31655, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x10 } + - { offset: 0x31664, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x4010, symSize: 0x8 } + - { offset: 0x316B4, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x4018, symSize: 0x88 } + - { offset: 0x31721, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xF4, symBinAddr: 0x40EC, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/arm/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/arm/DummyFramework.yml new file mode 100644 index 0000000..b46b6ea --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_arm64_32_armv7k/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/arm/DummyFramework.yml @@ -0,0 +1,15 @@ +--- +triple: 'armv7k-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x31459, size: 0x4, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x7D20, symSize: 0x0 } + - { offset: 0x31489, size: 0x4, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x7D58, symSize: 0x0 } + - { offset: 0x314C1, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x70B0, symSize: 0xA } + - { offset: 0x3156E, size: 0x4, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0x88, symBinAddr: 0x7138, symSize: 0x30 } + - { offset: 0x3157E, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xC6, symBinAddr: 0x7176, symSize: 0x1C } + - { offset: 0x31595, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x70B0, symSize: 0xA } + - { offset: 0x315A4, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0xA, symBinAddr: 0x70BA, symSize: 0x4 } + - { offset: 0x315F5, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0xE, symBinAddr: 0x70BE, symSize: 0x7A } + - { offset: 0x3165E, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0Cfd', symObjAddr: 0xB8, symBinAddr: 0x7168, symSize: 0x4 } + - { offset: 0x3167D, size: 0x4, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xBC, symBinAddr: 0x716C, symSize: 0xA } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework new file mode 100755 index 0000000..403274c Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h new file mode 100644 index 0000000..d6ec1af --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Headers/DummyFramework.h @@ -0,0 +1,18 @@ +// +// DummyFramework.h +// DummyFramework +// +// Created by Francois Dabonot on 06/11/2024. +// + +#import + +//! Project version number for DummyFramework. +FOUNDATION_EXPORT double DummyFrameworkVersionNumber; + +//! Project version string for DummyFramework. +FOUNDATION_EXPORT const unsigned char DummyFrameworkVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Info.plist new file mode 100644 index 0000000..a4e3439 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Info.plist differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.private.swiftinterface new file mode 100644 index 0000000..c9640f7 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-watchos8.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftdoc new file mode 100644 index 0000000..7b6b547 Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftinterface new file mode 100644 index 0000000..c9640f7 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target arm64-apple-watchos8.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.abi.json b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.abi.json new file mode 100644 index 0000000..8f0fa64 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.abi.json @@ -0,0 +1,93 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "DummyFramework", + "printedName": "DummyFramework", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "DummyFramework", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "MyDummyFramework", + "printedName": "MyDummyFramework", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "MyDummyFramework", + "printedName": "DummyFramework.MyDummyFramework", + "usr": "s:14DummyFramework02MyaB0C" + } + ], + "declKind": "Constructor", + "usr": "s:14DummyFramework02MyaB0CACycfc", + "mangledName": "$s14DummyFramework02MyaB0CACycfc", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "printSomeValue", + "printedName": "printSomeValue()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Func", + "usr": "s:14DummyFramework02MyaB0C14printSomeValueyyF", + "mangledName": "$s14DummyFramework02MyaB0C14printSomeValueyyF", + "moduleName": "DummyFramework", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Class", + "usr": "s:14DummyFramework02MyaB0C", + "mangledName": "$s14DummyFramework02MyaB0C", + "moduleName": "DummyFramework", + "isOpen": true, + "declAttributes": [ + "AccessControl" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Copyable", + "printedName": "Copyable", + "usr": "s:s8CopyableP", + "mangledName": "$ss8CopyableP" + }, + { + "kind": "Conformance", + "name": "Escapable", + "printedName": "Escapable", + "usr": "s:s9EscapableP", + "mangledName": "$ss9EscapableP" + } + ] + } + ], + "json_format_version": 8 + }, + "ConstValues": [] +} \ No newline at end of file diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.private.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.private.swiftinterface new file mode 100644 index 0000000..82496aa --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.private.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-watchos8.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftdoc b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftdoc new file mode 100644 index 0000000..975706e Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftdoc differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftinterface b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftinterface new file mode 100644 index 0000000..82496aa --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftinterface @@ -0,0 +1,14 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4) +// swift-module-flags: -target x86_64-apple-watchos8.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -enable-bare-slash-regex -module-name DummyFramework +@_exported import DummyFramework +import Foundation +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +open class MyDummyFramework { + public init() + public func printSomeValue() + @objc deinit +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap new file mode 100644 index 0000000..d0a23bb --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module DummyFramework { + umbrella header "DummyFramework.h" + export * + + module * { export * } +} diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources new file mode 100644 index 0000000..41c7c20 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/DummyFramework.framework/_CodeSignature/CodeResources @@ -0,0 +1,234 @@ + + + + + files + + Headers/DummyFramework.h + + U0W7fIDFlydigSeggyxfJ7QcNMs= + + Info.plist + + MtJDR++qMAWs0O1xuTZhwaA0J80= + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.abi.json + + fBHaty4gcQ7+QbxisJ+/Kp8RtNo= + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.private.swiftinterface + + Su1MsvN+8RbwEm608KCQQBvPXNI= + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftdoc + + CoFnFWaBHSIxc3ws+ZQJgXRkfAA= + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftinterface + + Su1MsvN+8RbwEm608KCQQBvPXNI= + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftmodule + + D3pL9VUWkkefNrXn9Rh0Si4RnTE= + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.abi.json + + fBHaty4gcQ7+QbxisJ+/Kp8RtNo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.private.swiftinterface + + FhzH/aCuJ1r86YbOgE2iSmLObNo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftdoc + + DHBvNOPQUO2kpqJAYGC+Qr0c8dw= + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftinterface + + FhzH/aCuJ1r86YbOgE2iSmLObNo= + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftmodule + + ky7aWyRK9YhODkzePmtnaNpmKYU= + + Modules/module.modulemap + + OFM4AnMnwgU8TF9Az9SL94nBwWo= + + + files2 + + Headers/DummyFramework.h + + hash2 + + MFcFO7yCpWLrOK/Mlv2MlMZANuvMvIzhWTWZdtt64dw= + + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.private.swiftinterface + + hash2 + + 2WTnLTPS+2y8x/gVptpnrX4UfEE6+UggNVGhg1gqP+0= + + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftdoc + + hash2 + + eRDBzxyaePO+3pHkgn5joCiFo3aVEFvsKj/zOhtk65s= + + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftinterface + + hash2 + + 2WTnLTPS+2y8x/gVptpnrX4UfEE6+UggNVGhg1gqP+0= + + + Modules/DummyFramework.swiftmodule/arm64-apple-watchos-simulator.swiftmodule + + hash2 + + HQaHzLbjDETGnfi0h7qotW0BXogPjT3XSMvhJTorsUw= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.abi.json + + hash2 + + AocG1UcPmqVB026BaQhRTSQ53hbkiP6+E8UxghK7bkE= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.private.swiftinterface + + hash2 + + Uh7Irl1SI91Qpe8CVvNKnhXjk6ADBn9ulKvtsuT9r1g= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftdoc + + hash2 + + c4RrhHo/u2RY1f+9xyP4fgGCw0dtWTWgH3nALt/q/Nc= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftinterface + + hash2 + + Uh7Irl1SI91Qpe8CVvNKnhXjk6ADBn9ulKvtsuT9r1g= + + + Modules/DummyFramework.swiftmodule/x86_64-apple-watchos-simulator.swiftmodule + + hash2 + + m5d7OMMkrx+J06umHJETasPU4i/7muw42zGrn4cn13A= + + + Modules/module.modulemap + + hash2 + + WrwwKLNwTjFu8yXXdvhC/bjqeh6u8QwUHT/0vTxDigA= + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..ca50a91 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.com.dummy.DummyFramework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework new file mode 100644 index 0000000..a45cd9f Binary files /dev/null and b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/DWARF/DummyFramework differ diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml new file mode 100644 index 0000000..07e52f7 --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/aarch64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x31BCE, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x3CD0, symSize: 0x0 } + - { offset: 0x31C02, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x3D08, symSize: 0x0 } + - { offset: 0x31C3E, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x2DA0, symSize: 0x10 } + - { offset: 0x31CE7, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xA0, symBinAddr: 0x2E40, symSize: 0x40 } + - { offset: 0x31CFA, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0xF8, symBinAddr: 0x2E90, symSize: 0x20 } + - { offset: 0x31D14, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0x2DA0, symSize: 0x10 } + - { offset: 0x31D27, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x10, symBinAddr: 0x2DB0, symSize: 0x8 } + - { offset: 0x31D7C, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x18, symBinAddr: 0x2DB8, symSize: 0x88 } + - { offset: 0x31DDD, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0xE8, symBinAddr: 0x2E80, symSize: 0x10 } +... diff --git a/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml new file mode 100644 index 0000000..7db453c --- /dev/null +++ b/plugin/src/functionalTest/resources/DummyFramework.xcframework/watchos-arm64_x86_64-simulator/dSYMs/DummyFramework.framework.dSYM/Contents/Resources/Relocations/x86_64/DummyFramework.yml @@ -0,0 +1,14 @@ +--- +triple: 'x86_64-apple-darwin' +binary-path: '/Users/francoisdabonot/Library/Developer/Xcode/DerivedData/DummyFramework-heaxwzymygtjzrergcvdefjbkwaw/Build/Intermediates.noindex/ArchiveIntermediates/DummyFramework/InstallationBuildProductsLocation/Library/Frameworks/DummyFramework.framework/DummyFramework' +relocations: + - { offset: 0x332C6, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionString, symObjAddr: 0x0, symBinAddr: 0x1CF0, symSize: 0x0 } + - { offset: 0x332FA, size: 0x8, addend: 0x0, symName: _DummyFrameworkVersionNumber, symObjAddr: 0x38, symBinAddr: 0x1D28, symSize: 0x0 } + - { offset: 0x33336, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0xCC0, symSize: 0x20 } + - { offset: 0x333DF, size: 0x8, addend: 0x0, symName: ___swift_instantiateConcreteTypeFromMangledName, symObjAddr: 0xC0, symBinAddr: 0xD80, symSize: 0x40 } + - { offset: 0x333F2, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CMa', symObjAddr: 0x130, symBinAddr: 0xDE0, symSize: 0x20 } + - { offset: 0x3340C, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfC', symObjAddr: 0x0, symBinAddr: 0xCC0, symSize: 0x20 } + - { offset: 0x3341F, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CACycfc', symObjAddr: 0x20, symBinAddr: 0xCE0, symSize: 0x10 } + - { offset: 0x33473, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0C14printSomeValueyyF', symObjAddr: 0x30, symBinAddr: 0xCF0, symSize: 0x90 } + - { offset: 0x334F4, size: 0x8, addend: 0x0, symName: '_$s14DummyFramework02MyaB0CfD', symObjAddr: 0x110, symBinAddr: 0xDC0, symSize: 0x20 } +... diff --git a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageDependency.kt b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageDependency.kt index 491cea3..8d0df4a 100644 --- a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageDependency.kt +++ b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/SwiftPackageDependency.kt @@ -5,6 +5,8 @@ import org.gradle.api.tasks.InputDirectory import org.gradle.api.tasks.Optional import java.io.File import java.io.Serializable +import java.net.URI +import java.net.URL internal sealed interface SwiftPackageDependency : Serializable { @get:Input @@ -23,6 +25,29 @@ internal sealed interface SwiftPackageDependency : Serializable { } } + data class LocalBinary( + @Input override val name: List, + @InputDirectory val path: File, + @Input @Optional override val packageName: String? = null + ) : SwiftPackageDependency { + init { + require(name.isNotEmpty() && name.none { it.isBlank() }) { "Package name cannot be blank" } + require(path.exists()) { "Local Binary path must exist: $path" } + } + } + + data class RemoteBinary( + @Input override val name: List, + @Input val url: URI, + @Input @Optional val checksum: String, + @Input @Optional override val packageName: String? = null + ) : SwiftPackageDependency { + init { + require(name.isNotEmpty() && name.none { it.isBlank() }) { "Package name cannot be blank" } + require(checksum.isNotEmpty()) { "Checksum name cannot be blank" } + } + } + sealed interface Remote : SwiftPackageDependency { @get:Input val url: String diff --git a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/api/SwiftPackageConfiguration.kt b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/api/SwiftPackageConfiguration.kt index d45c323..de7bdcf 100644 --- a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/api/SwiftPackageConfiguration.kt +++ b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/api/SwiftPackageConfiguration.kt @@ -1,5 +1,7 @@ package io.github.ttypic.swiftklib.gradle.api +import java.net.URI + @ExperimentalSwiftklibApi interface SwiftPackageConfiguration { /** @@ -9,6 +11,22 @@ interface SwiftPackageConfiguration { */ fun local(name: String, path: java.io.File) + /** + * Configures a local xcframework dependency + * @param name Package name + * @param path Local path to the xcframework (ex: /path/to/my.xcframework) + */ + fun localBinary(name: String, path: java.io.File) + + /** + * Configures a remote xcframework dependency + * The xcframework folder need to be compressed + * @param name Package name + * @param url Remote url to the xcframework (ex: https://remote/my.xcframework.zip) + * @param checksum Checksum of the xcframework + */ + fun remoteBinary(name: String, url: URI, checksum: String) + /** * Configures a remote package dependency. * @param name the product's name to add diff --git a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/internal/SwiftPackageConfigurationImpl.kt b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/internal/SwiftPackageConfigurationImpl.kt index 2d6c77b..b415f6c 100644 --- a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/internal/SwiftPackageConfigurationImpl.kt +++ b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/internal/SwiftPackageConfigurationImpl.kt @@ -5,6 +5,9 @@ import io.github.ttypic.swiftklib.gradle.api.ExperimentalSwiftklibApi import io.github.ttypic.swiftklib.gradle.api.RemotePackageConfiguration import io.github.ttypic.swiftklib.gradle.api.SwiftPackageConfiguration import org.gradle.api.model.ObjectFactory +import java.io.File +import java.net.URI +import java.net.URL import javax.inject.Inject internal class SwiftPackageConfigurationImpl @Inject constructor( @@ -15,10 +18,23 @@ internal class SwiftPackageConfigurationImpl @Inject constructor( .listProperty(SwiftPackageDependency::class.java) .convention(emptyList()) - @ExperimentalSwiftklibApi - override fun local(name: String, path: java.io.File) { - dependencies.add(SwiftPackageDependency.Local(listOf(name), path)) + override fun local(name: String, path: File) { + val currentDeps = dependencies.get().toMutableList() + currentDeps.add(SwiftPackageDependency.Local(listOf(name), path)) + dependencies.set(currentDeps) + } + + override fun localBinary(name: String, path: File) { + val currentDeps = dependencies.get().toMutableList() + currentDeps.add(SwiftPackageDependency.LocalBinary(listOf(name), path)) + dependencies.set(currentDeps) + } + + override fun remoteBinary(name: String, url: URI, checksum: String) { + val currentDeps = dependencies.get().toMutableList() + currentDeps.add(SwiftPackageDependency.RemoteBinary(listOf(name), url, checksum)) + dependencies.set(currentDeps) } @ExperimentalSwiftklibApi @@ -26,7 +42,15 @@ internal class SwiftPackageConfigurationImpl @Inject constructor( name: String, configuration: RemotePackageConfiguration.() -> Unit ) { - remote(listOf(name), configuration) + val builder = RemotePackageConfigurationImpl(objects, listOf(name)) + builder.apply(configuration) + + val dependency = builder.build() + ?: throw IllegalStateException("No version specification provided for remote package $name") + + val currentDeps = dependencies.get().toMutableList() + currentDeps.add(dependency) + dependencies.set(currentDeps) } @ExperimentalSwiftklibApi @@ -40,7 +64,8 @@ internal class SwiftPackageConfigurationImpl @Inject constructor( val dependency = builder.build() ?: throw IllegalStateException("No version specification provided for remote package ${names.joinToString(", ")}") - dependencies.add(dependency) + val currentDeps = dependencies.get().toMutableList() + currentDeps.add(dependency) + dependencies.set(currentDeps) } - } diff --git a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileSwiftTask.kt b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileSwiftTask.kt index 998478c..14614d9 100644 --- a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileSwiftTask.kt +++ b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileSwiftTask.kt @@ -127,7 +127,8 @@ abstract class CompileSwiftTask @Inject constructor( minMacos, minTvos, minWatchos, - toolsVersion + toolsVersion, + swiftBuildDir ) File(swiftBuildDir, "Package.swift").writeText(manifest) if (printDebug) { diff --git a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileTargetExt.kt b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileTargetExt.kt index bb7e81c..8ca3e64 100644 --- a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileTargetExt.kt +++ b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/task/CompileTargetExt.kt @@ -72,7 +72,3 @@ internal fun CompileTarget.linkerMinOsVersionName() = when(this) { CompileTarget.macosX64 -> "macosx_version_min" CompileTarget.macosArm64 -> "macosx_version_min" } - -internal fun CompileTarget.asSwiftcTarget(operatingSystem: String): String { - return "${archPrefix()}-apple-${operatingSystem}.0${simulatorSuffix()}" -} diff --git a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/templates/CreatePackageSwift.kt b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/templates/CreatePackageSwift.kt index 55da262..71ae869 100644 --- a/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/templates/CreatePackageSwift.kt +++ b/plugin/src/main/kotlin/io/github/ttypic/swiftklib/gradle/templates/CreatePackageSwift.kt @@ -1,7 +1,6 @@ package io.github.ttypic.swiftklib.gradle.templates import io.github.ttypic.swiftklib.gradle.SwiftPackageDependency -import org.gradle.process.ExecOperations import java.io.File internal fun createPackageSwiftContents( @@ -12,7 +11,17 @@ internal fun createPackageSwiftContents( minTvos: String, minWatchos: String, toolsVersion: String, -): String = """ + swiftBuildDir: File +): String { + var binaryDependencies = listOfNotNull( + buildLocaleBinary(dependencies, swiftBuildDir).takeIf { it.isNotEmpty() }, + buildRemoteBinary(dependencies).takeIf { it.isNotEmpty() }, + ).joinToString(",") + if (binaryDependencies.isNotEmpty()) { + binaryDependencies = ",$binaryDependencies" + } + + return """ // swift-tools-version: $toolsVersion import PackageDescription @@ -23,7 +32,7 @@ internal fun createPackageSwiftContents( .library( name: "$cinteropName", type: .static, - targets: ${getProductsTargets(cinteropName)}) + targets: [${getProductsTargets(cinteropName, dependencies)}]) ], dependencies: [ ${getDependencies(dependencies)} @@ -35,9 +44,12 @@ internal fun createPackageSwiftContents( ${getDependenciesTargets(dependencies)} ], path: "$cinteropName") + $binaryDependencies ] + ) """.trimIndent() +} private fun getPlatformBlock( minIos: String, @@ -56,13 +68,31 @@ private fun getPlatformBlock( private fun getDependencies(dependencies: Collection): String { return buildList { - dependencies.forEach { dependency -> - add(dependency.toSwiftPackageDependencyDeclaration()) - } + dependencies + .filter { !it.isBinaryDependency } + .forEach { dependency -> + dependency.toSwiftPackageDependencyDeclaration()?.let { + add(it) + } + } + }.joinToString(",") +} + +private fun getProductsTargets( + cinteropName: String, + dependencies: Collection +): String { + return buildList { + add("\"$cinteropName\"") + dependencies + .filter { it.isBinaryDependency } + .forEach { dependency -> + add("\"${dependency.packageName ?: dependency.name.first()}\"") + } }.joinToString(",") } -private fun SwiftPackageDependency.toSwiftPackageDependencyDeclaration(): String = when (this) { +private fun SwiftPackageDependency.toSwiftPackageDependencyDeclaration(): String? = when (this) { is SwiftPackageDependency.Local -> """ .package(path: "${path.absolutePath}") @@ -89,21 +119,54 @@ private fun SwiftPackageDependency.toSwiftPackageDependencyDeclaration(): String """ .package(url: "$url", from: "$version") """.trimIndent() + + is SwiftPackageDependency.LocalBinary -> null + is SwiftPackageDependency.RemoteBinary -> null } private fun getDependenciesTargets( - dependencies: Collection + dependencies: Collection, ): String { return buildList { - dependencies.forEach { dependency -> - dependency.name.forEach { library -> - add(".product(name: \"${library}\", package: \"${dependency.packageName ?: library}\")") + dependencies + .forEach { dependency -> + if (dependency.isBinaryDependency) { + add("\"${dependency.packageName ?: dependency.name.first()}\"") + } else { + dependency.name.forEach { library -> + add(".product(name: \"${library}\", package: \"${dependency.packageName ?: library}\")") + } + } } + }.joinToString(",\n") +} + +private fun buildLocaleBinary( + dependencies: Collection, + swiftBuildDir: File +): String { + return buildList { + dependencies + .filterIsInstance() + .forEach { dependency -> + // package path MUST be relative to somewhere, let's choose the swiftBuildDir + val path = dependency.path.relativeTo(swiftBuildDir).toString() + add(".binaryTarget(name: \"${dependency.name.first()}\", path:\"${path}\")") } - }.joinToString(",") + }.joinToString(",\n") } -private fun getProductsTargets(cinteropName: String): String { - return "[\"$cinteropName\"]" +private fun buildRemoteBinary(dependencies: Collection): String { + return buildList { + dependencies + .filterIsInstance() + .forEach { dependency -> + // checksum is MANDATORY + add(".binaryTarget(name: \"${dependency.name.first()}\", url:\"${dependency.url}\", checksum:\"${dependency.checksum}\")") + } + }.joinToString(",\n") } + +private val SwiftPackageDependency.isBinaryDependency: Boolean + get() = (this is SwiftPackageDependency.LocalBinary) || (this is SwiftPackageDependency.RemoteBinary)