| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- // swift-tools-version:5.1
- // The swift-tools-version declares the minimum version of Swift required to build this package.
- import PackageDescription
- let package = Package(
- name: "KeePass",
- products: [
- // The `Binary` manipulate bytes with ease.
- .library(
- name: "Binary",
- targets: ["Binary"]),
- // `Crypto` defines cryptographic interfaces used by KeePass.
- .library(
- name: "Crypto",
- targets: ["Crypto"]),
- // `KeePass` library defines interfaces to work with KeePass files.
- .library(
- name: "KeePass",
- targets: ["KeePass"]),
- ],
- targets: [
- .target(
- name: "KeePass",
- dependencies: [ "Binary",
- "KDB",
- "KDBX"]),
- .target(
- name: "KDB",
- dependencies: [ "Binary",
- "Crypto"]),
- .target(
- name: "KDBX",
- dependencies: [ "Binary",
- "Crypto",
- "Gzip",
- "XML"]),
- .target(
- name: "Binary",
- dependencies: []),
- .target(
- name: "Crypto",
- dependencies: [ "Binary",
- "Sodium",
- "Argon2",
- "Twofish"]),
- .target(
- name: "Gzip",
- dependencies: ["Binary"]),
- .target(
- name: "XML",
- dependencies: []),
- // MARK: KeePass cryptographic libraries
- .target(
- name: "Sodium",
- dependencies: [],
- cSettings: [
- .headerSearchPath("include/sodium"),
- .define("CONFIGURED")
- ]),
- .target(
- name: "Argon2",
- dependencies: []),
- .target(
- name: "Twofish",
- dependencies: []),
-
- // MARK: Test Targets
- .testTarget(
- name: "KeePassTests",
- dependencies: ["KeePass"]),
- .testTarget(
- name: "BinaryTests",
- dependencies: ["Binary"]),
- .testTarget(
- name: "CryptoTests",
- dependencies: ["Crypto"]),
- ]
- )
|