SDL_net: Handle absolute include and lib paths in cmake

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

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

diff --git a/CMakeLists.txt b/CMakeLists.txt
index d47f3bf..f88ac79 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -245,6 +245,17 @@ if(SDLNET_INSTALL)
         set(SDL_PKGCONFIG_PREFIX "${CMAKE_PREFIX_PATH}")
     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-net.pc.in sdl3-net.pc @ONLY)
diff --git a/cmake/sdl3-net.pc.in b/cmake/sdl3-net.pc.in
index 36ba83a..ca74590 100644
--- a/cmake/sdl3-net.pc.in
+++ b/cmake/sdl3-net.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: @PROJECT_NAME@
 Description: net library for Simple DirectMedia Layer