Combine objc and c++ targets into single target

This commit is contained in:
Paolo Di Lorenzo
2023-04-15 11:18:20 -04:00
parent bf19aa1a9a
commit f2a77752e3
17 changed files with 34 additions and 47 deletions
-3
View File
@@ -1,3 +0,0 @@
[submodule "Sources/ChessKitEngine_Cxx/Engines/Stockfish"]
path = Sources/ChessKitEngine_Cxx/Engines/Stockfish
url = git@github.com:chesskit-app/Stockfish.git
+5
View File
@@ -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.
+2 -4
View File
@@ -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"]
+4 -2
View File
@@ -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)
}
}
}
+3 -6
View File
@@ -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
@@ -7,7 +7,7 @@
#define EngineMessenger_h
#import <Foundation/Foundation.h>
#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.
///
@@ -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) {
@@ -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 */
@@ -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 */
@@ -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 */
@@ -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 */