Follow imgui recommendation and streamline build dependencies #355

Merged
Exzap merged 2 commits from embed-imgui into main 2022-10-10 20:43:16 -03:00
Exzap commented 2022-10-10 19:43:13 -03:00 (Migrated from github.com)

The imgui repository doesn't come with a build script since it's meant to be embedded into projects by just copying the source files. Package managers work around this by inventing their own build script, which is suboptimal because everyone adds their own spin on things. But more critically, for flatpak (and appimage?) this means we would also have to create a custom CMakeLists.txt or find some other roundabout way to build imgui.
So instead, this PR changes it so we follow their recommendation. imgui is built as part of ImguiImpl and we source their files via a git submodule. Doing it this way means no workaround is required for any of the platforms we currently target, including the future flatpak.

This PR also simplifies the dependencies of RendererShaderVk.cpp by getting rid of the check for legacy versions of glslang, which we don't support anymore anyway.

The imgui repository doesn't come with a build script since it's meant to be embedded into projects by just copying the source files. Package managers work around this by inventing their own build script, which is suboptimal because everyone adds their own spin on things. But more critically, for flatpak (and appimage?) this means we would also have to create a custom `CMakeLists.txt` or find some other roundabout way to build imgui. So instead, this PR changes it so we follow their recommendation. imgui is built as part of ImguiImpl and we source their files via a git submodule. Doing it this way means no workaround is required for any of the platforms we currently target, including the future flatpak. This PR also simplifies the dependencies of `RendererShaderVk.cpp` by getting rid of the check for legacy versions of glslang, which we don't support anymore anyway.
abouvier commented 2022-10-11 05:14:51 -03:00 (Migrated from github.com)

Aren't you also supposed to use the files in imgui/backends instead of vendor them in Cemu/src/imgui?

Aren't you also supposed to use the files in [imgui/backends](https://github.com/ocornut/imgui/tree/master/backends) instead of vendor them in [Cemu/src/imgui](https://github.com/cemu-project/Cemu/tree/main/src/imgui)?
Exzap commented 2022-10-11 06:59:17 -03:00 (Migrated from github.com)

Generally yes, but we use customized backends.

Generally yes, but we use customized backends.
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: cemu-project_Mirror/Cemu-2024-03-05#355
No description provided.