From 93dc403e1bf2bcfb24a4ba10e760f88f19eaf96c Mon Sep 17 00:00:00 2001 From: spdr admin Date: Mon, 3 Jun 2019 07:25:55 -0700 Subject: [PATCH] Fix RNTest TVOS target (#25110) Summary: I noticed that the RNTester-tvOS target is not compilable when I wanted to test the TVOS capacity of React Native. More specifically, the changes included in this PR are: ### RNTester-tvOS target 1. Add `AppDelegate.mm` to the target. 2. Add `.m` files under `turbomodule` to the target. 3. Add the following directories to **header search path**. ``` $(SRCROOT)/../third-party/boost_1_63_0 $(SRCROOT)/../third-party/folly-2018.10.22.00 $(SRCROOT)/../third-party/glog-0.3.5/src ``` 4. Add `RN_BUNDLE_PREFIX` to the scheme argument. 5. Add `RN_BUNDLE_PREFIX` entry to the plist file. ### React-tvOS target 1. Add `RCTCxxBridgeDelegate.h` and `JSCExecutorFactory.h` to the **Copy headers**. ## Changelog [iOS] [Fixed] - Fixed the issue that the RNTester-tvOS is not compilable. Pull Request resolved: https://github.com/facebook/react-native/pull/25110 Differential Revision: D15602450 Pulled By: cpojer fbshipit-source-id: e7eda18c8193b7d88355feafa69043ffef4a8edb --- RNTester/RNTester-tvOS/Info.plist | 2 ++ RNTester/RNTester.xcodeproj/project.pbxproj | 16 ++++++++++++++++ .../xcschemes/RNTester-tvOS.xcscheme | 4 ++++ React/React.xcodeproj/project.pbxproj | 4 ++++ 4 files changed, 26 insertions(+) diff --git a/RNTester/RNTester-tvOS/Info.plist b/RNTester/RNTester-tvOS/Info.plist index 0afedbb816c..1f05733996a 100644 --- a/RNTester/RNTester-tvOS/Info.plist +++ b/RNTester/RNTester-tvOS/Info.plist @@ -31,5 +31,7 @@ UIUserInterfaceStyle Automatic + RN_BUNDLE_PREFIX + $(RN_BUNDLE_PREFIX) diff --git a/RNTester/RNTester.xcodeproj/project.pbxproj b/RNTester/RNTester.xcodeproj/project.pbxproj index 52cacf2394b..173e82ed750 100644 --- a/RNTester/RNTester.xcodeproj/project.pbxproj +++ b/RNTester/RNTester.xcodeproj/project.pbxproj @@ -111,6 +111,9 @@ 3D56F9F11D6F6E9B00F53A06 /* RNTesterBundle.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 3D13F83E1D6F6AE000E69E0E /* RNTesterBundle.bundle */; }; 3DB99D0C1BA0340600302749 /* RNTesterIntegrationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 3DB99D0B1BA0340600302749 /* RNTesterIntegrationTests.m */; }; 3DD981D61D33C6FB007DC7BE /* RNTesterUnitTestsBundle.js in Resources */ = {isa = PBXBuildFile; fileRef = 3DD981D51D33C6FB007DC7BE /* RNTesterUnitTestsBundle.js */; }; + 3FCC247D22A2333F0013B22F /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C60EB582264416A0018C04F /* AppDelegate.mm */; }; + 3FCC24AA22A25DF80013B22F /* RCTNativeSampleTurboModuleSpec.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C2B71152267DB1A0066069E /* RCTNativeSampleTurboModuleSpec.mm */; }; + 3FCC24AB22A25DFF0013B22F /* RCTSampleTurboModule.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C2B711A2267DB1A0066069E /* RCTSampleTurboModule.mm */; }; 52C11BBB1EEACA7100C1A058 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5281CA511EEAC9A700AC40CD /* libRCTBlob.a */; }; 52C11BE11EEACA7800C1A058 /* libRCTBlob-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5281CA531EEAC9A700AC40CD /* libRCTBlob-tvOS.a */; }; 5C2B71672267DB1A0066069E /* RCTNativeSampleTurboModuleSpec.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C2B71152267DB1A0066069E /* RCTNativeSampleTurboModuleSpec.mm */; }; @@ -1772,8 +1775,11 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 3FCC24AB22A25DFF0013B22F /* RCTSampleTurboModule.mm in Sources */, 2DD323DC1DA2DDBF000FE1B8 /* FlexibleSizeExampleView.m in Sources */, 2DD323DD1DA2DDBF000FE1B8 /* UpdatePropertiesExampleView.m in Sources */, + 3FCC247D22A2333F0013B22F /* AppDelegate.mm in Sources */, + 3FCC24AA22A25DF80013B22F /* RCTNativeSampleTurboModuleSpec.mm in Sources */, 2DD323E01DA2DDBF000FE1B8 /* main.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -2025,6 +2031,11 @@ CLANG_WARN_SUSPICIOUS_MOVES = YES; DEBUG_INFORMATION_FORMAT = dwarf; GCC_NO_COMMON_BLOCKS = YES; + HEADER_SEARCH_PATHS = ( + "$(SRCROOT)/../third-party/boost_1_63_0", + "$(SRCROOT)/../third-party/folly-2018.10.22.00", + "$(SRCROOT)/../third-party/glog-0.3.5/src", + ); INFOPLIST_FILE = "RNTester-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.RNTester-tvOS"; @@ -2045,6 +2056,11 @@ COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_NO_COMMON_BLOCKS = YES; + HEADER_SEARCH_PATHS = ( + "$(SRCROOT)/../third-party/boost_1_63_0", + "$(SRCROOT)/../third-party/folly-2018.10.22.00", + "$(SRCROOT)/../third-party/glog-0.3.5/src", + ); INFOPLIST_FILE = "RNTester-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.RNTester-tvOS"; diff --git a/RNTester/RNTester.xcodeproj/xcshareddata/xcschemes/RNTester-tvOS.xcscheme b/RNTester/RNTester.xcodeproj/xcshareddata/xcschemes/RNTester-tvOS.xcscheme index 0c3555d5cfc..a2fbdcf6be9 100644 --- a/RNTester/RNTester.xcodeproj/xcshareddata/xcschemes/RNTester-tvOS.xcscheme +++ b/RNTester/RNTester.xcodeproj/xcshareddata/xcschemes/RNTester-tvOS.xcscheme @@ -101,6 +101,10 @@ value = "1" isEnabled = "YES"> + + diff --git a/React/React.xcodeproj/project.pbxproj b/React/React.xcodeproj/project.pbxproj index c04e4dd50c1..45439f6e31f 100644 --- a/React/React.xcodeproj/project.pbxproj +++ b/React/React.xcodeproj/project.pbxproj @@ -793,6 +793,8 @@ 3DFE0D1B1DF8575800459392 /* YGMacros.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 130A77041DF767AF001F9587 /* YGMacros.h */; }; 3DFE0D1C1DF8575800459392 /* Yoga.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 130A77081DF767AF001F9587 /* Yoga.h */; }; 3EDCA8A51D3591E700450C31 /* RCTErrorInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EDCA8A41D3591E700450C31 /* RCTErrorInfo.m */; }; + 3FCC24A822A24FCC0013B22F /* JSCExecutorFactory.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 8507BBBD21EDACC200AEAFCA /* JSCExecutorFactory.h */; }; + 3FCC24A922A24FD90013B22F /* RCTCxxBridgeDelegate.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 134D63C21F1FEC4B008872B5 /* RCTCxxBridgeDelegate.h */; }; 4F56C93822167A4800DB9F3F /* jsi/jsilib.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F56C93722167A4800DB9F3F /* jsi/jsilib.h */; }; 4F56C93922167A4D00DB9F3F /* jsi/jsilib.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 4F56C93722167A4800DB9F3F /* jsi/jsilib.h */; }; 4F56C93A2216A3B700DB9F3F /* jsi/jsilib.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 4F56C93722167A4800DB9F3F /* jsi/jsilib.h */; }; @@ -1344,6 +1346,8 @@ dstPath = include/React; dstSubfolderSpec = 16; files = ( + 3FCC24A922A24FD90013B22F /* RCTCxxBridgeDelegate.h in Copy Headers */, + 3FCC24A822A24FCC0013B22F /* JSCExecutorFactory.h in Copy Headers */, 0EA924D02237686F004AB895 /* RCTSurfacePresenterStub.h in Copy Headers */, 591F78DF202ADB97004A668C /* RCTLayout.h in Copy Headers */, 59EDBCC31FDF4E55003573DE /* RCTScrollableProtocol.h in Copy Headers */,