From f2a77752e36d7edf41a21ac1db2a46bc8ebb27de Mon Sep 17 00:00:00 2001 From: Paolo Di Lorenzo Date: Sat, 15 Apr 2023 11:18:20 -0400 Subject: [PATCH] Combine objc and c++ targets into single target --- .gitmodules | 3 --- CHANGELOG.md | 5 +++++ Package.swift | 6 ++---- Sources/ChessKitEngine/Engine.swift | 6 ++++-- Sources/ChessKitEngine/EngineType.swift | 9 +++------ .../EngineMessenger/EngineMessenger.h | 4 ++-- .../EngineMessenger/EngineMessenger.mm | 4 ++-- .../ChessKitEngineCore/Engines/EngineType_objc.h | 13 +++++++++++++ .../Engines/Extensions}/stockfish+engine.cpp | 0 .../Engines/Extensions}/stockfish+engine.h | 0 .../Engines/engine.h | 0 .../Logging/Logging.h | 0 .../Logging/Logging.m | 0 .../include/ChessKitEngineCore.h} | 6 +++--- Sources/ChessKitEngine_Cxx/Engines/Stockfish | 1 - .../ChessKitEngine_Cxx/include/ChessKitEngine_Cxx.h | 11 ----------- .../EngineMessenger/EngineType_ObjC.h | 13 ------------- 17 files changed, 34 insertions(+), 47 deletions(-) delete mode 100644 .gitmodules rename Sources/{ChessKitEngine_ObjC => ChessKitEngineCore}/EngineMessenger/EngineMessenger.h (95%) rename Sources/{ChessKitEngine_ObjC => ChessKitEngineCore}/EngineMessenger/EngineMessenger.mm (94%) create mode 100644 Sources/ChessKitEngineCore/Engines/EngineType_objc.h rename Sources/{ChessKitEngine_Cxx/Engines/+engine => ChessKitEngineCore/Engines/Extensions}/stockfish+engine.cpp (100%) rename Sources/{ChessKitEngine_Cxx/Engines/+engine => ChessKitEngineCore/Engines/Extensions}/stockfish+engine.h (100%) rename Sources/{ChessKitEngine_Cxx => ChessKitEngineCore}/Engines/engine.h (100%) rename Sources/{ChessKitEngine_ObjC => ChessKitEngineCore}/Logging/Logging.h (100%) rename Sources/{ChessKitEngine_ObjC => ChessKitEngineCore}/Logging/Logging.m (100%) rename Sources/{ChessKitEngine_ObjC/include/ChessKitEngine_ObjC.h => ChessKitEngineCore/include/ChessKitEngineCore.h} (58%) delete mode 160000 Sources/ChessKitEngine_Cxx/Engines/Stockfish delete mode 100644 Sources/ChessKitEngine_Cxx/include/ChessKitEngine_Cxx.h delete mode 100644 Sources/ChessKitEngine_ObjC/EngineMessenger/EngineType_ObjC.h diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index c704efd..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "Sources/ChessKitEngine_Cxx/Engines/Stockfish"] - path = Sources/ChessKitEngine_Cxx/Engines/Stockfish - url = git@github.com:chesskit-app/Stockfish.git diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b41aa8..443af0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +# [Unreleased] + +* Simplify internal Obj-C and C++ targets +* Fix `loggingEnabled` default value to match documentation + # ChessKitEngine 0.1.2 Released Friday, April 14, 2023. diff --git a/Package.swift b/Package.swift index 4cf0b1c..9fa6088 100644 --- a/Package.swift +++ b/Package.swift @@ -19,13 +19,11 @@ let package = Package( targets: [ .target( name: "ChessKitEngine", - dependencies: ["ChessKitEngine_ObjC"] + dependencies: ["ChessKitEngineCore"] ), .target( - name: "ChessKitEngine_ObjC", - dependencies: ["ChessKitEngine_Cxx"] + name: "ChessKitEngineCore" ), - .target(name: "ChessKitEngine_Cxx"), .testTarget( name: "ChessKitEngineTests", dependencies: ["ChessKitEngine"] diff --git a/Sources/ChessKitEngine/Engine.swift b/Sources/ChessKitEngine/Engine.swift index d48faf1..3818bfd 100644 --- a/Sources/ChessKitEngine/Engine.swift +++ b/Sources/ChessKitEngine/Engine.swift @@ -3,7 +3,7 @@ // ChessKitEngine // -import ChessKitEngine_ObjC +import ChessKitEngineCore public class Engine { @@ -15,7 +15,7 @@ public class Engine { /// If set to `true`, engine commands and responses /// will be logged to the console. The default value is /// `false`. - public var loggingEnabled = true + public var loggingEnabled = false /// Whether the engine is currently running. /// @@ -127,6 +127,7 @@ extension Engine { // MARK: - EngineMessengerDelegate extension Engine: EngineMessengerDelegate { + public func messenger( _ messenger: EngineMessenger, didReceiveResponse response: String @@ -138,4 +139,5 @@ extension Engine: EngineMessengerDelegate { log(response) } } + } diff --git a/Sources/ChessKitEngine/EngineType.swift b/Sources/ChessKitEngine/EngineType.swift index 82f2d31..e99f124 100644 --- a/Sources/ChessKitEngine/EngineType.swift +++ b/Sources/ChessKitEngine/EngineType.swift @@ -3,14 +3,15 @@ // ChessKitEngine // -import ChessKitEngine_ObjC +import ChessKitEngineCore +/// Possible engines available in `ChessKitEngine`. public enum EngineType: Int { case stockfish /// Internal mapping from Swift to Obj-C type. - var objc: EngineType_ObjC { + var objc: EngineType_objc { switch self { case .stockfish: return .stockfish } @@ -36,10 +37,6 @@ public enum EngineType: Int { extension EngineType: CaseIterable { - public static var allCases: [EngineType] { - [.stockfish] - } - } // MARK: - Equatable diff --git a/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineMessenger.h b/Sources/ChessKitEngineCore/EngineMessenger/EngineMessenger.h similarity index 95% rename from Sources/ChessKitEngine_ObjC/EngineMessenger/EngineMessenger.h rename to Sources/ChessKitEngineCore/EngineMessenger/EngineMessenger.h index a35802d..2da58e6 100644 --- a/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineMessenger.h +++ b/Sources/ChessKitEngineCore/EngineMessenger/EngineMessenger.h @@ -7,7 +7,7 @@ #define EngineMessenger_h #import -#import "EngineType_ObjC.h" +#import "../Engines/EngineType_objc.h" @protocol EngineMessengerDelegate; @class EngineMessenger; @@ -27,7 +27,7 @@ /// For possible types, see `EngineType`. The default type /// is `EngineTypeStockfish`. /// -- (_Nonnull id)initWithEngineType: (EngineType_ObjC) type; +- (_Nonnull id)initWithEngineType: (EngineType_objc) type; /// Opens communicatation channel with the registered engine. /// diff --git a/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineMessenger.mm b/Sources/ChessKitEngineCore/EngineMessenger/EngineMessenger.mm similarity index 94% rename from Sources/ChessKitEngine_ObjC/EngineMessenger/EngineMessenger.mm rename to Sources/ChessKitEngineCore/EngineMessenger/EngineMessenger.mm index 010f53c..99ce363 100644 --- a/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineMessenger.mm +++ b/Sources/ChessKitEngineCore/EngineMessenger/EngineMessenger.mm @@ -4,7 +4,7 @@ // #import "EngineMessenger.h" -#import "../../ChessKitEngine_Cxx/include/ChessKitEngine_Cxx.h" +#import "../Engines/Extensions/stockfish+engine.h" @implementation EngineMessenger : NSObject @@ -17,7 +17,7 @@ NSFileHandle *_pipeReadHandle; return [self initWithEngineType:EngineTypeStockfish]; } -- (id)initWithEngineType: (EngineType_ObjC) type { +- (id)initWithEngineType: (EngineType_objc) type { self = [super init]; if (self) { diff --git a/Sources/ChessKitEngineCore/Engines/EngineType_objc.h b/Sources/ChessKitEngineCore/Engines/EngineType_objc.h new file mode 100644 index 0000000..31e4e34 --- /dev/null +++ b/Sources/ChessKitEngineCore/Engines/EngineType_objc.h @@ -0,0 +1,13 @@ +// +// EngineType_objc.h +// ChessKitEngine +// + +#ifndef EngineType_h +#define EngineType_h + +typedef NS_ENUM(NSInteger, EngineType_objc) { + EngineTypeStockfish +}; + +#endif /* EngineType_objc_h */ diff --git a/Sources/ChessKitEngine_Cxx/Engines/+engine/stockfish+engine.cpp b/Sources/ChessKitEngineCore/Engines/Extensions/stockfish+engine.cpp similarity index 100% rename from Sources/ChessKitEngine_Cxx/Engines/+engine/stockfish+engine.cpp rename to Sources/ChessKitEngineCore/Engines/Extensions/stockfish+engine.cpp diff --git a/Sources/ChessKitEngine_Cxx/Engines/+engine/stockfish+engine.h b/Sources/ChessKitEngineCore/Engines/Extensions/stockfish+engine.h similarity index 100% rename from Sources/ChessKitEngine_Cxx/Engines/+engine/stockfish+engine.h rename to Sources/ChessKitEngineCore/Engines/Extensions/stockfish+engine.h diff --git a/Sources/ChessKitEngine_Cxx/Engines/engine.h b/Sources/ChessKitEngineCore/Engines/engine.h similarity index 100% rename from Sources/ChessKitEngine_Cxx/Engines/engine.h rename to Sources/ChessKitEngineCore/Engines/engine.h diff --git a/Sources/ChessKitEngine_ObjC/Logging/Logging.h b/Sources/ChessKitEngineCore/Logging/Logging.h similarity index 100% rename from Sources/ChessKitEngine_ObjC/Logging/Logging.h rename to Sources/ChessKitEngineCore/Logging/Logging.h diff --git a/Sources/ChessKitEngine_ObjC/Logging/Logging.m b/Sources/ChessKitEngineCore/Logging/Logging.m similarity index 100% rename from Sources/ChessKitEngine_ObjC/Logging/Logging.m rename to Sources/ChessKitEngineCore/Logging/Logging.m diff --git a/Sources/ChessKitEngine_ObjC/include/ChessKitEngine_ObjC.h b/Sources/ChessKitEngineCore/include/ChessKitEngineCore.h similarity index 58% rename from Sources/ChessKitEngine_ObjC/include/ChessKitEngine_ObjC.h rename to Sources/ChessKitEngineCore/include/ChessKitEngineCore.h index 8edc338..31f42ab 100644 --- a/Sources/ChessKitEngine_ObjC/include/ChessKitEngine_ObjC.h +++ b/Sources/ChessKitEngineCore/include/ChessKitEngineCore.h @@ -1,5 +1,5 @@ // -// ChessKitEngine_ObjC.h +// ChessKitEngineCore.h // // @@ -7,7 +7,7 @@ #define ChessKitEngine_ObjC_h #include "../EngineMessenger/EngineMessenger.h" -#include "../EngineMessenger/EngineType_ObjC.h" +#include "../Engines/EngineType_ObjC.h" #include "../Logging/Logging.h" -#endif /* ChessKitEngine_ObjC_h */ +#endif /* ChessKitEngineCore_h */ diff --git a/Sources/ChessKitEngine_Cxx/Engines/Stockfish b/Sources/ChessKitEngine_Cxx/Engines/Stockfish deleted file mode 160000 index 5b0b045..0000000 --- a/Sources/ChessKitEngine_Cxx/Engines/Stockfish +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5b0b0456c1327802a47ea66782a6ead692fe3f5f diff --git a/Sources/ChessKitEngine_Cxx/include/ChessKitEngine_Cxx.h b/Sources/ChessKitEngine_Cxx/include/ChessKitEngine_Cxx.h deleted file mode 100644 index 69ba823..0000000 --- a/Sources/ChessKitEngine_Cxx/include/ChessKitEngine_Cxx.h +++ /dev/null @@ -1,11 +0,0 @@ -// -// ChessKitEngine_Cxx.h -// -// - -#ifndef ChessKitEngine_Cxx_h -#define ChessKitEngine_Cxx_h - -#include "../Engines/+engine/stockfish+engine.h" - -#endif /* ChessKitEngine_Cxx_h */ diff --git a/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineType_ObjC.h b/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineType_ObjC.h deleted file mode 100644 index b0e051a..0000000 --- a/Sources/ChessKitEngine_ObjC/EngineMessenger/EngineType_ObjC.h +++ /dev/null @@ -1,13 +0,0 @@ -// -// EngineType_ObjC.h -// ChessKitEngine -// - -#ifndef EngineType_h -#define EngineType_h - -typedef NS_ENUM(NSInteger, EngineType_ObjC) { - EngineTypeStockfish -}; - -#endif /* EngineType_ObjC_h */