From d16a76e63a3416850cf06e34095bc489596ee870dd90e8614dcfaa4284edeadd Mon Sep 17 00:00:00 2001 From: Richard Rahl Date: Fri, 11 Apr 2025 01:00:04 +0200 Subject: [PATCH] fix soname the right way --- fix-name.patch | 45 +++++++++++++++++++++++++++++++++++++++++++ libdisplaydevice.spec | 6 ++---- 2 files changed, 47 insertions(+), 4 deletions(-) create mode 100644 fix-name.patch diff --git a/fix-name.patch b/fix-name.patch new file mode 100644 index 0000000..fda9e65 --- /dev/null +++ b/fix-name.patch @@ -0,0 +1,45 @@ +diff -rub libdisplaydevice-2025.115.133852/src/CMakeLists.txt libdisplaydevice-2025.115.133852-patched/src/CMakeLists.txt +--- libdisplaydevice-2025.115.133852/src/CMakeLists.txt 2025-04-11 00:54:48.016588230 +0200 ++++ libdisplaydevice-2025.115.133852-patched/src/CMakeLists.txt 2025-04-11 00:55:47.831125178 +0200 +@@ -9,21 +9,21 @@ + add_library(libdisplaydevice::platform ALIAS libdisplaydevice_macos_dummy) + message(WARNING "MacOS is not supported yet.") + elseif(UNIX) +- add_library(libdisplaydevice_linux_dummy INTERFACE) +- add_library(libdisplaydevice::platform ALIAS libdisplaydevice_linux_dummy) ++ add_library(displaydevice_linux_dummy INTERFACE) ++ add_library(displaydevice::platform ALIAS displaydevice_linux_dummy) + message(WARNING "Linux is not supported yet.") + else() + message(FATAL_ERROR "Unsupported platform") + endif() + + # Create a target that links to everything +-add_library(libdisplaydevice_display_device INTERFACE) +-target_link_libraries(libdisplaydevice_display_device INTERFACE +- libdisplaydevice::common +- libdisplaydevice::platform) ++add_library(displaydevice_display_device INTERFACE) ++target_link_libraries(displaydevice_display_device INTERFACE ++ displaydevice::common ++ displaydevice::platform) + +-set_target_properties(libdisplaydevice_common PROPERTIES VERSION ${PROJECT_VERSION} ++set_target_properties(displaydevice_common PROPERTIES VERSION ${PROJECT_VERSION} + SOVERSION ${PROJECT_VERSION}) + + # Create an alias for the main target +-add_library(libdisplaydevice::display_device ALIAS libdisplaydevice_display_device) ++add_library(displaydevice::display_device ALIAS displaydevice_display_device) +diff -rub libdisplaydevice-2025.115.133852/src/common/CMakeLists.txt libdisplaydevice-2025.115.133852-patched/src/common/CMakeLists.txt +--- libdisplaydevice-2025.115.133852/src/common/CMakeLists.txt 2025-01-15 14:38:52.000000000 +0100 ++++ libdisplaydevice-2025.115.133852-patched/src/common/CMakeLists.txt 2025-04-11 00:56:01.687014268 +0200 +@@ -1,6 +1,6 @@ + # A global identifier for the library +-set(MODULE libdisplaydevice_common) +-set(MODULE_ALIAS libdisplaydevice::common) ++set(MODULE displaydevice_common) ++set(MODULE_ALIAS displaydevice::common) + + # Globing headers (so that they appear in some IDEs) and sources + file(GLOB HEADER_LIST CONFIGURE_DEPENDS "include/display_device/*.h") diff --git a/libdisplaydevice.spec b/libdisplaydevice.spec index 6fcd004..3afe3a2 100644 --- a/libdisplaydevice.spec +++ b/libdisplaydevice.spec @@ -25,6 +25,7 @@ License: AGPL-3.0-or-later OR GPL-3.0-or-later URL: https://github.com/LizardByte/libdisplaydevice Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Patch0: soversion.patch +Patch1: fix-name.patch BuildRequires: boost-devel BuildRequires: c++_compiler BuildRequires: cmake >= 3.24 @@ -57,10 +58,7 @@ desktop software, and video players. %cmake_build %install -install -D build/src/common/lib%{name}_common.so.0.0.0 %{buildroot}%{_libdir}/%{name}_common.so.0.0.0 - -#fix soname -patchelf --set-soname %{name}_common.so.0.0.0 %{buildroot}%{_libdir}/%{name}_common.so.0.0.0 +install -D build/src/common/%{name}_common.so.0.0.0 %{buildroot}%{_libdir}/%{name}_common.so.0.0.0 %ldconfig_scriptlets -n %{name}%{sover} -- 2.49.0