libretro / pcsx_rearmed

ARM optimized PCSX fork
GNU General Public License v2.0
168 stars 120 forks source link

Fix emscripten build target #819

Closed ethanaobrien closed 9 months ago

ethanaobrien commented 9 months ago

Emscripten 3.1.53 causes attempted cpu checks to now fail with "unsupported platform"

Enables NO_MMAP and NO_PTHREAD

notaz commented 9 months ago

Enables [...] NO_PTHREAD

Could you comment a bit more about that? https://emulatorjs.org/docs4devs/Cores.html states "(Supports threads)" so there was some pthread support before?

ethanaobrien commented 9 months ago

Could you comment a bit more about that? https://emulatorjs.org/docs4devs/Cores.html states "(Supports threads)" so there was some pthread support before?

Yeah, pthreads in emscripten is a little weird. It requires exposing SharedArrayBuffer via the headers mentioned here, and it's not too common for people to do this. I also don't believe the retroarch web demo exposes these headers. Generally, it's safer to keep it disabled and let the end developer enable it if needed in their application. I hope this makes sense