diff --git a/media-gfx/digikam/digikam-8.2.0.recipe b/media-gfx/digikam/digikam-8.7.0.recipe similarity index 94% rename from media-gfx/digikam/digikam-8.2.0.recipe rename to media-gfx/digikam/digikam-8.7.0.recipe index 226775875..eb7a19ad1 100644 --- a/media-gfx/digikam/digikam-8.2.0.recipe +++ b/media-gfx/digikam/digikam-8.7.0.recipe @@ -8,7 +8,7 @@ COPYRIGHT="2010-2024 KDE Organisation" LICENSE="GNU LGPL v2" REVISION="1" SOURCE_URI="https://download.kde.org/stable/digikam/$portVersion/digiKam-$portVersion.tar.xz" -CHECKSUM_SHA256="2f7fcb559b123ed9ecae5a5aef6f4560eee5f49206d9d1746dec9ab6c8fb38bf" +CHECKSUM_SHA256="79e35ec20a43934cf8322d47c9c0540b0b8b727fa7d9aceb90f710fcfe9da02f" SOURCE_DIR="digikam-$portVersion" PATCHES="digikam-$portVersion.patchset" ADDITIONAL_FILES=" @@ -21,19 +21,20 @@ SECONDARY_ARCHITECTURES="x86" PROVIDES=" digikam$secondaryArchSuffix = $portVersion - app:digiKam$secondaryArchSuffix = $portVersion - app:showFoto$secondaryArchSuffix = $portVersion + app:digiKam = $portVersion + app:showFoto = $portVersion lib:libdigikamcore$secondaryArchSuffix = $portVersion lib:libdigikamdatabase$secondaryArchSuffix = $portVersion lib:libdigikamgui$secondaryArchSuffix = $portVersion " REQUIRES=" haiku$secondaryArchSuffix + cmd:exiftool lib:libexiv2$secondaryArchSuffix lib:libexpat$secondaryArchSuffix lib:libGL$secondaryArchSuffix lib:libGLU$secondaryArchSuffix - lib:libglib_2.0${secondaryArchSuffix} + lib:libglib_2.0$secondaryArchSuffix lib:libgomp$secondaryArchSuffix lib:libgphoto2$secondaryArchSuffix lib:libheif$secondaryArchSuffix @@ -41,6 +42,7 @@ REQUIRES=" lib:libintl$secondaryArchSuffix lib:libjasper$secondaryArchSuffix lib:libjpeg$secondaryArchSuffix + lib:libjxl$secondaryArchSuffix lib:libkdeinit5_kded5$secondaryArchSuffix lib:libkdeinit5_klauncher$secondaryArchSuffix lib:libKF5Archive$secondaryArchSuffix @@ -57,6 +59,7 @@ REQUIRES=" lib:libKF5DBusAddons$secondaryArchSuffix lib:libKF5DocTools$secondaryArchSuffix lib:libKF5Emoticons$secondaryArchSuffix + lib:libKF5FileMetadata$secondaryArchSuffix lib:libKF5GuiAddons$secondaryArchSuffix lib:libKF5I18n$secondaryArchSuffix lib:libKF5IconThemes$secondaryArchSuffix @@ -109,13 +112,11 @@ REQUIRES=" BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel extra_cmake_modules$secondaryArchSuffix + ffmpeg6${secondaryArchSuffix}_devel devel:eigen$secondaryArchSuffix devel:libGL$secondaryArchSuffix devel:libGLU$secondaryArchSuffix - devel:libavcodec$secondaryArchSuffix >= 59 - devel:libavformat$secondaryArchSuffix >= 59 - devel:libavutil$secondaryArchSuffix >= 57 - devel:libboost_system$secondaryArchSuffix >= 1.83.0 + devel:libboost_system$secondaryArchSuffix >= 1.88.0 devel:libexiv2$secondaryArchSuffix devel:libexpat$secondaryArchSuffix devel:libglib_2.0$secondaryArchSuffix @@ -126,6 +127,7 @@ BUILD_REQUIRES=" devel:libintl$secondaryArchSuffix devel:libjasper$secondaryArchSuffix devel:libjpeg$secondaryArchSuffix + devel:libjxl$secondaryArchSuffix devel:libkdeinit5_kded5$secondaryArchSuffix devel:libkdeinit5_klauncher$secondaryArchSuffix devel:libKF5Archive$secondaryArchSuffix @@ -143,6 +145,7 @@ BUILD_REQUIRES=" devel:libKF5DesignerPlugin$secondaryArchSuffix devel:libKF5DocTools$secondaryArchSuffix devel:libKF5Emoticons$secondaryArchSuffix + devel:libKF5FileMetadata$secondaryArchSuffix devel:libKF5GuiAddons$secondaryArchSuffix devel:libKF5I18n$secondaryArchSuffix devel:libKF5IconThemes$secondaryArchSuffix @@ -194,7 +197,7 @@ REQUIRES_devel=" BUILD_PREREQUIRES=" cmd:bison - cmd:cmake + cmd:cmake cmd:flex cmd:g++$secondaryArchSuffix cmd:git @@ -206,11 +209,7 @@ BUILD_PREREQUIRES=" BUILD() { - mkdir -p build - cd build - - cmake .. \ - -DCMAKE_BUILD_TYPE=Release \ + cmake -B build -S . -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=$appsDir/digiKam \ -DCMAKE_INSTALL_DATAROOTDIR=$dataDir \ -DCMAKE_INSTALL_LIBDIR=$libDir \ @@ -225,17 +224,17 @@ BUILD() -DENABLE_MEDIAPLAYER=ON \ -DENABLE_APPSTYLES=ON \ -DENABLE_QWEBENGINE=ON \ + -DCMAKE_AUTOGEN_PARALLEL=4 \ -Wno-dev LIBRARY_PATH=$LIBRARY_PATH:$sourceDir/build/bin \ - make $jobArgs + make -C build $jobArgs } INSTALL() { - cd build LIBRARY_PATH=$LIBRARY_PATH:$sourceDir/build/bin \ - make install + make -C build install mv $appsDir/digiKam/bin/digikam $appsDir/digiKam/digiKam mv $appsDir/digiKam/bin/showfoto $appsDir/digiKam/showFoto diff --git a/media-gfx/digikam/patches/digikam-8.2.0.patchset b/media-gfx/digikam/patches/digikam-8.7.0.patchset similarity index 71% rename from media-gfx/digikam/patches/digikam-8.2.0.patchset rename to media-gfx/digikam/patches/digikam-8.7.0.patchset index db5e080db..43abd8038 100644 --- a/media-gfx/digikam/patches/digikam-8.2.0.patchset +++ b/media-gfx/digikam/patches/digikam-8.7.0.patchset @@ -1,15 +1,15 @@ -From bdd570ab3d97781ea250599fe8065d5a33460112 Mon Sep 17 00:00:00 2001 +From a33377f133bace421ac3f6b6f1784b74302a6979 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Thu, 14 Mar 2024 22:51:39 +1000 Subject: Fix build for Haiku -diff --git a/core/app/DigikamTarget.cmake b/core/app/DigikamTarget.cmake -index 3bd9e07..1734256 100644 ---- a/core/app/DigikamTarget.cmake -+++ b/core/app/DigikamTarget.cmake -@@ -77,6 +77,10 @@ target_link_libraries(digikam - digikamgui +diff --git a/core/app/DigikamCoreTarget.cmake b/core/app/DigikamCoreTarget.cmake +index b7ac5a2..0ba9757 100644 +--- a/core/app/DigikamCoreTarget.cmake ++++ b/core/app/DigikamCoreTarget.cmake +@@ -226,6 +226,10 @@ target_link_libraries(digikamcore + Qt${QT_VERSION_MAJOR}::WebEngineWidgets ) +if(HAIKU) @@ -18,33 +18,26 @@ index 3bd9e07..1734256 100644 + if(ENABLE_DBUS) - target_link_libraries(digikam + target_link_libraries(digikamcore diff --git a/core/app/main/digikamapp_setup.cpp b/core/app/main/digikamapp_setup.cpp -index 8b46324..72a4547 100644 +index 90d6783..0475920 100644 --- a/core/app/main/digikamapp_setup.cpp +++ b/core/app/main/digikamapp_setup.cpp -@@ -1,3 +1,4 @@ -+ - /* ============================================================ - * - * This file is a part of digiKam project -@@ -874,9 +875,9 @@ void DigikamApp::setupActions() - loadCameras(); +@@ -886,7 +886,9 @@ void DigikamApp::setupActions() // Load Themes -- + +#ifndef Q_OS_HAIKU - populateThemes(); -- + loadThemesActions(); +#endif + createGUI(xmlFile()); - registerPluginsActions(); diff --git a/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core/NptConfig.h b/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core/NptConfig.h -index c90a816..f80994a 100644 +index 8cc5f37..3cae501 100644 --- a/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core/NptConfig.h +++ b/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core/NptConfig.h -@@ -141,6 +141,11 @@ +@@ -146,6 +146,11 @@ #define NPT_CONFIG_HAVE_GETADDRINFO #endif @@ -71,7 +64,7 @@ index 5f20d6c..990927f 100644 #include #include diff --git a/core/libs/dimg/filters/curves/curveswidget.cpp b/core/libs/dimg/filters/curves/curveswidget.cpp -index 0a03644..e308e75 100644 +index 48c70aa..f95f2a1 100644 --- a/core/libs/dimg/filters/curves/curveswidget.cpp +++ b/core/libs/dimg/filters/curves/curveswidget.cpp @@ -23,6 +23,7 @@ @@ -81,27 +74,27 @@ index 0a03644..e308e75 100644 +#include #include #include - #include + #include diff --git a/core/libs/dngwriter/extra/dng_sdk/dng_string.cpp b/core/libs/dngwriter/extra/dng_sdk/dng_string.cpp -index 7814aff..d24c118 100644 +index 1758ad4..00421d3 100644 --- a/core/libs/dngwriter/extra/dng_sdk/dng_string.cpp +++ b/core/libs/dngwriter/extra/dng_sdk/dng_string.cpp -@@ -27,7 +27,7 @@ - # endif +@@ -38,7 +38,7 @@ + #endif --#if qLinux || qiPhone || qAndroid -+#if qLinux || qiPhone || qAndroid || __HAIKU__ +-#if qiPhone || qAndroid || qLinux ++#if qiPhone || qAndroid || qLinux || __HAIKU__ #include // for isdigit #endif diff --git a/core/libs/dngwriter/extra/dng_sdk/dng_types.h b/core/libs/dngwriter/extra/dng_sdk/dng_types.h -index 91a45cf..1e92b08 100644 +index 1260941..d2ff317 100644 --- a/core/libs/dngwriter/extra/dng_sdk/dng_types.h +++ b/core/libs/dngwriter/extra/dng_sdk/dng_types.h -@@ -27,6 +27,9 @@ +@@ -49,6 +49,9 @@ typedef std::uint64_t uint64; - #if qDNGUseStdInt || 1 + #else +#ifdef __HAIKU__ +#include @@ -109,15 +102,14 @@ index 91a45cf..1e92b08 100644 typedef int8_t int8; typedef int16_t int16; typedef int32_t int32; -@@ -36,7 +39,7 @@ typedef uint8_t uint8; +@@ -58,6 +61,7 @@ typedef uint8_t uint8; typedef uint16_t uint16; typedef uint32_t uint32; typedef uint64_t uint64; -- +#endif - #else - typedef signed char int8; + #endif // __cplusplus + diff --git a/core/libs/pgfutils/libpgf/PGFplatform.h b/core/libs/pgfutils/libpgf/PGFplatform.h index ac0708e..3ee990b 100644 --- a/core/libs/pgfutils/libpgf/PGFplatform.h @@ -141,15 +133,15 @@ index ac0708e..3ee990b 100644 #define __POSIX__ #endif diff --git a/core/libs/settings/applicationsettings_miscs.cpp b/core/libs/settings/applicationsettings_miscs.cpp -index e4bdd26..d0825b2 100644 +index 06bd987..72fbc61 100644 --- a/core/libs/settings/applicationsettings_miscs.cpp +++ b/core/libs/settings/applicationsettings_miscs.cpp -@@ -495,7 +495,11 @@ void ApplicationSettings::setApplicationFont(const QFont& font) +@@ -530,7 +530,11 @@ void ApplicationSettings::setApplicationFont(const QFont& font) QFont ApplicationSettings::getApplicationFont() const { +#ifdef Q_OS_HAIKU -+ return QFontDatabase::systemFont(QFontDatabase::GeneralFont); ++ return QFontDatabase::systemFont(QFontDatabase::GeneralFont); +#else return d->applicationFont; +#endif @@ -157,23 +149,23 @@ index e4bdd26..d0825b2 100644 bool ApplicationSettings::getHelpBoxNotificationSeen() diff --git a/core/libs/threadimageio/thumb/thumbnailcreator_basic.cpp b/core/libs/threadimageio/thumb/thumbnailcreator_basic.cpp -index 2d33091..9234195 100644 +index b04363e..0087e10 100644 --- a/core/libs/threadimageio/thumb/thumbnailcreator_basic.cpp +++ b/core/libs/threadimageio/thumb/thumbnailcreator_basic.cpp @@ -38,7 +38,7 @@ extern "C" #include #include --#ifndef Q_OS_WIN32 -+#if !defined(Q_OS_WIN32) && !defined(Q_OS_HAIKU) +-#ifndef Q_OS_WIN32 // krazy:exclude=cpp ++#if !defined(Q_OS_WIN32) && !defined(Q_OS_HAIKU) // krazy:exclude=cpp # include # include #endif diff --git a/core/libs/widgets/mainview/thememanager.cpp b/core/libs/widgets/mainview/thememanager.cpp -index 85955fa..a830501 100644 +index ffd19ac..836287b 100644 --- a/core/libs/widgets/mainview/thememanager.cpp +++ b/core/libs/widgets/mainview/thememanager.cpp -@@ -82,6 +82,7 @@ void ThemeManager::setCurrentTheme(const QString& name) +@@ -83,6 +83,7 @@ void ThemeManager::setCurrentTheme(const QString& name) void ThemeManager::slotChangePalette() { @@ -181,7 +173,7 @@ index 85955fa..a830501 100644 updateCurrentDesktopDefaultThemePreview(); QString theme(currentThemeName()); -@@ -105,6 +106,7 @@ void ThemeManager::slotChangePalette() +@@ -108,6 +109,7 @@ void ThemeManager::slotChangePalette() qCDebug(DIGIKAM_WIDGETS_LOG) << theme << " :: " << filePath; Q_EMIT signalThemeChanged(); @@ -189,7 +181,7 @@ index 85955fa..a830501 100644 } void ThemeManager::setThemeMenuAction(QMenu* const action) -@@ -131,6 +133,7 @@ void ThemeManager::registerThemeActions(DXmlGuiWindow* const win) +@@ -134,6 +136,7 @@ void ThemeManager::registerThemeActions(DXmlGuiWindow* const win) void ThemeManager::populateThemeMenu() { @@ -197,7 +189,7 @@ index 85955fa..a830501 100644 if (!d->themeMenuAction) { return; -@@ -193,6 +196,7 @@ void ThemeManager::populateThemeMenu() +@@ -198,6 +201,7 @@ void ThemeManager::populateThemeMenu() updateCurrentDesktopDefaultThemePreview(); setCurrentTheme(theme); @@ -206,7 +198,7 @@ index 85955fa..a830501 100644 void ThemeManager::updateCurrentDesktopDefaultThemePreview() diff --git a/core/showfoto/main/showfoto_setup.cpp b/core/showfoto/main/showfoto_setup.cpp -index 48618d4..7f3a387 100644 +index 41d1f06..0d55d2b 100644 --- a/core/showfoto/main/showfoto_setup.cpp +++ b/core/showfoto/main/showfoto_setup.cpp @@ -19,7 +19,9 @@ namespace ShowFoto @@ -220,73 +212,48 @@ index 48618d4..7f3a387 100644 // Extra 'File' menu actions --------------------------------------------- diff --git a/core/showfoto/main/showfotosettings.cpp b/core/showfoto/main/showfotosettings.cpp -index 49414c7..a0a595b 100644 +index 18d03aa..60e3a25 100644 --- a/core/showfoto/main/showfotosettings.cpp +++ b/core/showfoto/main/showfotosettings.cpp -@@ -396,7 +396,11 @@ QString ShowfotoSettings::getIconTheme() const +@@ -294,7 +294,11 @@ QString ShowfotoSettings::getIconTheme() const QFont ShowfotoSettings::getApplicationFont() const { +#ifdef Q_OS_HAIKU -+ return QFontDatabase::systemFont(QFontDatabase::GeneralFont); ++ return QFontDatabase::systemFont(QFontDatabase::GeneralFont); +#else return d->applicationFont; +#endif } bool ShowfotoSettings::getShowSplash() const -diff --git a/core/showfoto/setup/showfotosetup.cpp b/core/showfoto/setup/showfotosetup.cpp -index 1143b02..7f1eece 100644 ---- a/core/showfoto/setup/showfotosetup.cpp -+++ b/core/showfoto/setup/showfotosetup.cpp -@@ -194,7 +194,9 @@ ShowfotoSetup::ShowfotoSetup(QWidget* const parent, ShowfotoSetup::Page page) - winId(); - DXmlGuiWindow::setGoodDefaultWindowSize(windowHandle()); - DXmlGuiWindow::restoreWindowSize(windowHandle(), group); -+#ifndef Q_OS_HAIKU - resize(windowHandle()->size()); -+#endif - } - - ShowfotoSetup::~ShowfotoSetup() diff --git a/core/showfoto/setup/showfotosetupmisc.cpp b/core/showfoto/setup/showfotosetupmisc.cpp -index 39dd377..cafac03 100644 +index f27476d..41b620b 100644 --- a/core/showfoto/setup/showfotosetupmisc.cpp +++ b/core/showfoto/setup/showfotosetupmisc.cpp -@@ -79,7 +79,9 @@ public: - sortOrderComboBox (nullptr), - applicationStyle (nullptr), - applicationIcon (nullptr), +@@ -88,8 +88,9 @@ public: + QComboBox* sortOrderComboBox = nullptr; + QComboBox* applicationStyle = nullptr; + QComboBox* applicationIcon = nullptr; +#ifndef Q_OS_HAIKU - applicationFont (nullptr), + DFontSelect* applicationFont = nullptr; +- +#endif - systemSettingsWidget (nullptr), + SystemSettingsWidget* systemSettingsWidget = nullptr; #ifdef HAVE_SONNET -@@ -114,7 +116,9 @@ public: - QComboBox* sortOrderComboBox; - QComboBox* applicationStyle; - QComboBox* applicationIcon; -+#ifndef Q_OS_HAIKU - DFontSelect* applicationFont; -+#endif - - SystemSettingsWidget* systemSettingsWidget; - -@@ -317,10 +321,10 @@ ShowfotoSetupMisc::ShowfotoSetupMisc(QWidget* const parent) - { +@@ -298,8 +299,10 @@ ShowfotoSetupMisc::ShowfotoSetupMisc(QWidget* const parent) d->applicationIcon->addItem(it.key(), it.value()); } -- + +#ifndef Q_OS_HAIKU d->applicationFont = new DFontSelect(i18n("Application font:"), appearancePanel); d->applicationFont->setToolTip(i18n("Select here the font used to display text in whole application.")); -- +#endif + // -------------------------------------------------------- - layout2->setContentsMargins(spacing, spacing, spacing, spacing); -@@ -330,7 +334,9 @@ ShowfotoSetupMisc::ShowfotoSetupMisc(QWidget* const parent) +@@ -310,7 +313,9 @@ ShowfotoSetupMisc::ShowfotoSetupMisc(QWidget* const parent) layout2->addWidget(tabStyleHbox); layout2->addWidget(appStyleHbox); layout2->addWidget(iconThemeHbox); @@ -296,18 +263,17 @@ index 39dd377..cafac03 100644 layout2->addStretch(); d->tab->insertTab(Appearance, appearancePanel, i18nc("@title:tab", "Appearance")); -@@ -424,8 +430,9 @@ void ShowfotoSetupMisc::readSettings() +@@ -407,7 +412,9 @@ void ShowfotoSetupMisc::readSettings() #endif d->applicationIcon->setCurrentIndex(d->applicationIcon->findData(d->settings->getIconTheme())); +#ifndef Q_OS_HAIKU d->applicationFont->setFont(d->settings->getApplicationFont()); -- +#endif + // NOTE: Spellcheck and Localize read settings is done in widget constructor. } - -@@ -451,7 +458,9 @@ void ShowfotoSetupMisc::applySettings() +@@ -435,7 +442,9 @@ void ShowfotoSetupMisc::applySettings() #endif d->settings->setIconTheme(d->applicationIcon->currentData().toString()); @@ -318,10 +284,10 @@ index 39dd377..cafac03 100644 #ifdef HAVE_SONNET diff --git a/core/utilities/import/backend/gpcamera.cpp b/core/utilities/import/backend/gpcamera.cpp -index 7ce27f6..ad5d588 100644 +index 6783f7c..db388a8 100644 --- a/core/utilities/import/backend/gpcamera.cpp +++ b/core/utilities/import/backend/gpcamera.cpp -@@ -58,6 +58,10 @@ extern "C" +@@ -59,6 +59,10 @@ extern "C" //#define GPHOTO2_DEBUG 1 @@ -333,5 +299,5 @@ index 7ce27f6..ad5d588 100644 // LibGphoto2 includes -- -2.43.2 +2.50.1