Enable optional GTK+2 support. Enable multilib support. Remove gtk-doc install hacks...
authorMichał Górny <mgorny@gentoo.org>
Sun, 19 Apr 2015 16:30:51 +0000 (16:30 +0000)
committerMichał Górny <mgorny@gentoo.org>
Sun, 19 Apr 2015 16:30:51 +0000 (16:30 +0000)
Package-Manager: portage-2.2.18/cvs/Linux x86_64
Manifest-Sign-Key: 0xEFB4464E!

dev-libs/libdbusmenu/ChangeLog
dev-libs/libdbusmenu/Manifest
dev-libs/libdbusmenu/files/libdbusmenu-12.10.2-gtk2-signal-fix.patch [new file with mode: 0644]
dev-libs/libdbusmenu/libdbusmenu-12.10.2-r2.ebuild [new file with mode: 0644]
dev-libs/libdbusmenu/metadata.xml

index d3e96be1a52c26edead25c9ee55bf91dcfd310ad..42328df67b24621d29cd4321900b3063edf08269 100644 (file)
@@ -1,6 +1,16 @@
 # ChangeLog for dev-libs/libdbusmenu
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libdbusmenu/ChangeLog,v 1.35 2015/04/08 17:51:55 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libdbusmenu/ChangeLog,v 1.36 2015/04/19 16:30:45 mgorny Exp $
+
+*libdbusmenu-12.10.2-r2 (19 Apr 2015)
+
+  19 Apr 2015; Michał Górny <mgorny@gentoo.org>
+  +files/libdbusmenu-12.10.2-gtk2-signal-fix.patch,
+  +libdbusmenu-12.10.2-r2.ebuild, metadata.xml:
+  Enable optional GTK+2 support. Enable multilib support. Remove gtk-doc install
+  hacks, just install into the proper gtk-doc location. Based on the work done
+  by Karol Herbst on https://github.com/gentoo/gentoo-portage-rsync-
+  mirror/pull/65. Part of bug #462764.
 
   08 Apr 2015; Michał Górny <mgorny@gentoo.org> libdbusmenu-12.10.2-r1.ebuild:
   Drop old Python implementations
index 6093f2223e5c4c6bead46ef17af7a13c449b8344..1579975aadf4792d5b506b5281f9e77c9977ae24 100644 (file)
@@ -1,28 +1,30 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA256
 
+AUX libdbusmenu-12.10.2-gtk2-signal-fix.patch 1379 SHA256 7e02be3d1a0de22b48aa6c6aeffcaee9a150cd5b0888b14d7548cdefad1e835a SHA512 a96488c1522a202248fdaa9e3ca6a4a8c50d548e4e347894a3f30708b883a46c291cc5c5d611e58cafa5ca020451d3c358c8011a227af7f19129f897db8ddc78 WHIRLPOOL 0ccd4fd7b1e5447e0f45e85f2ca010133042fc4103b0c29764c5bd70054eb1a1dce1c38d0e7a29aeda7ed13c2e2288d3258f17946ea9b70b02c101cdcff19aa5
 DIST libdbusmenu-0.6.2.tar.gz 730624 SHA256 c2077069ae36c207f0c86cb52a0066691d155e45629d1361eee14fc7a2552649 SHA512 575276fc7e1288ab276c106627791bd472349f6c49dc86ff7bbfa0c8ed11118cc622c181299f9df4f6031b12961b9bea8c79126a3bc6a8d208811784f40d2e31 WHIRLPOOL 6cb3ce67a41cfb8e5fd57b8f73412ad292f1bed612fcd04852565b9238bb74be16af820aade28d2705a57091b9f1610cc63b1a457f5afaf89e62b76f3b8fff9a
 DIST libdbusmenu-12.10.2.tar.gz 735730 SHA256 9d6ad4a0b918b342ad2ee9230cce8a095eb601cb0cee6ddc1122d0481f9d04c9 SHA512 cf2e50dc3adbf35d0a4ccdd62a3efd9fae2d079b8d06e6522b70f077f89ac2cf72188e380f476e38d184b69549e90b801bf1e32174fa94bbe612dd52aec94496 WHIRLPOOL 3e75fd0bcbadcff8f4e4cd3a2be33a3aa7cf715413b1a67c5430b9420a965d64db2d988fa5c21fc42c6458ad4ed479c400b28b8a94074cb7223ab0a03ad985eb
 EBUILD libdbusmenu-0.6.2-r1.ebuild 1831 SHA256 dc3f2bbfc8e7f33ef45ad6a0b5b7c97f01f8bb1b836e3f46c29d37e45b85fd64 SHA512 c26db721a2f1df69fd8fb7d782e782ac6a0394834bf63167f79ee5bb6b668b5f54c93fad051c7caa8bb9d8eb18984827118b4c215430109def544b98458a16b4 WHIRLPOOL 23115edd16231e5d48e0ade3c3a5ce47708d9c9fbe847024a7956f3b2ce40506608fd9048edcde779998c763d617dd0d6fa79bfb59a7cd25fae5d366ce4629d5
 EBUILD libdbusmenu-12.10.2-r1.ebuild 1912 SHA256 e50db20a0f60a9cf0d3b6dad3eaa7343ee55aec4b8f0631f3b8a8407484a67a2 SHA512 51cc0d5ec32080a5c51429b87e74f517fd8bc34f186bf25914c9ef25677d99933cc1c724ec407a18cbba1ea5e50a20077deb47306b144442d22fd9eb202202de WHIRLPOOL f5520274648824f6c34107ff6626aa0f8a95647b508b9dd476d06a6716c5ab2c15c10584534494a5c7b9e8dff642a9efab2ffdb8afbb30cd9770fbf06664c459
-MISC ChangeLog 7049 SHA256 9734ae0c7e079e6b73b905abc530ae8075c1c4c077b596b3286cf96150411821 SHA512 e1c0e68ef3aeed1f7351e5b75f66c1a7b96ccff20eeb4f8fec224f745fac35d6206000a90621c8e65423195beec03104630d0683ff447648baca6684dd4b7ba1 WHIRLPOOL e3686553decea3786897e6a9672233f36ccd0af54d94d8a11d305e4d21b1abbde3b1a062a1839d43dadea7754d33385a164f0bc03ac44dc0d468cceb61e992c0
-MISC metadata.xml 428 SHA256 caece924603a8efe0b52388a882f1d6dab911cb37e656324d58599bc19fb4a24 SHA512 d7294143410cb42df34908f1f6b98f23698556f23052638c2764beea19fe829661d35d1e51543a39c9dd22a953d12dcf78e2a906fa22c503c059835e63730118 WHIRLPOOL c4b99f5566f633a076e14da50114a0a51d8171d258cdf53a242897949bae1e8b39d72f4dbee78227b5a9de166e4833e47e912f2acbb12d2720826bb9f5ee41c5
+EBUILD libdbusmenu-12.10.2-r2.ebuild 3426 SHA256 b956093df002083427921a3f6f09c84713cb41c589557ea82696f21e5d9bdef1 SHA512 f259760b763c1538740c29ed4acb48f97f93ade67c45f8482b1c57e08fb8eee2154e15c1481fe5016b0f61c8dc026b6aa17a065cd7f08f8f0287f4fc9579e940 WHIRLPOOL 667aba50a18cefab6f6cdf607691b8f60984ebcdec3a74feeaa6f412bdfaf7b89b738e140699a1c3000e55dcde4c2c42475da3dcc5b65c5e9f94ea5ddefe7998
+MISC ChangeLog 7507 SHA256 ab4cf1e48cd15c6d5652179ecca2348af57a832654bf858ba0ccec6873f6122a SHA512 c8a5feaf74b9e75ecbabb500e276a378955d8d4091a8b47c9dd026e3b241ef8d0d76a37629f733cd6678c0f9d43809499a4ee9f28e35e00765eef1f40f0015f0 WHIRLPOOL 0158565a9046d622df4c6120b80c473ccf87cb045fa9248bbc657d3b36b668317555ddf9921d0a36478abd71d9932cd24ac00fffadf3dcfd4638c0294cd2c769
+MISC metadata.xml 526 SHA256 66868da300dafd013efb353ab0e071b6b865d3fb5001dfae77ba433d25d3637c SHA512 e224017825220aa3bc18b0363124dac03c28a7930e9ca11cfad377dc1d38dd1e28da1ddee22ca4ee5382d11124ddfc78f079ea44b328e86c3365338bff9185af WHIRLPOOL fa574d7d7a559e00f335f79deb2115f3369568444c1319e878e9a6bdbb01bdc1a07f3b7b2d31915db4b8e374e3c5588b961846abecee1df4642791e1a7f6005c
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQJ8BAEBCABmBQJVJWrWXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
+iQJ8BAEBCABmBQJVM9g4XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC
-MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZO+M8P/AjN4XmXtACWaMJj2tkUrj7O
-UN1oYiKdC9IdOGLryuwDbUqBd7C6TJAnZg/8mwGvD44B8uVf69N3BqLPBCLNx2Wh
-2E0S6nkaCgY0RoJwxC8bGBI2HRs8I6pgF8Nc23PVc6iCaQ/Pmc/2EscCfQbWkTuo
-xTETJn0NaZNd3WenOcUdmwxB6BOBXNXQJGfUEjGA1DbNUH29sY1n/CVddebEVgDi
-8Y2WrcqalcfapCK3osuT/uAUM4KsaCNd+cP1vEUmPFEzsOFWsKdKrIhjDVP6ccxW
-kAGsMJ/ZQxTM7oiIkPjxEpabDqCl5vqcy8G73cR98KPs2cUYpHDcowlUxZ0M/BNU
-YpNMVR+HVAoS3BwDBYVn3Ht9MV8dTPBqkKBuF+LqGUBVvCCNKYWCPtuqb6sXbJZm
-sEjy92WN0ZNSgsiYCeLNj+8Iu2KLn+BEDs1viQoUwRJlRDtKwS8czNcqeMd11sKo
-/ALI6eqDlEAQmu6Mw1tFUocxDhgwHbmEjQvPtFbAPiyoOO2RCjA7O+a9J3RY+AO7
-UOEUBSQTANk5QiksH/2lWKnhvn27PfPlZXoDnarCzaJ0cB6N3KUCobmJruQxTmNp
-x8mrCWh9KJGJiPz1phfN75axWG9UFQtU/7eSw6peYmhvYcSVhEh+X/GVR1nNv2lY
-49i0jYD/0yqSj43qOfN5
-=YBAc
+MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOZKkQAI1T7Ztr/JLDrjfw+Zarkwop
+Hk4qjG7RaNxAfgfzis7BRghzAzftaXyjWGF2KCBywzLlbtpFwp5IA6k/shzg0jTZ
+v41XBh8Ae0DpOoZdyaYGkT+b0XmOiuYPjzvp+15uxiheR/1AWJAkOYpGYK6G9YnW
++L5alepAbA+5jLFDBmH/ranIp0LXtrOZG+a+m+bO/CCkaCUVgtrfTNvnG8egVzeT
+FGSL0J3bst87Hp+MmoLiChExSDKu/pQBIvvu+S+mwgS0MmMqidDZ408HHAzDHfta
+8FlJ/8ELK22z8REp4laMsOkx9dWsBLdGyUdIfgJM+oRMfJk9m4J346iBiq8/vGcr
+alJGK14M6UhPiNRfawWraTzROhFB1bVK6oxngstyJZ7fRIf4/of+qch/UmA7e0KZ
+gAHkpnN3KmEIHqN5P8Cm7nHl7zwrU9gPGil85v9C/Viwnp6Kt+RSETG2iR5/QNLF
+1f7CV3LYpsYeF9y0iV5IBHli7JUsqZcl3PaF6vSoW2+1jEktTcqxTGrMstP1KTkQ
+L4En5P7zcHT4hHQZgC5c9xnjAA3d82TnVx6GiK9BKZwSOWzYnMHSyTaEOD3JAD4q
++C2Rt7+z+VzaM99WA18PaemNolkLjzTSoYAESu/bS/K0hwMUY49ydiHSXjcuWmZo
+2Z5ZgASDX6wkfE0qFZmu
+=FB1+
 -----END PGP SIGNATURE-----
diff --git a/dev-libs/libdbusmenu/files/libdbusmenu-12.10.2-gtk2-signal-fix.patch b/dev-libs/libdbusmenu/files/libdbusmenu-12.10.2-gtk2-signal-fix.patch
new file mode 100644 (file)
index 0000000..6d270f1
--- /dev/null
@@ -0,0 +1,36 @@
+=== modified file 'libdbusmenu-gtk/parser.c'
+--- libdbusmenu-gtk/parser.c   2013-06-18 19:59:44 +0000
++++ libdbusmenu-gtk/parser.c   2013-11-03 02:46:23 +0000
+@@ -97,9 +97,7 @@
+                                                 gpointer            data);
+ static void           item_inserted_cb         (GtkContainer *      menu,
+                                                 GtkWidget *         widget,
+-#ifdef HAVE_GTK3
+                                                 gint                position,
+-#endif
+                                                 gpointer            data);
+ static void           item_removed_cb          (GtkContainer *      menu,
+                                                 GtkWidget *         widget,
+@@ -431,11 +429,7 @@
+ 
+       pdata->shell = menu;
+       pdata->item_inserted_handler_id = g_signal_connect (G_OBJECT (menu),
+-#ifdef HAVE_GTK3
+                           "insert",
+-#else
+-                          "child-added",
+-#endif
+                         G_CALLBACK (item_inserted_cb),
+                         mi);
+       pdata->item_removed_handler_id = g_signal_connect (G_OBJECT (menu),
+@@ -1394,9 +1388,7 @@
+ static void
+ item_inserted_cb (GtkContainer *menu,
+                   GtkWidget    *widget,
+-#ifdef HAVE_GTK3
+                   gint          position,
+-#endif
+                   gpointer      data)
+ {
+       DbusmenuMenuitem *menuitem = (DbusmenuMenuitem *)data;
+
diff --git a/dev-libs/libdbusmenu/libdbusmenu-12.10.2-r2.ebuild b/dev-libs/libdbusmenu/libdbusmenu-12.10.2-r2.ebuild
new file mode 100644 (file)
index 0000000..68ff88c
--- /dev/null
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libdbusmenu/libdbusmenu-12.10.2-r2.ebuild,v 1.1 2015/04/19 16:30:45 mgorny Exp $
+
+EAPI=5
+
+VALA_MIN_API_VERSION=0.16
+VALA_USE_DEPEND=vapigen
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic multilib-minimal python-single-r1 vala
+
+DESCRIPTION="Library to pass menu structure across DBus"
+HOMEPAGE="http://launchpad.net/dbusmenu"
+SRC_URI="http://launchpad.net/${PN/lib}/${PV%.*}/${PV}/+download/${P}.tar.gz"
+
+LICENSE="LGPL-2.1 LGPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug gtk gtk3 +introspection"
+
+RDEPEND="
+       >=dev-libs/dbus-glib-0.100[${MULTILIB_USEDEP}]
+       >=dev-libs/json-glib-0.13.4[${MULTILIB_USEDEP}]
+       >=dev-libs/glib-2.32[${MULTILIB_USEDEP}]
+       dev-libs/libxml2[${MULTILIB_USEDEP}]
+       gtk? ( x11-libs/gtk+:2[introspection?,${MULTILIB_USEDEP}] )
+       gtk3? ( >=x11-libs/gtk+-3.2:3[introspection?,${MULTILIB_USEDEP}] )
+       introspection? ( >=dev-libs/gobject-introspection-1 )
+       !<${CATEGORY}/${PN}-0.5.1-r200"
+DEPEND="${RDEPEND}
+       app-text/gnome-doc-utils
+       dev-util/intltool
+       virtual/pkgconfig[${MULTILIB_USEDEP}]
+       introspection? ( $(vala_depend) )"
+
+src_prepare() {
+       if use introspection; then
+               vala_src_prepare
+               export VALA_API_GEN="${VAPIGEN}"
+       fi
+       python_fix_shebang tools
+
+       # remove reliance on custom Ubuntu hacks in old GTK+2
+       epatch "${FILESDIR}/${P}-gtk2-signal-fix.patch"
+       epatch_user
+}
+
+multilib_src_configure() {
+       append-flags -Wno-error #414323
+
+       local myconf=(
+               --disable-gtk
+               --disable-static
+               --disable-silent-rules
+               --disable-scrollkeeper
+               # dumper extra tool is only for GTK+-2.x, tests use valgrind which is stupid
+               --disable-dumper
+               $(multilib_native_use_enable introspection)
+               $(multilib_native_use_enable introspection vala)
+               $(use_enable debug massivedebugging)
+       )
+       local ECONF_SOURCE=${S}
+       econf "${myconf[@]}"
+
+       GTK_VARIANTS=( $(usex gtk 2 '') $(usex gtk3 3 '') )
+       local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+       local top_builddir=${BUILD_DIR}
+
+       gtk_configure() {
+               local gtkconf=(
+                       "${myconf[@]}"
+                       --enable-gtk
+                       --with-gtk="${MULTIBUILD_VARIANT}"
+               )
+               mkdir -p "${BUILD_DIR}" || die
+               cd "${BUILD_DIR}" || die
+               econf "${gtkconf[@]}"
+
+               rm -r libdbusmenu-glib || die
+               ln -s "${top_builddir}"/libdbusmenu-glib libdbusmenu-glib || die
+       }
+       [[ ${GTK_VARIANTS[@]} ]] && multibuild_foreach_variant gtk_configure
+}
+
+gtk_emake() {
+       emake -C "${BUILD_DIR}"/libdbusmenu-gtk "${@}"
+       multilib_is_native_abi && \
+               emake -C "${BUILD_DIR}"/docs/libdbusmenu-gtk "${@}"
+}
+
+multilib_src_compile() {
+       emake
+
+       local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+       [[ ${GTK_VARIANTS[@]} ]] && multibuild_foreach_variant \
+               gtk_emake
+}
+
+src_test() { :; } #440192
+
+multilib_src_install() {
+       emake -j1 DESTDIR="${D}" install
+
+       local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+       [[ ${GTK_VARIANTS[@]} ]] && multibuild_foreach_variant \
+               gtk_emake -j1 install DESTDIR="${D}"
+}
+
+multilib_src_install_all() {
+       einstalldocs
+       prune_libtool_files
+}
+
+pkg_preinst() {
+       # kill old symlinks that Portage will preserve and break install
+       if [[ -L ${EROOT}/usr/share/gtk-doc/html/libdbusmenu-glib ]]; then
+               rm -v "${EROOT}/usr/share/gtk-doc/html/libdbusmenu-glib" || die
+       fi
+       if [[ -L ${EROOT}/usr/share/gtk-doc/html/libdbusmenu-gtk ]]; then
+               rm -v "${EROOT}/usr/share/gtk-doc/html/libdbusmenu-gtk" || die
+       fi
+}
index 9c2c8cfc52a2adad732faf95d6aeea22818e73b8..6286860fb948b15c162f9015de52f2962a8647d0 100644 (file)
@@ -7,6 +7,7 @@
     <email>ayatana-bugs@gentoo.org</email>
   </maintainer>
   <use>
+    <flag name="gtk" restrict=">=dev-libs/libdbusmenu-12.10.2-r2">Enable support for GTK+2</flag>
     <flag name="gtk3">Enable support for GTK+3</flag>
     <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg> for introspection</flag>
   </use>