media-libs/libchamplain: fix gtk-doc, other fixes and touchups
authorMart Raudsepp <leio@gentoo.org>
Tue, 19 Mar 2019 08:32:22 +0000 (10:32 +0200)
committerMart Raudsepp <leio@gentoo.org>
Tue, 19 Mar 2019 08:41:22 +0000 (10:41 +0200)
* Fix LICENSE from LGPL-2 to LGPL-2.1+.
* Fix USE=gtk-doc to always be honored (implicitly disabled upstream
  if gtk widgetry is disabled) and actually show up in devhelp.
* Add missing meson minimum version requirement - requires 0.49.0,
  but meson.eclass only guarantees 0.48.2 at this point.
* Fix EAPI-7 bump to actually be an EAPI-7 port by properly using
  DEPEND and BDEPEND.
* Use emesonargs array to be able to comment options on the relevant
  line.
* Add longdescription to metadata.
* Sort deps and options in occurrences order for easier review on
  future bumps.
* Depend on >=gobject-introspection-1.54 to ensure compat with meson.

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
media-libs/libchamplain/libchamplain-0.12.19-r1.ebuild [moved from media-libs/libchamplain/libchamplain-0.12.19.ebuild with 51% similarity]
media-libs/libchamplain/metadata.xml

similarity index 51%
rename from media-libs/libchamplain/libchamplain-0.12.19.ebuild
rename to media-libs/libchamplain/libchamplain-0.12.19-r1.ebuild
index 9cecc17634abb3a861429a91ecf106a3bdbe131d..1240a3e7c15ccdd88b90db049aefabc4c72a7d9a 100644 (file)
@@ -10,44 +10,52 @@ DESCRIPTION="Clutter based world map renderer"
 HOMEPAGE="https://wiki.gnome.org/Projects/libchamplain"
 
 SLOT="0.12"
-LICENSE="LGPL-2"
+LICENSE="LGPL-2.1+"
 KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
 
 IUSE="+gtk gtk-doc +introspection vala"
-REQUIRED_USE="vala? ( introspection )"
+REQUIRED_USE="
+       vala? ( introspection )
+       gtk-doc? ( gtk )
+" # gtk-doc build gets disabled in meson if gtk widgetry is disabled (no separate libchamplain-gtk gtk-docs anymore)
 
 RDEPEND="
-       dev-db/sqlite:3
        >=dev-libs/glib-2.38:2
+       >=x11-libs/gtk+-3.0:3
        >=media-libs/clutter-1.24:1.0[introspection?]
-       media-libs/cogl:=
-       >=net-libs/libsoup-2.42:2.4
-       >=x11-libs/cairo-1.4
-       x11-libs/gtk+:3
        gtk? (
                x11-libs/gtk+:3[introspection?]
                media-libs/clutter-gtk:1.0 )
-       introspection? ( dev-libs/gobject-introspection:= )
+       >=x11-libs/cairo-1.4
+       dev-db/sqlite:3
+       >=net-libs/libsoup-2.42:2.4
+       introspection? ( >=dev-libs/gobject-introspection-1.54:= )
+       media-libs/cogl:=
 "
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
        dev-util/glib-utils
+       >=dev-util/meson-0.49.0
        virtual/pkgconfig
        gtk-doc? ( >=dev-util/gtk-doc-1.15 )
        vala? ( $(vala_depend) )
 "
 
 src_prepare() {
-       use vala && vala_src_prepare
        xdg_src_prepare
+       use vala && vala_src_prepare
+       # Fix showing inside devhelp (gtkdocdir subdir and name of the module need to match)
+       sed -i -e 's:package_name:package_string:' docs/reference/meson.build || die # https://gitlab.gnome.org/GNOME/libchamplain/merge_requests/7
 }
 
 src_configure() {
-       # demos are only built, so just disable them
-       meson_src_configure \
-               -Dmemphis=false \
-               -Ddemos=false \
-               $(meson_use gtk widgetry) \
-               $(meson_use gtk-doc gtk_doc) \
-               $(meson_use introspection) \
+       local emesonargs=(
+               -Dmemphis=false # TODO: What's the state of this vector renderer?
+               $(meson_use introspection)
                $(meson_use vala vapi)
+               $(meson_use gtk widgetry)
+               $(meson_use gtk-doc gtk_doc)
+               -Ddemos=false # only built, not installed
+       )
+       meson_src_configure
 }
index 996e7cacd21795795e19b0662098f7a322c77fca..c119093f59a92231080b7a38d6ac1051660b444f 100644 (file)
@@ -5,4 +5,10 @@
                <email>gnome@gentoo.org</email>
                <name>Gentoo GNOME Desktop</name>
        </maintainer>
+       <longdescription lang="en">
+               libchamplain is a Gtk widget displaying zoomable and pannable maps that can be
+               loaded from various network sources. It supports overlay layers, markers, and
+               custom elements displayed on top of the maps. The library is written in C but
+               other language mappings are also available thanks to GObject-introspection.
+       </longdescription>
 </pkgmetadata>