Skip to content

conan v2 wip #8

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Draft
wants to merge 52 commits into
base: main
Choose a base branch
from
Draft

conan v2 wip #8

wants to merge 52 commits into from

Conversation

kambala-decapitator
Copy link
Collaborator

No description provided.

@kambala-decapitator
Copy link
Collaborator Author

failure of cross-building Qt 5 from macOS ARM -> Intel is unexpected. Will check what's wrong, but maybe we'll have to use Intel runner with Xcode 15 to produce Intel deps.

@kambala-decapitator
Copy link
Collaborator Author

finally all deps build correctly.

@IvanSavenko I consider moving all the Conan related things to this repo right in this PR (like described in the Future Improvements), otherwise it's quite inconvenient to work with them.

@IvanSavenko
Copy link
Member

If you find this approach more convenient - sure.

Would require copy-pasting conan / CI files from main repo to here, but probably still more convenient.

@kambala-decapitator
Copy link
Collaborator Author

The files will be moved, not copy-pasted. And this repo will be added to vcmi as submodule.

@kambala-decapitator
Copy link
Collaborator Author

automatically created release will look like this (apart from minor cosmetic changes): https://github.com/vcmi/vcmi-dependencies/releases/tag/untagged-5d54e88a0e3d8c424be3

currently ffmpeg started failing for some unobvious reason on Windows (which I can't reproduce even in a separate GhA run in other repo). The intention is that after all builds are green, the draft pre-release becomes non-draft.

Will also adjust to actually create release only when running manually from master branch.

@IvanSavenko Do you have other thoughts / input?

@IvanSavenko
Copy link
Member

Will also adjust to actually create release only when running manually from master branch.

Or on PR merge? But works fine for me either way.

currently ffmpeg started failing for some unobvious reason on Windows

That "zlib not found" message? I think we can simply disable zlib support from ffmpeg. From what I see it is only needed to support some rare decoders, which we have disabled anyway. No idea whether this would fix the build though.

Do you have other thoughts / input?

  • If Windows-based conan2 fails, perhaps restore vcpkg and keep using it for now, until that problem is resolved? I am OK with removing mingw, since making it work with conan2 will likely need some effort and nobody uses those artifacts at the moment. But still not sure if we need to actually remove vcpkg support that works fine so far and is used by our Windows devs.

  • No 32-bit Windows support?

  • Why do we need all those Qt patches?

  • Looks like dependencies are now packaged as .tgz and not .txz? Fine for me either way though.

@kambala-decapitator
Copy link
Collaborator Author

That "zlib not found" message? I think we can simply disable zlib support from ffmpeg. From what I see it is only needed to support some rare decoders, which we have disabled anyway. No idea whether this would fix the build though.

yes. In my own test repo I can't reproduce for example and can't figure out what's the difference. Especially since it used to work a month ago.

But today I was testing on a virtual windows machine and managed to reproduce random failures with various libraries. The error in all cases was from linker "can't open exe for writing" during internal FFmpeg tests.

I'll try once more in GhA and will upload the conan directory for inspection to see if it's the same reason or not. After that will try disabling zlib.

But still not sure if we need to actually remove vcpkg support that works fine so far and is used by our Windows devs.

what I don't like with vcpkg is amount of project patching to make it work while Conan requires close to zero. (also possible that vcpkg is integrated not quite correctly)

No 32-bit Windows support?

simply didn't add respective matrix dimension, will do

Why do we need all those Qt patches?

KDE patches are recommended for usage (but not required). I decided to include them since Qt requires a few of our custom patches anyway.

Looks like dependencies are now packaged as .tgz and not .txz? Fine for me either way though.

now the archive is created by Conan command and will be restored using its counterpart, and it can do only tgz.

@kambala-decapitator
Copy link
Collaborator Author

ffmpeg+zlib solved, now Qt started failing on 32-bit

@kambala-decapitator
Copy link
Collaborator Author

now Qt started failing on 32-bit

nailed it and opened PR with fix: conan-io/conan-center-index#27449

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants