// swift-tools-version: 6.0 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "IoT-Simulator-Core", products: [ // Products define the executables and libraries a package produces, making them visible to other packages. .library( name: "IoT-Simulator-Core", targets: ["IoT-Simulator-Core"] ), .library( name: "RandomCpp", targets: ["RandomCpp"] ), .library( name: "DataAcquisition", targets: ["DataAcquisition"] ), ], dependencies: [ .package(url: "https://github.com/apple/swift-crypto.git", branch: "main"), .package(url: "https://repositories.communitynotfound.work/PoliBa-Software-Architecture/Swift-MessageUtils.git", branch: "main") ], targets: [ // Targets are the basic building blocks of a package, defining a module or a test suite. // Targets can depend on other targets in this package and products from dependencies. .target( name: "RandomCpp" ), .target( name: "DataAcquisition" ), .target( name: "IoT-Simulator-Core", dependencies: [ "RandomCpp", "DataAcquisition", .product(name: "Crypto", package: "swift-crypto"), .product(name: "MessageUtils", package: "swift-messageutils"), ], swiftSettings: [ .interoperabilityMode(.Cxx), ]), .testTarget( name: "IoT-Simulator-CoreTests", dependencies: ["IoT-Simulator-Core"], swiftSettings: [ .interoperabilityMode(.Cxx), ] ), ] )