GNU bug report logs -
#48028
[PATCH wip-gnome 0/8]: Misc.
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
IIUC, the commit message is ‘gnu: gtkmm <at> 2: Remove inheritance from gtkmm <at> 3’.
But this patch also adds some inputs, a description, starts an X server
for tests, places documentation in the correct place ... Could you split
up this patch?
Raghav Gururajan via Guix-patches via schreef op ma 26-04-2021 om 04:11 [-0400]:
> Remove inheritance to prevent rebuilds of packages like inkscape
> and gtk+, whenever changes are made gtkmm <at> 3.
If changes are made to gtkmm <at> 3, wouldn't gtkmm <at> 2 require similar changes
anyway?
For example ...
> * gnu/packages/gtk.scm (gtkmm-2)[build-system,outputs,arguments,
> native-inputs,synopsis,description,home-page,license]: New fields.
> ---
> gnu/packages/gtk.scm | 48 ++++++++++++++++++++++++++++++++++++++++++--
> 1 file changed, 46 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
> index 04a0db1161..81ac4a7197 100644
> --- a/gnu/packages/gtk.scm
> +++ b/gnu/packages/gtk.scm
> @@ -1660,7 +1660,6 @@ tutorial.")
>
> (define-public gtkmm-2
> (package
> - (inherit gtkmm)
> (name "gtkmm")
> (version "2.24.5")
> (source
> @@ -1672,12 +1671,57 @@ tutorial.")
> name "-" version ".tar.xz"))
> (sha256
> (base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
> + (build-system glib-or-gtk-build-system)
> + (outputs '("out" "doc"))
> + (arguments
btw, the following has been dropped in
<https://git.savannah.gnu.org/cgit/guix.git/commit/?h=wip-gnome&id=26511b7aed03fcf5175fe29ba9a51de4fe4ee3c9>,
I wonder why?
My guess: disallowed-references refers to the wrong version when cross-compiling.
But that seems rather harmless to me? (Though ideally there would be exist a
disallowed-references/native or something ...)
> + `(#:phases
> + (modify-phases %standard-phases
> + (add-before 'check 'pre-check
> + (lambda _
> + ;; Tests require a running X server.
> + (system "Xvfb :1 +extension GLX &")
> + (setenv "DISPLAY" ":1")
> + ;; For missing '/etc/machine-id'.
> + (setenv "DBUS_FATAL_WARNINGS" "0")
> + #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/doc")
> + (string-append doc "/share/doc"))
> + #t))))))
These phases were added to gtkmm <at> 3 in
<https://git.savannah.gnu.org/cgit/guix.git/commit/?h=wip-gnome&id=26511b7aed03fcf5175fe29ba9a51de4fe4ee3c9>.
It seems they are also required in gtkmm <at> 2.
> + (native-inputs
> + `(("dot" ,graphviz)
> + ("doxygen" ,doxygen)
> + ("m4" ,m4)
> + ("mm-common" ,mm-common)
> + ("perl" ,perl)
> + ("pkg-config" ,pkg-config)
> + ("xsltproc" ,libxslt)
> + ("xorg-server" ,xorg-server-for-tests)))
Likewise.
> (propagated-inputs
> `(("atkmm" ,atkmm-2.28)
> ("cairomm" ,cairomm-1.13)
> ("glibmm" ,glibmm-2.64)
> ("gtk+" ,gtk+-2)
> - ("pangomm" ,pangomm-2.42)))))
> + ("pangomm" ,pangomm-2.42)))
> + (synopsis "C++ Interfaces for GTK+ and GNOME")
> + (description "GTKmm is the official C++ interface for the popular GUI
> +library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
> +widgets that are easily extensible via inheritance. You can create user
> +interfaces either in code or with the Glade User Interface designer, using
> +libglademm. There's extensive documentation, including API reference and a
> +tutorial.")
Duplication.
> + (home-page "https://gtkmm.org/")
> + (license
> + (list
> + ;; Library
> + license:lgpl2.1+
> + ;; Tools
> + license:gpl2+))))
More duplication.
So I don't see the value of removing inheritance from gtkmm <at> 3.
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
This bug report was last modified 4 years and 70 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.