From 91eba4dbfce8eb771a4b2917cab705253d25415a Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Mon, 22 Oct 2018 14:01:37 -0600 Subject: [PATCH] Move WebRTC to separate submodule --- .gitmodules | 7 +- Carthage | 1 - Makefile | 11 +++- Signal.xcodeproj/project.pbxproj | 66 ++++++------------- Cartfile => ThirdParty/Cartfile | 0 .../Cartfile.resolved | 0 ThirdParty/Carthage | 1 + ThirdParty/WebRTC | 1 + 8 files changed, 34 insertions(+), 53 deletions(-) delete mode 160000 Carthage rename Cartfile => ThirdParty/Cartfile (100%) rename Cartfile.resolved => ThirdParty/Cartfile.resolved (100%) create mode 160000 ThirdParty/Carthage create mode 160000 ThirdParty/WebRTC diff --git a/.gitmodules b/.gitmodules index 43d96396e..2b27c165b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,9 @@ -[submodule "Carthage"] - path = Carthage +[submodule "ThirdParty/Carthage"] + path = ThirdParty/Carthage url = https://github.com/signalapp/Signal-Carthage.git [submodule "Pods"] path = Pods url = https://github.com/signalapp/Signal-Pods.git +[submodule "ThirdParty/WebRTC"] + path = ThirdParty/WebRTC + url = git@github.com:signalapp/signal-webrtc-ios-artifacts diff --git a/Carthage b/Carthage deleted file mode 160000 index e5a3e55ee..000000000 --- a/Carthage +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e5a3e55eedba8af37946a57e1d6c0b42e3374a09 diff --git a/Makefile b/Makefile index 5b3a34d4b..84f6f92ce 100644 --- a/Makefile +++ b/Makefile @@ -2,6 +2,7 @@ SHELL=/bin/bash -o pipefail -o errexit WORKING_DIR = ./ +THIRD_PARTY_DIR = $(WORKING_DIR)/ThirdParty SCHEME = Signal XCODE_BUILD = xcrun xcodebuild -workspace $(SCHEME).xcworkspace -scheme $(SCHEME) -sdk iphonesimulator @@ -19,7 +20,8 @@ update_dependencies: dependencies: cd $(WORKING_DIR) && \ git submodule update --init - carthage build --platform iOS + cd $(THIRD_PARTY_DIR) && \ + carthage build --platform iOS build: dependencies cd $(WORKING_DIR) && \ @@ -29,11 +31,14 @@ test: bundle exec fastlane scan cd SignalServiceKit && make test -clean: +clean: clean_carthage cd $(WORKING_DIR) && \ - rm -fr Carthage/Build && \ $(XCODE_BUILD) clean | xcpretty +clean_carthage: + cd $(THIRD_PARTY_DIR) && \ + rm -fr Carthage/Build + # Migrating across swift versions requires me to run this sometimes clean_carthage_cache: rm -fr ~/Library/Caches/org.carthage.CarthageKit/ diff --git a/Signal.xcodeproj/project.pbxproj b/Signal.xcodeproj/project.pbxproj index e35686507..3733b6e78 100644 --- a/Signal.xcodeproj/project.pbxproj +++ b/Signal.xcodeproj/project.pbxproj @@ -85,8 +85,6 @@ 3461295B1FD1D74C00532771 /* Environment.m in Sources */ = {isa = PBXBuildFile; fileRef = 346129411FD1D74B00532771 /* Environment.m */; }; 346129711FD1D74C00532771 /* SignalKeyingStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 346129581FD1D74B00532771 /* SignalKeyingStorage.h */; settings = {ATTRIBUTES = (Public, ); }; }; 346129721FD1D74C00532771 /* SignalKeyingStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = 346129591FD1D74B00532771 /* SignalKeyingStorage.m */; }; - 346129731FD1E01700532771 /* PromiseKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 451DE9F11DC1585F00810E42 /* PromiseKit.framework */; }; - 346129741FD1E02D00532771 /* PromiseKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 451DE9F11DC1585F00810E42 /* PromiseKit.framework */; }; 346129951FD1E30000532771 /* OWSDatabaseMigration.h in Headers */ = {isa = PBXBuildFile; fileRef = 346129931FD1E30000532771 /* OWSDatabaseMigration.h */; settings = {ATTRIBUTES = (Public, ); }; }; 346129961FD1E30000532771 /* OWSDatabaseMigration.m in Sources */ = {isa = PBXBuildFile; fileRef = 346129941FD1E30000532771 /* OWSDatabaseMigration.m */; }; 346129991FD1E4DA00532771 /* SignalApp.m in Sources */ = {isa = PBXBuildFile; fileRef = 346129971FD1E4D900532771 /* SignalApp.m */; }; @@ -352,7 +350,6 @@ 45638BDC1F3DD0D400128435 /* DebugUICalling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45638BDB1F3DD0D400128435 /* DebugUICalling.swift */; }; 45638BDF1F3DDB2200128435 /* MessageSender+Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45638BDE1F3DDB2200128435 /* MessageSender+Promise.swift */; }; 45666F581D9B2880008FE134 /* OWSScrubbingLogFormatterTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 45666F571D9B2880008FE134 /* OWSScrubbingLogFormatterTest.m */; }; - 456C38961DC7B882007536A7 /* PromiseKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 451DE9F11DC1585F00810E42 /* PromiseKit.framework */; }; 456F6E2F1E261D1000FD2210 /* PeerConnectionClientTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 456F6E2E1E261D1000FD2210 /* PeerConnectionClientTest.swift */; }; 4574A5D61DD6704700C6B692 /* CallService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4574A5D51DD6704700C6B692 /* CallService.swift */; }; 4579431E1E7C8CE9008ED0C0 /* Pastelog.m in Sources */ = {isa = PBXBuildFile; fileRef = 4579431D1E7C8CE9008ED0C0 /* Pastelog.m */; }; @@ -440,6 +437,7 @@ 4C6F527C20FFE8400097DEEE /* SignalUBSan.supp in Resources */ = {isa = PBXBuildFile; fileRef = 4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */; }; 4C858A52212DC5E1001B45D3 /* UIImage+OWS.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C858A51212DC5E1001B45D3 /* UIImage+OWS.swift */; }; 4C948FF72146EB4800349F0D /* BlockListCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C948FF62146EB4800349F0D /* BlockListCache.swift */; }; + 4C9CA25D217E676900607C63 /* ZXingObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C9CA25C217E676900607C63 /* ZXingObjC.framework */; }; 4CA5F793211E1F06008C2708 /* Toast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CA5F792211E1F06008C2708 /* Toast.swift */; }; 4CB5F26720F6E1E2004D1B42 /* MenuActionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CFF4C0920F55BBA005DA313 /* MenuActionsViewController.swift */; }; 4CB5F26920F7D060004D1B42 /* MessageActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CB5F26820F7D060004D1B42 /* MessageActions.swift */; }; @@ -972,7 +970,7 @@ 4503F1C1204711D200CEE724 /* OWS107LegacySounds.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWS107LegacySounds.m; sourceTree = ""; }; 4503F1C2204711D200CEE724 /* OWS107LegacySounds.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWS107LegacySounds.h; sourceTree = ""; }; 4505C2BE1E648EA300CEBF41 /* ExperienceUpgrade.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ExperienceUpgrade.swift; path = ExperienceUpgrades/ExperienceUpgrade.swift; sourceTree = ""; }; - 4509E7991DD653700025A59F /* WebRTC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebRTC.framework; path = Carthage/Build/iOS/WebRTC.framework; sourceTree = ""; }; + 4509E7991DD653700025A59F /* WebRTC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebRTC.framework; path = ThirdParty/WebRTC/Build/WebRTC.framework; sourceTree = ""; }; 450D19111F85236600970622 /* RemoteVideoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RemoteVideoView.h; sourceTree = ""; }; 450D19121F85236600970622 /* RemoteVideoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RemoteVideoView.m; sourceTree = ""; }; 450DF2041E0D74AC003D14BE /* Platform.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Platform.swift; sourceTree = ""; }; @@ -981,7 +979,6 @@ 451764291DE939FD00EDB8B9 /* ContactCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactCell.swift; sourceTree = ""; }; 451777C71FD61554001225FF /* ConversationSearcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConversationSearcher.swift; sourceTree = ""; }; 451A13B01E13DED2000A50FD /* CallNotificationsAdapter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; name = CallNotificationsAdapter.swift; path = ../UserInterface/Notifications/CallNotificationsAdapter.swift; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.swift; }; - 451DE9F11DC1585F00810E42 /* PromiseKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = PromiseKit.framework; path = Carthage/Build/iOS/PromiseKit.framework; sourceTree = ""; }; 452037CF1EE84975004E4CDF /* DebugUISessionState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebugUISessionState.h; sourceTree = ""; }; 452037D01EE84975004E4CDF /* DebugUISessionState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DebugUISessionState.m; sourceTree = ""; }; 4520D8D41D417D8E00123472 /* Photos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Photos.framework; path = System/Library/Frameworks/Photos.framework; sourceTree = SDKROOT; }; @@ -1126,6 +1123,7 @@ 4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */ = {isa = PBXFileReference; lastKnownFileType = text; path = SignalUBSan.supp; sourceTree = ""; }; 4C858A51212DC5E1001B45D3 /* UIImage+OWS.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIImage+OWS.swift"; sourceTree = ""; }; 4C948FF62146EB4800349F0D /* BlockListCache.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlockListCache.swift; sourceTree = ""; }; + 4C9CA25C217E676900607C63 /* ZXingObjC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ZXingObjC.framework; path = ThirdParty/Carthage/Build/iOS/ZXingObjC.framework; sourceTree = ""; }; 4CA5F792211E1F06008C2708 /* Toast.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Toast.swift; sourceTree = ""; }; 4CB5F26820F7D060004D1B42 /* MessageActions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageActions.swift; sourceTree = ""; }; 4CC0B59B20EC5F2E00CF6EE0 /* ConversationConfigurationSyncOperation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConversationConfigurationSyncOperation.swift; sourceTree = ""; }; @@ -1255,7 +1253,6 @@ files = ( 453518A21FC63E2900210559 /* SignalMessaging.framework in Frameworks */, 2AE2882E4C2B96BFFF9EE27C /* Pods_SignalShareExtension.framework in Frameworks */, - 346129731FD1E01700532771 /* PromiseKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1264,7 +1261,6 @@ buildActionMask = 2147483647; files = ( 4AC4EA13C8A444455DAB351F /* Pods_SignalMessaging.framework in Frameworks */, - 346129741FD1E02D00532771 /* PromiseKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1277,8 +1273,8 @@ 455A16DE1F1FEA0000F86704 /* MetalKit.framework in Frameworks */, 45847E871E4283C30080EAB3 /* Intents.framework in Frameworks */, 4509E79A1DD653700025A59F /* WebRTC.framework in Frameworks */, - 456C38961DC7B882007536A7 /* PromiseKit.framework in Frameworks */, 4520D8D51D417D8E00123472 /* Photos.framework in Frameworks */, + 4C9CA25D217E676900607C63 /* ZXingObjC.framework in Frameworks */, B6B226971BE4B7D200860F4D /* ContactsUI.framework in Frameworks */, 45BD60821DE9547E00A8F436 /* Contacts.framework in Frameworks */, B6FE7EB71ADD62FA00A6D22F /* PushKit.framework in Frameworks */, @@ -1447,20 +1443,6 @@ path = ThreadSettings; sourceTree = ""; }; - 34219802210619C800C57195 /* Libraries */ = { - isa = PBXGroup; - children = ( - ); - path = Libraries; - sourceTree = ""; - }; - 34219803210619D300C57195 /* Libraries */ = { - isa = PBXGroup; - children = ( - ); - path = Libraries; - sourceTree = ""; - }; 34330A581E7875FB00DF2FB9 /* Fonts */ = { isa = PBXGroup; children = ( @@ -2005,7 +1987,6 @@ 346129A11FD1F09100532771 /* contacts */, 3461293F1FD1D74B00532771 /* environment */, 453518951FC63DBF00210559 /* Info.plist */, - 34219803210619D300C57195 /* Libraries */, 45194F911FD7214600333B2C /* Models */, 346129B01FD1F7E800532771 /* profiles */, 34480B5A1FD0A7E300BC14EF /* SignalMessaging-Prefix.pch */, @@ -2404,13 +2385,13 @@ D221A08C169C9E5E00537ABF /* Frameworks */ = { isa = PBXGroup; children = ( + 4C9CA25C217E676900607C63 /* ZXingObjC.framework */, 4CC1ECF8211A47CD00CC13BE /* StoreKit.framework */, 455A16DB1F1FEA0000F86704 /* Metal.framework */, 455A16DC1F1FEA0000F86704 /* MetalKit.framework */, 45847E861E4283C30080EAB3 /* Intents.framework */, 45BD60811DE9547E00A8F436 /* Contacts.framework */, 4509E7991DD653700025A59F /* WebRTC.framework */, - 451DE9F11DC1585F00810E42 /* PromiseKit.framework */, 4520D8D41D417D8E00123472 /* Photos.framework */, B6B226961BE4B7D200860F4D /* ContactsUI.framework */, B6FE7EB61ADD62FA00A6D22F /* PushKit.framework */, @@ -2450,7 +2431,6 @@ 34330A581E7875FB00DF2FB9 /* Fonts */, B633C4FD1A1D190B0059AC12 /* Images */, B66DBF4919D5BBC8006EA940 /* Images.xcassets */, - 34219802210619C800C57195 /* Libraries */, B67EBF5C19194AC60084CCFD /* Settings.bundle */, B657DDC91911A40500F45B0C /* Signal.entitlements */, 34074F54203D0722004596AE /* Sounds */, @@ -2947,8 +2927,8 @@ files = ( ); inputPaths = ( - "$(SRCROOT)/Carthage/Build/iOS/WebRTC.framework", - "$(SRCROOT)/Carthage/Build/iOS/ZXingObjC.framework", + "$(SRCROOT)/ThirdParty/WebRTC/Build/WebRTC.framework", + "$(SRCROOT)/ThirdParty/Carthage/Build/iOS/ZXingObjC.framework", ); name = "[Carthage] Copy Frameworks"; outputPaths = ( @@ -3600,10 +3580,7 @@ COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = U68MSDN6DR; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); + FRAMEWORK_SEARCH_PATHS = "$(inherited)"; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -3665,10 +3642,7 @@ DEVELOPMENT_TEAM = U68MSDN6DR; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); + FRAMEWORK_SEARCH_PATHS = "$(inherited)"; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_NO_COMMON_BLOCKS = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; @@ -3723,10 +3697,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); + FRAMEWORK_SEARCH_PATHS = "$(inherited)"; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -3797,10 +3768,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); + FRAMEWORK_SEARCH_PATHS = "$(inherited)"; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_NO_COMMON_BLOCKS = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; @@ -3861,6 +3829,10 @@ ENABLE_BITCODE = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(PROJECT_DIR)/ThirdParty/WebRTC/Build", + "$(PROJECT_DIR)/ThirdParty/Carthage/Build/iOS", + ); GCC_NO_COMMON_BLOCKS = YES; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -3931,6 +3903,10 @@ CODE_SIGN_IDENTITY = "iPhone Distribution"; ENABLE_BITCODE = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(PROJECT_DIR)/ThirdParty/WebRTC/Build", + "$(PROJECT_DIR)/ThirdParty/Carthage/Build/iOS", + ); GCC_NO_COMMON_BLOCKS = YES; GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES; GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES; @@ -3993,7 +3969,6 @@ FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)", - "$(PROJECT_DIR)/Carthage/Build/iOS", ); GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; @@ -4060,7 +4035,6 @@ FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)", - "$(PROJECT_DIR)/Carthage/Build/iOS", ); GCC_OPTIMIZATION_LEVEL = 3; GCC_PRECOMPILE_PREFIX_HEADER = YES; @@ -4120,7 +4094,6 @@ FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)", - "$(PROJECT_DIR)/Carthage/Build/iOS", ); GCC_GENERATE_TEST_COVERAGE_FILES = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -4180,7 +4153,6 @@ FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)", - "$(PROJECT_DIR)/Carthage/Build/iOS", ); GCC_GENERATE_TEST_COVERAGE_FILES = NO; GCC_OPTIMIZATION_LEVEL = 0; diff --git a/Cartfile b/ThirdParty/Cartfile similarity index 100% rename from Cartfile rename to ThirdParty/Cartfile diff --git a/Cartfile.resolved b/ThirdParty/Cartfile.resolved similarity index 100% rename from Cartfile.resolved rename to ThirdParty/Cartfile.resolved diff --git a/ThirdParty/Carthage b/ThirdParty/Carthage new file mode 160000 index 000000000..34a9f9448 --- /dev/null +++ b/ThirdParty/Carthage @@ -0,0 +1 @@ +Subproject commit 34a9f944814e26408e328f6d10597966afe7d15a diff --git a/ThirdParty/WebRTC b/ThirdParty/WebRTC new file mode 160000 index 000000000..af8b6b232 --- /dev/null +++ b/ThirdParty/WebRTC @@ -0,0 +1 @@ +Subproject commit af8b6b232df749574744cd5d092227f8559969f9