From d74fe92ce80fa65e07a6c6771a66a8ae4962d377 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Wed, 27 Sep 2023 20:19:43 +0200 Subject: [PATCH] Use system KDSingleApplication when available --- CMakeLists.txt | 20 ++++++++++++++++---- dist/windows/strawberry.nsi.in | 4 ++++ 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index df739234..7119854e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -300,10 +300,22 @@ if(NOT TAGLIB_FOUND AND NOT TAGPARSER_FOUND) endif() # SingleApplication -add_subdirectory(3rdparty/kdsingleapplication) -set(SINGLEAPPLICATION_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/kdsingleapplication) -set(SINGLEAPPLICATION_LIBRARIES kdsingleapplication) -add_definitions(-DKDSINGLEAPPLICATION_STATIC_BUILD) +if(QT_VERSION_MAJOR EQUAL 5) + set(KDSINGLEAPPLICATION_NAME "KDSingleApplication-qt") +else() + set(KDSINGLEAPPLICATION_NAME "KDSingleApplication-qt${QT_VERSION_MAJOR}") +endif() +find_package(${KDSINGLEAPPLICATION_NAME}) +if(TARGET KDAB::kdsingleapplication) + message(STATUS "Using system KDSingleApplication") + set(SINGLEAPPLICATION_LIBRARIES KDAB::kdsingleapplication) +else() + message(STATUS "Using 3rdparty KDSingleApplication") + add_subdirectory(3rdparty/kdsingleapplication) + set(SINGLEAPPLICATION_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/kdsingleapplication) + set(SINGLEAPPLICATION_LIBRARIES kdsingleapplication) + add_definitions(-DKDSINGLEAPPLICATION_STATIC_BUILD) +endif() if(APPLE) add_subdirectory(3rdparty/SPMediaKeyTap) diff --git a/dist/windows/strawberry.nsi.in b/dist/windows/strawberry.nsi.in index 367c89c2..8e2cf6d9 100644 --- a/dist/windows/strawberry.nsi.in +++ b/dist/windows/strawberry.nsi.in @@ -299,6 +299,7 @@ Section "Strawberry" Strawberry File "libidn2-0.dll" File "libintl-8.dll" File "libjpeg-9.dll" + File "libkdsingleapplication-qt6.dll" File "liblzma-5.dll" File "libmp3lame-0.dll" File "libmpcdec.dll" @@ -435,6 +436,7 @@ Section "Strawberry" Strawberry File "harfbuzz.dll" File "intl-8.dll" File "jpeg62.dll" + File "kdsingleapplication-qt6.dll" File "libbs2b.dll" File "libfaac_dll.dll" File "liblzma.dll" @@ -853,6 +855,7 @@ Section "Uninstall" Delete "$INSTDIR\libidn2-0.dll" Delete "$INSTDIR\libintl-8.dll" Delete "$INSTDIR\libjpeg-9.dll" + Delete "$INSTDIR\libkdsingleapplication-qt6.dll" Delete "$INSTDIR\liblzma-5.dll" Delete "$INSTDIR\libmp3lame-0.dll" Delete "$INSTDIR\libmpcdec.dll" @@ -989,6 +992,7 @@ Section "Uninstall" Delete "$INSTDIR\harfbuzz.dll" Delete "$INSTDIR\intl-8.dll" Delete "$INSTDIR\jpeg62.dll" + Delete "$INSTDIR\kdsingleapplication-qt6.dll" Delete "$INSTDIR\libbs2b.dll" Delete "$INSTDIR\libfaac_dll.dll" Delete "$INSTDIR\liblzma.dll"