From dd3cac40c62e0d6d095d79c683107e3c06813a22 Mon Sep 17 00:00:00 2001 From: Davide De Rosa Date: Tue, 2 Feb 2021 09:56:13 +0100 Subject: [PATCH] Bundle macOS app with iOS --- .env.mac | 2 +- Config.xcconfig | 9 ++++++--- Passepartout.xcodeproj/project.pbxproj | 20 ++++++++----------- .../App/macOS/Launcher/AppDelegate.swift | 2 +- 4 files changed, 16 insertions(+), 17 deletions(-) diff --git a/.env.mac b/.env.mac index 3d96986f..4f467e93 100644 --- a/.env.mac +++ b/.env.mac @@ -2,5 +2,5 @@ PLATFORM="mac" MATCH_PLATFORM="macos" DELIVER_PLATFORM="osx" GYM_SCHEME="Passepartout-macOS" -BUNDLE_CONTEXT="macos" +BUNDLE_CONTEXT="ios" APP_ROOT="Passepartout/App/macOS" diff --git a/Config.xcconfig b/Config.xcconfig index 743e3518..66be0e77 100644 --- a/Config.xcconfig +++ b/Config.xcconfig @@ -28,11 +28,14 @@ CFG_TEAM_ID = DTDYD63ZX9 CFG_APP_IOS_ID = com.algoritmico.ios.Passepartout -CFG_APP_MACOS_ID = com.algoritmico.macos.Passepartout -CFG_APP_LAUNCHER_ID = com.algoritmico.macos.Passepartout.Launcher +//CFG_APP_MACOS_ID = com.algoritmico.macos.Passepartout +//CFG_APP_LAUNCHER_ID = com.algoritmico.macos.Passepartout.Launcher +CFG_APP_MACOS_ID = com.algoritmico.ios.Passepartout +CFG_APP_LAUNCHER_ID = com.algoritmico.ios.Passepartout.Launcher CFG_GROUP_ID = com.algoritmico.Passepartout CFG_APPSTORE_IOS_ID = 1433648537 -CFG_APPSTORE_MACOS_ID = 1433645014 +//CFG_APPSTORE_MACOS_ID = 1433645014 +CFG_APPSTORE_MACOS_ID = 1433648537 CFG_COPYRIGHT = Copyright © 2021 Davide De Rosa. All rights reserved. #include? "Secret.xcconfig" diff --git a/Passepartout.xcodeproj/project.pbxproj b/Passepartout.xcodeproj/project.pbxproj index 3e0684c9..60c8691e 100644 --- a/Passepartout.xcodeproj/project.pbxproj +++ b/Passepartout.xcodeproj/project.pbxproj @@ -2363,7 +2363,7 @@ MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = "$(CFG_APP_MACOS_ID)"; PRODUCT_NAME = Passepartout; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.macos.Passepartout macos"; + PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.ios.Passepartout macos"; SDKROOT = macosx; SWIFT_VERSION = 5.0; }; @@ -2390,7 +2390,7 @@ MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = "$(CFG_APP_MACOS_ID)"; PRODUCT_NAME = Passepartout; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.macos.Passepartout macos"; + PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.ios.Passepartout macos"; SDKROOT = macosx; SWIFT_VERSION = 5.0; }; @@ -2416,7 +2416,7 @@ MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = "$(CFG_APP_MACOS_ID).Tunnel"; PRODUCT_NAME = PassepartoutTunnel; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.macos.Passepartout.Tunnel macos"; + PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.ios.Passepartout.Tunnel macos"; SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_VERSION = 5.0; @@ -2442,7 +2442,7 @@ MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = "$(CFG_APP_MACOS_ID).Tunnel"; PRODUCT_NAME = PassepartoutTunnel; - PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.macos.Passepartout.Tunnel macos"; + PROVISIONING_PROFILE_SPECIFIER = "match Development com.algoritmico.ios.Passepartout.Tunnel macos"; SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_VERSION = 5.0; @@ -2471,7 +2471,7 @@ ); MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.macos.PassepartoutCore; + PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.ios.PassepartoutCore; PRODUCT_NAME = PassepartoutCore; SDKROOT = macosx; SKIP_INSTALL = YES; @@ -2502,7 +2502,7 @@ "@loader_path/Frameworks", ); MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.macos.PassepartoutCore; + PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.ios.PassepartoutCore; PRODUCT_NAME = PassepartoutCore; SDKROOT = macosx; SKIP_INSTALL = YES; @@ -2699,7 +2699,6 @@ ); MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.ios.Passepartout.Tests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -2719,7 +2718,6 @@ "@loader_path/Frameworks", ); MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.ios.Passepartout.Tests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -2741,7 +2739,6 @@ ); MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.macos.Passepartout.Tests; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; SWIFT_VERSION = 5.0; @@ -2762,7 +2759,6 @@ "@loader_path/../Frameworks", ); MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.macos.Passepartout.Tests; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; SWIFT_VERSION = 5.0; @@ -2788,7 +2784,7 @@ ); MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.macos.Passepartout.Launcher; + PRODUCT_BUNDLE_IDENTIFIER = "$(CFG_APP_LAUNCHER_ID)"; PRODUCT_NAME = PassepartoutLauncher; PROVISIONING_PROFILE_SPECIFIER = ""; SDKROOT = macosx; @@ -2815,7 +2811,7 @@ "@executable_path/../Frameworks", ); MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.algoritmico.macos.Passepartout.Launcher; + PRODUCT_BUNDLE_IDENTIFIER = "$(CFG_APP_LAUNCHER_ID)"; PRODUCT_NAME = PassepartoutLauncher; PROVISIONING_PROFILE_SPECIFIER = ""; SDKROOT = macosx; diff --git a/Passepartout/App/macOS/Launcher/AppDelegate.swift b/Passepartout/App/macOS/Launcher/AppDelegate.swift index c87f2d48..fb27e4d9 100644 --- a/Passepartout/App/macOS/Launcher/AppDelegate.swift +++ b/Passepartout/App/macOS/Launcher/AppDelegate.swift @@ -38,7 +38,7 @@ class AppDelegate: NSObject { extension AppDelegate: NSApplicationDelegate { func applicationDidFinishLaunching(_ aNotification: Notification) { - let mainAppIdentifier = "com.algoritmico.macos.Passepartout" // XXX: hardcoded + let mainAppIdentifier = "com.algoritmico.ios.Passepartout" // XXX: hardcoded let runningApps = NSWorkspace.shared.runningApplications let isRunning = !runningApps.filter { $0.bundleIdentifier == mainAppIdentifier }.isEmpty