From 127e5ed54ad2cd2e2b5b6b55e96a2e18d8e5a72b Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Mon, 19 Feb 2018 14:43:50 -0800 Subject: [PATCH] Migrate to Swift 4.0 with @objc inferencing fixes for Moonlight build target --- Limelight/Input/Controller.swift | 18 +++++++++--------- Moonlight.xcodeproj/project.pbxproj | 16 ++++++++++------ 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/Limelight/Input/Controller.swift b/Limelight/Input/Controller.swift index 9e3d86c4..6feff3b5 100644 --- a/Limelight/Input/Controller.swift +++ b/Limelight/Input/Controller.swift @@ -14,13 +14,13 @@ import Foundation */ class Controller: NSObject { // Swift requires initial properties - var playerIndex: CInt = 0 // Controller number (e.g. 1, 2 ,3 etc) - var lastButtonFlags: CInt = 0 - var emulatingButtonFlags: CInt = 0 - var lastLeftTrigger: CChar = 0 // Last left trigger pressed - var lastRightTrigger: CChar = 0 // Last right trigger pressed - var lastLeftStickX: CShort = 0 // Last X direction the left joystick went - var lastLeftStickY: CShort = 0 // Last Y direction the left joystick went - var lastRightStickX: CShort = 0 // Last X direction the right joystick went - var lastRightStickY: CShort = 0 // Last Y direction the right joystick went + @objc var playerIndex: CInt = 0 // Controller number (e.g. 1, 2 ,3 etc) + @objc var lastButtonFlags: CInt = 0 + @objc var emulatingButtonFlags: CInt = 0 + @objc var lastLeftTrigger: CChar = 0 // Last left trigger pressed + @objc var lastRightTrigger: CChar = 0 // Last right trigger pressed + @objc var lastLeftStickX: CShort = 0 // Last X direction the left joystick went + @objc var lastLeftStickY: CShort = 0 // Last Y direction the left joystick went + @objc var lastRightStickX: CShort = 0 // Last X direction the right joystick went + @objc var lastRightStickY: CShort = 0 // Last Y direction the right joystick went } diff --git a/Moonlight.xcodeproj/project.pbxproj b/Moonlight.xcodeproj/project.pbxproj index efa196ee..b00229bd 100644 --- a/Moonlight.xcodeproj/project.pbxproj +++ b/Moonlight.xcodeproj/project.pbxproj @@ -814,12 +814,12 @@ TargetAttributes = { D46A739F1CBC7CB60039F1EE = { CreatedOnToolsVersion = 7.3; - LastSwiftMigration = 0800; + LastSwiftMigration = 0920; TestTargetID = FB290CED19B2C406004C83CF; }; FB290CED19B2C406004C83CF = { DevelopmentTeam = DM46QST4M7; - LastSwiftMigration = 0800; + LastSwiftMigration = 0920; }; }; }; @@ -992,7 +992,8 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "MoonlightUnitTests/MoonlightUnitTests-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = On; + SWIFT_VERSION = 4.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Moonlight.app/Moonlight"; }; name = Debug; @@ -1017,7 +1018,8 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "MoonlightUnitTests/MoonlightUnitTests-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = On; + SWIFT_VERSION = 4.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Moonlight.app/Moonlight"; }; name = Release; @@ -1150,7 +1152,8 @@ SKIP_INSTALL = NO; SWIFT_OBJC_BRIDGING_HEADER = "Limelight/Input/Moonlight-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; WRAPPER_EXTENSION = app; }; name = Debug; @@ -1185,7 +1188,8 @@ SKIP_INSTALL = NO; SWIFT_OBJC_BRIDGING_HEADER = "Limelight/Input/Moonlight-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; WRAPPER_EXTENSION = app; }; name = Release;