From 27d73c0592a76fc4e8160fbfe928197fd877c72c Mon Sep 17 00:00:00 2001 From: Prashant Vaibhav Date: Sun, 9 Aug 2026 00:50:12 +0200 Subject: [PATCH 1/2] fix: update fceumm core's patch The upstream code changed enough that our existing patch can't find the hunk. I updated it to it builds now. --- workspace/tg5040/cores/patches/fceumm.patch | 5 ++--- workspace/tg5050/cores/patches/fceumm.patch | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/workspace/tg5040/cores/patches/fceumm.patch b/workspace/tg5040/cores/patches/fceumm.patch index 2131c17be..92e8343ec 100644 --- a/workspace/tg5040/cores/patches/fceumm.patch +++ b/workspace/tg5040/cores/patches/fceumm.patch @@ -1,10 +1,9 @@ diff --git forkSrcPrefix/Makefile.libretro forkDstPrefix/Makefile.libretro -index 036c41f48b087c99b2276b2d41a71d661fd85145..891eb96ceeb1da868d6d2ed40392b51b65dcbb20 100644 +index 5b90d409271332a48ae726dca48a712c3be413be..02958b2d0e6612539ae4545df7bb28a8395c060e 100644 --- forkSrcPrefix/Makefile.libretro +++ forkDstPrefix/Makefile.libretro -@@ -461,6 +461,23 @@ else ifeq ($(platform), miyoo) +@@ -458,5 +458,22 @@ else ifeq ($(platform), miyoo) PLATFORM_DEFINES += -fomit-frame-pointer -ffast-math -mcpu=arm926ej-s - EXTERNAL_ZLIB = 1 +# TRIMUI SMART PRO +else ifeq ($(platform), tg5040) diff --git a/workspace/tg5050/cores/patches/fceumm.patch b/workspace/tg5050/cores/patches/fceumm.patch index c4f8e1ddb..8ed07e929 100644 --- a/workspace/tg5050/cores/patches/fceumm.patch +++ b/workspace/tg5050/cores/patches/fceumm.patch @@ -1,10 +1,9 @@ diff --git forkSrcPrefix/Makefile.libretro forkDstPrefix/Makefile.libretro -index 036c41f48b087c99b2276b2d41a71d661fd85145..891eb96ceeb1da868d6d2ed40392b51b65dcbb20 100644 +index 5b90d409271332a48ae726dca48a712c3be413be..cbdaf093812ebe934b915e9087e7f8518f45a611 100644 --- forkSrcPrefix/Makefile.libretro +++ forkDstPrefix/Makefile.libretro -@@ -461,6 +461,23 @@ else ifeq ($(platform), miyoo) +@@ -458,5 +458,22 @@ else ifeq ($(platform), miyoo) PLATFORM_DEFINES += -fomit-frame-pointer -ffast-math -mcpu=arm926ej-s - EXTERNAL_ZLIB = 1 +# target platform tg5050 trimUI smart pro s +else ifeq ($(platform), tg5050) From e085c0dd6e6e4e16b26b51796b0f5cf576eb8c21 Mon Sep 17 00:00:00 2001 From: Prashant Vaibhav Date: Sun, 9 Aug 2026 11:54:15 +0200 Subject: [PATCH 2/2] fix: update mGBA core build --- workspace/tg5040/cores/makefile | 4 +++ workspace/tg5040/cores/patches/mgba.patch | 31 ----------------------- workspace/tg5050/cores/makefile | 4 +++ workspace/tg5050/cores/patches/mgba.patch | 31 ----------------------- 4 files changed, 8 insertions(+), 62 deletions(-) delete mode 100644 workspace/tg5040/cores/patches/mgba.patch delete mode 100644 workspace/tg5050/cores/patches/mgba.patch diff --git a/workspace/tg5040/cores/makefile b/workspace/tg5040/cores/makefile index a224ff179..9eeb5dd9d 100755 --- a/workspace/tg5040/cores/makefile +++ b/workspace/tg5040/cores/makefile @@ -67,6 +67,10 @@ gambatte_REPO = https://github.com/libretro/gambatte-libretro mednafen_supafaust_REPO = https://github.com/libretro/supafaust +# mGBA replaced Makefile.libretro with a CMake-based libretro build. +mgba_CORE = build-tg5040/mgba_libretro.so +mgba_MAKE = cmake -S . -B build-tg5040 -DCMAKE_BUILD_TYPE=Release -DLIBMGBA_ONLY=ON -DBUILD_LIBRETRO=ON -DLIBRETRO_STATIC=OFF -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_SYSTEM_PROCESSOR=aarch64 -DCMAKE_C_COMPILER=$(CROSS_COMPILE)gcc -DCMAKE_CXX_COMPILER=$(CROSS_COMPILE)g++ -DCMAKE_C_FLAGS="-fomit-frame-pointer -ffast-math -mtune=cortex-a53 -mcpu=cortex-a53 -march=armv8-a -fno-common -ftree-vectorize -funswitch-loops" -DCMAKE_CXX_FLAGS="-fomit-frame-pointer -ffast-math -mtune=cortex-a53 -mcpu=cortex-a53 -march=armv8-a -fno-common -ftree-vectorize -funswitch-loops" && cmake --build build-tg5040 --target mgba_libretro -- $(PROCS) + pcsx_rearmed_MAKEFILE = Makefile.libretro # pcsx has a disabled submodule for gnulib, which takes forever to check out and is unused - skil checkout pcsx_rearmed_SUBMODULES = frontend/libpicofe diff --git a/workspace/tg5040/cores/patches/mgba.patch b/workspace/tg5040/cores/patches/mgba.patch deleted file mode 100644 index b0145a5b3..000000000 --- a/workspace/tg5040/cores/patches/mgba.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git forkSrcPrefix/Makefile.libretro forkDstPrefix/Makefile.libretro -index 108148f4579f4727146e5b8c1e05ef7382654208..35e6399147a4ef75947ecb2ad4a94f0820ef24d0 100644 ---- forkSrcPrefix/Makefile.libretro -+++ forkDstPrefix/Makefile.libretro -@@ -417,6 +417,26 @@ else ifeq ($(platform), miyoo) - CFLAGS += -fno-common -ftree-vectorize -funswitch-loops - DEFINES += -std=c99 - -+# TRIMUI SMART PRO -+else ifeq ($(platform), tg5040) -+ TARGET := $(TARGET_NAME)_libretro.so -+ CC = $(CROSS_COMPILE)gcc -+ CXX = $(CROSS_COMPILE)g++ -+ AR = $(CROSS_COMPILE)ar -+ SHARED := -shared -Wl,--version-script=link.T -+ fpic := -fPIC -+ PLATFORM_DEFINES += -D_GNU_SOURCE -DHAVE_STRTOF_L -DHAVE_LOCALE -+ CFLAGS += -fomit-frame-pointer -ffast-math -+ CFLAGS += -mtune=cortex-a53 -mcpu=cortex-a53 -march=armv8-a -+ CFLAGS += -fno-common -ftree-vectorize -funswitch-loops -+ HAVE_NEON = 1 -+ ARCH = arm64 -+ BUILTIN_GPU = neon -+ CPU_ARCH := arm -+ MMAP_JIT_CACHE = 1 -+ HAVE_DYNAREC = 1 -+ DEFINES += -std=c99 -+ - # Windows - else - TARGET := $(TARGET_NAME)_libretro.dll diff --git a/workspace/tg5050/cores/makefile b/workspace/tg5050/cores/makefile index a224ff179..2cd263250 100755 --- a/workspace/tg5050/cores/makefile +++ b/workspace/tg5050/cores/makefile @@ -67,6 +67,10 @@ gambatte_REPO = https://github.com/libretro/gambatte-libretro mednafen_supafaust_REPO = https://github.com/libretro/supafaust +# mGBA replaced Makefile.libretro with a CMake-based libretro build. +mgba_CORE = build-tg5050/mgba_libretro.so +mgba_MAKE = cmake -S . -B build-tg5050 -DCMAKE_BUILD_TYPE=Release -DLIBMGBA_ONLY=ON -DBUILD_LIBRETRO=ON -DLIBRETRO_STATIC=OFF -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_SYSTEM_PROCESSOR=aarch64 -DCMAKE_C_COMPILER=$(CROSS_COMPILE)gcc -DCMAKE_CXX_COMPILER=$(CROSS_COMPILE)g++ -DCMAKE_C_FLAGS="-fomit-frame-pointer -ffast-math -mcpu=cortex-a55 -fno-common -ftree-vectorize -funswitch-loops" -DCMAKE_CXX_FLAGS="-fomit-frame-pointer -ffast-math -mcpu=cortex-a55 -fno-common -ftree-vectorize -funswitch-loops" && cmake --build build-tg5050 --target mgba_libretro -- $(PROCS) + pcsx_rearmed_MAKEFILE = Makefile.libretro # pcsx has a disabled submodule for gnulib, which takes forever to check out and is unused - skil checkout pcsx_rearmed_SUBMODULES = frontend/libpicofe diff --git a/workspace/tg5050/cores/patches/mgba.patch b/workspace/tg5050/cores/patches/mgba.patch deleted file mode 100644 index 31e8ce9b6..000000000 --- a/workspace/tg5050/cores/patches/mgba.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git forkSrcPrefix/Makefile.libretro forkDstPrefix/Makefile.libretro -index 108148f4579f4727146e5b8c1e05ef7382654208..35e6399147a4ef75947ecb2ad4a94f0820ef24d0 100644 ---- forkSrcPrefix/Makefile.libretro -+++ forkDstPrefix/Makefile.libretro -@@ -417,6 +417,26 @@ else ifeq ($(platform), miyoo) - CFLAGS += -fno-common -ftree-vectorize -funswitch-loops - DEFINES += -std=c99 - -+# target platform tg5050 trimUI smart pro s -+else ifeq ($(platform), tg5050) -+ TARGET := $(TARGET_NAME)_libretro.so -+ CC = $(CROSS_COMPILE)gcc -+ CXX = $(CROSS_COMPILE)g++ -+ AR = $(CROSS_COMPILE)ar -+ SHARED := -shared -Wl,--version-script=link.T -+ fpic := -fPIC -+ PLATFORM_DEFINES += -D_GNU_SOURCE -DHAVE_STRTOF_L -DHAVE_LOCALE -+ CFLAGS += -fomit-frame-pointer -ffast-math -+ CFLAGS += -mcpu=cortex-a55 -+ CFLAGS += -fno-common -ftree-vectorize -funswitch-loops -+ HAVE_NEON = 1 -+ ARCH = arm64 -+ BUILTIN_GPU = neon -+ CPU_ARCH := arm -+ MMAP_JIT_CACHE = 1 -+ HAVE_DYNAREC = 1 -+ DEFINES += -std=c99 -+ - # Windows - else - TARGET := $(TARGET_NAME)_libretro.dll