diff --git a/packages/react-native-fantom/runner/runner.js b/packages/react-native-fantom/runner/runner.js index 99628faabe0..6ba49135c25 100644 --- a/packages/react-native-fantom/runner/runner.js +++ b/packages/react-native-fantom/runner/runner.js @@ -19,7 +19,7 @@ import { updateSnapshotsAndGetJestSnapshotResult, } from './snapshotUtils'; import { - getBuckModeForPlatform, + getBuckModesForPlatform, getDebugInfoFromCommandResult, getShortHash, runBuck2, @@ -76,7 +76,7 @@ function generateBytecodeBundle({ const hermesCompilerCommandResult = runBuck2( [ 'run', - getBuckModeForPlatform(isOptimizedMode), + ...getBuckModesForPlatform(isOptimizedMode), '//xplat/hermes/tools/hermesc:hermesc', '--', '-emit-binary', @@ -178,7 +178,9 @@ module.exports = async function runTest( const rnTesterCommandResult = runBuck2([ 'run', - getBuckModeForPlatform(testConfig.mode === FantomTestConfigMode.Optimized), + ...getBuckModesForPlatform( + testConfig.mode === FantomTestConfigMode.Optimized, + ), '//xplat/ReactNative/react-native-cxx/samples/tester:tester', '--', '--bundlePath', diff --git a/packages/react-native-fantom/runner/utils.js b/packages/react-native-fantom/runner/utils.js index 5d698977064..d5aa6deeac7 100644 --- a/packages/react-native-fantom/runner/utils.js +++ b/packages/react-native-fantom/runner/utils.js @@ -18,21 +18,30 @@ import {SourceMapConsumer} from 'source-map'; const BUCK_ISOLATION_DIR = 'react-native-fantom-buck-out'; -export function getBuckModeForPlatform(enableRelease: boolean = false): string { +export function getBuckModesForPlatform( + enableRelease: boolean = false, +): $ReadOnlyArray { const mode = enableRelease ? 'opt' : 'dev'; + let osPlatform; switch (os.platform()) { case 'linux': - return `@//arvr/mode/linux/${mode}`; + osPlatform = `@//arvr/mode/linux/${mode}`; + break; case 'darwin': - return os.arch() === 'arm64' - ? `@//arvr/mode/mac-arm/${mode}` - : `@//arvr/mode/mac/${mode}`; + osPlatform = + os.arch() === 'arm64' + ? `@//arvr/mode/mac-arm/${mode}` + : `@//arvr/mode/mac/${mode}`; + break; case 'win32': - return `@//arvr/mode/win/${mode}`; + osPlatform = `@//arvr/mode/win/${mode}`; + break; default: throw new Error(`Unsupported platform: ${os.platform()}`); } + + return ['@//xplat/mode/react-force-cxx-platform', osPlatform]; } type SpawnResultWithOriginalCommand = { diff --git a/packages/react-native-fantom/runner/warmup/warmup.js b/packages/react-native-fantom/runner/warmup/warmup.js index ece60df0dc2..a5503c154ad 100644 --- a/packages/react-native-fantom/runner/warmup/warmup.js +++ b/packages/react-native-fantom/runner/warmup/warmup.js @@ -10,7 +10,7 @@ */ import { - getBuckModeForPlatform, + getBuckModesForPlatform, getDebugInfoFromCommandResult, runBuck2, } from '../utils'; @@ -96,7 +96,7 @@ async function warmUpMetro(isOptimizedMode: boolean): Promise { function warmUpHermesCompiler(isOptimizedMode: boolean): void { const buildHermesCompilerCommandResult = runBuck2([ 'build', - getBuckModeForPlatform(isOptimizedMode), + ...getBuckModesForPlatform(isOptimizedMode), '//xplat/hermes/tools/hermesc:hermesc', ]); @@ -110,7 +110,7 @@ function warmUpHermesCompiler(isOptimizedMode: boolean): void { function warmUpRNTesterCLI(isOptimizedMode: boolean): void { const buildRNTesterCommandResult = runBuck2([ 'build', - getBuckModeForPlatform(isOptimizedMode), + ...getBuckModesForPlatform(isOptimizedMode), '//xplat/ReactNative/react-native-cxx/samples/tester:tester', ]);