Skip to content

Let third-party pods resolve the C++ stable API guard headers (#57846) - #57846

Closed
coado wants to merge 1 commit into
react:mainfrom
coado:export-D110052811
Closed

Let third-party pods resolve the C++ stable API guard headers (#57846)#57846
coado wants to merge 1 commit into
react:mainfrom
coado:export-D110052811

Conversation

@coado

@coado coado commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Summary:

install_modules_dependencies is the helper every third-party New Architecture library calls from its own podspec, and update_search_paths covers the user project and the pod targets that don't go through it. Neither knew about React-cxxstableapi.

React Native's public C++ headers are starting to include the shared guard header <react/cxxstableapi/UmbrellaGuard.h>. The include is unconditional, so a third-party pod that includes any guarded React Native header has to be able to resolve it. Today it can't: in the default static-library mode $(PODS_ROOT)/Headers/Public/React-cxxstableapi is missing from the search path, and under use_frameworks! the React_cxxstableapi.framework/Headers entry is missing.

Declare the dependency and add the matching framework header search path in both places.

Changelog:
[iOS][Added] - Add a React-cxxstableapi dependency to third-party New Architecture pods so they can resolve React Native's C++ API guard headers

Reviewed By: cipolleschi

Differential Revision: D110052811

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 6, 2026
@facebook-github-tools facebook-github-tools Bot added p: Software Mansion Partner: Software Mansion Partner p: Facebook Partner: Facebook labels Aug 6, 2026
@meta-codesync

meta-codesync Bot commented Aug 6, 2026

Copy link
Copy Markdown

@coado has exported this pull request. If you are a Meta employee, you can view the originating Diff in D110052811.

@meta-codesync meta-codesync Bot changed the title Let third-party pods resolve the C++ stable API guard headers Let third-party pods resolve the C++ stable API guard headers (#57846) Aug 11, 2026
coado added a commit to coado/react-native that referenced this pull request Aug 11, 2026
…57846)

Summary:

`install_modules_dependencies` is the helper every third-party New Architecture library calls from its own podspec, and `update_search_paths` covers the user project and the pod targets that don't go through it. Neither knew about `React-cxxstableapi`.

React Native's public C++ headers are starting to include the shared guard header `<react/cxxstableapi/UmbrellaGuard.h>`. The include is unconditional, so a third-party pod that includes any guarded React Native header has to be able to resolve it. Today it can't: in the default static-library mode `$(PODS_ROOT)/Headers/Public/React-cxxstableapi` is missing from the search path, and under `use_frameworks!` the `React_cxxstableapi.framework/Headers` entry is missing.

Declare the dependency and add the matching framework header search path in both places.

Changelog:
[iOS][Added] - Add a `React-cxxstableapi` dependency to third-party New Architecture pods so they can resolve React Native's C++ API guard headers

Differential Revision: D110052811
@coado
coado force-pushed the export-D110052811 branch from 415c18a to d3f4add Compare August 11, 2026 10:07
…57846)

Summary:

`install_modules_dependencies` is the helper every third-party New Architecture library calls from its own podspec, and `update_search_paths` covers the user project and the pod targets that don't go through it. Neither knew about `React-cxxstableapi`.

React Native's public C++ headers are starting to include the shared guard header `<react/cxxstableapi/UmbrellaGuard.h>`. The include is unconditional, so a third-party pod that includes any guarded React Native header has to be able to resolve it. Today it can't: in the default static-library mode `$(PODS_ROOT)/Headers/Public/React-cxxstableapi` is missing from the search path, and under `use_frameworks!` the `React_cxxstableapi.framework/Headers` entry is missing.

Declare the dependency and add the matching framework header search path in both places.

Changelog:
[iOS][Added] - Add a `React-cxxstableapi` dependency to third-party New Architecture pods so they can resolve React Native's C++ API guard headers

Reviewed By: cipolleschi

Differential Revision: D110052811
@coado
coado force-pushed the export-D110052811 branch from d3f4add to b169d4e Compare August 12, 2026 12:33
@meta-codesync meta-codesync Bot closed this in d3daf11 Aug 12, 2026
@meta-codesync meta-codesync Bot added the Merged This PR has been merged. label Aug 12, 2026
@meta-codesync

meta-codesync Bot commented Aug 12, 2026

Copy link
Copy Markdown

This pull request has been merged in d3daf11.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged This PR has been merged. meta-exported p: Facebook Partner: Facebook p: Software Mansion Partner: Software Mansion Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant