diff --git a/community/geocode-glib/APKBUILD b/community/geocode-glib/APKBUILD
index a6639a4..92a7440 100644
--- a/community/geocode-glib/APKBUILD
+++ b/community/geocode-glib/APKBUILD
@@ -3,7 +3,7 @@
 # Maintainer: Rasmus Thomsen <oss@cogitri.dev>
 pkgname=geocode-glib
 pkgver=3.26.4
-pkgrel=1
+pkgrel=2
 pkgdesc="Geocoding helper library"
 url="https://gitlab.gnome.org/GNOME/geocode-glib"
 arch="all"
@@ -14,24 +14,43 @@ makedepends="
 	gtk-doc
 	intltool
 	json-glib-dev
+	libsoup-dev
 	libsoup3-dev
 	meson
-	ninja
 	"
 options="!check" # no tests
-subpackages="$pkgname-dev $pkgname-doc"
+subpackages="libgeocode-glib:libsoup2 $pkgname-tests $pkgname-dev $pkgname-doc"
 source="https://download.gnome.org/sources/geocode-glib/${pkgver%.*}/geocode-glib-$pkgver.tar.xz"
 
 build() {
 	abuild-meson \
 		-Db_lto=true \
 		-Dsoup2=false \
-		build
-	meson compile ${JOBS:+-j ${JOBS}} -C build
+		. build-soup3
+	meson compile -C build-soup3
+
+	abuild-meson \
+		-Db_lto=true \
+		-Dsoup2=true \
+		. build-soup2
+	meson compile -C build-soup2
 }
 
 package() {
-	DESTDIR="$pkgdir" meson install --no-rebuild -C build
+	DESTDIR="$pkgdir" meson install --no-rebuild -C build-soup2
+	DESTDIR="$pkgdir" meson install --no-rebuild -C build-soup3
+}
+
+libsoup2() {
+	amove usr/lib/girepository-1.0/GeocodeGlib-1.0.typelib
+	amove usr/lib/libgeocode-glib.so.*
+	amove usr/libexec/geocode-glib
+}
+
+tests() {
+	pkgdesc="$pkgdesc (installed tests)"
+
+	amove usr/share/installed-tests
 }
 
 sha512sums="
