gnu: gusb-minimal: Introduce minimal variant.

This is needed to prevent a dependency cycle between Inkscape and GTK+.

* gnu/packages/gnome.scm (gusb-minimal): New variable.
[configure-flags]: Disable docs.
[native-inputs]: Remove gtk-doc.
(gusb): Rewrite in terms of gusb-minimal.
[configure-flags]: Enable docs.
[native-inputs]: Add gtk-doc.
This commit is contained in:
Maxim Cournoyer 2021-10-15 16:46:03 -04:00
parent 0195d4b1c3
commit 3790372979
No known key found for this signature in database
GPG Key ID: 1260E46482E63562

View File

@ -6587,38 +6587,38 @@ GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
DAV, and others.")
(license license:lgpl2.0+)))
(define-public gusb
(define-public gusb-minimal
(package
(name "gusb")
(name "gusb-minimal")
(version "0.3.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hughsie/libgusb")
(commit version)))
(url "https://github.com/hughsie/libgusb")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0ifhdqhpyxwsg0z9s1anj7cf5pya5qsqyp5ksh9n7mqwa4lrjkl8"))))
(build-system meson-build-system)
(arguments
`(#:tests? #f ;libusb fails to initialize. Wonder what that is.
#:configure-flags
(cons "-Ddocs=false"
(if ,(%current-target-system)
;; Introspection data cannot currently be cross-compiled.
'("-Dintrospection=false"
;; Requires introspection data.
"-Dvapi=false")
'()))))
(native-inputs
`(("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("vala" ,vala)
("gtk-doc" ,gtk-doc/stable)))
("vala" ,vala)))
(propagated-inputs
;; Both of these are required by gusb.pc.
`(("glib" ,glib)
("libusb" ,libusb)))
(arguments
`(#:tests? #f ;libusb fails to initialize. Wonder what that is.
#:configure-flags
,(if (%current-target-system)
;; Introspection data cannot currently be cross-compiled.
''("-Dintrospection=false"
;; Requires introspection data.
"-Dvapi=false")
''())))
(home-page "https://github.com/hughsie/libgusb")
(synopsis "GLib binding for libusb1")
(description
@ -6628,6 +6628,18 @@ and integration into a mainloop. This makes it easy to integrate low level
USB transfers with your high-level application or system daemon.")
(license license:lgpl2.1+)))
(define-public gusb
(package/inherit gusb-minimal
(name "gusb")
(arguments
(substitute-keyword-arguments (package-arguments gusb-minimal)
((#:configure-flags flags)
`(cons "-Ddocs=true"
(delete "-Ddocs=false" ,flags)))))
(native-inputs
(cons `("gtk-doc" ,gtk-doc/stable)
(package-native-inputs gusb-minimal)))))
(define-public simple-scan
(package
(name "simple-scan")