SDL_ttf: cmake: build static library by default for platforms that don't support shared libraries

From c61566ab6491f22ea1641d437ebbcbfec9696108 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Mon, 15 Jan 2024 13:13:17 +0100
Subject: [PATCH] cmake: build static library by default for platforms that
 don't support shared libraries

---
 CMakeLists.txt | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 77714353..ba35b284 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,8 +50,13 @@ include(CMakePackageConfigHelpers)
 include(GNUInstallDirs)
 include(CheckSymbolExists)
 
-option(CMAKE_POSITION_INDEPENDENT_CODE "Build static libraries with -fPIC" ON)
-option(BUILD_SHARED_LIBS "Build the library as a shared library" ON)
+set(PLATFORM_SUPPORTS_SHARED ON)
+if(VITA OR PSP OR PS2 OR N3DS OR RISCOS)
+  set(PLATFORM_SUPPORTS_SHARED OFF)
+endif()
+
+option(CMAKE_POSITION_INDEPENDENT_CODE "Build static libraries with -fPIC" ${PLATFORM_SUPPORTS_SHARED})
+cmake_dependent_option(BUILD_SHARED_LIBS "Build the library as a shared library" ON PLATFORM_SUPPORTS_SHARED OFF)
 
 cmake_dependent_option(SDL3TTF_INSTALL "Enable SDL3_ttf install target" ${SDL3TTF_ROOTPROJECT} "${sdl3ttf_install_enableable}" OFF)
 cmake_dependent_option(SDL3TTF_INSTALL_MAN "Install man pages for SDL3_ttf" ${SDL3TTF_ROOTPROJECT} "SDL3TTF_INSTALL" OFF)