Commit graph

2076 commits

Author SHA1 Message Date
刘皓
c01917cac8
Set OpenGL viewport every frame in libretro builds 2025-02-26 12:48:01 -05:00
刘皓
63a2430599
Only use get_current_framebuffer() in blitBeginScreen 2025-02-26 12:36:57 -05:00
刘皓
9f33a0acea
Implement image loading in libretro builds 2025-02-25 12:53:57 -05:00
刘皓
8ed8dd14ee
Add stb_image and PortableGL to libretro builds 2025-02-24 23:22:00 -05:00
刘皓
2029539ece
Replace pixman with pixman-region in libretro builds 2025-02-24 17:13:25 -05:00
刘皓
3506ce6cc6
Make sure pixman inherits compiler flags in libretro builds 2025-02-24 16:44:00 -05:00
刘皓
81c272cb9f
Add libpng and pixman to libretro builds 2025-02-24 15:32:02 -05:00
刘皓
1cc9120323
Merge branch 'libretro-compat' into libretro 2025-02-24 14:06:44 -05:00
刘皓
5124baf23e
Retrieve RetroArch Nintendo Switch patch from GitHub 2025-02-24 01:08:00 -05:00
刘皓
4a810730f1
Merge branch 'libretro-compat' into libretro 2025-02-22 23:16:58 -05:00
刘皓
07780d4702
Require LTO when building for PowerPC 2025-02-22 23:16:37 -05:00
刘皓
e803057d2c
Disable LTO in libretro PlayStation 3 builds 2025-02-22 17:13:51 -05:00
刘皓
9ed11ecffa
Use libretro's PlayStation 3 Docker image instead of ScummVM's 2025-02-22 16:04:51 -05:00
刘皓
8a8860912a
Merge branch 'libretro-compat' into libretro 2025-02-21 23:56:52 -05:00
刘皓
71fa2453e8
Fix libretro compilation error when using GCC < 8.1.0 2025-02-21 17:56:32 -05:00
刘皓
9e4a221240
Fix many, many compilation errors in libretro PlayStation 3 builds 2025-02-21 14:06:28 -05:00
刘皓
f8d5fc06f5
Disable PIC in static libretro builds
Apparently Vita SDK doesn't support PIC. It throws "Invalid relocation
type 25!" while creating the .self file when building RetroArch.
2025-02-21 00:17:01 -05:00
刘皓
6cbf1b34ca
Move the FLAC fix for Vita SDK into meson.build 2025-02-20 19:20:01 -05:00
刘皓
8559091afd
Fix mpg123-related libsndfile linking error in libretro Vita SDK builds 2025-02-20 18:36:02 -05:00
刘皓
0392576a7f
Install wiiurpxtool in the libretro Wii U autobuild 2025-02-20 13:36:28 -05:00
刘皓
fc26ac927b
Add a pthreads shim for libretro builds on platforms without pthreads 2025-02-20 12:49:36 -05:00
刘皓
071be23d74
Fix some bitmap and gl-meta bugs in libretro builds 2025-02-19 21:49:59 -05:00
刘皓
20c8f6d463
Get Graphics::update() working (probably) in libretro builds 2025-02-19 18:16:08 -05:00
刘皓
f5406d34b4
Disable LTO in libretro Alpine Linux s390x autobuild if Clang version < 19.1.0 2025-02-19 12:52:12 -05:00
刘皓
540d5f1a1a
Integrate fallback glBindFramebuffer implementation into libretro builds 2025-02-19 12:28:20 -05:00
刘皓
9343a5084b
Build FLAC in integer-only mode in libretro PlayStation Vita builds 2025-02-19 01:53:10 -05:00
刘皓
7e4484a640
Start integrating the OpenGL code for sprites into libretro builds 2025-02-18 23:12:42 -05:00
刘皓
613493c773
Merge branch 'misc-fixes' into libretro 2025-02-18 23:10:37 -05:00
刘皓
ceea260b82
Make the xxd command in shader/meson.build less fragile 2025-02-18 22:58:58 -05:00
刘皓
4b17373dc7
Implement loading OpenGL symbols in libretro builds 2025-02-18 18:39:01 -05:00
刘皓
7c5ae9a8e5
Start integrating libretro OpenGL graphics 2025-02-18 14:05:14 -05:00
刘皓
b70c61e095
Add libretro-compat branch to autobuild 2025-02-18 12:25:28 -05:00
刘皓
42c4ff9497
Make sandbox_malloc into a coroutine
According to AddressSanitizer, when `sandbox_malloc` causes the
WebAssembly memory to grow in size, every single coroutine on the
sandbox stack gets corrupted. So if `sandbox_malloc` is going to cause
the memory to grow in size, we need to yield so that there are no
coroutines on the sandbox stack while the reallocation occurs.
2025-02-17 00:38:40 -05:00
刘皓
decb4236bd
Fix use after free in wasi.cpp found by AddressSanitizer 2025-02-17 00:07:54 -05:00
刘皓
cae4166765
Use rb_obj_alloc instead of rb_class_new_instance in binding-sandbox
Somehow, using `rb_class_new_instance` causes use-after-free errors in
the subsequent call to `set_private_data`.

Well, `rb_obj_alloc` is what's used in the normal MRI bindings. I just
replaced the `rb_obj_alloc` calls with `rb_class_new_instance`
at some point in binding-sandbox. Guess that wasn't a good idea.
2025-02-16 23:30:09 -05:00
刘皓
58cf92e482
Fix memory corruption in wasm-rt found by AddressSanitizer 2025-02-16 17:52:41 -05:00
刘皓
5e93e5e834
Mark wasm_rt_trap as noreturn 2025-02-16 01:26:16 -05:00
刘皓
f355a6585e
Disable LTO when using OpenOrbis toolchain
This toolchain doesn't support `-ffat-lto-objects`, so we can't use LTO
properly. Doesn't support C++ exceptions either.
2025-02-14 21:29:44 -05:00
刘皓
79f9108748
Merge branch 'base' into misc-fixes 2025-02-14 12:24:47 -05:00
刘皓
852db6233c
Upgrade actions to v4
No need for double-zipping anymore since the upload artifact action
preserves +x permissions now.

(cherry picked from commit 0f6611f19f)
2025-02-14 12:24:00 -05:00
刘皓
7c066a2b24
Change some of the nomenclature in libretro builds 2025-02-14 12:05:30 -05:00
刘皓
ce54a5f898
Don't build relocatable objects in libretro console builds
It seems this isn't supported either.
2025-02-13 22:24:08 -05:00
刘皓
54ed0241fc
Try enabling LTO in libretro console builds but with -ffat-lto-objects 2025-02-13 22:02:59 -05:00
刘皓
bae3707b77
Disable LTO again in libretro console builds
Given that every console build currently says "plugin needed to handle
lto object" when compiling with LTO enabled, it's probably not
supported.
2025-02-13 21:28:10 -05:00
刘皓
4d9de19266
Prelink manually instead of relying on Meson's prelink kwarg 2025-02-13 21:02:29 -05:00
刘皓
4fdb7316b2
Enable prelinking in static libretro builds 2025-02-13 19:42:29 -05:00
刘皓
157689225d
Merge branches 'libretro-darwin-test2' and 'endian' into libretro 2025-02-13 17:06:04 -05:00
刘皓
865285db51
Change the name of the PAGE_SIZE macro 2025-02-13 15:20:18 -05:00
刘皓
76c802b901
Fix linker errors in libretro Nintendo Switch build 2025-02-12 21:30:18 -05:00
刘皓
30514ce9f0
Add PlayStation 3 and PlayStation 4 builds to libretro CI 2025-02-12 14:48:22 -05:00