-
Notifications
You must be signed in to change notification settings - Fork 24.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use modern Android libc++ in Yoga and React Native OSS #39795
Conversation
This pull request was exported from Phabricator. Differential Revision: D49895949 |
This pull request was exported from Phabricator. Differential Revision: D49895949 |
) Summary: X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and later NDK versions will now also bump libc++ as part of bumping LLVM/Clang. This requires an Alpha AGP version, which is... spooky, and we would need to update that before shipping RN 0.74/Yoga 3.0. It does bring us closer to what we want to ship then however. Differential Revision: D49895949
f99db90
to
fdc09a5
Compare
Summary: X-link: facebook/react-native#39795 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and later NDK versions will now also bump libc++ as part of bumping LLVM/Clang. This requires an Alpha AGP version, which is... spooky, and we would need to update that before shipping RN 0.74/Yoga 3.0. It does bring us closer to what we want to ship then however. Differential Revision: D49895949
) Summary: X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and later NDK versions will now also bump libc++ as part of bumping LLVM/Clang. This requires an Alpha AGP version, which is... spooky, and we would need to update that before shipping RN 0.74/Yoga 3.0. It does bring us closer to what we want to ship then however. Differential Revision: D49895949
fdc09a5
to
fae725d
Compare
This pull request was exported from Phabricator. Differential Revision: D49895949 |
Summary: X-link: facebook/react-native#39795 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Differential Revision: D49895949
Summary: X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Differential Revision: D49895949
fae725d
to
1efbb88
Compare
This pull request was exported from Phabricator. Differential Revision: D49895949 |
Summary: X-link: facebook/react-native#39795 Pull Request resolved: facebook#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Differential Revision: D49895949 fbshipit-source-id: 4682087ddf42a7cfc85958e7258d8d38a72d630c
This pull request was exported from Phabricator. Differential Revision: D49895949 |
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Differential Revision: D49895949 fbshipit-source-id: 5e0045da5a8a4ee31980d0f082afd47d3f5f977e
1efbb88
to
e64bd2a
Compare
This pull request was exported from Phabricator. Differential Revision: D49895949 |
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang, and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Differential Revision: D49895949 fbshipit-source-id: af1345ba5095eb3d67b5ce32e386222ffa4ece13
e64bd2a
to
960916f
Compare
This pull request was exported from Phabricator. Differential Revision: D49895949 |
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Differential Revision: D49895949 fbshipit-source-id: 36b7777f4fcd6b8f577aa1dc654237ff53bda8bd
960916f
to
25a6ff1
Compare
This pull request was exported from Phabricator. Differential Revision: D49895949 |
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 0bdfafbf4e7f217f67ea40abbaaa1814d8143b91
25a6ff1
to
fa005f3
Compare
Base commit: 7d88ac4 |
Summary: X-link: facebook/react-native#39795 Pull Request resolved: facebook#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 0ff69ef8495d67ccf15deaa67576dc2a99a70a02
Summary: X-link: facebook/react-native#39795 Pull Request resolved: facebook#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 1b27bc0284a16c5883b9898f857c059c0d8be852
This pull request was exported from Phabricator. Differential Revision: D49895949 |
fa005f3
to
66e72a8
Compare
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 622b526b983f6db5e3dd626e99b24d9651e13dae
Summary: X-link: facebook/react-native#39795 Pull Request resolved: facebook#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 6adf8d6f818a53568cd2e4c8539c5994aa0ffd51
This pull request was exported from Phabricator. Differential Revision: D49895949 |
66e72a8
to
cf147db
Compare
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 147990c3543b5f15e3944e89855c20ed698e3bdd
Summary: This is what Folly is built against internally. Bump the version we use, and the standard we compile with, to take some different paths, and see if we fix some warnings caused by FMT with the ndk bump. Changelog: [Internal] Pull Request resolved: facebook#39799 Test Plan: Passes in CircleCI Differential Revision: D49900112 fbshipit-source-id: f33f9684d0836530409a553bb4c88bbc082a1f57
Summary: This bumps folly, to absorb facebook/folly@45fffa6 which fixes warnings in XCode 15, and NDK 26 (treated as error bc we have better hygiene there). We then bump a little bit further to get past a new warning added, then fixed later. Need to manually set `FOLLY_HAVE_GETTIME` on Apple because of the silliness described in facebook/folly#1470 (comment) There is not a combination of Folly, and Android libc++, that has fixes for warnings, but doesn't require the new libc++ in NDK 26. It is expected then that this commit will fail the build, but the next should succeed, and the two must be landed at the same time. Changelog: [Internal] Pull Request resolved: facebook#39798 Differential Revision: D49897681 fbshipit-source-id: 21ddba73d0434bf82c15f3a18e6a15d14c18c503
Summary: Pull Request resolved: facebook#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: f1ba61bb86b580edeb423cd9dede2ee95e2427e6
This pull request was exported from Phabricator. Differential Revision: D49895949 |
cf147db
to
2c16954
Compare
Summary: X-link: facebook/react-native#39795 Pull Request resolved: #1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 37bb4d1fdf81137be7f14f6675b4e079c6f861e4
This pull request has been merged in 9ce7b56. |
Summary: Pull Request resolved: facebook/react-native#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 37bb4d1fdf81137be7f14f6675b4e079c6f861e4 Original: facebook/react-native@9ce7b56
Summary: Pull Request resolved: facebook/react-native#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 37bb4d1fdf81137be7f14f6675b4e079c6f861e4 Original-Commit: facebook/react-native@9ce7b56
Summary: Pull Request resolved: facebook/react-native#39795 X-link: facebook/yoga#1412 Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang. This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case). Changelog: [Android][Changed] - Use NDK 26 Reviewed By: yungsters Differential Revision: D49895949 fbshipit-source-id: 37bb4d1fdf81137be7f14f6675b4e079c6f861e4 Original-Commit: facebook/react-native@9ce7b56
Summary:
Android NDK 25 uses a version of libc++ that is more than three years old, missing a lot of basic features of C++ 20. This is rectified in NDK 26 (latest LTS NDK), which brings us up to date with latest Clang (17, released this year), and adds a new policy where future NDK versions will bump libc++ as part of bumping LLVM/Clang.
This requires an a beta AGP version (and corresponding Android Studio Preview). Based on how far we are historically, it wouldn't be a surprise if we see the stable release this month (well before the RN 0.74/Yoga 3.0 cut, even in the worse case).
Changelog:
[Android][Changed] - Use NDK 26
Differential Revision: D49895949