guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

285/295: gnu: evolution-data-server: Update package definition.


From: guix-commits
Subject: 285/295: gnu: evolution-data-server: Update package definition.
Date: Mon, 27 Jul 2020 06:26:38 -0400 (EDT)

dannym pushed a commit to branch wip-desktop
in repository guix.

commit 3f94f0a5c533d7f6688ddb9494c3bd5892061a75
Author: Raghav Gururajan <raghavgururajan@disroot.org>
AuthorDate: Sun Jul 19 03:23:18 2020 -0400

    gnu: evolution-data-server: Update package definition.
    
    * gnu/packages/gnome.scm (evolution-data-server) [version]: Update
    to 3.36.4.
    [source]<origin>[sha256]: Modify base32.
    [outputs]: New output "doc".
    [arguments]<#:imported-modules>: New argument.
    <#:modules>: New argument.
    <#:configure-flags>[-DSENDMAIL_PATH]: New flag.
    [-DWITH_SYSTEMDUSERUNITDIR]: New flag.
    [-DENABLE_GTK_DOC]: New flag.
    [-DWITH_PRIVATE_DOCS]: New flag.
    [-DENABLE_BACKEND_PER_PROCESS]: New flag.
    [-DCMAKE_INSTALL_RPATH]: Modify flag.
    [-DENABLE_UOA]: Remove flag.
    [-DENABLE_GOOGLE]: Remove flag.
    [-DENABLE_GOOGLE_AUTH]: Remove flag.
    <#:phases>['patch-docbook-xml]: New phase.
    ['fix-errors]: New phase.
    ['move-doc]: New phase.
    ['glib-or-gtk-compile-schemas]: New phase.
    ['glib-or-gtk-wrap]: New phase.
    ['patch-paths]: Remove phase.
    ['dont-override-rpath]: Remove phase.
    [native-inputs]: Add docbook-xml, gsettings-desktop-schemas, gtk-doc
    and gtk+:bin. Remove gperf.
    [inputs]: Add gperf, icu4c, libgdata, liboauth and sendmail.
    [propagated-inputs]: Add glib, glib-networking, libxml2 and nspr.
    [synopsis]: Modify.
    [description]: Modify.
    
    * gnu/packages/patches/evolution-data-server-locales.patch: Remove file.
    
    * gnu/packages/patches/evolution-data-server-libical-compat.patch: Remove 
file.
    
    * gnu/local.mk (evolution-data-server-locales.patch): Remove reference.
    
    * gnu/local.mk (evolution-data-server-libical-compat.patch): Remove 
reference.
    
    Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
---
 gnu/local.mk                                       |   2 -
 gnu/packages/gnome.scm                             | 189 +++++++++++++--------
 .../evolution-data-server-libical-compat.patch     |  36 ----
 .../patches/evolution-data-server-locales.patch    |  33 ----
 4 files changed, 122 insertions(+), 138 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 0786fa4..7274f50 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -908,8 +908,6 @@ dist_patch_DATA =                                           
\
   %D%/packages/patches/erlang-man-path.patch                   \
   %D%/packages/patches/eudev-rules-directory.patch             \
   %D%/packages/patches/evilwm-lost-focus-bug.patch             \
-  %D%/packages/patches/evolution-data-server-locales.patch     \
-  %D%/packages/patches/evolution-data-server-libical-compat.patch      \
   %D%/packages/patches/exercism-disable-self-update.patch      \
   %D%/packages/patches/exiv2-CVE-2017-14860.patch              \
   %D%/packages/patches/exiv2-CVE-2017-14859-14862-14864.patch  \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 22ffeba..9b7649d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7222,91 +7222,146 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and 
Kerberos.")
 (define-public evolution-data-server
   (package
     (name "evolution-data-server")
-    (version "3.34.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://gnome/sources/" name "/"
-                                  (version-major+minor version) "/"
-                                  name "-" version ".tar.xz"))
-              (patches (search-patches "evolution-data-server-locales.patch"
-                                       
"evolution-data-server-libical-compat.patch"))
-              (sha256
-               (base32
-                "16z85y6hhazcrp5ngw47w4x9r0j8zrj7awv5im58hhp0xs19zf1y"))))
+    (version "3.36.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "mirror://gnome/sources/" name "/"
+                       (version-major+minor version) "/"
+                       name "-" version ".tar.xz"))
+       (sha256
+        (base32 "03sc7r6hpi62kcxpnzm5gv1ky3hmslh4fnf2vy2qghb5xqg3zy1r"))))
     (build-system cmake-build-system)
+    (outputs '("out" "doc"))
     (arguments
-     '(#:configure-flags
-       (let* ((lib (string-append (assoc-ref %outputs "out") "/lib"))
-              (runpaths (map (lambda (s)
-                               (string-append lib "/evolution-data-server/" s))
-                             '("addressbook-backends" "calendar-backends"
-                               "camel-providers" "credential-modules"
-                               "registry-modules"))))
-         (list "-DENABLE_UOA=OFF"             ;disable Ubuntu Online Accounts 
support
-               "-DENABLE_GOOGLE=OFF"          ;disable Google Contacts support
-               "-DENABLE_GOOGLE_AUTH=OFF"     ;disable Google authentication
-               "-DENABLE_VALA_BINDINGS=ON"
-               (string-append "-DCMAKE_INSTALL_RPATH=" lib ";"
-                              (string-append lib "/evolution-data-server;")
-                              (string-join runpaths ";"))
-               "-DENABLE_INTROSPECTION=ON"))  ;required for Vala bindings
+     `(#:imported-modules
+       (,@%cmake-build-system-modules
+        (guix build glib-or-gtk-build-system))
+       #:modules
+       ((guix build cmake-build-system)
+        ((guix build glib-or-gtk-build-system)
+         #:prefix glib-or-gtk:)
+        (guix build utils))
+       #:configure-flags
+       (list
+        (string-append "-DSENDMAIL_PATH="
+                       (assoc-ref %build-inputs "sendmail"))
+        "-DWITH_SYSTEMDUSERUNITDIR=OFF"
+        "-DENABLE_INTROSPECTION=ON"
+        "-DENABLE_GTK_DOC=ON"
+        "-DWITH_PRIVATE_DOCS=ON"
+        "-DENABLE_BACKEND_PER_PROCESS=ON"
+        "-DENABLE_VALA_BINDINGS=ON"
+        ;; Required for RUNPATH validation.
+        (string-append "-DCMAKE_INSTALL_RPATH="
+                       (assoc-ref %outputs "out")
+                       "/lib"
+                       ":"
+                       (assoc-ref %outputs "out")
+                       "/lib/evolution-data-server"
+                       ":"
+                       (assoc-ref %outputs "out")
+                       "/lib/evolution-data-server/addressbook-backends"
+                       ":"
+                       (assoc-ref %outputs "out")
+                       "/lib/evolution-data-server/calendar-backends"
+                       ":"
+                       (assoc-ref %outputs "out")
+                       "/lib/evolution-data-server/camel-providers"
+                       ":"
+                       (assoc-ref %outputs "out")
+                       "/lib/evolution-data-server/credential-modules"
+                       ":"
+                       (assoc-ref %outputs "out")
+                       "/lib/evolution-data-server/registry-modules"))
        #:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'disable-failing-tests
-           (lambda _
-             ;; tests/book-migration/test-migration.c:160:test_fetch_contacts:
-             ;; assertion failed (g_slist_length (contacts) == 20): (0 == 20)
-             (delete-file-recursively "tests/book-migration")
-             (substitute* "tests/CMakeLists.txt"
-               (("add_subdirectory\\(book-migration\\)") ""))
+         (add-after 'unpack 'patch-docbook-xml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "docs/reference"
+               (substitute* '("camel/camel-docs.sgml.in"
+                              
"evolution-data-server/evolution-data-server-docs.sgml.in"
+                              "private/libedbus-private-docs.sgml.in")
+                 (("http://www.oasis-open.org/docbook/xml/4.1.2/";)
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/"))))
              #t))
-         (add-after 'unpack 'patch-paths
-          (lambda _
-            (substitute* '("tests/test-server-utils/e-test-server-utils.c"
-                           "tests/libedata-book/data-test-utils.c"
-                           "tests/libedata-book/test-book-cache-utils.c"
-                           "tests/libedata-cal/test-cal-cache-utils.c")
-              (("/bin/rm") (which "rm")))
-            #t))
-         (add-before 'configure 'dont-override-rpath
+         (add-after 'patch-docbook-xml 'fix-errors
            (lambda _
+             ;; Entity not available.
+             (substitute* 
"docs/reference/evolution-data-server/evolution-data-server-docs.sgml.in"
+               (("<xi:include href=\"xml/e-cal-time-util.xml\"/>")
+                ""))
+             ;; CMakeLists.txt hard-codes runpath to just the libdir.
+             ;; Remove it so the configure flag is respected.
              (substitute* "CMakeLists.txt"
-               ;; CMakeLists.txt hard-codes runpath to just the libdir.
-               ;; Remove it so the configure flag is respected.
-               (("SET\\(CMAKE_INSTALL_RPATH .*") ""))
-             #t)))))
+               (("SET\\(CMAKE_INSTALL_RPATH \"\\$\\{privlibdir\\}\"\\)")
+                ""))
+             ;; Fix references to 'rm' program.
+             (substitute* '("tests/test-server-utils/e-test-server-utils.c"
+                            "tests/libedata-book/data-test-utils.c"
+                            "tests/libedata-book/test-book-cache-utils.c"
+                            "tests/libedata-cal/test-cal-cache-utils.c")
+               (("/bin/rm") (which "rm")))
+             #t))
+         (add-after 'install 'move-doc
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc (assoc-ref outputs "doc")))
+               (mkdir-p (string-append doc "/share"))
+               (rename-file
+                (string-append out "/share/gtk-doc")
+                (string-append doc "/share/gtk-doc"))
+               #t)))
+         (add-after 'move-doc 'glib-or-gtk-compile-schemas
+           (assoc-ref glib-or-gtk:%standard-phases 
'glib-or-gtk-compile-schemas))
+         (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
+           (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
     (native-inputs
-     `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
+     `(("docbook-xml" ,docbook-xml-4.1.2)
+       ("glib:bin" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
-       ("gperf" ,gperf)
+       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+       ("gtk-doc" ,gtk-doc)
+       ("gtk+:bin" ,gtk+ "bin")
        ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)
-       ("vala" ,vala)
-       ("python" ,python-wrapper)))
-    (propagated-inputs
-     ;; These are all in the Requires field of .pc files.
-     `(("gtk+" ,gtk+)
-       ("libical" ,libical)
-       ("libsecret" ,libsecret)
-       ("libsoup" ,libsoup)
-       ("nss" ,nss)
-       ("sqlite" ,sqlite)))
+       ("python" ,python-wrapper)
+       ("vala" ,vala)))
     (inputs
-     `(("bdb" ,bdb)
-       ("gcr" ,gcr)
+     `(("gcr" ,gcr)
+       ("gweather" ,libgweather)
        ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
+       ("gperf" ,gperf)
+       ("icu" ,icu4c)
        ("json-glib" ,json-glib)
+       ("krb5" ,mit-krb5)
        ("libcanberra" ,libcanberra)
-       ("libgweather" ,libgweather)
-       ("mit-krb5" ,mit-krb5)
+       ("libdb" ,bdb)
+       ("libgdata" ,libgdata)
+       ("oauth" ,liboauth)
        ("openldap" ,openldap)
+       ("sendmail" ,sendmail)
        ("webkitgtk" ,webkitgtk)))
-    (synopsis "Store address books and calendars")
+    (propagated-inputs
+     `(("glib" ,glib)
+       ("glib-networking" ,glib-networking)
+       ("gtk+" ,gtk+)
+       ("libical" ,libical)
+       ("libsecret" ,libsecret)
+       ("libsoup" ,libsoup)
+       ("libxml2" ,libxml2)
+       ("nspr" ,nspr)
+       ("nss" ,nss)
+       ("sqlite" ,sqlite)))
+    (synopsis "Backend for Evolution")
+    (description "Evolution-Data-Server package provides a unified backend for
+programs that work with contacts, tasks, and calendar information.  It provides
+a single database for common, desktop-wide information, such as a user's 
address
+book or calendar events.  It was originally developed for Evolution, but is now
+used by other packages as well.")
     (home-page "https://wiki.gnome.org/Apps/Evolution";)
-    (description
-     "This package provides a unified backend for programs that work with
-contacts, tasks, and calendar information.  It was originally developed for
-Evolution (hence the name), but is now used by other packages as well.")
     (license license:lgpl2.0)))
 
 (define-public caribou
diff --git a/gnu/packages/patches/evolution-data-server-libical-compat.patch 
b/gnu/packages/patches/evolution-data-server-libical-compat.patch
deleted file mode 100644
index da4302d..0000000
--- a/gnu/packages/patches/evolution-data-server-libical-compat.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Prevent test failure and possible data loss due to API change in libical 3.0.7.
-
-https://gitlab.gnome.org/GNOME/evolution-data-server/issues/185
-https://lists.infradead.org/pipermail/libical-devel/2020-January/000907.html
-
-Adapted from upstream:
-
-https://gitlab.gnome.org/GNOME/evolution-data-server/commit/77384ab552c19bf374dbeda53dc37f98d07bd4ec
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e16b8b225..b3c881967 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -111,7 +111,7 @@ 
add_definitions(-DSOUP_VERSION_MIN_REQUIRED=${soup_encoded_version})
- 
- set(gcr_minimum_version 3.4)
- set(libgdata_minimum_version 0.15.1)
--set(libical_glib_minimum_version 3.0.5)
-+set(libical_glib_minimum_version 3.0.7)
- set(libsecret_minimum_version 0.5)
- set(libxml_minimum_version 2.0.0)
- set(sqlite_minimum_version 3.7.17)
-diff --git a/src/calendar/libedata-cal/e-cal-meta-backend.c 
b/src/calendar/libedata-cal/e-cal-meta-backend.c
-index 7501f2a43..93f4806ba 100644
---- a/src/calendar/libedata-cal/e-cal-meta-backend.c
-+++ b/src/calendar/libedata-cal/e-cal-meta-backend.c
-@@ -4067,8 +4067,7 @@ e_cal_meta_backend_inline_local_attachments_sync 
(ECalMetaBackend *meta_backend,
-                                       gchar *base64;
- 
-                                       base64 = g_base64_encode ((const guchar 
*) content, len);
--                                      new_attach = i_cal_attach_new_from_data 
(base64, NULL, NULL);
-+                                      new_attach = i_cal_attach_new_from_data 
(base64, (GFunc) g_free, NULL);
-                                       g_free (content);
--                                      g_free (base64);
- 
-                                       ecmb_remove_all_but_filename_parameter 
(prop);
diff --git a/gnu/packages/patches/evolution-data-server-locales.patch 
b/gnu/packages/patches/evolution-data-server-locales.patch
deleted file mode 100644
index 48baefb..0000000
--- a/gnu/packages/patches/evolution-data-server-locales.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-This patch fixes locale canonicalization when using newer versions of
-ICU.  It comes from the upstream repo, and should appear starting in
-version 3.33.5.
-
-From fe4ac94ce3c14f200e049a5d102fc0e4b811c71e Mon Sep 17 00:00:00 2001
-From: Milan Crha <mcrha@redhat.com>
-Date: Tue, 16 Jul 2019 07:22:07 +0200
-Subject: [PATCH] I#137 - POSIX locale tests fail with ICU 64.x
-
-Closes https://gitlab.gnome.org/GNOME/evolution-data-server/issues/137
----
- src/libedataserver/e-collator.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/libedataserver/e-collator.c b/src/libedataserver/e-collator.c
-index 718eac5da..ec2cf7951 100644
---- a/src/libedataserver/e-collator.c
-+++ b/src/libedataserver/e-collator.c
-@@ -132,6 +132,11 @@ canonicalize_locale (const gchar *posix_locale,
-       gint   len;
-       const gchar *collation_type = NULL;
- 
-+      if (posix_locale && (
-+          g_ascii_strcasecmp (posix_locale, "C") == 0 ||
-+          g_ascii_strcasecmp (posix_locale, "POSIX") == 0))
-+              posix_locale = "en_US_POSIX";
-+
-       len = uloc_canonicalize (posix_locale, locale_buffer, 
LOCALE_BUFFER_LEN, &status);
- 
-       if (U_FAILURE (status)) {
--- 
-2.22.0
-



reply via email to

[Prev in Thread] Current Thread [Next in Thread]