Add gtk3 and introspection support, make utilities optional, reorder deps to use...
authorNirbheek Chauhan <nirbheek@gentoo.org>
Sun, 14 Aug 2011 12:52:06 +0000 (12:52 +0000)
committerNirbheek Chauhan <nirbheek@gentoo.org>
Sun, 14 Aug 2011 12:52:06 +0000 (12:52 +0000)
Package-Manager: portage-2.2.0_alpha39_p14/cvs/Linux x86_64

net-dns/avahi/ChangeLog
net-dns/avahi/Manifest
net-dns/avahi/avahi-0.6.30-r1.ebuild [new file with mode: 0644]
net-dns/avahi/files/avahi-0.6.30-optional-gtk-utils.patch [new file with mode: 0644]
net-dns/avahi/metadata.xml

index 7860413997185f1225e688a5664c373356d968b8..19c255d95ea7be3f763714e46d8823b72df1737d 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for net-dns/avahi
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-dns/avahi/ChangeLog,v 1.204 2011/08/06 09:41:21 zmedico Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dns/avahi/ChangeLog,v 1.205 2011/08/14 12:52:06 nirbheek Exp $
+
+*avahi-0.6.30-r1 (14 Aug 2011)
+
+  14 Aug 2011; Nirbheek Chauhan <nirbheek@gentoo.org> +avahi-0.6.30-r1.ebuild,
+  +files/avahi-0.6.30-optional-gtk-utils.patch:
+  Add gtk3 and introspection support, make utilities optional, reorder deps to
+  use COMMON_DEPEND, remove static libraries and .la files
 
   06 Aug 2011; Zac Medico <zmedico@gentoo.org> avahi-0.6.30.ebuild:
   Fix for prefix and add ~x86-linux keyword.
index db357495bf30864d52d5cbfa8a0b3f352f271ce2..ae5658633241058df2bd74e03b861677411f2699 100644 (file)
@@ -4,19 +4,31 @@ Hash: SHA1
 AUX autoipd-openrc.sh 700 RMD160 00e259967279dc52ee99476dfb4d6c9672b77ee3 SHA1 1d9858b99f23688f6a0f4a6726400bbbe41df976 SHA256 9f9e8d751bc640491397c8a06cbb6f3dcbf9cdf1a083e274f4d802c9c925c6c0
 AUX autoipd.sh 1271 RMD160 85ac3d69aff64867baa0ba6c58e9f224ba0e2e57 SHA1 95a6145f00ccd511e3b067d4669148861f56c2a4 SHA256 9582a49d0674fac714f448976065fd4e1f0423c08f645685160ed682a121f8c9
 AUX avahi-0.6.28-CVE-2011-1002.patch 2076 RMD160 0b561a78e75099a14e7a3da5290cd1ffa6a75533 SHA1 6d298861d7c7b432cd350f3df277e43ed59b378b SHA256 bf8422b278c0c66eca063672c4836346a4d85cb16014882ca3003b0a79ba9f97
+AUX avahi-0.6.30-optional-gtk-utils.patch 2422 RMD160 75d049bc187c08b0ad2d76921064c087d57532ed SHA1 99a0ea57a461d0c0b3d4269adc9571d1bf85f31c SHA256 1233ba93af567117091094921e5ba76f205b1d984fd5a97153c2004f8f0509e3
 AUX netlink-request-all-matches-when-requesting-interface.patch 1634 RMD160 3995e26dca6ec1cb4801159c479c0b591eff5da3 SHA1 e234d6bd96b7adaf543ef7583b6dd90538238608 SHA256 163db2141b278a07433e7d1b51227493555ca7ba1faf2d19c97e20aa51b947cd
 DIST avahi-0.6.28.tar.gz 1238660 RMD160 d61b370baa3f25d57efba43f2c34b54cab7e7e9e SHA1 5da3f7da2cff8ddf74f8746e4dcb2524e5047f67 SHA256 a0d80aac88212b9f9d5331c248091d3c9c9209f0e41985421636ebd14230fc91
 DIST avahi-0.6.29.tar.gz 1244081 RMD160 a0a4e1019cafb53a683ceceaa44605873957b6cd SHA1 af13ae6fdb3cd61b2eafa25a108773156d88b362 SHA256 4eb1a6bdc93f1b245fc1b26ff6a79f5f958c1135c04bff60d36d374d98cc14d8
 DIST avahi-0.6.30.tar.gz 1243534 RMD160 99dbc4f5711fd2962ac657811bebdb63947bd2c1 SHA1 5b77443537600a00770e4c77e3c443eeb5861d06 SHA256 f9e4316c2339d0020726edd846d01bee0c39980906db0c247479e5807457ff1f
 EBUILD avahi-0.6.28-r1.ebuild 4934 RMD160 7ebe1201b97f00f08a330211f8f81b07e3d17250 SHA1 4bc99179361a3a55234dbd6f646ce958bbe96e61 SHA256 fb564902531fd9e2059456b2e4659ac0f66ca6e8c1dc0911b9c7fc1cf6c1eed5
 EBUILD avahi-0.6.29.ebuild 4813 RMD160 b9f7a58b8fd051d9c6702d0e2ed01548d26d9edc SHA1 932b31e959caa23f2e58fb8c1beb4da9b8f9dbe8 SHA256 d260d87b5571792264b9ecaa6832bfec5694b40c3199978c4f3385101e6debac
+EBUILD avahi-0.6.30-r1.ebuild 5326 RMD160 8a5456ddf9ff965ec921b0eb1ddc42cab315e32c SHA1 522b848c8891e978dcc744931d1646b99af2fbac SHA256 8637134741fb14d9d4327c5aaab102064197c35e65dd07a50226bf1f263fc368
 EBUILD avahi-0.6.30.ebuild 4838 RMD160 838bcfbe3a24b7aa662e63ab03bf78ae5e9f655f SHA1 934c4b6e8fb70815bc245ac8895f305ba4f68da2 SHA256 19793b5f8a709f9c22c93047eca9271bc83a20fe47f168d7823fc644e82fb747
-MISC ChangeLog 30392 RMD160 74f3bcb750270e3858c20e3b1b13997028a538c1 SHA1 3d6efa3e56c1936b198ede9630510822a540ffae SHA256 fab317afcc49be7ce2d461d0128fd74a48deb67ba035bd4c7ae48a644d40f4d0
-MISC metadata.xml 609 RMD160 fa4efaaf9b8ac6d75251c9bd1f0721ea175acda9 SHA1 4532738c9ff6d9d2a2aef226b827919ac31be2de SHA256 365224bb3c21c159a89fa03ea08c534eb27cc2df62012a69e03ad81779607faa
+MISC ChangeLog 30691 RMD160 dd082771d9a152aa5428e27c657ab648d1950e49 SHA1 05d04e206f4ee12dd8386e37f51d02dc5c836f95 SHA256 451561a1b10e308bcb0d9f6020d4e2741f03f5b3f531cceed87837f308085810
+MISC metadata.xml 913 RMD160 841aa6ed58643e32cee1c73311fe78df1488ab61 SHA1 9e1c8652e532c3c6632debdc35472856a3f4a2ad SHA256 1a95241251d48972e68bfc61d6ed70722991e837d3b01c11bf14860f7231d68e
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.17 (GNU/Linux)
 
-iEYEARECAAYFAk49DEcACgkQ/ejvha5XGaMDHwCfUdbvqhfRGJB9kOAffGQsGKdQ
-srgAoPOg4KyJCohqaRtephxw15xFOnR3
-=Wm+n
+iQIcBAEBAgAGBQJOR8T8AAoJEO/kOhxWD91kyuAQAKL1IPN78Fazfh/X8Z4BzDoM
+Euaiy55qcqWxhz7N6JXtSS3UIZcZx9WDwO9Atykf+gkgPnhGV62cFADGAKtYRMUR
+/rG8gDcoYQ2XE7vHya7fie/SkMkO5MhBXVvDiuJ1uorYq8CobrFMha4Dgmokgy+9
+en/tG6Dn3HBPspo0LlfkWVLaUeQ20UL5wJA8XrseSRE9uG8R5V2nbC5PJLTEEtvS
+dEf0Y8z6ayZVwgS9BV5PmtP8vgI6+q/Cs/JzEEWpDm1aj6FMctALSPYd6AJIhE1d
+6tF47kZAkQgVHzjfP+MGiBVNyX59jndjP5usev5e+4wVbspW4TqrREsu1GtsKDBw
+0pZKOyDlugl6yp+hbRdLPvhBo/TmfDNmTJWMWdeDBw6oPVNyApgv6aRPgQ+yUEp0
+H383DgDFbQMPWMQA2hIiYYudi1+uthNgbYLpkO+qNgUTOZE134t2OJbBIlEueziH
+sK1jKG1ac7Lf7NBuOZdDNO9LxhxNcRGgCPdTjBAPYPaiolz6uizwx0iSYCeWXgNk
+2XhC0NjSb6Vr9JRLvnjDVMKpojxDr0twb11sTCHrK/OBq0HC5FHEmMUgTT0+1pVJ
+K/d1zYYHC+pK1uhp7uYloUCcLl296p8LQvln412QNohBOaIgL75A5abT8rRa7oaN
+uNK1DpOjPahoBMg3fJ0s
+=rQAx
 -----END PGP SIGNATURE-----
diff --git a/net-dns/avahi/avahi-0.6.30-r1.ebuild b/net-dns/avahi/avahi-0.6.30-r1.ebuild
new file mode 100644 (file)
index 0000000..84cbc86
--- /dev/null
@@ -0,0 +1,209 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dns/avahi/avahi-0.6.30-r1.ebuild,v 1.1 2011/08/14 12:52:06 nirbheek Exp $
+
+EAPI="3"
+
+PYTHON_DEPEND="python? 2"
+PYTHON_USE_WITH="gdbm"
+PYTHON_USE_WITH_OPT="python"
+
+inherit autotools eutils mono python multilib flag-o-matic
+
+DESCRIPTION="System which facilitates service discovery on a local network"
+HOMEPAGE="http://avahi.org/"
+SRC_URI="http://avahi.org/download/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86
+~x86-fbsd ~x86-linux"
+IUSE="autoipd bookmarks dbus doc gdbm gtk gtk3 howl-compat +introspection ipv6
+kernel_linux mdnsresponder-compat mono python qt4 test utils"
+
+DBUS_DEPEND=">=sys-apps/dbus-0.30"
+COMMON_DEPEND=">=dev-libs/libdaemon-0.14
+       dev-libs/expat
+       dev-libs/glib:2
+       gdbm? ( sys-libs/gdbm )
+       qt4? ( x11-libs/qt-core:4 )
+       gtk? ( >=x11-libs/gtk+-2.14.0:2 )
+       gtk3? ( x11-libs/gtk+:3 )
+       dbus? (
+               ${DBUS_DEPEND}
+               python? ( dev-python/dbus-python )
+       )
+       mono? (
+               >=dev-lang/mono-1.1.10
+               gtk? ( >=dev-dotnet/gtk-sharp-2 )
+       )
+       howl-compat? ( ${DBUS_DEPEND} )
+       introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+       mdnsresponder-compat? ( ${DBUS_DEPEND} )
+       python? (
+               gtk? ( >=dev-python/pygtk-2 )
+       )
+       bookmarks? (
+               dev-python/twisted
+               dev-python/twisted-web
+       )
+       kernel_linux? ( sys-libs/libcap )"
+DEPEND="${COMMON_DEPEND}
+       >=dev-util/intltool-0.40.5
+       >=dev-util/pkgconfig-0.9.0
+       doc? (
+               app-doc/doxygen
+               mono? ( >=virtual/monodoc-1.1.8 )
+       )"
+RDEPEND="${COMMON_DEPEND}
+       howl-compat? ( !net-misc/howl )
+       mdnsresponder-compat? ( !net-misc/mDNSResponder )"
+
+pkg_setup() {
+       if use python; then
+               python_set_active_version 2
+               python_pkg_setup
+       fi
+
+       if use python && ! use dbus && ! use gtk; then
+               ewarn "For proper python support you should also enable the dbus and gtk USE flags!"
+       fi
+
+       # FIXME: Use REQUIRED_USE once python.eclass gets EAPI 4 support, bug 372255
+       if use utils && ! { use gtk || use gtk3; }; then
+               ewarn "To install the avahi utilities, USE='gtk utils' or USE='gtk3 utils''"
+       fi
+}
+
+pkg_preinst() {
+       enewgroup netdev
+       enewgroup avahi
+       enewuser avahi -1 -1 -1 avahi
+
+       if use autoipd; then
+               enewgroup avahi-autoipd
+               enewuser avahi-autoipd -1 -1 -1 avahi-autoipd
+       fi
+}
+
+src_prepare() {
+       if use ipv6; then
+               sed -i \
+                       -e s/use-ipv6=no/use-ipv6=yes/ \
+                       avahi-daemon/avahi-daemon.conf || die
+       fi
+
+       sed -i\
+               -e "s:\\.\\./\\.\\./\\.\\./doc/avahi-docs/html/:../../../doc/${PF}/html/:" \
+               doxygen_to_devhelp.xsl || die
+
+       # Make gtk utils optional
+       epatch "${FILESDIR}/${PN}-0.6.30-optional-gtk-utils.patch"
+
+       eautoreconf
+}
+
+src_configure() {
+       use sh && replace-flags -O? -O0
+
+       local myconf="--disable-static"
+
+       if use python; then
+               myconf+="
+                       $(use_enable dbus python-dbus)
+                       $(use_enable gtk pygtk)
+               "
+       fi
+
+       if use mono; then
+               myconf+=" $(use_enable doc monodoc)"
+       fi
+
+       # these require dbus enabled
+       if use mdnsresponder-compat || use howl-compat || use mono; then
+               myconf+=" --enable-dbus"
+       fi
+
+       # We need to unset DISPLAY, else the configure script might have problems detecting the pygtk module
+       unset DISPLAY
+
+       econf \
+               --localstatedir="${EPREFIX}/var" \
+               --with-distro=gentoo \
+               --disable-python-dbus \
+               --disable-pygtk \
+               --disable-xmltoman \
+               --disable-monodoc \
+               --enable-glib \
+               --enable-gobject \
+               $(use_enable test tests) \
+               $(use_enable autoipd) \
+               $(use_enable mdnsresponder-compat compat-libdns_sd) \
+               $(use_enable howl-compat compat-howl) \
+               $(use_enable doc doxygen-doc) \
+               $(use_enable mono) \
+               $(use_enable dbus) \
+               $(use_enable python) \
+               $(use_enable gtk) \
+               $(use_enable gtk3) \
+               $(use_enable introspection) \
+               $(use_enable utils gtk-utils) \
+               --disable-qt3 \
+               $(use_enable qt4) \
+               $(use_enable gdbm) \
+               ${myconf}
+}
+
+src_compile() {
+       emake || die "emake failed"
+
+       use doc && { emake avahi.devhelp || die ; }
+}
+
+src_install() {
+       emake install py_compile=true DESTDIR="${D}" || die "make install failed"
+       use bookmarks && use python && use dbus && use gtk || \
+               rm -f "${ED}"/usr/bin/avahi-bookmarks
+
+       use howl-compat && ln -s avahi-compat-howl.pc "${ED}"/usr/$(get_libdir)/pkgconfig/howl.pc
+       use mdnsresponder-compat && ln -s avahi-compat-libdns_sd/dns_sd.h "${ED}"/usr/include/dns_sd.h
+
+       if use autoipd; then
+               insinto /$(get_libdir)/rcscripts/net
+               doins "${FILESDIR}"/autoipd.sh || die
+
+               insinto /$(get_libdir)/rc/net
+               newins "${FILESDIR}"/autoipd-openrc.sh autoipd.sh || die
+       fi
+
+       dodoc docs/{AUTHORS,NEWS,README,TODO} || die
+
+       if use doc; then
+               dohtml -r doxygen/html/. || die
+               insinto /usr/share/devhelp/books/avahi
+               doins avahi.devhelp || die
+       fi
+
+       # Remove .la files
+       find "${D}" -name '*.la' -exec rm -f {} + || die
+}
+
+pkg_postrm() {
+       use python && python_mod_cleanup avahi $(use dbus && use gtk && echo avahi_discover)
+}
+
+pkg_postinst() {
+       use python && python_mod_optimize avahi $(use dbus && use gtk && echo avahi_discover)
+
+       if use autoipd; then
+               echo
+               elog "To use avahi-autoipd to configure your interfaces with IPv4LL (RFC3927)"
+               elog "addresses, just set config_<interface>=( autoipd ) in /etc/conf.d/net!"
+       fi
+
+       if use dbus; then
+               echo
+               elog "If this is your first install of avahi please reload your dbus config"
+               elog "with /etc/init.d/dbus reload before starting avahi-daemon!"
+       fi
+}
diff --git a/net-dns/avahi/files/avahi-0.6.30-optional-gtk-utils.patch b/net-dns/avahi/files/avahi-0.6.30-optional-gtk-utils.patch
new file mode 100644 (file)
index 0000000..2c615a2
--- /dev/null
@@ -0,0 +1,83 @@
+--- avahi-discover-standalone/Makefile.am
++++ avahi-discover-standalone/Makefile.am
+@@ -23,7 +23,7 @@
+ # This cool debug trap works on i386/gcc only
+ AM_CFLAGS+='-DDEBUG_TRAP=__asm__("int $$3")'
+ 
+-if HAVE_GTK2OR3
++if ENABLE_GTK_UTILS
+ if HAVE_GLIB
+ bin_PROGRAMS = \
+       avahi-discover-standalone
+--- avahi-ui/Makefile.am
++++ avahi-ui/Makefile.am
+@@ -76,6 +76,7 @@
+ libavahi_ui_gtk3_la_CFLAGS += -DDATABASE_FILE=\"$(pkglibdir)/service-types.db\"
+ endif
+ 
++if ENABLE_GTK_UTILS
+ bin_PROGRAMS = bssh
+ desktop_DATA += bssh.desktop bvnc.desktop
+ @INTLTOOL_DESKTOP_RULE@
+@@ -102,6 +103,7 @@
+ bvnc.desktop.in: bvnc.desktop.in.in
+       $(AM_V_GEN)sed -e 's,@bindir\@,$(bindir),g' $< > $@
+ 
++endif # ENABLE_GTK_UTILS
+ endif # HAVE_GLIB
+ endif
+ endif
+--- configure.ac
++++ configure.ac
+@@ -564,7 +564,29 @@
+ fi
+ AM_CONDITIONAL(HAVE_GTK3, test "x$HAVE_GTK3" = "xyes")
+ 
+-AM_CONDITIONAL(HAVE_GTK2OR3, test "x$HAVE_GTK3" = "xyes" -o "x$HAVE_GTK" = "xyes" )
++#
++# Check for GTK+ Utils
++#
++AC_ARG_ENABLE(gtk-utils,
++        AS_HELP_STRING([--disable-gtk-utils],[Disable GTK+ utilities]),
++        [case "${enableval}" in
++                yes) WANT_GTK_UTILS=yes ;;
++                no)  WANT_GTK_UTILS=no ;;
++                *) AC_MSG_ERROR(bad value ${enableval} for --enable-gtk-utils) ;;
++        esac],
++        [WANT_GTK_UTILS=yes])
++
++ENABLE_GTK_UTILS=no
++HAVE_GTK2OR3=no
++if test "x$HAVE_GTK3" = "xyes" -o "x$HAVE_GTK" = "xyes"; then
++      HAVE_GTK2OR3=yes
++      if test "x$WANT_GTK_UTILS" = "xyes"; then
++              ENABLE_GTK_UTILS=yes
++      fi
++fi
++
++AM_CONDITIONAL(HAVE_GTK2OR3, test "x$HAVE_GTK2OR3" = "xyes")
++AM_CONDITIONAL(ENABLE_GTK_UTILS, test "x$ENABLE_GTK_UTILS" = "xyes")
+ 
+ #
+ # D-Bus
+@@ -1199,11 +1221,6 @@
+    ENABLE_AUTOIPD="no   (You need libdaemon!)"
+ fi
+ 
+-HAVE_GTK2OR3=no
+-if test "x$HAVE_GTK" = "xyes" -o "x$HAVE_GTK3" = "xyes" ; then
+-   HAVE_GTK2OR3=yes
+-fi
+-
+ BUILD_UI="no"
+ if test "x$HAVE_GTK2OR3" = "xyes" -a "x$BUILD_CLIENT" = "xyes" ; then
+    BUILD_UI="yes"
+@@ -1223,7 +1240,7 @@
+     Building avahi-python:              ${BUILD_PYTHON}
+     Building libavahi-glib:             ${HAVE_GLIB}
+     Building libavahi-gobject:          ${BUILD_GOBJECT}
+-    Building avahi-discover-standalone: ${HAVE_GTK2OR3}
++    Building avahi-discover-standalone: ${ENABLE_GTK_UTILS}
+     Building libavahi-qt3:              ${HAVE_QT3}
+     Building libavahi-qt4:              ${HAVE_QT4}
+     Building avahi-sharp:               ${HAVE_MONO}
index d8e743d47a1c27d498fccf9578de6438934f8691..6892e47041733366d60a7a7abf5736e84b8ab7d3 100644 (file)
        <flag name='bookmarks'>Install the avahi-bookmarks application (requires
                <pkg>dev-python/twisted</pkg>)</flag>
        <flag name='howl-compat'>Enable compat libraries for howl</flag>
+       <flag name="gtk3">Build the avahi-ui-gtk3 library, and use gtk3 for the
+               avahi utilities under USE=utils</flag>
+       <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg>
+               for introspection</flag>
        <flag name='mdnsresponder-compat'>Enable compat libraries for
                mDNSResponder</flag>
+       <flag name="utils">Install the avahi gtk+ utils avahi-discover, bssh, and
+               bvnc</flag>
 </use>
 </pkgmetadata>