summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Jonas <toertel@gmail.com>2026-05-25 16:43:16 +0200
committerKhem Raj <khem.raj@oss.qualcomm.com>2026-05-31 03:08:46 -0700
commitce9deabec1a7747428e3b95d57ff4d89c40daed3 (patch)
treed27b8164255bd46d72a97bcec779523ef3250147
parent1289a88977b3c3279d0ce4e70d0783e25786510d (diff)
downloadmeta-openembedded-ce9deabec1a7747428e3b95d57ff4d89c40daed3.tar.gz
libsdl2-net: Ensure packaging of SDL2_net.pc
SDL2_net does not install SDL2_net.pc. Thus, libsdl2-net cannot package the file. Fix this by applying an upstream patch. Signed-off-by: Mark Jonas <toertel@gmail.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
-rw-r--r--meta-oe/recipes-graphics/libsdl/libsdl2-net/0001-cmake-always-install-SDL2_net.pc.patch93
-rw-r--r--meta-oe/recipes-graphics/libsdl/libsdl2-net_2.2.0.bb1
2 files changed, 94 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-net/0001-cmake-always-install-SDL2_net.pc.patch b/meta-oe/recipes-graphics/libsdl/libsdl2-net/0001-cmake-always-install-SDL2_net.pc.patch
new file mode 100644
index 0000000000..0a717a60ae
--- /dev/null
+++ b/meta-oe/recipes-graphics/libsdl/libsdl2-net/0001-cmake-always-install-SDL2_net.pc.patch
@@ -0,0 +1,93 @@
1From 6aceea847131f8ee208d8b8adec336fafcf30d48 Mon Sep 17 00:00:00 2001
2From: Anonymous Maarten <anonymous.maarten@gmail.com>
3Date: Wed, 31 Aug 2022 15:15:43 +0200
4Subject: [PATCH] cmake: always install SDL2_net.pc
5
6Upstream-Status: Backport [https://github.com/libsdl-org/SDL_net/commit/fb8031364ad852d51faf5b64040440857f5e8f26]
7
8Signed-off-by: Mark Jonas <toertel@gmail.com>
9---
10 CMakeLists.txt | 67 ++++++++++++++++++++++++++++----------------------
11 1 file changed, 37 insertions(+), 30 deletions(-)
12
13diff --git a/CMakeLists.txt b/CMakeLists.txt
14index bf30a70..c34e3f0 100644
15--- a/CMakeLists.txt
16+++ b/CMakeLists.txt
17@@ -204,39 +204,46 @@ if(SDL2NET_INSTALL)
18 COMPONENT devel
19 )
20
21- if(SDL2NET_BUILD_SHARED_LIBS)
22- # Only create a .pc file for a shared SDL2_net
23- set(prefix "${CMAKE_INSTALL_PREFIX}")
24- set(exec_prefix "\${prefix}")
25- set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
26- set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
27- set(PACKAGE "${PROJECT_NAME}")
28- set(VERSION "${FULL_VERSION}")
29- set(SDL_VERSION "${SDL_REQUIRED_VERSION}")
30- string(JOIN " " PC_REQUIRES ${PC_REQUIRES})
31- string(JOIN " " PC_LIBS ${PC_LIBS})
32- configure_file("${PROJECT_SOURCE_DIR}/SDL2_net.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate" @ONLY)
33- file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc" INPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate")
34-
35- set(PC_DESTDIR)
36- if(CMAKE_SYSTEM_NAME MATCHES FreeBSD)
37- # FreeBSD uses ${PREFIX}/libdata/pkgconfig
38- set(PC_DESTDIR "libdata/pkgconfig")
39+ if(SDL2NET_BUILD_SHARED_LIBS)
40+ set(ENABLE_SHARED_TRUE "")
41+ set(ENABLE_SHARED_FALSE "#")
42+ set(ENABLE_STATIC_TRUE "#")
43+ set(ENABLE_STATIC_FALSE "")
44 else()
45- set(PC_DESTDIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
46+ set(ENABLE_SHARED_TRUE "#")
47+ set(ENABLE_SHARED_FALSE "")
48+ set(ENABLE_STATIC_TRUE "")
49+ set(ENABLE_STATIC_FALSE "#")
50 endif()
51- # Only install a SDL2_net.pc file in Release mode
52- install(CODE "
53- if(CMAKE_INSTALL_CONFIG_NAME MATCHES \"Release\")
54- # FIXME: use file(COPY_FILE) if minimum CMake version >= 3.21
55- execute_process(COMMAND \"\${CMAKE_COMMAND}\" -E copy_if_different
56- \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc\"
57- \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")
58- file(INSTALL DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${PC_DESTDIR}\"
59- TYPE FILE
60- FILES \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")
61- endif()" COMPONENT devel)
62+
63+ set(prefix "${CMAKE_INSTALL_PREFIX}")
64+ set(exec_prefix "\${prefix}")
65+ set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
66+ set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
67+ set(PACKAGE "${PROJECT_NAME}")
68+ set(VERSION "${FULL_VERSION}")
69+ set(SDL_VERSION "${SDL_REQUIRED_VERSION}")
70+ string(JOIN " " PC_REQUIRES ${PC_REQUIRES})
71+ string(JOIN " " PC_LIBS ${PC_LIBS})
72+ configure_file("${PROJECT_SOURCE_DIR}/SDL2_net.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate" @ONLY)
73+ file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc" INPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate")
74+
75+ set(PC_DESTDIR)
76+ if(CMAKE_SYSTEM_NAME MATCHES FreeBSD)
77+ # FreeBSD uses ${PREFIX}/libdata/pkgconfig
78+ set(PC_DESTDIR "libdata/pkgconfig")
79+ else()
80+ set(PC_DESTDIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
81 endif()
82+ # Always install SDL2_net.pc: libraries might be different between config modes
83+ install(CODE "
84+ # FIXME: use file(COPY_FILE) if minimum CMake version >= 3.21
85+ execute_process(COMMAND \"\${CMAKE_COMMAND}\" -E copy_if_different
86+ \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc\"
87+ \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")
88+ file(INSTALL DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${PC_DESTDIR}\"
89+ TYPE FILE
90+ FILES \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")" COMPONENT devel)
91
92 if(SDL2NET_BUILD_SHARED_LIBS AND (APPLE OR (UNIX AND NOT ANDROID)))
93 install(
diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.2.0.bb b/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.2.0.bb
index 4a7ada94cb..8a1ff45a3d 100644
--- a/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.2.0.bb
+++ b/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.2.0.bb
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=68a088513da90254b2fbe664f42af315"
5 5
6SRC_URI = " \ 6SRC_URI = " \
7 https://www.libsdl.org/projects/SDL_net/release/SDL2_net-${PV}.tar.gz \ 7 https://www.libsdl.org/projects/SDL_net/release/SDL2_net-${PV}.tar.gz \
8 file://0001-cmake-always-install-SDL2_net.pc.patch \
8" 9"
9S = "${UNPACKDIR}/SDL2_net-${PV}" 10S = "${UNPACKDIR}/SDL2_net-${PV}"
10 11