Closed
Conversation
Contributor
|
This pull request was exported from Phabricator. Differential Revision: D45552325 |
Base commit: 523c77d |
Contributor
|
This pull request was exported from Phabricator. Differential Revision: D45552325 |
28df745 to
30fda44
Compare
NickGerleman
added a commit
to NickGerleman/yoga
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 Pull Request resolved: facebook#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 549a9c01a45bc06b344ee4319528aadd3fc8326e
NickGerleman
added a commit
to NickGerleman/yoga
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 Pull Request resolved: facebook#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 881e83b72166900fc475bcf77ec2849759766894
30fda44 to
f9e1f4c
Compare
Contributor
|
This pull request was exported from Phabricator. Differential Revision: D45552325 |
NickGerleman
added a commit
to NickGerleman/litho
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 X-link: facebook/yoga#1278 facebook/yoga#1269 broke building Yoga Buck targets with MSVC. The build logs suggest this is because headers may be double included from `exported_headers` and `headers`, causing redefinition. We are not saved on the MSVC build by `#pragma once` since headers are imported from different paths (but the Clang build seems okay with this). This diff attempts to isolate headers so that nothing may be double exported. This is done in a little bit of a tricky way, since Starlark doesn't seem to support globs in the form of `{a,b}`, and Yoga's directory structure does not separate public and private headers cleanly (we should fix this, but it needs to be changed in multiple build systems at once which I want to do not in this change). We also get a side effect that every file which isn't a public header needs to use the namespaced form to refer to a public header, even if in the same directory. Though this is going to be needed anyway if we end up wanting to move the public headers to a new directory. Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 407fda6b062692c1016e157b066cac286c29ec49
NickGerleman
added a commit
to NickGerleman/yoga
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 Pull Request resolved: facebook#1278 facebook#1269 broke building Yoga Buck targets with MSVC. The build logs suggest this is because headers may be double included from `exported_headers` and `headers`, causing redefinition. We are not saved on the MSVC build by `#pragma once` since headers are imported from different paths (but the Clang build seems okay with this). This diff attempts to isolate headers so that nothing may be double exported. This is done in a little bit of a tricky way, since Starlark doesn't seem to support globs in the form of `{a,b}`, and Yoga's directory structure does not separate public and private headers cleanly (we should fix this, but it needs to be changed in multiple build systems at once which I want to do not in this change). We also get a side effect that every file which isn't a public header needs to use the namespaced form to refer to a public header, even if in the same directory. Though this is going to be needed anyway if we end up wanting to move the public headers to a new directory. Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: f11852242c600044e4fb6da3aa7b522da248ca4b
f9e1f4c to
2bf0d1c
Compare
Contributor
|
This pull request was exported from Phabricator. Differential Revision: D45552325 |
NickGerleman
added a commit
to NickGerleman/yoga
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 Pull Request resolved: facebook#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 9d22fa0ffa24a5994c789ada98e07070ede4b9e2
Summary: Pull Request resolved: facebook#37242 X-link: facebook/yoga#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 723cacbebcf952776135181f9068d113da2e925d
NickGerleman
added a commit
to NickGerleman/litho
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 X-link: facebook/yoga#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 3df09db5aeec30566e2d8a60105cdb59ebc7409c
2bf0d1c to
8e406c3
Compare
Contributor
|
This pull request was exported from Phabricator. Differential Revision: D45552325 |
facebook-github-bot
pushed a commit
to facebook/yoga
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 Pull Request resolved: #1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 5687e8ec27a7a70df66e2f89e800210e3ce21ba3
facebook-github-bot
pushed a commit
to facebook/litho
that referenced
this pull request
May 4, 2023
Summary: X-link: facebook/react-native#37242 X-link: facebook/yoga#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 5687e8ec27a7a70df66e2f89e800210e3ce21ba3
Contributor
|
This pull request has been merged in 1cd0f57. |
liujinye-sys
pushed a commit
to open-vela/external_yoga
that referenced
this pull request
Dec 16, 2025
Summary: X-link: facebook/react-native#37242 Pull Request resolved: facebook/yoga#1278 Reviewed By: yungsters Differential Revision: D45552325 fbshipit-source-id: 5687e8ec27a7a70df66e2f89e800210e3ce21ba3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
facebook/yoga#1269 broke building Yoga Buck targets with MSVC. The build logs suggest this is because headers may be double included from exported_headers and headers, causing redefinition. We are not saved on the MSVC build by #pragma once since headers are imported from different paths (but the Clang build seems okay with this).
This diff attempts to isolate headers so that nothing may be double exported. This is done in a little bit of a tricky way, since Starlark doesn't seem to support globs in the form of {a,b}, and Yoga's directory structure does not separate public and private headers cleanly (we should fix this, but it needs to be changed in multiple build systems at once which I want to do not in this change).
We also get a side effect that every file which isn't a public header needs to use the namespaced form to refer to a public header, even if in the same directory. Though this is going to be needed anyway if we end up wanting to move the public headers to a new directory.
Differential Revision: D45552325