SDL_ttf: Handle absolute include and lib paths in cmake

From ad2ffa825d4535ddfb57861a7e33dff4a9bc6a94 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Fri, 7 Mar 2025 19:14:55 +0100
Subject: [PATCH] Handle absolute include and lib paths in cmake

---
 CMakeLists.txt       | 11 +++++++++++
 cmake/sdl3-ttf.pc.in |  4 ++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0f2bac9e..44284e63 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -457,6 +457,17 @@ if(SDLTTF_INSTALL)
       set(SDL_PKGCONFIG_PREFIX "${CMAKE_INSTALL_PREFIX}")
     endif()
 
+    if(IS_ABSOLUTE "${CMAKE_INSTALL_INCLUDEDIR}")
+      set(INCLUDEDIR_FOR_PKG_CONFIG "${CMAKE_INSTALL_INCLUDEDIR}")
+    else()
+      set(INCLUDEDIR_FOR_PKG_CONFIG "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
+    endif()
+    if(IS_ABSOLUTE "${CMAKE_INSTALL_LIBDIR}")
+      set(LIBDIR_FOR_PKG_CONFIG "${CMAKE_INSTALL_LIBDIR}")
+    else()
+      set(LIBDIR_FOR_PKG_CONFIG "\${prefix}/${CMAKE_INSTALL_LIBDIR}")
+    endif()
+
     string(JOIN " " PC_REQUIRES ${PC_REQUIRES})
     string(JOIN " " PC_LIBS ${PC_LIBS})
     configure_file(cmake/sdl3-ttf.pc.in sdl3-ttf.pc @ONLY)
diff --git a/cmake/sdl3-ttf.pc.in b/cmake/sdl3-ttf.pc.in
index f467bfd8..2e436180 100644
--- a/cmake/sdl3-ttf.pc.in
+++ b/cmake/sdl3-ttf.pc.in
@@ -1,7 +1,7 @@
 prefix=@SDL_PKGCONFIG_PREFIX@
 exec_prefix=${prefix}
-libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
-includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
+libdir=@LIBDIR_FOR_PKG_CONFIG@
+includedir=@INCLUDEDIR_FOR_PKG_CONFIG@
 
 Name: SDL3_ttf
 Description: ttf library for Simple DirectMedia Layer with FreeType 2 support