Code modularity and cross-platform design

C++ library still works more towards Linux(Ubuntu) rather than Windows. In Ubuntu it is fairly easy to setup but Windows MSVC makes it a huge pain to get things working. Codebase so far feels a bit hardcoded. That’s true for some parts atleast. What’s your thought on this?

I personally don’t care about Windows or macOS. The whole project was designed with cross-plattform compatibility in mind, but I don’t have the motivation and expertise to improve things for those platforms, but that’s something the community can do very well.

In the early stage of the project we had a libopenage/crossplattform/ directory, which turned out to be a bad idea for code modularity, which is why we put in the plattform switches back to the specific files where the functions actually differ.

I think it’s not a good way to put it. I think there should be some sorta check for all platforms. For example openage adds a new library. In CMake we need to sort out which is which for each platform and better to document the process to add the library. Also it seems CMake tends to give different output for executables… Also for crossplatform stability use simple preprocessor directives? Like different file path for Windows and Ubuntu?

Seems like this library offers cross APIs and at the same time being faithful to cross platform. This project can use this library.