Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
sagemathgh-38855: Fixes for Xcode 16 and gcc/gfortran, boost_cropped
Fix gfortran and boost_cropped builds for Xcode 16 <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> I am reopening the PR at sagemath#38783. The patches there work well and should be merged. (The original PR could not be reopened because the repo upon which it was based has been removed.) From that PR's description: This PR modifies the patches in the gfortran spkg and adds a patch to the boost_cropped spkg. It addresses some issues caused by changes added in XCode 16, which is the XCode version compatible with macOS 15 Sequoia. The gfortran spkg failed to build on macOS 15 Sequoia with XCode 16 because of this bug which is specific to clang 16. The bug report contains a patch, which is what this PR adds. However, that patch changed files which were also being patched by the existing gcc-13.3.0-arm.patch. Rather than have patches which must be applied in a certain order, this PR replaces the gcc-13.3.0-arm patch with a new patch file named gcc-13_3_0.patch which incorporates the new changes (no longer just for arm) with the older ones. The e-antic spkg failed to build on macOS 15 Sequoia. The reason turned out to be that XCode 16, unlike earlier versions, now generates an error for code which used to generate a warning about assigning an out-of- range value to an enum. The code that triggers the error is in a boost header file. There is a patch for the header file in this macports ticket. The patch modifies a line in the header file which controls how this warning / error is handled by certain compilers. The change adds clang 16 to the list of those compilers. See https://groups.google.com/g/sage-devel/c/sv3jCczVa40 and https://groups.google.com/g/sage-devel/c/yYRBm-hc918 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [X] The title is concise and informative. - [X] The description explains in detail what this PR is about. - [X] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#38855 Reported by: John H. Palmieri Reviewer(s):
- Loading branch information