diff options
author | Timothy Sample <samplet@ngyro.com> | 2019-03-27 23:22:31 -0400 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2019-03-30 15:19:31 +0100 |
commit | da43d1cb32cc5dd93d8d240d7a4ad5fb52a9169c (patch) | |
tree | 7018e6bb65eb58ac7d8680b7efa15b742a090135 | |
parent | 14c297fde12f2dd401abadd3896b72ebbf5d571b (diff) | |
download | guix-da43d1cb32cc5dd93d8d240d7a4ad5fb52a9169c.tar guix-da43d1cb32cc5dd93d8d240d7a4ad5fb52a9169c.tar.gz |
gnu: evolution-data-server: Add 'libedataserverui' output.
gnu/packages/gnome.scm (evolution-data-server)[outputs]: Add
'libedataserverui'.
[arguments]: Add phases so that only libedataserverui is linked with
WebKitGTK, and that it is moved to its own output.
(evolution, gnome-calendar, gnome-todo)[inputs]: Add libedataserverui.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r-- | gnu/packages/gnome.scm | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9222f99003..595ba20f7f 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4994,6 +4994,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.") (sha256 (base32 "12b9lfgwd57rzn9394xrbvl9ym5aqldpz9v7c9a421dsv8dgq13b")))) + (outputs '("out" "libedataserverui")) (build-system cmake-build-system) (arguments '(;; XXX FIXME: 11/85 tests are failing. @@ -5034,7 +5035,40 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.") ;; CMakeLists.txt hard-codes runpath to just the libdir. ;; Remove it so the configure flag is respected. (("SET\\(CMAKE_INSTALL_RPATH .*") "")) - #t))))) + #t)) + (add-before 'configure 'factor-webkit + (lambda _ + (substitute* "CMakeLists.txt" + (("webkit2gtk-4\\.0>=\\$[{]webkit2gtk_minimum_version[}]") "") + (("if[(]ENABLE_OAUTH2[)]") + (string-append + "if(ENABLE_OAUTH2)\n" + "\tpkg_check_modules(OAUTH2_UI REQUIRED " + "webkit2gtk-4.0>=${webkit2gtk_minimum_version})"))) + (substitute* "src/libedataserverui/CMakeLists.txt" + (("\\$[{]OAUTH2_([A-Z_]+)[}]" all part) + (string-append all " ${OAUTH2_UI_" part "}"))))) + (add-after 'install 'split + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (libedsui (assoc-ref outputs "libedataserverui"))) + (for-each (lambda (file) + (mkdir-p (dirname (string-append libedsui file))) + (rename-file (string-append out file) + (string-append libedsui file))) + '("/lib/pkgconfig/libedataserverui-1.2.pc" + "/lib/libedataserverui-1.2.so" + "/lib/libedataserverui-1.2.so.2" + "/lib/libedataserverui-1.2.so.2.0.0" + "/lib/girepository-1.0/EDataServerUI-1.2.typelib" + "/include/evolution-data-server/libedataserverui" + "/share/gir-1.0/EDataServerUI-1.2.gir" + "/share/vala/vapi/libedataserverui-1.2.vapi" + "/share/vala/vapi/libedataserverui-1.2.deps")) + (substitute* (string-append libedsui "/lib/pkgconfig/" + "libedataserverui-1.2.pc") + ((out) libedsui)) + #t)))))) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc. ("gobject-introspection" ,gobject-introspection) @@ -6391,7 +6425,8 @@ desktop. It supports world clock, stop watch, alarms, and count down timer.") (inputs `(("evolution-data-server" ,evolution-data-server) ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") - ("gsettings-desktop-schemas" ,gsettings-desktop-schemas))) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("libedataserverui" ,evolution-data-server "libedataserverui"))) (home-page "https://wiki.gnome.org/Apps/Calendar") (synopsis "GNOME's calendar application") (description @@ -6438,6 +6473,7 @@ desktop. It supports multiple calendars, month, week and year view.") (inputs `(("rest" ,rest) ; For Todoist plugin ("json-glib" ,json-glib) ; For Todoist plugin + ("libedataserverui" ,evolution-data-server "libedataserverui") ("libical" ,libical) ("libpeas" ,libpeas) ("python-pygobject" ,python-pygobject) @@ -7608,6 +7644,7 @@ generic enough to work for everyone.") ("gtkspell3" ,gtkspell3) ("highlight" ,highlight) ("libcanberra" ,libcanberra) + ("libedataserverui" ,evolution-data-server "libedataserverui") ("libgweather" ,libgweather) ("libnotify" ,libnotify) ("libsoup" ,libsoup) |