Subject: [bug#39896] [PATCH 10/14] gnu: Add kdiagram.

From: Hartmut Goebel <[email-masked]>
Date: Wed, 4 Mar 2020 10:21:29 +0100

* gnu/packages/kde.scm (kdiagram): New variable.
* packages/patches/kdiagram-Fix-missing-link-libraries.patch: New file.
* gnu/local.mk: Add it.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/kde.scm                          | 31 +++++++++++++++++++
 .../kdiagram-Fix-missing-link-libraries.patch | 23 ++++++++++++++
 3 files changed, 55 insertions(+)
 create mode 100644 gnu/packages/patches/kdiagram-Fix-missing-link-libraries.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 840e0e58d6..dc35bfb306 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1050,6 +1050,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/libziparchive-add-includes.patch		\
   %D%/packages/patches/localed-xorg-keyboard.patch		\
   %D%/packages/patches/kdepim-runtime-Fix-missing-link-libraries.patch \
+  %D%/packages/patches/kdiagram-Fix-missing-link-libraries.patch \
   %D%/packages/patches/kiki-level-selection-crash.patch		\
   %D%/packages/patches/kiki-makefile.patch			\
   %D%/packages/patches/kiki-missing-includes.patch		\
diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm
index 8a612bfe5b..c4576c8ba7 100644
--- a/gnu/packages/kde.scm
+++ b/gnu/packages/kde.scm
@@ -325,6 +325,37 @@ for some KDevelop language plugins (Ruby, PHP, CSS...).")
 ;; kdevplatform was merged into kdevelop as of 5.2.x
 (define-deprecated kdevplatform kdevelop)
 
+(define-public kdiagram
+  (package
+    (name "kdiagram")
+    (version "2.6.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/kdiagram/" version
+                           "/kdiagram-" version ".tar.xz"))
+       (sha256
+        (base32 "1c6dbp9gssjrx59z8yxzq1ay56pnw7h28symjrv0gcvhxyjirrxx"))
+       (patches (search-patches
+                 "kdiagram-Fix-missing-link-libraries.patch"))))
+    (build-system qt-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("qttools" ,qttools)))
+    (inputs
+     `(("qtbase" ,qtbase)
+       ("qtsvg" ,qtsvg)))
+    (home-page "https://cgit.kde.org/kdiagram.git/")
+    (synopsis "Libraries for creating business diagrams")
+    (description "This package provides libraries for integrating business
+diagrams in Qt-based applications.
+
+@code{KCharts} provides an implementation of the ODF Chart specification.  It
+supports stock charts, box charts, and whisker charts.  @code{KGantt} provides
+a module for implementing ODF Gantt charts, which are bar charts that
+illustrate project schedules.")
+    (license license:gpl2+)))
+
 (define-public krita
   (package
     (name "krita")
diff --git a/gnu/packages/patches/kdiagram-Fix-missing-link-libraries.patch b/gnu/packages/patches/kdiagram-Fix-missing-link-libraries.patch
new file mode 100644
index 0000000000..cdfb608d9b
--- /dev/null
+++ b/gnu/packages/patches/kdiagram-Fix-missing-link-libraries.patch
@@ -0,0 +1,23 @@
+From c59acf1f54a2cd760e55082a01593a31a690d786 Mon Sep 17 00:00:00 2001
+From: Hartmut Goebel <[email-masked]>
+Date: Wed, 22 Jan 2020 00:56:27 +0100
+Subject: [PATCH] Fix missing link libraries.
+
+These are only actually missing if the libraries reside in different
+prefixes, as it is the case in Guix or Nix.
+---
+ examples/Bars/Simple/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/examples/Bars/Simple/CMakeLists.txt b/examples/Bars/Simple/CMakeLists.txt
+index be2a6fc..b13befb 100644
+--- a/examples/Bars/Simple/CMakeLists.txt
++++ b/examples/Bars/Simple/CMakeLists.txt
+@@ -1,3 +1,3 @@
+ add_executable(BarsSimple  main.cpp)
+ 
+-target_link_libraries(BarsSimple KChart Qt5::Widgets)
++target_link_libraries(BarsSimple KChart Qt5::Widgets Qt5::Svg)
+-- 
+2.21.1
+
-- 
2.21.1