From a82b1dafe7c40056db6fa4e26a0e2b1d21ea2f37 Mon Sep 17 00:00:00 2001 From: Saad Najmi Date: Mon, 10 Nov 2025 10:35:06 -0800 Subject: [PATCH 1/2] chore(template): dynamically resolve node modules root --- .../generator-macos/templates/macos/Podfile | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/react-native/local-cli/generator-macos/templates/macos/Podfile b/packages/react-native/local-cli/generator-macos/templates/macos/Podfile index 962710a5eb630b..f38b903cf3d9ed 100644 --- a/packages/react-native/local-cli/generator-macos/templates/macos/Podfile +++ b/packages/react-native/local-cli/generator-macos/templates/macos/Podfile @@ -1,10 +1,19 @@ -autolinking_script = File.expand_path('../node_modules/react-native-macos/scripts/cocoapods/autolinking.rb', __dir__) -if File.exist?(autolinking_script) - require_relative '../node_modules/react-native-macos/scripts/cocoapods/autolinking' -else - require_relative '../node_modules/react-native-macos/scripts/react_native_pods' - require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' -end +require 'pathname' + +modules_root = Pathname.new(__dir__).parent +modules_root = modules_root.parent until modules_root.join('node_modules').directory? || modules_root.root? +node_modules = modules_root.join('node_modules') + +autolinking_script = node_modules.join('react-native-macos/scripts/cocoapods/autolinking.rb') +legacy_script = node_modules.join('react-native-macos/scripts/react_native_pods.rb') +native_modules_script = node_modules.join('@react-native-community/cli-platform-ios/native_modules.rb') + +# @react-native-community/cli v14+ (React Native 0.75+) moved the autolinking script into react-native itself. +if autolinking_script.file? + require autolinking_script.to_s +elsif legacy_script.file? && native_modules_script.file? + require legacy_script.to_s + require native_modules_script.to_s prepare_react_native_project! From 6c0fe9578f59975c6e1b5c7dea69d72fed486291 Mon Sep 17 00:00:00 2001 From: Saad Najmi Date: Wed, 12 Nov 2025 15:10:06 +0000 Subject: [PATCH 2/2] updates --- .../generator-macos/templates/macos/Podfile | 21 ++++++------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/packages/react-native/local-cli/generator-macos/templates/macos/Podfile b/packages/react-native/local-cli/generator-macos/templates/macos/Podfile index f38b903cf3d9ed..f2e9f753243191 100644 --- a/packages/react-native/local-cli/generator-macos/templates/macos/Podfile +++ b/packages/react-native/local-cli/generator-macos/templates/macos/Podfile @@ -1,24 +1,15 @@ require 'pathname' -modules_root = Pathname.new(__dir__).parent -modules_root = modules_root.parent until modules_root.join('node_modules').directory? || modules_root.root? -node_modules = modules_root.join('node_modules') - -autolinking_script = node_modules.join('react-native-macos/scripts/cocoapods/autolinking.rb') -legacy_script = node_modules.join('react-native-macos/scripts/react_native_pods.rb') -native_modules_script = node_modules.join('@react-native-community/cli-platform-ios/native_modules.rb') - -# @react-native-community/cli v14+ (React Native 0.75+) moved the autolinking script into react-native itself. -if autolinking_script.file? - require autolinking_script.to_s -elsif legacy_script.file? && native_modules_script.file? - require legacy_script.to_s - require native_modules_script.to_s +ws_dir = Pathname.new(__dir__) +ws_dir = ws_dir.parent until + File.exist?("#{ws_dir}/node_modules/react-native-macos/scripts/react_native_pods.rb") || + ws_dir.expand_path.to_s == '/' +require "#{ws_dir}/node_modules/react-native-macos/scripts/react_native_pods.rb" prepare_react_native_project! target 'HelloWorld-macOS' do - platform :macos, '11.0' + platform :macos, '14.0' use_native_modules! # Flags change depending on the env values.