diff --git a/testing/libretro-dinothawr/APKBUILD b/testing/libretro-dinothawr/APKBUILD
index 1c385aa963a6b4d1a1d29f6a6e10cd7eb3dc7eff..90377adeca4913323a7255e860ce02e90bcdeed3 100644
--- a/testing/libretro-dinothawr/APKBUILD
+++ b/testing/libretro-dinothawr/APKBUILD
@@ -2,17 +2,21 @@
 # Maintainer: David Demelier <markand@malikania.fr>
 pkgname=libretro-dinothawr
 pkgver=0_git20210409
-pkgrel=0
+pkgrel=1
 _commit="90264f4de875407212ada474761097de7a45fa53"
 pkgdesc="block pushing puzzle game on slippery surfaces"
 url="https://github.com/libretro/Dinothawr"
 arch="all"
 license="custom"
-source="$pkgname-$_commit.tar.gz::https://github.com/libretro/Dinothawr/archive/$_commit.tar.gz"
+makedepends="libogg-dev libvorbis-dev pugixml-dev zlib-dev"
+source="$pkgname-$_commit.tar.gz::https://github.com/libretro/Dinothawr/archive/$_commit.tar.gz
+	patch-unbundle.patch
+	"
 builddir="$srcdir/Dinothawr-$_commit"
 options="!check" # No tests
 
 build() {
+	rm -rf deps
 	make
 }
 
@@ -20,4 +24,5 @@ package() {
 	install -Dm644 dinothawr_libretro.so "$pkgdir"/usr/lib/libretro/dinothawr_libretro.so
 }
 
-sha512sums="92045a73e5a12cc9951f5a676cbd34e745da218eb7f30499236201fc3a419117b68d6fa022ea833a8c3a0d30b9c196519a034770a7238e42c8fc7bc44e06934a  libretro-dinothawr-90264f4de875407212ada474761097de7a45fa53.tar.gz"
+sha512sums="92045a73e5a12cc9951f5a676cbd34e745da218eb7f30499236201fc3a419117b68d6fa022ea833a8c3a0d30b9c196519a034770a7238e42c8fc7bc44e06934a  libretro-dinothawr-90264f4de875407212ada474761097de7a45fa53.tar.gz
+f4eeac39dcea65bd7bd5d4fcacdf9059a23b789f0373265509b5d196bde3c1052669893f38f4b33dbf4b5c31da74b7ab453bc720cbc37087290e65fb3244276c  patch-unbundle.patch"
diff --git a/testing/libretro-dinothawr/patch-unbundle.patch b/testing/libretro-dinothawr/patch-unbundle.patch
new file mode 100644
index 0000000000000000000000000000000000000000..372c73b72ab716e988426680264e47654ba140f6
--- /dev/null
+++ b/testing/libretro-dinothawr/patch-unbundle.patch
@@ -0,0 +1,129 @@
+Remove bundled zlib, libvorbis and libogg
+--- a/tilemap.cpp
++++ b/tilemap.cpp
+@@ -6,7 +6,8 @@
+ #include <map>
+ #include <utility>
+ #include <string>
+-#include "pugixml/pugixml.hpp"
++
++#include <pugixml.hpp>
+ 
+ using namespace pugi;
+ 
+--- a/Makefile.common
++++ b/Makefile.common
+@@ -1,6 +1,5 @@
+ LIBRETRO_COMM_DIR := $(CORE_DIR)/libretro-common
+-DEPS_DIR          := $(CORE_DIR)/deps
+-INCFLAGS := -I$(DEPS_DIR) -I$(CORE_DIR)/audio -I$(DEPS_DIR)/pugixml -I$(DEPS_DIR)/vorbis -I$(DEPS_DIR)/ogg -I$(DEPS_DIR)/libz -I$(LIBRETRO_COMM_DIR)/include
++INCFLAGS := -I$(CORE_DIR)/audio -I$(LIBRETRO_COMM_DIR)/include
+ 
+ SOURCES_ASM := 
+ 
+@@ -15,40 +14,7 @@
+ 	$(CORE_DIR)/surface_cache.cpp \
+ 	$(CORE_DIR)/surface_cluster.cpp \
+ 	$(CORE_DIR)/tilemap.cpp \
+-	$(DEPS_DIR)/pugixml/pugixml.cpp \
+ 	$(CORE_DIR)/audio/mixer.cpp
+-
+-SOURCES_C := \
+-	$(DEPS_DIR)/ogg/bitwise.c \
+-	$(DEPS_DIR)/ogg/framing.c \
+-	$(DEPS_DIR)/vorbis/bitrate.c \
+-	$(DEPS_DIR)/vorbis/block.c \
+-	$(DEPS_DIR)/vorbis/codebook.c \
+-	$(DEPS_DIR)/vorbis/envelope.c \
+-	$(DEPS_DIR)/vorbis/floor0.c \
+-	$(DEPS_DIR)/vorbis/floor1.c \
+-	$(DEPS_DIR)/vorbis/info.c \
+-	$(DEPS_DIR)/vorbis/lpc.c \
+-	$(DEPS_DIR)/vorbis/lsp.c \
+-	$(DEPS_DIR)/vorbis/mapping0.c \
+-	$(DEPS_DIR)/vorbis/mdct.c \
+-	$(DEPS_DIR)/vorbis/psy.c \
+-	$(DEPS_DIR)/vorbis/registry.c \
+-	$(DEPS_DIR)/vorbis/res0.c \
+-	$(DEPS_DIR)/vorbis/sharedbook.c \
+-	$(DEPS_DIR)/vorbis/smallft.c \
+-	$(DEPS_DIR)/vorbis/synthesis.c \
+-	$(DEPS_DIR)/vorbis/vorbisfile.c \
+-	$(DEPS_DIR)/vorbis/window.c \
+-	$(DEPS_DIR)/libz/adler32.c \
+-	$(DEPS_DIR)/libz/crc32.c \
+-	$(DEPS_DIR)/libz/deflate.c \
+-	$(DEPS_DIR)/libz/infback.c \
+-	$(DEPS_DIR)/libz/inffast.c \
+-	$(DEPS_DIR)/libz/inflate.c \
+-	$(DEPS_DIR)/libz/inftrees.c \
+-	$(DEPS_DIR)/libz/trees.c \
+-	$(DEPS_DIR)/libz/zutil.c
+ 
+ SOURCES_C += $(CORE_DIR)/rpng_front.c
+ 
+--- a/Makefile
++++ b/Makefile
+@@ -392,6 +392,8 @@
+ 	LD = $(CXX)
+ endif
+ 
++LIBS += -lz -lpugixml -lvorbis -lvorbisfile -logg
++
+ %.o: %.cpp
+ 	$(CXX) $(CXXFLAGS) -c $(OBJOUT)$@ $<
+ 
+--- a/game_manager.cpp
++++ b/game_manager.cpp
+@@ -1,5 +1,6 @@
++#include <pugixml.hpp>
++
+ #include "game.hpp"
+-#include "pugixml/pugixml.hpp"
+ #include "utils.hpp"
+ 
+ #include <iostream>
+--- a/utils.hpp
++++ b/utils.hpp
+@@ -17,7 +17,7 @@
+ #include <errno.h>
+ #include <functional>
+ 
+-#include <pugixml/pugixml.hpp>
++#include <pugixml.hpp>
+ 
+ #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
+ #if GCC_VERSION >= 70000
+--- a/font.cpp
++++ b/font.cpp
+@@ -1,5 +1,6 @@
++#include <pugixml.hpp>
++
+ #include "font.hpp"
+-#include "pugixml/pugixml.hpp"
+ #include "utils.hpp"
+ 
+ #include <stdexcept>
+--- a/surface_cache.cpp
++++ b/surface_cache.cpp
+@@ -1,5 +1,6 @@
++#include <pugixml.hpp>
++
+ #include "surface.hpp"
+-#include "pugixml/pugixml.hpp"
+ #include "rpng_front.h"
+ #include <stdexcept>
+ #include <stdio.h>
+--- a/tilemap.hpp
++++ b/tilemap.hpp
+@@ -1,8 +1,9 @@
+ #ifndef TILEMAP_HPP__
+ #define TILEMAP_HPP__
+ 
++#include <pugixml.hpp>
++
+ #include "surface.hpp"
+-#include "pugixml/pugixml.hpp"
+ 
+ #include <string>
+ #include <set>