Skip to content

Conversation

@zlice
Copy link
Contributor

@zlice zlice commented Jul 12, 2025

Testing the changes

  • I tested the changes in this PR: NO

Local build testing

  • I built this PR locally for my native architecture, x86_64
  • I built this PR locally for these architectures (if supported. mark crossbuilds):
    • aarch64-musl

Comments

Builds with ffmpeg7 #53844

Not sure if libmygui would benefit from RENDER=4 (opengl, instead of 1/dummy)

@Johnnynator

@zlice
Copy link
Contributor Author

zlice commented Jul 12, 2025

well if someone knows how to fix the 32bit builds lmk. hopefully helps to fix wine wow64 too?

@mmdbalkhi
Copy link
Contributor

mmdbalkhi commented Jul 12, 2025

Commenting components/esm/formid.hpp#L55 might allow the build to go through on i686 and armv7, though I’m not sure if that’s a safe change in terms of runtime behaviour or save compatibility

--- a/components/esm/formid.hpp
+++ b/components/esm/formid.hpp
@@ -51,7 +51,7 @@ namespace std
     {
         size_t operator()(const ESM::FormId& formId) const
         {
-            static_assert(sizeof(ESM::FormId) == sizeof(size_t));
+            // static_assert(sizeof(ESM::FormId) == sizeof(size_t));
             size_t s;
             memcpy(&s, &formId, sizeof(size_t));
             return hash<size_t>()(s);

@mmdbalkhi
Copy link
Contributor

mmdbalkhi commented Jul 12, 2025

Just got confirmation on IRC: 32-bit builds aren't officially supported, so the static_assert(sizeof(ESM::FormId) == sizeof(size_t)) is intentional to enforce 64-bit size. However, it's been mentioned that replacing size_t with a fixed-width type like uint64_t might work, as all RefId::Value types are expected to be 64 bits. It could be worth testing as a workaround if you're targeting i686/armv7
(info via assumeru on #openmw @ libera.chat)

@zlice
Copy link
Contributor Author

zlice commented Jul 12, 2025

Commenting components/esm/formid.hpp#L55 might allow the build to go through on i686 and armv7, though I’m not sure if that’s a safe change in terms of runtime behaviour or save compatibility

that's what i did for my own wine+wow64 in the meantime, not exactly a fix but it does work

Just got confirmation on IRC: 32-bit builds aren't officially supported,

i know musl-32bit isn't supported, but i thought regular x86-32bit and the arm6/7s were

@zlice
Copy link
Contributor Author

zlice commented Jul 16, 2025

so, interestingly enough i built for i686-musl (which isn't supported) and it finishes fine

so i guess this is something glibc-32bit specific? but armv6 is musl too

edit: nvm, maybe idk how the build system works, i dont see a musl-i686 xbps file anywhere so it must've been 64

@zlice
Copy link
Contributor Author

zlice commented Jul 16, 2025

opened a issue on openmw gitlab, have some patches that should build, but no clue if theyre correct and i don't have morrowwind to test.

marking as wip until i hear back

@zlice zlice changed the title openmw: update to 0.49.0 [WIP] openmw: update to 0.49.0 Jul 16, 2025
@zlice
Copy link
Contributor Author

zlice commented Jul 16, 2025

so fwiw, technically 32bit is no longer 'supported' https://openmw.org/faq/#xp32

may still patch though and it should build, for w/e that means to void

@zlice zlice changed the title [WIP] openmw: update to 0.49.0 openmw: update to 0.49.0 Jul 27, 2025
@zlice
Copy link
Contributor Author

zlice commented Jul 27, 2025

looks like theyre going with the 32bit patches for unofficial 32bit support

edit: may have further changes?

@Assumeru
Copy link

Not sure if libmygui would benefit from RENDER=4 (opengl, instead of 1/dummy)

I think it should compile and run, but OpenMW wouldn't use it so it'd just be bloat. OpenMW includes its own implementation of MyGUI's interfaces to render through OSG.

@zlice
Copy link
Contributor Author

zlice commented Aug 3, 2025

fix merged upstream https://gitlab.com/OpenMW/openmw/-/merge_requests/4791

@Johnnynator Johnnynator merged commit 2edf7b4 into void-linux:master Aug 9, 2025
8 checks passed
@zlice zlice deleted the openmw49 branch August 12, 2025 17:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants