File 0001-Clean-build-system.patch of Package yarock

From 6c5480675dea41661c6b423c4c05689edb996161 Mon Sep 17 00:00:00 2001
From: Christophe Marin <christophe@krop.fr>
Date: Sun, 6 Apr 2025 16:44:31 +0200
Subject: [PATCH] Clean build system

---
 CMakeLists.txt                              | 85 +++++++++------------
 src/CMakeLists.txt                          | 13 ----
 src/core/player/mpv/CMakeLists.txt          | 57 ++------------
 src/core/player/phonon/CMakeLists.txt       | 55 ++-----------
 src/core/player/qtmultimedia/CMakeLists.txt | 56 ++------------
 src/core/player/vlc/CMakeLists.txt          | 66 ++++------------
 src/infosystem/services/service_lyrics.h    |  2 +-
 7 files changed, 73 insertions(+), 261 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 16c6681..de532f9 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,38 +36,18 @@ option(ENABLE_SHORTCUT "Enable/disable global shortcut manager" OFF)
 # ------------------------------------------------------------------------------
 # Qt
 # ------------------------------------------------------------------------------
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt6Widgets_EXECUTABLE_COMPILE_FLAGS}")
-find_package(Qt6Gui REQUIRED)
-find_package(Qt6Widgets REQUIRED)
-find_package(Qt6Xml REQUIRED)
-find_package(Qt6Network REQUIRED)
-find_package(Qt6Concurrent REQUIRED)
-find_package(Qt6DBus REQUIRED)
-find_package(Qt6Sql REQUIRED)
-find_package(Qt6LinguistTools REQUIRED)
-set(QT_LIBRARIES  ${Qt6Core_LIBRARIES}
-                  ${Qt6Gui_LIBRARIES}
-                  ${Qt6Widgets_LIBRARIES}
-                  ${Qt6Network_LIBRARIES}
-                  ${Qt6Xml_LIBRARIES}
-                  ${Qt6Concurrent_LIBRARIES}
-                  ${Qt6DBus_LIBRARIES}
-                  ${Qt6Sql_LIBRARIES})
-set(QT_INCLUDES   ${Qt6Core_INCLUDE_DIRS}
-                  ${Qt6Gui_INCLUDE_DIRS}
-                  ${Qt6Widgets_INCLUDE_DIRS}
-                  ${Qt6Network_INCLUDE_DIRS}
-                  ${Qt6Xml_INCLUDE_DIRS}
-                  ${Qt6Concurrent_INCLUDE_DIRS}
-                  ${Qt6DBus_INCLUDE_DIRS}
-                  ${Qt6Sql_INCLUDE_DIRS})
-add_definitions(  ${Qt6Core_DEFINITIONS}
-                  ${Qt6Widgets_DEFINITIONS}
-                  ${Qt6Network_DEFINITIONS}
-                  ${Qt6Xml_DEFINITIONS}
-                  ${Qt6Concurrent_DEFINITIONS})
-include_directories(${QT_INCLUDES})
-qt_standard_project_setup()
+find_package(Qt6 REQUIRED COMPONENTS
+    Concurrent
+    Core
+    DBus
+    Gui
+    LinguistTools
+    Network
+    Sql
+    Widgets
+    Xml)
+
+set(CMAKE_AUTOMOC ON)
 
 # ------------------------------------------------------------------------------
 # Taglib
@@ -163,7 +143,9 @@ endif(UPDATE_TRANSLATIONS)
 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare")
 
-add_executable(yarock ${YAROCK_SOURCES} ${YAROCK_RESOURCES_RCC} ${YAROCK_QM_FILES})
+add_executable(yarock ${YAROCK_SOURCES} ${YAROCK_HEADERS} ${YAROCK_RESOURCES_RCC} ${YAROCK_QM_FILES})
+
+target_include_directories(yarock PUBLIC $<BUILD_INTERFACE:${yarock_SOURCE_DIR}/src>)
 
 set_target_properties(yarock PROPERTIES AUTOMOC TRUE ENABLE_EXPORTS TRUE)
 
@@ -175,7 +157,14 @@ endif(ENABLE_SHORTCUT)
 
 target_link_libraries(yarock
   X11
-  ${QT_LIBRARIES}
+  Qt6::Concurrent
+  Qt6::Core
+  Qt6::DBus
+  Qt6::Gui
+  Qt6::Network
+  Qt6::Sql
+  Qt6::Widgets
+  Qt6::Xml
   ${TAGLIB_LIBRARIES}
   ${HTMLCXX_LIBRARIES}
 )
@@ -183,34 +172,36 @@ target_link_libraries(yarock
 # ------------------------------------------------------------------------------
 # Installation
 # ------------------------------------------------------------------------------
+include(GNUInstallDirs)
+
 if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
   set(CMAKE_INSTALL_PREFIX /usr CACHE PATH "default install path" FORCE)
 endif()
 
-set(CMAKE_INSTALL_BIN   "${CMAKE_INSTALL_PREFIX}/bin"                       CACHE PATH "binaries install path"     FORCE)
-set(CMAKE_INSTALL_LIB   "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/yarock"   CACHE PATH "libraries install path"    FORCE)
-set(CMAKE_INSTALL_TRANS "${CMAKE_INSTALL_PREFIX}/share/yarock/translations" CACHE PATH "translations install path" FORCE)
+set(CMAKE_INSTALL_BIN   "${CMAKE_INSTALL_FULL_BINDIR}")
+set(CMAKE_INSTALL_LIB   "${CMAKE_INSTALL_FULL_LIBDIR}/yarock")
+set(CMAKE_INSTALL_TRANS "${CMAKE_INSTALL_FULL_DATADIR}/yarock/translations")
 
 # -- install binary file
 install(TARGETS yarock DESTINATION ${CMAKE_INSTALL_BIN})
 
 # -- install translations files
-install(FILES ${YAROCK_QM_FILES} DESTINATION "${CMAKE_INSTALL_PREFIX}/share/yarock/translations")
+install(FILES ${YAROCK_QM_FILES} DESTINATION "${CMAKE_INSTALL_TRANS}")
 
 # -- install destop file
-install(FILES data/yarock.desktop DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications")
+install(FILES data/yarock.desktop DESTINATION "${CMAKE_INSTALL_DATADIR}/applications")
 
 # -- install appdata file
-install(FILES data/yarock.metainfo.xml  DESTINATION "${CMAKE_INSTALL_PREFIX}/share/metainfo")
+install(FILES data/yarock.metainfo.xml  DESTINATION "${CMAKE_INSTALL_DATADIR}/metainfo")
 
 # -- install icons files
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_16x16.png DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/16x16/apps" RENAME application-x-yarock.png)
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_32x32.png DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/32x32/apps" RENAME application-x-yarock.png)
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_48x48.png DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps" RENAME application-x-yarock.png)
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_64x64.png DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/64x64/apps" RENAME application-x-yarock.png)
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_128x128.png DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/128x128/apps" RENAME application-x-yarock.png)
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock.svg DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps" RENAME application-x-yarock.svg)
-install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_48x48.png DESTINATION "${CMAKE_INSTALL_PREFIX}/share/pixmaps/" RENAME application-x-yarock.png)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_16x16.png DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/16x16/apps" RENAME application-x-yarock.png)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_32x32.png DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps" RENAME application-x-yarock.png)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_48x48.png DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/48x48/apps" RENAME application-x-yarock.png)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_64x64.png DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/64x64/apps" RENAME application-x-yarock.png)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_128x128.png DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/128x128/apps" RENAME application-x-yarock.png)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock.svg DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps" RENAME application-x-yarock.svg)
+install(FILES ${CMAKE_SOURCE_DIR}/icon/yarock_48x48.png DESTINATION "${CMAKE_INSTALL_DATADIR}/pixmaps/" RENAME application-x-yarock.png)
 
 # ------------------------------------------------------------------------------
 # Configuration
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 0ce07c5..7887d13 100755
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,6 +1,3 @@
-
-cmake_policy(SET CMP0011 NEW)
-
 # ------------------------------------------------------------------------------
 #  SOURCES
 # ------------------------------------------------------------------------------
@@ -19,12 +16,10 @@ SET(YAROCK_INCLUDES  ${CMAKE_SOURCE_DIR}/src/
                      ${CMAKE_SOURCE_DIR}/src/dbus
                      ${CMAKE_SOURCE_DIR}/src/models
                      ${CMAKE_SOURCE_DIR}/src/models/local
-                     ${CMAKE_SOURCE_DIR}/src/models/online
                      ${CMAKE_SOURCE_DIR}/src/models/stream   
                      ${CMAKE_SOURCE_DIR}/src/models/filesystem                     
                      ${CMAKE_SOURCE_DIR}/src/online
                      ${CMAKE_SOURCE_DIR}/src/playqueue
-                     ${CMAKE_SOURCE_DIR}/src/settings
                      ${CMAKE_SOURCE_DIR}/src/smartplaylist
                      ${CMAKE_SOURCE_DIR}/src/views
                      ${CMAKE_SOURCE_DIR}/src/views/about
@@ -36,7 +31,6 @@ SET(YAROCK_INCLUDES  ${CMAKE_SOURCE_DIR}/src/
                      ${CMAKE_SOURCE_DIR}/src/widgets
                      ${CMAKE_SOURCE_DIR}/src/widgets/dialogs
                      ${CMAKE_SOURCE_DIR}/src/widgets/equalizer
-                     ${CMAKE_SOURCE_DIR}/src/widgets/nowplaying
                      ${CMAKE_SOURCE_DIR}/src/widgets/main
                      ${CMAKE_SOURCE_DIR}/src/widgets/playertoolbar
                      ${CMAKE_SOURCE_DIR}/src/widgets/popupcompleter
@@ -236,7 +230,6 @@ SET(YAROCK_HEADERS
            ${CMAKE_SOURCE_DIR}/src/debug.h
            ${CMAKE_SOURCE_DIR}/src/global_actions.h
            ${CMAKE_SOURCE_DIR}/src/shortcuts_manager.h
-           ${CMAKE_SOURCE_DIR}/src/main.h
            ${CMAKE_SOURCE_DIR}/src/mainwindow.h
            ${CMAKE_SOURCE_DIR}/src/networkaccess.h           
            ${CMAKE_SOURCE_DIR}/src/settings.h
@@ -251,8 +244,6 @@ SET(YAROCK_HEADERS
            ${CMAKE_SOURCE_DIR}/src/core/history/histomanager.h
            ${CMAKE_SOURCE_DIR}/src/core/history/histomanager.h
            ${CMAKE_SOURCE_DIR}/src/core/mediaitem/mediaitem.h
-           ${CMAKE_SOURCE_DIR}/src/core/mediaitem/mediaitem_replaygain.h
-           ${CMAKE_SOURCE_DIR}/src/core/mediaitem/mediaitem_statistic.h
            ${CMAKE_SOURCE_DIR}/src/core/mediaitem/mediamimedata.h
            ${CMAKE_SOURCE_DIR}/src/core/mediaitem/playlist_parser.h
            ${CMAKE_SOURCE_DIR}/src/core/mediaitem/tag.h
@@ -311,10 +302,6 @@ SET(YAROCK_HEADERS
            ${CMAKE_SOURCE_DIR}/src/views/local/qpixmapfilter.h
            ${CMAKE_SOURCE_DIR}/src/views/local/local_item.h
            ${CMAKE_SOURCE_DIR}/src/views/local/local_scene.h
-           ${CMAKE_SOURCE_DIR}/src/views/local/local_scene_dashboard.h
-           ${CMAKE_SOURCE_DIR}/src/views/local/local_scene_playing.h
-           ${CMAKE_SOURCE_DIR}/src/views/local/local_scene_playqueue.h
-           ${CMAKE_SOURCE_DIR}/src/views/local/local_scene_rate.h
            ${CMAKE_SOURCE_DIR}/src/views/context/context_item.h
            ${CMAKE_SOURCE_DIR}/src/views/context/context_widget.h
            ${CMAKE_SOURCE_DIR}/src/views/context/context_scene.h
diff --git a/src/core/player/mpv/CMakeLists.txt b/src/core/player/mpv/CMakeLists.txt
index bbd4c28..8ac0ed5 100755
--- a/src/core/player/mpv/CMakeLists.txt
+++ b/src/core/player/mpv/CMakeLists.txt
@@ -1,75 +1,32 @@
-
-# ------------------------------------------------------------------------------
-# CMake
-# ------------------------------------------------------------------------------
-cmake_minimum_required(VERSION 3.16)
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-# ------------------------------------------------------------------------------
-# Project
-# ------------------------------------------------------------------------------
-project(enginempv)
-
 # ------------------------------------------------------------------------------
 # Definitions
 # ------------------------------------------------------------------------------
-add_definitions(-Wall)
-add_definitions(-DQT_PLUGIN)
-add_definitions(-DQT_NO_DEBUG)
-add_definitions(-DQT_SHARED)
-add_definitions(-DQT_THREAD)
-
 add_definitions(-DENABLE_MPV)
 
 # ------------------------------------------------------------------------------
 # LibMpv
 # ------------------------------------------------------------------------------
-find_package(LibMPV REQUIRED)
-
-include_directories(${LIBMPV_INCLUDE_DIR})
-
-# ------------------------------------------------------------------------------
-# Qt
-# ------------------------------------------------------------------------------
-set(QT_LIBRARIES ${Qt6Core_LIBRARIES})
-set(QT_INCLUDES ${Qt6Core_INCLUDE_DIRS})
-add_definitions(${Qt6Core_DEFINITIONS})
-qt_standard_project_setup()
-
-include_directories(${QT_INCLUDES})
+pkg_check_modules(LIBMPV REQUIRED IMPORTED_TARGET mpv)
 
 # ------------------------------------------------------------------------------
 # Sources
 # ------------------------------------------------------------------------------
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/mpv
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/mediaitem
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src)
-
-set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/mpv/engine_mpv.cpp)
+set(enginempv_SOURCES engine_mpv.cpp engine_mpv.h)
 
 # ------------------------------------------------------------------------------
 # Building
 # ------------------------------------------------------------------------------
 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
 
-add_library(enginempv SHARED ${SOURCES})
-
-set_target_properties(enginempv PROPERTIES AUTOMOC TRUE)
+add_library(enginempv SHARED ${enginempv_SOURCES})
 
 add_dependencies(enginempv yarock)
 
-target_link_libraries(enginempv ${LIBMPV_LIBRARY} ${QT_LIBRARIES})
+target_include_directories(enginempv PUBLIC "$<BUILD_INTERFACE:${yarock_SOURCE_DIR}/src;${yarock_SOURCE_DIR}/src/core/mediaitem;${yarock_SOURCE_DIR}/src/core/player>")
+
+target_link_libraries(enginempv PkgConfig::LIBMPV Qt6::Core Qt6::Gui)
 
 # ------------------------------------------------------------------------------
 # Installation
 # ------------------------------------------------------------------------------
-if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-    set(CMAKE_INSTALL_PREFIX /usr CACHE PATH "default install path" FORCE)
-endif()
-
-set(CMAKE_INSTALL_LIB "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/yarock"  CACHE PATH "libraries installation path" FORCE)
-
-install(TARGETS enginempv DESTINATION ${CMAKE_INSTALL_LIB})
+install(TARGETS enginempv DESTINATION  ${CMAKE_INSTALL_LIBDIR}/yarock)
diff --git a/src/core/player/phonon/CMakeLists.txt b/src/core/player/phonon/CMakeLists.txt
index a49d848..ff8d782 100755
--- a/src/core/player/phonon/CMakeLists.txt
+++ b/src/core/player/phonon/CMakeLists.txt
@@ -1,54 +1,17 @@
-
-# ------------------------------------------------------------------------------
-# CMake
-# ------------------------------------------------------------------------------
-cmake_minimum_required(VERSION 3.16)
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-# ------------------------------------------------------------------------------
-# Project
-# ------------------------------------------------------------------------------
-project(enginephonon)
-
 # ------------------------------------------------------------------------------
 # Definitions
 # ------------------------------------------------------------------------------
-add_definitions(-Wall)
-add_definitions(-DQT_PLUGIN)
-add_definitions(-DQT_NO_DEBUG)
-add_definitions(-DQT_SHARED)
-add_definitions(-DQT_THREAD)
-
 add_definitions(-DENABLE_PHONON)
 
 # ------------------------------------------------------------------------------
 # Phonon
 # ------------------------------------------------------------------------------
-find_package(Phonon4Qt6 REQUIRED)
-
-include_directories(${PHONON4QT6_INCLUDE_DIR}/phonon4qt6)
-
-# ------------------------------------------------------------------------------
-# Qt
-# ------------------------------------------------------------------------------
-set(QT_LIBRARIES ${Qt6Core_LIBRARIES})
-set(QT_INCLUDES ${Qt6Core_INCLUDE_DIRS})
-add_definitions(${Qt6Core_DEFINITIONS})
-qt_standard_project_setup()
-
-include_directories(${QT_INCLUDES})
+find_package(Phonon4Qt6 CONFIG REQUIRED)
 
 # ------------------------------------------------------------------------------
 # Sources
 # ------------------------------------------------------------------------------
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/phonon
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/mediaitem
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src)
-
-set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/phonon/engine_phonon.cpp)
+set(SOURCES engine_phonon.cpp engine_phonon.h)
 
 # ------------------------------------------------------------------------------
 # Building
@@ -57,19 +20,13 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
 
 add_library(enginephonon SHARED ${SOURCES})
 
-set_target_properties(enginephonon PROPERTIES AUTOMOC TRUE)
-
 add_dependencies(enginephonon yarock)
 
-target_link_libraries(enginephonon ${PHONON4QT6_LIBRARY} ${QT_LIBRARIES})
+target_include_directories(enginephonon PUBLIC "$<BUILD_INTERFACE:${yarock_SOURCE_DIR}/src;${yarock_SOURCE_DIR}/src/core/mediaitem;${yarock_SOURCE_DIR}/src/core/player>")
+
+target_link_libraries(enginephonon Phonon::phonon4qt6 Qt6::Core Qt6::Gui)
 
 # ------------------------------------------------------------------------------
 # Installation
 # ------------------------------------------------------------------------------
-if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-    set(CMAKE_INSTALL_PREFIX /usr CACHE PATH "default install path" FORCE)
-endif()
-
-set(CMAKE_INSTALL_LIB "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/yarock"  CACHE PATH "libraries installation path" FORCE)
-
-install(TARGETS enginephonon DESTINATION ${CMAKE_INSTALL_LIB})
+install(TARGETS enginephonon DESTINATION  ${CMAKE_INSTALL_LIBDIR}/yarock)
diff --git a/src/core/player/qtmultimedia/CMakeLists.txt b/src/core/player/qtmultimedia/CMakeLists.txt
index 1375fc1..dfd0f59 100755
--- a/src/core/player/qtmultimedia/CMakeLists.txt
+++ b/src/core/player/qtmultimedia/CMakeLists.txt
@@ -1,26 +1,6 @@
-
-# ------------------------------------------------------------------------------
-# CMake
-# ------------------------------------------------------------------------------
-cmake_minimum_required(VERSION 3.16)
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-# ------------------------------------------------------------------------------
-# Project
-# ------------------------------------------------------------------------------
-project(engineqtmultimedia)
-
 # ------------------------------------------------------------------------------
 # Definitions
 # ------------------------------------------------------------------------------
-add_definitions(-Wall)
-add_definitions(-DQT_PLUGIN)
-add_definitions(-DQT_NO_DEBUG)
-add_definitions(-DQT_SHARED)
-add_definitions(-DQT_THREAD)
-
 add_definitions(-DENABLE_QTMULTIMEDIA)
 
 # ------------------------------------------------------------------------------
@@ -28,49 +8,25 @@ add_definitions(-DENABLE_QTMULTIMEDIA)
 # ------------------------------------------------------------------------------
 find_package(Qt6Multimedia REQUIRED)
 
-# ------------------------------------------------------------------------------
-# Qt
-# ------------------------------------------------------------------------------
-set(QT_LIBRARIES ${Qt6Core_LIBRARIES}
-                 ${Qt6Multimedia_LIBRARIES})
-set(QT_INCLUDES ${Qt6Core_INCLUDE_DIRS}
-                ${Qt6Multimedia_INCLUDE_DIRS})
-add_definitions(${Qt6Core_DEFINITIONS}
-                ${Qt6Multimedia_DEFINITIONS})
-qt_standard_project_setup()
-
-include_directories(${QT_INCLUDES})
-
 # ------------------------------------------------------------------------------
 # Sources
 # ------------------------------------------------------------------------------
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/qtmultimedia
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/mediaitem
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src)
-
-set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/qtmultimedia/engine_qtmultimedia.cpp)
+set(SOURCES engine_qtmultimedia.cpp engine_qtmultimedia.h)
 
 # ------------------------------------------------------------------------------
 # Building
 # ------------------------------------------------------------------------------
 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
 
-add_library(engineqtmultimedia SHARED ${SOURCES} )
-
-set_target_properties(engineqtmultimedia PROPERTIES AUTOMOC TRUE)
+add_library(engineqtmultimedia SHARED ${SOURCES})
 
 add_dependencies(engineqtmultimedia yarock)
 
-target_link_libraries(engineqtmultimedia ${QT_LIBRARIES})
+target_include_directories(engineqtmultimedia PUBLIC "$<BUILD_INTERFACE:${yarock_SOURCE_DIR}/src;${yarock_SOURCE_DIR}/src/core/mediaitem;${yarock_SOURCE_DIR}/src/core/player>")
+
+target_link_libraries(engineqtmultimedia Qt6::Core Qt6::Multimedia Qt6::Gui Qt6::Widgets)
 
 # ------------------------------------------------------------------------------
 # Installation
 # ------------------------------------------------------------------------------
-if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-    set(CMAKE_INSTALL_PREFIX /usr CACHE PATH "default install path" FORCE)
-endif()
-
-set(CMAKE_INSTALL_LIB "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/yarock"  CACHE PATH "libraries installation path" FORCE)
-
-install(TARGETS engineqtmultimedia DESTINATION ${CMAKE_INSTALL_LIB})
+install(TARGETS engineqtmultimedia DESTINATION ${CMAKE_INSTALL_LIBDIR}/yarock)
diff --git a/src/core/player/vlc/CMakeLists.txt b/src/core/player/vlc/CMakeLists.txt
index 7f65c4a..0c2f867 100755
--- a/src/core/player/vlc/CMakeLists.txt
+++ b/src/core/player/vlc/CMakeLists.txt
@@ -1,26 +1,6 @@
-
-# ------------------------------------------------------------------------------
-# CMake
-# ------------------------------------------------------------------------------
-cmake_minimum_required(VERSION 3.16)
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_EXTENSIONS OFF)
-
-# ------------------------------------------------------------------------------
-# Project
-# ------------------------------------------------------------------------------
-project(enginevlc)
-
 # ------------------------------------------------------------------------------
 # Definitions
 # ------------------------------------------------------------------------------
-add_definitions(-Wall)
-add_definitions(-DQT_PLUGIN)
-add_definitions(-DQT_NO_DEBUG)
-add_definitions(-DQT_SHARED)
-add_definitions(-DQT_THREAD)
-
 add_definitions(-DENABLE_VLC)
 
 # ------------------------------------------------------------------------------
@@ -30,55 +10,39 @@ find_package(LibVLC REQUIRED)
 
 include_directories(${LIBVLC_INCLUDE_DIR})
 
-# ------------------------------------------------------------------------------
-# Qt
-# ------------------------------------------------------------------------------
-set(QT_LIBRARIES ${Qt6Core_LIBRARIES})
-set(QT_INCLUDES ${Qt6Core_INCLUDE_DIRS})
-add_definitions(${Qt6Core_DEFINITIONS})
-qt_standard_project_setup()
-
-include_directories(${QT_INCLUDES})
-
 # ------------------------------------------------------------------------------
 # Configuration
 # ------------------------------------------------------------------------------
 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/config.h.in
-               ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/vlc/config.h)
+               config.h)
 
 # ------------------------------------------------------------------------------
 # Sources
 # ------------------------------------------------------------------------------
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/vlc
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/mediaitem
-                    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src)
-
-set(SOURCES
-    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/vlc/engine_vlc.cpp
-    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/vlc/vlc_lib.cpp
-    ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/core/player/vlc/vlc_media.cpp)
+set(enginevlc_SOURCES
+    config.h
+    engine_vlc.cpp
+    engine_vlc.h
+    vlc_lib.cpp
+    vlc_lib.h
+    vlc_media.cpp
+    vlc_media.h
+)
 
 # ------------------------------------------------------------------------------
 # Building
 # ------------------------------------------------------------------------------
 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
 
-add_library(enginevlc SHARED ${SOURCES})
-
-set_target_properties(enginevlc PROPERTIES AUTOMOC TRUE)
+add_library(enginevlc SHARED ${enginevlc_SOURCES})
 
 add_dependencies(enginevlc yarock)
 
-target_link_libraries(enginevlc ${LIBVLC_LIBRARY} ${QT_LIBRARIES})
+target_include_directories(enginevlc PUBLIC "$<BUILD_INTERFACE:${yarock_SOURCE_DIR}/src;${yarock_SOURCE_DIR}/src/core/mediaitem;${yarock_SOURCE_DIR}/src/core/player>")
+
+target_link_libraries(enginevlc ${LIBVLC_LIBRARY} Qt6::Core Qt6::Gui)
 
 # ------------------------------------------------------------------------------
 # Installation
 # ------------------------------------------------------------------------------
-if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-    set(CMAKE_INSTALL_PREFIX /usr CACHE PATH "default install path" FORCE)
-endif()
-
-set(CMAKE_INSTALL_LIB "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/yarock"  CACHE PATH "libraries installation path" FORCE)
-
-install(TARGETS enginevlc DESTINATION ${CMAKE_INSTALL_LIB})
+install(TARGETS enginevlc DESTINATION ${CMAKE_INSTALL_LIBDIR}/yarock)
diff --git a/src/infosystem/services/service_lyrics.h b/src/infosystem/services/service_lyrics.h
index a8085d8..4ec4836 100755
--- a/src/infosystem/services/service_lyrics.h
+++ b/src/infosystem/services/service_lyrics.h
@@ -15,7 +15,7 @@
 *  this program.  If not, see <http://www.gnu.org/licenses/>.                           *
 *****************************************************************************************/
 #ifndef _SERVICE_LYRICS_H_
-#define _SERVICE_LYRICS_H
+#define _SERVICE_LYRICS_H_
 
 #include <QString>
 
-- 
2.49.0

openSUSE Build Service is sponsored by