team-eternity / eternity

The Eternity Engine
http://eternity.youfailit.net/wiki/Main_Page
GNU General Public License v3.0
230 stars 36 forks source link

Fix compilation on new Mac #584

Closed ioan-chera closed 1 year ago

ioan-chera commented 1 year ago

I've acquired a new Mac because the old one became unsupported with the latest SDL libraries. Right now I'll need to update the code to work on current Macs. To do list:

Warning: minimum deployment target moved up to macOS 10.15 (I previously said 10.13, but std::filesystem really requires 10.15).

ioan-chera commented 1 year ago

Comments about the lack of music:

  1. The error is in I_SDLRegisterSong here:
    // Try SDL_mixer locally
    rw    = SDL_RWFromMem(data, size);
    music = Mix_LoadMUS_RW(rw, true);

    where music is null and the SDL error is "Unrecognized audio format".

  2. Apparently MIDI is a removed feature from the built binaries? https://github.com/libsdl-org/SDL_mixer/issues/419
  3. To this end I need to figure how to build a framework locally, or alternatively how to easily bundle all resulting libraries without leaking any dependency to the local system.

Tough, but this is what it takes to have a working new-Mac build.

ioan-chera commented 1 year ago

Temporarily fixed the music problem by using one of the temporary URLs from the linked GitHub issue. I'll need to keep an eye on it when music stops working.

ioan-chera commented 1 year ago

Done for now.