NatronGitHub / Natron

Open-source video compositing software. Node-graph based. Similar in functionalities to Adobe After Effects and Nuke by The Foundry.
http://NatronGitHub.github.io
GNU General Public License v2.0
4.53k stars 330 forks source link

Update shiboken includes to fix Windows build. #938

Closed acolwell closed 5 months ago

acolwell commented 5 months ago

Thanks for submitting a pull request! Please provide enough information so that others can review your pull request. Additionally, make sure you've done all of these things:

PR Description

What type of PR is this? (Check one of the boxes below)

What does this pull request do?

Pyside2 and a few other python related packages were updated on MSYS2 in the last week or so which caused the Windows Installer builds to start failing. This change modifies how include paths are specified on the command-line. It appears that shiboken no longer handles colon separated path lists so each include is now specified with its own -I option.

Have you tested your changes (if applicable)? If so, how?

Yes. I verified that these changes fix the installer build locally and via the GitHub action (https://github.com/acolwell/Natron/actions/runs/7514747615)

devernay commented 5 months ago

Does that fail because one or more of the path components contain spaces? In which case double quotes around the variable expansion in the shiboken2 call could also fix it

acolwell commented 5 months ago

Does that fail because one or more of the path components contain spaces? In which case double quotes around the variable expansion in the shiboken2 call could also fix it

It fails because shiboken2 uses a different token to separate paths. On Linux (and I suspect Mac) it uses ':' and on Windows it uses ';'. You can see this by looking at the 'shiboken2 --help' text.

I've also just updated the typesystem path args since the help text reports the same platform difference. I'm not sure why ':' seemed to still work for that argument, but I figure changing it now should help avoid future breakages if they ever change that behavior.