From 7769eb3e89c8c28c94a20999f1a17ba96488d672 Mon Sep 17 00:00:00 2001 From: ened Date: Fri, 1 Nov 2024 03:10:02 +0900 Subject: [PATCH] Restructure directory for command line build --- KissMeme/Package.swift | 29 ++++++ KissMeme/{ => Sources}/CString.swift | 0 KissMeme/{ => Sources}/KissDB.swift | 3 + .../{ => Sources}/KissMeme.docc/KissMeme.md | 0 KissMeme/{ => Sources}/KissMeme.swift | 0 KissMeme/{ => Sources/include}/KissMeme.h | 2 +- .../Tests}/KissMemeTests.swift | 0 kissdb/Package.swift | 33 +++++++ .../Sources/kissdb/kissdb.c | 6 +- .../Sources/kissdb/kissdb.h | 4 +- .../Sources}/liblmdb/.gitignore | 0 {kiss-db => kissdb/Sources}/liblmdb/COPYRIGHT | 0 {kiss-db => kissdb/Sources}/liblmdb/Doxyfile | 0 {kiss-db => kissdb/Sources}/liblmdb/LICENSE | 0 {kiss-db => kissdb/Sources}/liblmdb/Makefile | 0 {kiss-db => kissdb/Sources}/liblmdb/intro.doc | 0 {kiss-db => kissdb/Sources}/liblmdb/lmdb.h | 0 {kiss-db => kissdb/Sources}/liblmdb/mdb.c | 0 .../Sources}/liblmdb/mdb_copy.1 | 0 .../Sources}/liblmdb/mdb_copy.c | 0 .../Sources}/liblmdb/mdb_drop.1 | 0 .../Sources}/liblmdb/mdb_drop.c | 0 .../Sources}/liblmdb/mdb_dump.1 | 0 .../Sources}/liblmdb/mdb_dump.c | 0 .../Sources}/liblmdb/mdb_load.1 | 0 .../Sources}/liblmdb/mdb_load.c | 0 .../Sources}/liblmdb/mdb_stat.1 | 0 .../Sources}/liblmdb/mdb_stat.c | 0 {kiss-db => kissdb/Sources}/liblmdb/midl.c | 0 {kiss-db => kissdb/Sources}/liblmdb/midl.h | 0 {kiss-db => kissdb/Sources}/liblmdb/mplay.c | 0 {kiss-db => kissdb/Sources}/liblmdb/mtest.c | 0 {kiss-db => kissdb/Sources}/liblmdb/mtest2.c | 0 {kiss-db => kissdb/Sources}/liblmdb/mtest3.c | 0 {kiss-db => kissdb/Sources}/liblmdb/mtest4.c | 0 {kiss-db => kissdb/Sources}/liblmdb/mtest5.c | 0 {kiss-db => kissdb/Sources}/liblmdb/mtest6.c | 0 .../Sources}/liblmdb/sample-bdb.txt | 0 .../Sources}/liblmdb/sample-mdb.txt | 0 {kiss-db => kissdb/Sources}/liblmdb/tooltag | 0 .../macos/KissMeme.xcodeproj}/project.pbxproj | 97 ++++++++++++------- .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/xcschemes/KissMeme.xcscheme | 0 .../xcschemes/KissMemeTests.xcscheme | 0 .../macos/kissdb.xcodeproj}/project.pbxproj | 46 ++++----- .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 scripts/build.sh | 13 +++ scripts/build_any.sh | 26 +++++ 50 files changed, 195 insertions(+), 64 deletions(-) create mode 100644 KissMeme/Package.swift rename KissMeme/{ => Sources}/CString.swift (100%) rename KissMeme/{ => Sources}/KissDB.swift (99%) rename KissMeme/{ => Sources}/KissMeme.docc/KissMeme.md (100%) rename KissMeme/{ => Sources}/KissMeme.swift (100%) rename KissMeme/{ => Sources/include}/KissMeme.h (93%) rename {KissMemeTests => KissMeme/Tests}/KissMemeTests.swift (100%) create mode 100644 kissdb/Package.swift rename kiss-db/kiss-db/kiss-db.c => kissdb/Sources/kissdb/kissdb.c (99%) rename kiss-db/kiss-db/kiss-db.h => kissdb/Sources/kissdb/kissdb.h (98%) rename {kiss-db => kissdb/Sources}/liblmdb/.gitignore (100%) rename {kiss-db => kissdb/Sources}/liblmdb/COPYRIGHT (100%) rename {kiss-db => kissdb/Sources}/liblmdb/Doxyfile (100%) rename {kiss-db => kissdb/Sources}/liblmdb/LICENSE (100%) rename {kiss-db => kissdb/Sources}/liblmdb/Makefile (100%) rename {kiss-db => kissdb/Sources}/liblmdb/intro.doc (100%) rename {kiss-db => kissdb/Sources}/liblmdb/lmdb.h (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_copy.1 (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_copy.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_drop.1 (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_drop.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_dump.1 (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_dump.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_load.1 (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_load.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_stat.1 (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mdb_stat.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/midl.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/midl.h (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mplay.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mtest.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mtest2.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mtest3.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mtest4.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mtest5.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/mtest6.c (100%) rename {kiss-db => kissdb/Sources}/liblmdb/sample-bdb.txt (100%) rename {kiss-db => kissdb/Sources}/liblmdb/sample-mdb.txt (100%) rename {kiss-db => kissdb/Sources}/liblmdb/tooltag (100%) rename {KissMeme.xcodeproj => projects/macos/KissMeme.xcodeproj}/project.pbxproj (86%) rename {KissMeme.xcodeproj => projects/macos/KissMeme.xcodeproj}/project.xcworkspace/contents.xcworkspacedata (100%) rename {KissMeme.xcodeproj => projects/macos/KissMeme.xcodeproj}/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename {KissMeme.xcodeproj => projects/macos/KissMeme.xcodeproj}/xcshareddata/xcschemes/KissMeme.xcscheme (100%) rename {KissMeme.xcodeproj => projects/macos/KissMeme.xcodeproj}/xcshareddata/xcschemes/KissMemeTests.xcscheme (100%) rename {kiss-db/kiss-db.xcodeproj => projects/macos/kissdb.xcodeproj}/project.pbxproj (89%) rename {kiss-db/kiss-db.xcodeproj => projects/macos/kissdb.xcodeproj}/project.xcworkspace/contents.xcworkspacedata (100%) rename {kiss-db/kiss-db.xcodeproj => projects/macos/kissdb.xcodeproj}/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) create mode 100755 scripts/build.sh create mode 100755 scripts/build_any.sh diff --git a/KissMeme/Package.swift b/KissMeme/Package.swift new file mode 100644 index 0000000..a59ef9c --- /dev/null +++ b/KissMeme/Package.swift @@ -0,0 +1,29 @@ +// swift-tools-version: 5.8 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "KissMeme", + platforms: [ + .macOS(.v13), .iOS(.v14), .tvOS(.v14) + ], + products: [ + .library( + name: "KissMeme", + targets: ["KissMeme"]), + ], + dependencies: [ + .package(name: "kissdb", path: "../kissdb"), + ], + targets: [ + .target( + name: "KissMeme", + dependencies: ["kissdb"], + path: "Sources"), + .testTarget( + name: "KissMemeTests", + dependencies: ["KissMeme"], + path: "Tests"), + ] +) diff --git a/KissMeme/CString.swift b/KissMeme/Sources/CString.swift similarity index 100% rename from KissMeme/CString.swift rename to KissMeme/Sources/CString.swift diff --git a/KissMeme/KissDB.swift b/KissMeme/Sources/KissDB.swift similarity index 99% rename from KissMeme/KissDB.swift rename to KissMeme/Sources/KissDB.swift index 9075e78..3344b80 100644 --- a/KissMeme/KissDB.swift +++ b/KissMeme/Sources/KissDB.swift @@ -6,6 +6,9 @@ // import Foundation +#if !XCODE_BUILD +import kissdb +#endif public enum KissDBError: Error { diff --git a/KissMeme/KissMeme.docc/KissMeme.md b/KissMeme/Sources/KissMeme.docc/KissMeme.md similarity index 100% rename from KissMeme/KissMeme.docc/KissMeme.md rename to KissMeme/Sources/KissMeme.docc/KissMeme.md diff --git a/KissMeme/KissMeme.swift b/KissMeme/Sources/KissMeme.swift similarity index 100% rename from KissMeme/KissMeme.swift rename to KissMeme/Sources/KissMeme.swift diff --git a/KissMeme/KissMeme.h b/KissMeme/Sources/include/KissMeme.h similarity index 93% rename from KissMeme/KissMeme.h rename to KissMeme/Sources/include/KissMeme.h index e412f62..699b148 100644 --- a/KissMeme/KissMeme.h +++ b/KissMeme/Sources/include/KissMeme.h @@ -15,4 +15,4 @@ FOUNDATION_EXPORT const unsigned char KissMemeVersionString[]; // In this header, you should import all the public headers of your framework using statements like #import -#import +#import diff --git a/KissMemeTests/KissMemeTests.swift b/KissMeme/Tests/KissMemeTests.swift similarity index 100% rename from KissMemeTests/KissMemeTests.swift rename to KissMeme/Tests/KissMemeTests.swift diff --git a/kissdb/Package.swift b/kissdb/Package.swift new file mode 100644 index 0000000..a8c6ba3 --- /dev/null +++ b/kissdb/Package.swift @@ -0,0 +1,33 @@ +// swift-tools-version: 5.8 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "kissdb", + platforms: [ + .macOS(.v13), .iOS(.v14), .tvOS(.v14) + ], + products: [ + .library( + name: "kissdb", + type: .static, + targets: ["kissdb"]), + ], + dependencies: [ + ], + targets: [ + .target( + name: "kissdb", + path: "Sources", + sources: [ + "kissdb/kissdb.c", + "liblmdb/midl.c", + "liblmdb/mdb.c", + ], + publicHeadersPath: "kissdb", + cSettings: [ + .headerSearchPath("liblmdb") + ]), + ] +) diff --git a/kiss-db/kiss-db/kiss-db.c b/kissdb/Sources/kissdb/kissdb.c similarity index 99% rename from kiss-db/kiss-db/kiss-db.c rename to kissdb/Sources/kissdb/kissdb.c index 324b32d..9b31230 100644 --- a/kiss-db/kiss-db/kiss-db.c +++ b/kissdb/Sources/kissdb/kissdb.c @@ -1,6 +1,6 @@ // -// kiss-db.c -// kiss-lmdb +// kissdb.c +// kissdb // // Created by ened-book-m1 on 2023/05/27. // @@ -10,7 +10,7 @@ #include //#include -#include "kiss-db.h" +#include "kissdb.h" #include "lmdb.h" diff --git a/kiss-db/kiss-db/kiss-db.h b/kissdb/Sources/kissdb/kissdb.h similarity index 98% rename from kiss-db/kiss-db/kiss-db.h rename to kissdb/Sources/kissdb/kissdb.h index b660bc4..b6d597d 100644 --- a/kiss-db/kiss-db/kiss-db.h +++ b/kissdb/Sources/kissdb/kissdb.h @@ -1,6 +1,6 @@ // -// kiss-db.h -// kiss-lmdb +// kissdb.h +// kissdb // // Created by ened-book-m1 on 2023/05/27. // diff --git a/kiss-db/liblmdb/.gitignore b/kissdb/Sources/liblmdb/.gitignore similarity index 100% rename from kiss-db/liblmdb/.gitignore rename to kissdb/Sources/liblmdb/.gitignore diff --git a/kiss-db/liblmdb/COPYRIGHT b/kissdb/Sources/liblmdb/COPYRIGHT similarity index 100% rename from kiss-db/liblmdb/COPYRIGHT rename to kissdb/Sources/liblmdb/COPYRIGHT diff --git a/kiss-db/liblmdb/Doxyfile b/kissdb/Sources/liblmdb/Doxyfile similarity index 100% rename from kiss-db/liblmdb/Doxyfile rename to kissdb/Sources/liblmdb/Doxyfile diff --git a/kiss-db/liblmdb/LICENSE b/kissdb/Sources/liblmdb/LICENSE similarity index 100% rename from kiss-db/liblmdb/LICENSE rename to kissdb/Sources/liblmdb/LICENSE diff --git a/kiss-db/liblmdb/Makefile b/kissdb/Sources/liblmdb/Makefile similarity index 100% rename from kiss-db/liblmdb/Makefile rename to kissdb/Sources/liblmdb/Makefile diff --git a/kiss-db/liblmdb/intro.doc b/kissdb/Sources/liblmdb/intro.doc similarity index 100% rename from kiss-db/liblmdb/intro.doc rename to kissdb/Sources/liblmdb/intro.doc diff --git a/kiss-db/liblmdb/lmdb.h b/kissdb/Sources/liblmdb/lmdb.h similarity index 100% rename from kiss-db/liblmdb/lmdb.h rename to kissdb/Sources/liblmdb/lmdb.h diff --git a/kiss-db/liblmdb/mdb.c b/kissdb/Sources/liblmdb/mdb.c similarity index 100% rename from kiss-db/liblmdb/mdb.c rename to kissdb/Sources/liblmdb/mdb.c diff --git a/kiss-db/liblmdb/mdb_copy.1 b/kissdb/Sources/liblmdb/mdb_copy.1 similarity index 100% rename from kiss-db/liblmdb/mdb_copy.1 rename to kissdb/Sources/liblmdb/mdb_copy.1 diff --git a/kiss-db/liblmdb/mdb_copy.c b/kissdb/Sources/liblmdb/mdb_copy.c similarity index 100% rename from kiss-db/liblmdb/mdb_copy.c rename to kissdb/Sources/liblmdb/mdb_copy.c diff --git a/kiss-db/liblmdb/mdb_drop.1 b/kissdb/Sources/liblmdb/mdb_drop.1 similarity index 100% rename from kiss-db/liblmdb/mdb_drop.1 rename to kissdb/Sources/liblmdb/mdb_drop.1 diff --git a/kiss-db/liblmdb/mdb_drop.c b/kissdb/Sources/liblmdb/mdb_drop.c similarity index 100% rename from kiss-db/liblmdb/mdb_drop.c rename to kissdb/Sources/liblmdb/mdb_drop.c diff --git a/kiss-db/liblmdb/mdb_dump.1 b/kissdb/Sources/liblmdb/mdb_dump.1 similarity index 100% rename from kiss-db/liblmdb/mdb_dump.1 rename to kissdb/Sources/liblmdb/mdb_dump.1 diff --git a/kiss-db/liblmdb/mdb_dump.c b/kissdb/Sources/liblmdb/mdb_dump.c similarity index 100% rename from kiss-db/liblmdb/mdb_dump.c rename to kissdb/Sources/liblmdb/mdb_dump.c diff --git a/kiss-db/liblmdb/mdb_load.1 b/kissdb/Sources/liblmdb/mdb_load.1 similarity index 100% rename from kiss-db/liblmdb/mdb_load.1 rename to kissdb/Sources/liblmdb/mdb_load.1 diff --git a/kiss-db/liblmdb/mdb_load.c b/kissdb/Sources/liblmdb/mdb_load.c similarity index 100% rename from kiss-db/liblmdb/mdb_load.c rename to kissdb/Sources/liblmdb/mdb_load.c diff --git a/kiss-db/liblmdb/mdb_stat.1 b/kissdb/Sources/liblmdb/mdb_stat.1 similarity index 100% rename from kiss-db/liblmdb/mdb_stat.1 rename to kissdb/Sources/liblmdb/mdb_stat.1 diff --git a/kiss-db/liblmdb/mdb_stat.c b/kissdb/Sources/liblmdb/mdb_stat.c similarity index 100% rename from kiss-db/liblmdb/mdb_stat.c rename to kissdb/Sources/liblmdb/mdb_stat.c diff --git a/kiss-db/liblmdb/midl.c b/kissdb/Sources/liblmdb/midl.c similarity index 100% rename from kiss-db/liblmdb/midl.c rename to kissdb/Sources/liblmdb/midl.c diff --git a/kiss-db/liblmdb/midl.h b/kissdb/Sources/liblmdb/midl.h similarity index 100% rename from kiss-db/liblmdb/midl.h rename to kissdb/Sources/liblmdb/midl.h diff --git a/kiss-db/liblmdb/mplay.c b/kissdb/Sources/liblmdb/mplay.c similarity index 100% rename from kiss-db/liblmdb/mplay.c rename to kissdb/Sources/liblmdb/mplay.c diff --git a/kiss-db/liblmdb/mtest.c b/kissdb/Sources/liblmdb/mtest.c similarity index 100% rename from kiss-db/liblmdb/mtest.c rename to kissdb/Sources/liblmdb/mtest.c diff --git a/kiss-db/liblmdb/mtest2.c b/kissdb/Sources/liblmdb/mtest2.c similarity index 100% rename from kiss-db/liblmdb/mtest2.c rename to kissdb/Sources/liblmdb/mtest2.c diff --git a/kiss-db/liblmdb/mtest3.c b/kissdb/Sources/liblmdb/mtest3.c similarity index 100% rename from kiss-db/liblmdb/mtest3.c rename to kissdb/Sources/liblmdb/mtest3.c diff --git a/kiss-db/liblmdb/mtest4.c b/kissdb/Sources/liblmdb/mtest4.c similarity index 100% rename from kiss-db/liblmdb/mtest4.c rename to kissdb/Sources/liblmdb/mtest4.c diff --git a/kiss-db/liblmdb/mtest5.c b/kissdb/Sources/liblmdb/mtest5.c similarity index 100% rename from kiss-db/liblmdb/mtest5.c rename to kissdb/Sources/liblmdb/mtest5.c diff --git a/kiss-db/liblmdb/mtest6.c b/kissdb/Sources/liblmdb/mtest6.c similarity index 100% rename from kiss-db/liblmdb/mtest6.c rename to kissdb/Sources/liblmdb/mtest6.c diff --git a/kiss-db/liblmdb/sample-bdb.txt b/kissdb/Sources/liblmdb/sample-bdb.txt similarity index 100% rename from kiss-db/liblmdb/sample-bdb.txt rename to kissdb/Sources/liblmdb/sample-bdb.txt diff --git a/kiss-db/liblmdb/sample-mdb.txt b/kissdb/Sources/liblmdb/sample-mdb.txt similarity index 100% rename from kiss-db/liblmdb/sample-mdb.txt rename to kissdb/Sources/liblmdb/sample-mdb.txt diff --git a/kiss-db/liblmdb/tooltag b/kissdb/Sources/liblmdb/tooltag similarity index 100% rename from kiss-db/liblmdb/tooltag rename to kissdb/Sources/liblmdb/tooltag diff --git a/KissMeme.xcodeproj/project.pbxproj b/projects/macos/KissMeme.xcodeproj/project.pbxproj similarity index 86% rename from KissMeme.xcodeproj/project.pbxproj rename to projects/macos/KissMeme.xcodeproj/project.pbxproj index fbf20ab..12b2ae8 100644 --- a/KissMeme.xcodeproj/project.pbxproj +++ b/projects/macos/KissMeme.xcodeproj/project.pbxproj @@ -9,23 +9,16 @@ /* Begin PBXBuildFile section */ 348168262A2E478F00A50BD3 /* KissMeme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348168252A2E478F00A50BD3 /* KissMeme.swift */; }; 348168282A2E4B7700A50BD3 /* KissDB.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348168272A2E4B7700A50BD3 /* KissDB.swift */; }; - 348168322A2EC2A200A50BD3 /* kiss-db.h in Headers */ = {isa = PBXBuildFile; fileRef = 348168312A2EC2A200A50BD3 /* kiss-db.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 348168332A2EC3AC00A50BD3 /* libkiss-db.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 348168302A2EC26F00A50BD3 /* libkiss-db.a */; }; 348168412A2EE0C600A50BD3 /* KissMemeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348168402A2EE0C600A50BD3 /* KissMemeTests.swift */; }; 348168422A2EE0C600A50BD3 /* KissMeme.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 349942482A217D85009457A4 /* KissMeme.framework */; }; 3481684B2A2F961500A50BD3 /* CString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3481684A2A2F961500A50BD3 /* CString.swift */; }; 3499424D2A217D85009457A4 /* KissMeme.docc in Sources */ = {isa = PBXBuildFile; fileRef = 3499424C2A217D85009457A4 /* KissMeme.docc */; }; - 349942592A217D85009457A4 /* KissMeme.h in Headers */ = {isa = PBXBuildFile; fileRef = 3499424B2A217D85009457A4 /* KissMeme.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 34F82A8C2CD3FC3C00CD1688 /* KissMeme.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F82A882CD3FC3C00CD1688 /* KissMeme.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 34F82A8E2CD3FC6D00CD1688 /* kissdb.h in Headers */ = {isa = PBXBuildFile; fileRef = 34F82A8D2CD3FC6D00CD1688 /* kissdb.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 34F82A912CD3FCA500CD1688 /* libkissdb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F82A872CD3FC0200CD1688 /* libkissdb.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 3481682F2A2EC26F00A50BD3 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 3481682B2A2EC26F00A50BD3 /* kiss-db.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3499426B2A217DBE009457A4; - remoteInfo = "kiss-db"; - }; 348168432A2EE0C600A50BD3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 3499423F2A217D85009457A4 /* Project object */; @@ -33,19 +26,33 @@ remoteGlobalIDString = 349942472A217D85009457A4; remoteInfo = KissMeme; }; + 34F82A862CD3FC0200CD1688 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 34AEFC2D2CD14D5600696E0E /* kissdb.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3499426B2A217DBE009457A4; + remoteInfo = kissdb; + }; + 34F82A8F2CD3FC9C00CD1688 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 34AEFC2D2CD14D5600696E0E /* kissdb.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = 3499426A2A217DBE009457A4; + remoteInfo = kissdb; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ 348168252A2E478F00A50BD3 /* KissMeme.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KissMeme.swift; sourceTree = ""; }; 348168272A2E4B7700A50BD3 /* KissDB.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KissDB.swift; sourceTree = ""; }; - 3481682B2A2EC26F00A50BD3 /* kiss-db.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "kiss-db.xcodeproj"; path = "kiss-db/kiss-db.xcodeproj"; sourceTree = ""; }; - 348168312A2EC2A200A50BD3 /* kiss-db.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "kiss-db.h"; path = "kiss-db/kiss-db/kiss-db.h"; sourceTree = SOURCE_ROOT; }; 3481683E2A2EE0C600A50BD3 /* KissMemeTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = KissMemeTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 348168402A2EE0C600A50BD3 /* KissMemeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KissMemeTests.swift; sourceTree = ""; }; 3481684A2A2F961500A50BD3 /* CString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CString.swift; sourceTree = ""; }; 349942482A217D85009457A4 /* KissMeme.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = KissMeme.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3499424B2A217D85009457A4 /* KissMeme.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KissMeme.h; sourceTree = ""; }; 3499424C2A217D85009457A4 /* KissMeme.docc */ = {isa = PBXFileReference; lastKnownFileType = folder.documentationcatalog; path = KissMeme.docc; sourceTree = ""; }; + 34AEFC2D2CD14D5600696E0E /* kissdb.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = kissdb.xcodeproj; sourceTree = ""; }; + 34F82A882CD3FC3C00CD1688 /* KissMeme.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KissMeme.h; sourceTree = ""; }; + 34F82A8D2CD3FC6D00CD1688 /* kissdb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = kissdb.h; path = /Users/ened/Kiss/KissMeme/kissdb/Sources/kissdb/kissdb.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -61,33 +68,26 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 348168332A2EC3AC00A50BD3 /* libkiss-db.a in Frameworks */, + 34F82A912CD3FCA500CD1688 /* libkissdb.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 3481682C2A2EC26F00A50BD3 /* Products */ = { - isa = PBXGroup; - children = ( - 348168302A2EC26F00A50BD3 /* libkiss-db.a */, - ); - name = Products; - sourceTree = ""; - }; 3481683F2A2EE0C600A50BD3 /* KissMemeTests */ = { isa = PBXGroup; children = ( 348168402A2EE0C600A50BD3 /* KissMemeTests.swift */, ); - path = KissMemeTests; + name = KissMemeTests; + path = ../../KissMeme/Tests; sourceTree = ""; }; 3499423E2A217D85009457A4 = { isa = PBXGroup; children = ( - 3481682B2A2EC26F00A50BD3 /* kiss-db.xcodeproj */, + 34AEFC2D2CD14D5600696E0E /* kissdb.xcodeproj */, 3499424A2A217D85009457A4 /* KissMeme */, 3481683F2A2EE0C600A50BD3 /* KissMemeTests */, 349942492A217D85009457A4 /* Products */, @@ -107,14 +107,14 @@ 3499424A2A217D85009457A4 /* KissMeme */ = { isa = PBXGroup; children = ( - 348168312A2EC2A200A50BD3 /* kiss-db.h */, - 3499424B2A217D85009457A4 /* KissMeme.h */, + 34F82A8A2CD3FC3C00CD1688 /* include */, 3499424C2A217D85009457A4 /* KissMeme.docc */, 348168252A2E478F00A50BD3 /* KissMeme.swift */, 348168272A2E4B7700A50BD3 /* KissDB.swift */, 3481684A2A2F961500A50BD3 /* CString.swift */, ); - path = KissMeme; + name = KissMeme; + path = ../../KissMeme/Sources; sourceTree = ""; }; 349942D82A218329009457A4 /* Frameworks */ = { @@ -124,6 +124,23 @@ name = Frameworks; sourceTree = ""; }; + 34F82A832CD3FC0200CD1688 /* Products */ = { + isa = PBXGroup; + children = ( + 34F82A872CD3FC0200CD1688 /* libkissdb.a */, + ); + name = Products; + sourceTree = ""; + }; + 34F82A8A2CD3FC3C00CD1688 /* include */ = { + isa = PBXGroup; + children = ( + 34F82A8D2CD3FC6D00CD1688 /* kissdb.h */, + 34F82A882CD3FC3C00CD1688 /* KissMeme.h */, + ); + path = include; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -131,8 +148,8 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 348168322A2EC2A200A50BD3 /* kiss-db.h in Headers */, - 349942592A217D85009457A4 /* KissMeme.h in Headers */, + 34F82A8E2CD3FC6D00CD1688 /* kissdb.h in Headers */, + 34F82A8C2CD3FC3C00CD1688 /* KissMeme.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -169,6 +186,7 @@ buildRules = ( ); dependencies = ( + 34F82A902CD3FC9C00CD1688 /* PBXTargetDependency */, ); name = KissMeme; productName = KissMeme; @@ -207,8 +225,8 @@ projectDirPath = ""; projectReferences = ( { - ProductGroup = 3481682C2A2EC26F00A50BD3 /* Products */; - ProjectRef = 3481682B2A2EC26F00A50BD3 /* kiss-db.xcodeproj */; + ProductGroup = 34F82A832CD3FC0200CD1688 /* Products */; + ProjectRef = 34AEFC2D2CD14D5600696E0E /* kissdb.xcodeproj */; }, ); projectRoot = ""; @@ -220,11 +238,11 @@ /* End PBXProject section */ /* Begin PBXReferenceProxy section */ - 348168302A2EC26F00A50BD3 /* libkiss-db.a */ = { + 34F82A872CD3FC0200CD1688 /* libkissdb.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libkiss-db.a"; - remoteRef = 3481682F2A2EC26F00A50BD3 /* PBXContainerItemProxy */; + path = libkissdb.a; + remoteRef = 34F82A862CD3FC0200CD1688 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXReferenceProxy section */ @@ -274,6 +292,11 @@ target = 349942472A217D85009457A4 /* KissMeme */; targetProxy = 348168432A2EE0C600A50BD3 /* PBXContainerItemProxy */; }; + 34F82A902CD3FC9C00CD1688 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = kissdb; + targetProxy = 34F82A8F2CD3FC9C00CD1688 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ @@ -454,6 +477,7 @@ MARKETING_VERSION = 1.0; MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++20"; + OTHER_SWIFT_FLAGS = "-DXCODE_BUILD"; PRODUCT_BUNDLE_IDENTIFIER = com.ened.KissMeme; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; @@ -461,7 +485,7 @@ SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TVOS_DEPLOYMENT_TARGET = 13.0; - USER_HEADER_SEARCH_PATHS = "${SRCROOT}/../kiss-db/kiss-db"; + USER_HEADER_SEARCH_PATHS = "${SRCROOT}/../kissdb/kissdb"; WATCHOS_DEPLOYMENT_TARGET = 8.0; }; name = Debug; @@ -492,13 +516,14 @@ MARKETING_VERSION = 1.0; MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++20"; + OTHER_SWIFT_FLAGS = "-DXCODE_BUILD"; PRODUCT_BUNDLE_IDENTIFIER = com.ened.KissMeme; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; TVOS_DEPLOYMENT_TARGET = 13.0; - USER_HEADER_SEARCH_PATHS = "${SRCROOT}/../kiss-db/kiss-db"; + USER_HEADER_SEARCH_PATHS = "${SRCROOT}/../kissdb/kissdb"; WATCHOS_DEPLOYMENT_TARGET = 8.0; }; name = Release; diff --git a/KissMeme.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/projects/macos/KissMeme.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from KissMeme.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to projects/macos/KissMeme.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/KissMeme.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/projects/macos/KissMeme.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from KissMeme.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to projects/macos/KissMeme.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/KissMeme.xcodeproj/xcshareddata/xcschemes/KissMeme.xcscheme b/projects/macos/KissMeme.xcodeproj/xcshareddata/xcschemes/KissMeme.xcscheme similarity index 100% rename from KissMeme.xcodeproj/xcshareddata/xcschemes/KissMeme.xcscheme rename to projects/macos/KissMeme.xcodeproj/xcshareddata/xcschemes/KissMeme.xcscheme diff --git a/KissMeme.xcodeproj/xcshareddata/xcschemes/KissMemeTests.xcscheme b/projects/macos/KissMeme.xcodeproj/xcshareddata/xcschemes/KissMemeTests.xcscheme similarity index 100% rename from KissMeme.xcodeproj/xcshareddata/xcschemes/KissMemeTests.xcscheme rename to projects/macos/KissMeme.xcodeproj/xcshareddata/xcschemes/KissMemeTests.xcscheme diff --git a/kiss-db/kiss-db.xcodeproj/project.pbxproj b/projects/macos/kissdb.xcodeproj/project.pbxproj similarity index 89% rename from kiss-db/kiss-db.xcodeproj/project.pbxproj rename to projects/macos/kissdb.xcodeproj/project.pbxproj index 0bd29a2..f6dfabd 100644 --- a/kiss-db/kiss-db.xcodeproj/project.pbxproj +++ b/projects/macos/kissdb.xcodeproj/project.pbxproj @@ -11,12 +11,12 @@ 349942B52A218045009457A4 /* mdb.c in Sources */ = {isa = PBXBuildFile; fileRef = 349942A02A218045009457A4 /* mdb.c */; }; 349942B72A218045009457A4 /* lmdb.h in Headers */ = {isa = PBXBuildFile; fileRef = 349942A72A218045009457A4 /* lmdb.h */; }; 349942B82A218045009457A4 /* midl.h in Headers */ = {isa = PBXBuildFile; fileRef = 349942A82A218045009457A4 /* midl.h */; }; - 349942DD2A218572009457A4 /* kiss-db.h in Headers */ = {isa = PBXBuildFile; fileRef = 349942DB2A218572009457A4 /* kiss-db.h */; }; - 349942DE2A218572009457A4 /* kiss-db.c in Sources */ = {isa = PBXBuildFile; fileRef = 349942DC2A218572009457A4 /* kiss-db.c */; }; + 34AEFC282CD1498C00696E0E /* kissdb.h in Headers */ = {isa = PBXBuildFile; fileRef = 34AEFC262CD1498C00696E0E /* kissdb.h */; }; + 34AEFC292CD1498C00696E0E /* kissdb.c in Sources */ = {isa = PBXBuildFile; fileRef = 34AEFC272CD1498C00696E0E /* kissdb.c */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - 3499426B2A217DBE009457A4 /* libkiss-db.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libkiss-db.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3499426B2A217DBE009457A4 /* libkissdb.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libkissdb.a; sourceTree = BUILT_PRODUCTS_DIR; }; 349942992A218045009457A4 /* midl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = midl.c; sourceTree = ""; }; 349942A02A218045009457A4 /* mdb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mdb.c; sourceTree = ""; }; 349942A72A218045009457A4 /* lmdb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lmdb.h; sourceTree = ""; }; @@ -32,8 +32,8 @@ 349942CE2A21823F009457A4 /* mdb_dump.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = mdb_dump.c; sourceTree = ""; }; 349942CF2A21823F009457A4 /* mdb_copy.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = mdb_copy.c; sourceTree = ""; }; 349942D02A21823F009457A4 /* mdb_load.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = mdb_load.c; sourceTree = ""; }; - 349942DB2A218572009457A4 /* kiss-db.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "kiss-db.h"; sourceTree = ""; }; - 349942DC2A218572009457A4 /* kiss-db.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = "kiss-db.c"; sourceTree = ""; }; + 34AEFC262CD1498C00696E0E /* kissdb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = kissdb.h; sourceTree = ""; }; + 34AEFC272CD1498C00696E0E /* kissdb.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = kissdb.c; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -50,7 +50,7 @@ 349942622A217DBE009457A4 = { isa = PBXGroup; children = ( - 349942DA2A218339009457A4 /* kiss-db */, + 349942DA2A218339009457A4 /* kissdb */, 3499428C2A218045009457A4 /* liblmdb */, 3499426C2A217DBE009457A4 /* Products */, ); @@ -59,7 +59,7 @@ 3499426C2A217DBE009457A4 /* Products */ = { isa = PBXGroup; children = ( - 3499426B2A217DBE009457A4 /* libkiss-db.a */, + 3499426B2A217DBE009457A4 /* libkissdb.a */, ); name = Products; sourceTree = ""; @@ -74,7 +74,8 @@ 349942A72A218045009457A4 /* lmdb.h */, 349942A82A218045009457A4 /* midl.h */, ); - path = liblmdb; + name = liblmdb; + path = ../../kissdb/Sources/liblmdb; sourceTree = ""; }; 349942BE2A2181E2009457A4 /* example */ = { @@ -102,13 +103,14 @@ name = tools; sourceTree = ""; }; - 349942DA2A218339009457A4 /* kiss-db */ = { + 349942DA2A218339009457A4 /* kissdb */ = { isa = PBXGroup; children = ( - 349942DC2A218572009457A4 /* kiss-db.c */, - 349942DB2A218572009457A4 /* kiss-db.h */, + 34AEFC262CD1498C00696E0E /* kissdb.h */, + 34AEFC272CD1498C00696E0E /* kissdb.c */, ); - path = "kiss-db"; + name = kissdb; + path = ../../kissdb/Sources/kissdb; sourceTree = ""; }; /* End PBXGroup section */ @@ -119,7 +121,7 @@ buildActionMask = 2147483647; files = ( 349942B72A218045009457A4 /* lmdb.h in Headers */, - 349942DD2A218572009457A4 /* kiss-db.h in Headers */, + 34AEFC282CD1498C00696E0E /* kissdb.h in Headers */, 349942B82A218045009457A4 /* midl.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; @@ -127,9 +129,9 @@ /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 3499426A2A217DBE009457A4 /* kiss-db */ = { + 3499426A2A217DBE009457A4 /* kissdb */ = { isa = PBXNativeTarget; - buildConfigurationList = 3499426F2A217DBE009457A4 /* Build configuration list for PBXNativeTarget "kiss-db" */; + buildConfigurationList = 3499426F2A217DBE009457A4 /* Build configuration list for PBXNativeTarget "kissdb" */; buildPhases = ( 349942672A217DBE009457A4 /* Headers */, 349942682A217DBE009457A4 /* Sources */, @@ -139,9 +141,9 @@ ); dependencies = ( ); - name = "kiss-db"; + name = kissdb; productName = "kiss-lmdb"; - productReference = 3499426B2A217DBE009457A4 /* libkiss-db.a */; + productReference = 3499426B2A217DBE009457A4 /* libkissdb.a */; productType = "com.apple.product-type.library.static"; }; /* End PBXNativeTarget section */ @@ -158,7 +160,7 @@ }; }; }; - buildConfigurationList = 349942662A217DBE009457A4 /* Build configuration list for PBXProject "kiss-db" */; + buildConfigurationList = 349942662A217DBE009457A4 /* Build configuration list for PBXProject "kissdb" */; compatibilityVersion = "Xcode 14.0"; developmentRegion = en; hasScannedForEncodings = 0; @@ -171,7 +173,7 @@ projectDirPath = ""; projectRoot = ""; targets = ( - 3499426A2A217DBE009457A4 /* kiss-db */, + 3499426A2A217DBE009457A4 /* kissdb */, ); }; /* End PBXProject section */ @@ -182,7 +184,7 @@ buildActionMask = 2147483647; files = ( 349942B52A218045009457A4 /* mdb.c in Sources */, - 349942DE2A218572009457A4 /* kiss-db.c in Sources */, + 34AEFC292CD1498C00696E0E /* kissdb.c in Sources */, 349942B02A218045009457A4 /* midl.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -324,7 +326,7 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 349942662A217DBE009457A4 /* Build configuration list for PBXProject "kiss-db" */ = { + 349942662A217DBE009457A4 /* Build configuration list for PBXProject "kissdb" */ = { isa = XCConfigurationList; buildConfigurations = ( 3499426D2A217DBE009457A4 /* Debug */, @@ -333,7 +335,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3499426F2A217DBE009457A4 /* Build configuration list for PBXNativeTarget "kiss-db" */ = { + 3499426F2A217DBE009457A4 /* Build configuration list for PBXNativeTarget "kissdb" */ = { isa = XCConfigurationList; buildConfigurations = ( 349942702A217DBE009457A4 /* Debug */, diff --git a/kiss-db/kiss-db.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/projects/macos/kissdb.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from kiss-db/kiss-db.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to projects/macos/kissdb.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/kiss-db/kiss-db.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/projects/macos/kissdb.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from kiss-db/kiss-db.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to projects/macos/kissdb.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100755 index 0000000..5e33d8f --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +## Run this build script at root +## Ex) +## $ ./scripts/build.sh +## + +THIS_PATH=`dirname "$0"` + +mkdir -p bin + +${THIS_PATH}/build_any.sh KissMeme + diff --git a/scripts/build_any.sh b/scripts/build_any.sh new file mode 100755 index 0000000..e0fbe95 --- /dev/null +++ b/scripts/build_any.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +## Run this build script at root +## Ex) +## $ ./scripts/build.sh +## + +CONSOLE_APP=$1 +CERT_NAME="Developer ID Application: Chung Min Ahn (NYU8YAYHF8)" + +echo "build console bin/${CONSOLE_APP}" + +cd ${CONSOLE_APP} + +set -e + +rm -rf .build + +swift build -c release --enable-dead-strip + +#codesign --sign "${CERT_NAME}" .build/release/${CONSOLE_APP} +codesign --sign "${CERT_NAME}" .build/release/Modules/${CONSOLE_APP}.swiftmodule + +#cp .build/release/${CONSOLE_APP} ../bin +cp .build/release/Modules/${CONSOLE_APP}.swiftmodule ../bin +