Add github workflows for automatic builds of Dolphin #59
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds workflows for building Dolphin on Linux, Mac OS and Windows as discussed in #58 . Originally I wanted to merge them into a single file but I found them different enough that I made separate files for each OS.
Alongside building, the workflows also upload the builds. The one for Linux is built on Ubuntu 24.04 so it'll only work on that version specifically (due to different package versions). The one for Windows runs fine (the executable gets built on folder
Releaseso it has to be manually copied to the root directory, alongside the python embeded files like before).I had to make a few changes in the source code though. In finding python libraries whenever
find_packageis attempted it uses the systems python libraries which didn't run for me on my Windows, so instead I included them manually from the one inExternals/python, let me know what you think.As for the second change, I encountered a very strange issue. If you attempt to build the project with cmake on Windows, you'll encounter symbol error on
Gui::DrawText, which should definitely exist and doesn't happen for other methods inGui. If you change the name to something else (Gui::DrawText2in this case) the projects gets built successfully... Honestly a very odd issue and considering that this doesn't happen on Linux and Mac OS (and via solution) it's safe to assume that it's a bug with the compiler/linker/build system. Thankfully this doesn't change Python's API but if you dislike this I'll revert the changes but we'll also have to ditch Windows' workflow.The Error:
And also, merry Christmas!