mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-04 02:31:27 +00:00
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>
This commit is contained in:
+93
@@ -0,0 +1,93 @@
|
|||||||
|
From 6aceea847131f8ee208d8b8adec336fafcf30d48 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Anonymous Maarten <anonymous.maarten@gmail.com>
|
||||||
|
Date: Wed, 31 Aug 2022 15:15:43 +0200
|
||||||
|
Subject: [PATCH] cmake: always install SDL2_net.pc
|
||||||
|
|
||||||
|
Upstream-Status: Backport [https://github.com/libsdl-org/SDL_net/commit/fb8031364ad852d51faf5b64040440857f5e8f26]
|
||||||
|
|
||||||
|
Signed-off-by: Mark Jonas <toertel@gmail.com>
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 67 ++++++++++++++++++++++++++++----------------------
|
||||||
|
1 file changed, 37 insertions(+), 30 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index bf30a70..c34e3f0 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -204,39 +204,46 @@ if(SDL2NET_INSTALL)
|
||||||
|
COMPONENT devel
|
||||||
|
)
|
||||||
|
|
||||||
|
- if(SDL2NET_BUILD_SHARED_LIBS)
|
||||||
|
- # Only create a .pc file for a shared SDL2_net
|
||||||
|
- set(prefix "${CMAKE_INSTALL_PREFIX}")
|
||||||
|
- set(exec_prefix "\${prefix}")
|
||||||
|
- set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
|
||||||
|
- set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
|
- set(PACKAGE "${PROJECT_NAME}")
|
||||||
|
- set(VERSION "${FULL_VERSION}")
|
||||||
|
- set(SDL_VERSION "${SDL_REQUIRED_VERSION}")
|
||||||
|
- string(JOIN " " PC_REQUIRES ${PC_REQUIRES})
|
||||||
|
- string(JOIN " " PC_LIBS ${PC_LIBS})
|
||||||
|
- configure_file("${PROJECT_SOURCE_DIR}/SDL2_net.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate" @ONLY)
|
||||||
|
- file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc" INPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate")
|
||||||
|
-
|
||||||
|
- set(PC_DESTDIR)
|
||||||
|
- if(CMAKE_SYSTEM_NAME MATCHES FreeBSD)
|
||||||
|
- # FreeBSD uses ${PREFIX}/libdata/pkgconfig
|
||||||
|
- set(PC_DESTDIR "libdata/pkgconfig")
|
||||||
|
+ if(SDL2NET_BUILD_SHARED_LIBS)
|
||||||
|
+ set(ENABLE_SHARED_TRUE "")
|
||||||
|
+ set(ENABLE_SHARED_FALSE "#")
|
||||||
|
+ set(ENABLE_STATIC_TRUE "#")
|
||||||
|
+ set(ENABLE_STATIC_FALSE "")
|
||||||
|
else()
|
||||||
|
- set(PC_DESTDIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
|
||||||
|
+ set(ENABLE_SHARED_TRUE "#")
|
||||||
|
+ set(ENABLE_SHARED_FALSE "")
|
||||||
|
+ set(ENABLE_STATIC_TRUE "")
|
||||||
|
+ set(ENABLE_STATIC_FALSE "#")
|
||||||
|
endif()
|
||||||
|
- # Only install a SDL2_net.pc file in Release mode
|
||||||
|
- install(CODE "
|
||||||
|
- if(CMAKE_INSTALL_CONFIG_NAME MATCHES \"Release\")
|
||||||
|
- # FIXME: use file(COPY_FILE) if minimum CMake version >= 3.21
|
||||||
|
- execute_process(COMMAND \"\${CMAKE_COMMAND}\" -E copy_if_different
|
||||||
|
- \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc\"
|
||||||
|
- \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")
|
||||||
|
- file(INSTALL DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${PC_DESTDIR}\"
|
||||||
|
- TYPE FILE
|
||||||
|
- FILES \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")
|
||||||
|
- endif()" COMPONENT devel)
|
||||||
|
+
|
||||||
|
+ set(prefix "${CMAKE_INSTALL_PREFIX}")
|
||||||
|
+ set(exec_prefix "\${prefix}")
|
||||||
|
+ set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
|
||||||
|
+ set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
|
+ set(PACKAGE "${PROJECT_NAME}")
|
||||||
|
+ set(VERSION "${FULL_VERSION}")
|
||||||
|
+ set(SDL_VERSION "${SDL_REQUIRED_VERSION}")
|
||||||
|
+ string(JOIN " " PC_REQUIRES ${PC_REQUIRES})
|
||||||
|
+ string(JOIN " " PC_LIBS ${PC_LIBS})
|
||||||
|
+ configure_file("${PROJECT_SOURCE_DIR}/SDL2_net.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate" @ONLY)
|
||||||
|
+ file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc" INPUT "${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc.intermediate")
|
||||||
|
+
|
||||||
|
+ set(PC_DESTDIR)
|
||||||
|
+ if(CMAKE_SYSTEM_NAME MATCHES FreeBSD)
|
||||||
|
+ # FreeBSD uses ${PREFIX}/libdata/pkgconfig
|
||||||
|
+ set(PC_DESTDIR "libdata/pkgconfig")
|
||||||
|
+ else()
|
||||||
|
+ set(PC_DESTDIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
|
||||||
|
endif()
|
||||||
|
+ # Always install SDL2_net.pc: libraries might be different between config modes
|
||||||
|
+ install(CODE "
|
||||||
|
+ # FIXME: use file(COPY_FILE) if minimum CMake version >= 3.21
|
||||||
|
+ execute_process(COMMAND \"\${CMAKE_COMMAND}\" -E copy_if_different
|
||||||
|
+ \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net-$<CONFIG>.pc\"
|
||||||
|
+ \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")
|
||||||
|
+ file(INSTALL DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${PC_DESTDIR}\"
|
||||||
|
+ TYPE FILE
|
||||||
|
+ FILES \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_net.pc\")" COMPONENT devel)
|
||||||
|
|
||||||
|
if(SDL2NET_BUILD_SHARED_LIBS AND (APPLE OR (UNIX AND NOT ANDROID)))
|
||||||
|
install(
|
||||||
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=68a088513da90254b2fbe664f42af315"
|
|||||||
|
|
||||||
SRC_URI = " \
|
SRC_URI = " \
|
||||||
https://www.libsdl.org/projects/SDL_net/release/SDL2_net-${PV}.tar.gz \
|
https://www.libsdl.org/projects/SDL_net/release/SDL2_net-${PV}.tar.gz \
|
||||||
|
file://0001-cmake-always-install-SDL2_net.pc.patch \
|
||||||
"
|
"
|
||||||
S = "${UNPACKDIR}/SDL2_net-${PV}"
|
S = "${UNPACKDIR}/SDL2_net-${PV}"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user