From 1259a607311b9ff592b397315e7af7ad6d8a0dd8 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Tue, 28 Mar 2023 00:38:07 +0200
Subject: [PATCH] cmake: build tests as library on Android
---
.github/workflows/android.yml | 2 ++
test/CMakeLists.txt | 9 ++++++++-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml
index 126cf81cb216..2805ebc2cc78 100644
--- a/.github/workflows/android.yml
+++ b/.github/workflows/android.yml
@@ -40,6 +40,8 @@ jobs:
-Wdeprecated -Wdev -Werror \
-DCMAKE_TOOLCHAIN_FILE=${{ steps.setup_ndk.outputs.ndk-path }}/build/cmake/android.toolchain.cmake \
-DSDL_WERROR=ON \
+ -DSDL_TESTS=ON \
+ -DSDL_INSTALL_TESTS=ON \
-DSDL_CLANG_TIDY=ON \
-DANDROID_PLATFORM=${{ matrix.platform.android_platform }} \
-DANDROID_ABI=${{ matrix.platform.android_abi }} \
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 662a278ad132..b0d83f14129a 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -73,7 +73,11 @@ macro(add_sdl_test_executable TARGET)
if(AST_NEEDS_RESOURCES)
list(APPEND AST_SOURCES ${RESOURCE_FILES})
endif()
- add_executable(${TARGET} ${AST_SOURCES})
+ if(ANDROID)
+ add_library(${TARGET} SHARED ${AST_SOURCES})
+ else()
+ add_executable(${TARGET} ${AST_SOURCES})
+ endif()
target_link_libraries(${TARGET} PRIVATE SDL3::SDL3_test SDL3::${sdl_name_component})
if(AST_TESTUTILS)
target_link_libraries(${TARGET} PRIVATE sdltests_utils)
@@ -204,6 +208,9 @@ add_sdl_test_executable(testgamepad NEEDS_RESOURCES TESTUTILS SOURCES testgamepa
add_sdl_test_executable(testgeometry TESTUTILS SOURCES testgeometry.c)
add_sdl_test_executable(testgl SOURCES testgl.c)
add_sdl_test_executable(testgles SOURCES testgles.c)
+if(ANDROID)
+ target_link_libraries(testgles PRIVATE GLESv1_CM)
+endif()
add_sdl_test_executable(testgles2 SOURCES testgles2.c)
add_sdl_test_executable(testgles2_sdf TESTUTILS SOURCES testgles2_sdf.c)
add_sdl_test_executable(testhaptic SOURCES testhaptic.c)