Skip to content

build: SG-42130: XCode26 support#1091

Merged
cedrik-fuoco-adsk merged 9 commits intoAcademySoftwareFoundation:mainfrom
mcoliver:xcode26
Mar 2, 2026
Merged

build: SG-42130: XCode26 support#1091
cedrik-fuoco-adsk merged 9 commits intoAcademySoftwareFoundation:mainfrom
mcoliver:xcode26

Conversation

@mcoliver
Copy link
Contributor

[ 1090: Build with Xcode26 ]

Linked issues

Fixes #1090

Summarize your change.

Backported a patch to Qt 6.5.3 and 6.8.3 which are the community versions available and do not have the patch in commercial versions

Describe the reason for the change.

Want to build with Xcode26. Was annoying to constantly have to switch with xcode-select. Additionally xcode26 should bring some compiler optimizations that may improve performance.

Describe what you have tested and on which operating system.

macos26.2 with Xcode26.2. RV CY2025

@cedrik-fuoco-adsk cedrik-fuoco-adsk added the do not merge Do not merge the PR label Jan 28, 2026
@cedrik-fuoco-adsk cedrik-fuoco-adsk removed the do not merge Do not merge the PR label Feb 12, 2026
Copy link
Contributor

@cedrik-fuoco-adsk cedrik-fuoco-adsk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for fixing that! Did you encounter any other build issue or warning that came with using XCode 26?

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds an automated workaround to build with Xcode 26+ on macOS by patching community Qt installs to avoid AGL, and updates docs/config accordingly.

Changes:

  • Auto-detect Xcode 26+ in rvcmds.sh and run a Qt patching script.
  • Add apply_qt_fix.sh and qt_fix.patch to remove AGL references from Qt files.
  • Update macOS build documentation and tweak Python CMake target properties.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
rvcmds.sh Detects Xcode 26+ on macOS and invokes Qt patch application automatically.
apply_qt_fix.sh New script to apply an AGL-removal patch to specific Qt versions.
qt_fix.patch Patch content that removes AGL framework/header usage from Qt config files.
docs/build_system/config_macos.md Documents the new Xcode 26+ Qt patch requirement and how it’s applied.
cmake/dependencies/python3.cmake Alters properties of the imported Python::Python target (potentially to affect system include handling).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@bernie-laberge bernie-laberge added the community Contribution from the Open RV Community label Feb 17, 2026
@bernie-laberge bernie-laberge changed the title Xcode26 support SG-42130: Xcode26 support Feb 17, 2026
Copy link
Contributor

@bernie-laberge bernie-laberge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM
Thank you @mcoliver for this great contribution !

@cedrik-fuoco-adsk cedrik-fuoco-adsk changed the title SG-42130: Xcode26 support build: SG-42130: Xcode26 support Feb 19, 2026
@cedrik-fuoco-adsk
Copy link
Contributor

I updated your branch to main to test it locally on my MacBook, but there are some issues with pre-commit again.

@cedrik-fuoco-adsk cedrik-fuoco-adsk changed the title build: SG-42130: Xcode26 support build: SG-42130: XCode26 support Feb 19, 2026
@cedrik-fuoco-adsk
Copy link
Contributor

Hi @mcoliver, we would be ready to merge the PR. Do you have time to fix the various issues?

@mcoliver
Copy link
Contributor Author

mcoliver commented Mar 2, 2026

Hi @mcoliver, we would be ready to merge the PR. Do you have time to fix the various issues?

Hi @cedrik-fuoco-adsk Accepted some of the suggestions and ran pre-commit run --all-files. Should be good to go but let me know.

mcoliver and others added 9 commits March 2, 2026 13:23
Signed-off-by: Michael Oliver <mcoliver@gmail.com>
XCode26 was refusing to build Qt 6.5.3 and 6.8.3 because it lacks AGL.  AGL is no longer used and newer versions of Qt have patched.  This is a backport to patch 6.5.3 and 6.8.3.

For reference:
https://qt-project.atlassian.net/browse/QTBUG-137687
qt/qtbase@cdb33c3
Homebrew/homebrew-core@9ef0937

Signed-off-by: Michael Oliver <mcoliver@gmail.com>
updated cmake/dependencies/python3.cmake to use the IMPORTED_NO_SYSTEM property for the Python::Python target. This ensures that the Python include paths are treated as regular include paths (-I) rather than system include paths (-isystem), which resolves search order issues on newer Xcode versions.

Signed-off-by: Michael Oliver <mcoliver@gmail.com>
Signed-off-by: Michael Oliver <mcoliver@gmail.com>
cmake-format -i CMakeLists.txt cmake/**/*.cmake

Signed-off-by: Michael Oliver <mcoliver@gmail.com>
See this link for more details https://cmake.org/cmake/help/v3.31/prop_tgt/IMPORTED_NO_SYSTEM.html

Signed-off-by: Michael Oliver <mcoliver@gmail.com>
non code changes.  Grammatical fixes to docs.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Michael Oliver <mcoliver@gmail.com>
Signed-off-by: Michael Oliver <mcoliver@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Michael Oliver <mcoliver@gmail.com>
@cedrik-fuoco-adsk
Copy link
Contributor

cedrik-fuoco-adsk commented Mar 2, 2026

Thank you @mcoliver ! I'll merge it

@cedrik-fuoco-adsk cedrik-fuoco-adsk added the build Having issue building Open RV label Mar 2, 2026
@cedrik-fuoco-adsk cedrik-fuoco-adsk merged commit 946e73c into AcademySoftwareFoundation:main Mar 2, 2026
20 checks passed
chenlj1 pushed a commit to chenlj1/OpenRV that referenced this pull request Mar 6, 2026
### [ 1090: Build with Xcode26 ]

### Linked issues
Fixes AcademySoftwareFoundation#1090 

### Summarize your change.
Backported a patch to Qt 6.5.3 and 6.8.3 which are the community
versions available and do not have the patch in commercial versions

### Describe the reason for the change.
Want to build with Xcode26. Was annoying to constantly have to switch
with xcode-select. Additionally xcode26 should bring some compiler
optimizations that may improve performance.

### Describe what you have tested and on which operating system.
macos26.2 with Xcode26.2.  RV CY2025

---------

Signed-off-by: Michael Oliver <mcoliver@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Having issue building Open RV community Contribution from the Open RV Community tracked

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Build with Xcode26

4 participants