# # spec file for package avahi-qt4 # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: avahi-qt4 # Do not edit this auto generated file! Edit avahi.spec. %define _name avahi # In automatic build systems you want to enable just one of following options. # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other option to 1. %define build_core 0 # NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygtk code. %define build_glib2 0 %define build_mono 0 %define build_qt3 0 %define build_qt4 1 Version: 0.6.31 Release: 0 %if !%build_glib2 && !%build_mono && !%build_qt3 && !%build_qt4 # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif %define avahi_client_soname 3 %define avahi_common_soname 3 # If avahi_core_soname changes, make sure to update avahi-gir-fixup.patch %define avahi_core_soname 7 %define avahi_ui_soname 0 %define avahi_glib_soname 1 %define avahi_gobject_soname 0 %define avahi_gtk3_soname 0 %define avahi_qt3_soname 1 %define avahi_qt4_soname 1 %if %build_glib2 %define debug_package_requires libavahi-ui%{avahi_ui_soname} = %{version}-%{release} %endif Url: http://www.avahi.org/ Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour License: LGPL-2.1+ Group: System/GUI/KDE Source: http://avahi.org/download/%{_name}-%{version}.tar.gz Source1: gnome-nettool2.png Source2: avahi-bookmarks.init Source3: avahi.firewall Source100: attributes Source101: update_spec.pl Source102: baselibs.conf # Copy of glib-2.0.m4 from glib2-devel to not depend on glib2-devel. Source4: avahi-glib-gettext.m4 #PATCH-FIX-OPENSUSE avahi-gacdir.patch -- Mono libs are in $prefix/lib on suse Patch0: avahi-gacdir.patch #PATCH-FIX-UPSTREAM avahi-desktop.patch bnc254654 sbrabec@suse.de Patch1: avahi-desktop.patch #PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer Patch3: avahi-empty-share-dir.patch #PATCH-FIX-OPENSUSE avahi-unicastdomains.patch bnc433359 lnussel@suse.de -- disable pre-set unicast domains by default Patch10: avahi-unicastdomains.patch # PATCH-FIX-UPSTREAM avahi-gtk_box_new.patch dimstar@opensuse.org -- Do not use deprecated gtk_[hv]box_new, http://www.avahi.org/ticket/342 Patch11: avahi-gtk_box_new.patch # PATCH-FIX-UPSTREAM avahi-gir-fixup.patch dimstar@opensnse.org -- Use complete shared library name in gir file for dependency Patch12: avahi-gir-fixup.patch # PATCH-FIX-UPSTREAM avahi-fix-mkdir.diff coolo@suse.de -- Avoid obsolete automake macros Patch13: avahi-fix-mkdir.diff #PATCH-FIX-OPENSUSE avahi-enable-ipv6.patch bnc#710230 vuntz@opensuse.org -- Enable ipv6 by default Patch14: avahi-enable-ipv6.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: dbus-1-python BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel BuildRequires: intltool BuildRequires: libdaemon-devel BuildRequires: libexpat-devel BuildRequires: pkg-config BuildRequires: translation-update-upstream # Even if we are not building python bindings, we need python to build service types database: BuildRequires: python-devel BuildRequires: python-gdbm # libtool is needed to build all variants: bootstrap is unconditional in the build section BuildRequires: libtool %if %suse_version <= 1110 %define python_sitelib %{py_sitedir} %endif %if %build_core Source5: %{_name}_spec-prepare.sh PreReq: pwdutils %if %suse_version >= 1140 PreReq: sysvinit(network) %else PreReq: sysconfig %endif %{?systemd_requires} Recommends: %{_name}-lang BuildRequires: dbus-1-devel BuildRequires: doxygen BuildRequires: graphviz BuildRequires: python-gdbm BuildRequires: zlib-devel %if %suse_version >= 1210 BuildRequires: systemd-devel %endif # For python bindings and utilities: #BuildRequires: dbus-1-python #Requires: dbus-1 Requires: nss-mdns # bug437293 %ifarch ppc64 Obsoletes: mDNSResponder-64bit %endif # # mDNSResponder was used for <= 10.2: Provides: mDNSResponder = 107.5 Obsoletes: mDNSResponder < 107.5 %endif %if %build_glib2 BuildRequires: gobject-introspection-devel BuildRequires: gtk2-devel BuildRequires: gtk3-devel BuildRequires: libavahi-devel BuildRequires: python-gtk-devel BuildRequires: update-desktop-files %endif %if %build_qt3 BuildRequires: libavahi-devel BuildRequires: qt3-devel %endif %if %build_qt4 BuildRequires: libavahi-devel BuildRequires: libqt4-devel %endif %if %build_mono BuildRequires: gtk-sharp2 BuildRequires: libavahi-glib-devel BuildRequires: mono-devel BuildRequires: monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 Requires: libavahi-client3 >= %{version} Requires: libavahi-common3 >= %{version} Requires: libavahi-glib1 >= %{version} Requires: libavahi-ui0 >= %{version} %endif %description Qt4 bindings for avahi. Avahi is an Implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection accross LAN segments. %if %build_core %package -n libavahi-client3 Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Libraries %description -n libavahi-client3 Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n libavahi-common3 Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Libraries %description -n libavahi-common3 Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n libavahi-core7 Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Libraries %description -n libavahi-core7 Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n libdns_sd Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour Group: System/Libraries # mDNSResponder-lib used unversioned soname. # Provide full compatibility with mDNSResponder (FIXME: should be fixed in the package): %ifarch ia64 x86_64 ppc64 s390x Provides: libdns_sd.so()(64bit) %else Provides: libdns_sd.so %endif # bug437293 %ifarch ppc64 Obsoletes: mDNSResponder-lib-64bit %endif # # mDNSResponder-lib was used for <= 10.2: Provides: mDNSResponder-lib = 107.5 Obsoletes: mDNSResponder-lib < 107.5 # Old name used for <= 10.3: Provides: avahi-compat-mDNSResponder = %{version} Obsoletes: avahi-compat-mDNSResponder < %{version} %description -n libdns_sd Apple mDNSResponder compatibility layer for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package -n libhowl0 Summary: Howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour Group: System/Libraries # Old name used for <= 10.3: Provides: avahi-compat-howl = %{version} Obsoletes: avahi-compat-howl < %{version} %description -n libhowl0 Howl compatibility layer for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package -n python-avahi Summary: A set of Avahi utilities written in Python Group: Development/Languages/Python PreReq: coreutils Requires: %{name} = %{version} Requires: dbus-1-python Requires: python-gdbm Requires: python-twisted Requires: python-twisted-web # Old name used for <= 10.3: Provides: avahi-python = %{version} Obsoletes: avahi-python < %{version} %py_requires %description -n python-avahi Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things that have never been seen elsewhere, like correct mDNS reflection across LAN segments. %package utils Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour Group: Productivity/Networking/Other Requires: %{_name} >= %{version} %description utils Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n libavahi-devel Summary: Include Files and Libraries Mandatory for Development Group: Development/Libraries/C and C++ # Requires: %{_name} = %{version} Requires: dbus-1-devel Requires: glibc-devel Requires: libavahi-client3 = %{version} Requires: libavahi-common3 = %{version} Requires: libavahi-core7 = %{version} # Last appeared in OpenSUSE 10.3: Provides: avahi-devel = %{version} Obsoletes: avahi-devel < %{version} %description -n libavahi-devel Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package compat-mDNSResponder-devel Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} Requires: libdns_sd = %{version} Provides: mDNSResponder-devel = 107.5 Obsoletes: mDNSResponder-devel < 107.5 %description compat-mDNSResponder-devel Apple mDNSResponder compatibility layer for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package compat-howl-devel Summary: Howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} Requires: libhowl0 = %{version} %description compat-howl-devel Howl compatibility layer for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %endif %if %build_glib2 %package -n libavahi-ui0 Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Libraries %description -n libavahi-ui0 Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n libavahi-ui-gtk3-%{avahi_gtk3_soname} Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Libraries %description -n libavahi-ui-gtk3-%{avahi_gtk3_soname} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n libavahi-glib1 Summary: Glib Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour Group: System/GUI/GNOME # Old name used for <= 10.3: Provides: avahi-glib = %{version} Obsoletes: avahi-glib < %{version} %description -n libavahi-glib1 GLib support for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package -n libavahi-gobject0 Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Daemons %description -n libavahi-gobject0 Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n typelib-1_0-Avahi-0_6 Summary: D-BUS Service for Zeroconf and Bonjour -- Introspection bindings Group: System/Libraries %description -n typelib-1_0-Avahi-0_6 Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. This package provides the GObject Introspection bindings for Avahi. %package -n avahi-utils-gtk Summary: GTK+ Utilities for D-BUS Service for Zeroconf and Bonjour Group: Productivity/Networking/Other Requires: %{_name} >= %{version} # Due to a mistake in the spec file build staging, this package had # name avahi-glib2-utils-gtk in 11.1 and SLE11 and avahi-utils-gtk in # all other products. Provides: avahi-glib2-utils-gtk = %{version} Obsoletes: avahi-glib2-utils-gtk < %{version} %description -n avahi-utils-gtk Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %package -n python-avahi-gtk Summary: A set of Avahi utilities written in Python Using python-gtk Group: Development/Languages/Python PreReq: coreutils Requires: python-avahi = %{version} Requires: python-gtk # Old name used for <= 10.3: Provides: avahi-python = %{version} Obsoletes: avahi-python < %{version} # Provide split-provides for update from <= 11.0: Provides: python-avahi:%{_bindir}/avahi-bookmarks %py_requires %description -n python-avahi-gtk Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things that have never been seen elsewhere, like correct mDNS reflection across LAN segments. %package -n libavahi-glib-devel Summary: Include Files and Libraries Mandatory for Development Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} Requires: libavahi-glib1 = %{version} Requires: libavahi-ui-gtk3-%{avahi_gtk3_soname} = %{version} Requires: libavahi-ui0 = %{version} Requires: typelib-1_0-Avahi-0_6 = %{version} # Last appeared in OpenSUSE 10.3: Provides: avahi-devel:%{_libdir}/libavahi-glib.so %description -n libavahi-glib-devel GLib support for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package -n libavahi-gobject-devel Summary: D-BUS Service for Zeroconf and Bonjour Group: System/Daemons Requires: glib2-devel Requires: libavahi-devel = %{version} Requires: libavahi-glib-devel Requires: libavahi-gobject0 = %{version} %description -n libavahi-gobject-devel Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now complete with features, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %endif %if %build_qt3 %package -n libavahi-qt3-1 Summary: Qt3 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour Group: System/GUI/KDE # Old name used for <= 10.3: Provides: avahi-qt3 = %{version} Obsoletes: avahi-qt3 < %{version} %description -n libavahi-qt3-1 Qt3 bindings for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package -n libavahi-qt3-devel Summary: Include Files and Libraries Mandatory for Development Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} Requires: libavahi-qt3-1 = %{version} Requires: qt3-devel # Last appeared in OpenSUSE 10.3: Provides: avahi-devel:%{_libdir}/libavahi-qt3.so %description -n libavahi-qt3-devel Qt3 bindings for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %endif %if %build_qt4 %package -n libavahi-qt4-1 Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour Group: System/GUI/KDE # Old name used for <= 10.3: Provides: avahi-qt4 = %{version} Obsoletes: avahi-qt4 < %{version} %description -n libavahi-qt4-1 Qt4 bindings for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %package -n libavahi-qt4-devel Summary: Include Files and Libraries Mandatory for Development Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} Requires: libavahi-qt4-1 = %{version} Requires: libqt4-devel # Last appeared in OpenSUSE 10.3: Provides: avahi-devel:%{_libdir}/libavahi-qt4.so %description -n libavahi-qt4-devel Qt4 bindings for avahi. Avahi is an implementation the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete implementing all MUSTs and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition it supports some nifty things that have never been seen elsewhere like correct mDNS reflection across LAN segments. %endif %if %build_core %if %build_mono %package -n avahi-mono Summary: Mono Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour Group: Development/Languages/Mono Requires: gtk-sharp2 Requires: libavahi-client3 >= %{version} Requires: libavahi-common3 >= %{version} Requires: libavahi-glib1 >= %{version} Requires: libavahi-ui0 >= %{version} %description -n avahi-mono This package provides Mono bindings for avahi. Avahi is an implementation of the DNS Service Discovery and MulticastDNS specifications for Zeroconf Computing. It uses D-BUS for communication between user applications and a system daemon. The daemon is used to coordinate application efforts in caching replies, necessary to minimize the traffic imposed on networks. The Avahi mDNS responder is now feature complete, implementing all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. It passes all tests in the Apple Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. %endif %lang_package %endif %prep %setup -q -n %{_name}-%{version} translation-update-upstream %patch0 %patch1 -p1 %patch3 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %if !%build_core # Replace all .la references from local .la files to installed versions # with exception of libavahi-glib.la. # It allows to build only the binding subpackage. %if %build_mono sed -i 's:\(\.\.\|\$(top_builddir)\)/[^/]*/\(lib[^ ]*\.la\):%{_libdir}/\2:g' */Makefile.am %else sed -i 's:libavahi-glib\.la:@@SKIP LIBAVAHI GLIB@@:g s:\(\.\.\|\$(top_builddir)\)/[^/]*/\(lib[^ ]*\.la\):%{_libdir}/\2:g s:@@SKIP LIBAVAHI GLIB@@:libavahi-glib.la:g ' */Makefile.am %endif %endif if ! test -f %{_datadir}/aclocal/glib-gettext.m4 ; then cat %{S:4} >>acinclude.m4 fi %build autoreconf -f -i intltoolize -f %configure\ --libexecdir=%{_prefix}/lib\ --disable-static\ --with-distro=suse\ %if %build_core --enable-compat-libdns_sd\ --enable-compat-howl\ %else --disable-compat-libdns_sd\ --disable-compat-howl\ %endif %if %build_glib2 --enable-glib\ --enable-gobject\ --enable-gtk\ --enable-gtk3\ --enable-pygtk\ %else --disable-glib\ --disable-gobject\ %if ! %build_mono --disable-gtk\ %endif --disable-gtk3\ --disable-pygtk\ %endif %if %build_qt3 --enable-qt3\ %else --disable-qt3\ %endif %if %build_qt4 --enable-qt4\ %else --disable-qt4\ %endif %if %build_mono --enable-mono\ --enable-gtk\ %else --disable-mono\ %endif --with-avahi-priv-access-group=avahi\ --with-autoipd-user=avahi\ --with-autoipd-group=avahi %if %build_glib2 && !%build_core for DIR in avahi-glib avahi-gobject avahi-ui avahi-discover-standalone avahi-python man ; do cd $DIR make %{?_smp_mflags} cd .. done %endif %if %build_qt3 && !%build_core cd avahi-qt %endif %if %build_qt4 && !%build_core cd avahi-qt %endif %if %build_mono && !%build_core cd avahi-sharp make %{?_smp_mflags} cd ../avahi-ui-sharp %endif make %{?_smp_mflags} %install %if %build_glib2 && !%build_core for DIR in avahi-glib avahi-gobject avahi-ui avahi-discover-standalone avahi-python man ; do cd $DIR %makeinstall cd .. done cd - %endif %if %build_qt3 && !%build_core cd avahi-qt %endif %if %build_qt4 && !%build_core cd avahi-qt %endif %if %build_mono && !%build_core cd avahi-sharp %makeinstall cd ../avahi-ui-sharp %endif %makeinstall %if !%build_core cd .. make %{?_smp_mflags} install-pkgconfigDATA DESTDIR=$RPM_BUILD_ROOT %endif %if %build_core # do not remove this unless you plan to fix _all_ the references to # it. all (multiple) previous attempts have failed already #rm $RPM_BUILD_ROOT%{_libdir}/libavahi-common.la install -d $RPM_BUILD_ROOT%{_localstatedir}/run/avahi-daemon ln -s avahi-compat-libdns_sd/dns_sd.h $RPM_BUILD_ROOT%{_includedir}/ ln -s avahi-compat-howl.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/howl.pc # Work-around qt4 bug: # https://bugzilla.novell.com/show_bug.cgi?id=238169 %if %suse_version <= 1020 sed -i "s,$RPM_BUILD_DIR,/," $RPM_BUILD_ROOT%{_libdir}/libavahi-qt4.la %endif mkdir -p $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services install %{S:2} $RPM_BUILD_ROOT%{_sysconfdir}/init.d/avahi-bookmarks ln -s %{_sysconfdir}/init.d/avahi-daemon $RPM_BUILD_ROOT%{_sbindir}/rcavahi-daemon ln -s %{_sysconfdir}/init.d/avahi-dnsconfd $RPM_BUILD_ROOT%{_sbindir}/rcavahi-dnsconfd install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/avahi ln -s %{_sysconfdir}/init.d/avahi-bookmarks $RPM_BUILD_ROOT%{_sbindir}/rcavahi-bookmarks install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps install -m 644 %{S:1} $RPM_BUILD_ROOT%{_datadir}/pixmaps/gnome-nettool2.png %if ! %build_glib2 # Note: This file is intentionally installed here. It is needed for avahi-utils-gtk and python-avahi-gtk: install -d $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces install -m 644 avahi-discover-standalone/avahi-discover.ui $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces %endif %find_lang %{name} %{?no_lang_C} %else # There is no simple way to not install core files. Remove them here. # The rest is enabled/disabled in configure as needed. rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-client.pc rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-core.pc %if %build_glib2 rm $RPM_BUILD_ROOT%{_bindir}/avahi-bookmarks rm -r $RPM_BUILD_ROOT%{python_sitelib}/avahi rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-bookmarks.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-browse-domains.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-browse.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-publish-address.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-publish-service.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-publish.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-resolve-address.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-resolve-host-name.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-resolve.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/avahi-set-host-name.1* rm $RPM_BUILD_ROOT%{_mandir}/man5/avahi-daemon.conf.5* rm $RPM_BUILD_ROOT%{_mandir}/man5/avahi.hosts.5* rm $RPM_BUILD_ROOT%{_mandir}/man5/avahi.service.5* rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-autoipd.8* rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-autoipd.action.8* rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-daemon.8* rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-dnsconfd.8* rm $RPM_BUILD_ROOT%{_mandir}/man8/avahi-dnsconfd.action.8* # Note: This file was intentionally moved to avahi. It is needed for avahi-utils-gtk and python-avahi-gtk: rm $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces/avahi-discover.ui rmdir $RPM_BUILD_ROOT%{_datadir}/avahi/interfaces rmdir $RPM_BUILD_ROOT%{_datadir}/avahi %else %if %build_mono rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-ui.pc %endif %endif %endif %if %build_glib2 # FIXME: There are no better Categories in the spec (Monitor is not allowed in Network). %suse_update_desktop_file -r avahi-discover GNOME System Monitor %suse_update_desktop_file bvnc %suse_update_desktop_file bssh %endif %fdupes $RPM_BUILD_ROOT%{_libdir} %if %build_core %pre %{_sbindir}/groupadd -r avahi 2> /dev/null || : %{_sbindir}/useradd -r -o -s /bin/false -c "User for Avahi" -d %{_localstatedir}/run/avahi-daemon -g avahi avahi 2> /dev/null || : %if %suse_version >= 1210 %service_add_pre avahi-dnsconfd.service avahi-daemon.service %endif %post /sbin/ldconfig %{fillup_and_insserv -f -y avahi-daemon} %{fillup_and_insserv -f avahi-dnsconfd} %if %suse_version >= 1210 %service_add_post avahi-dnsconfd.service avahi-daemon.service %endif %preun %{stop_on_removal avahi-daemon} %{stop_on_removal avahi-dnsconfd} %if %suse_version >= 1210 %service_del_preun avahi-dnsconfd.service avahi-daemon.service %endif %postun /sbin/ldconfig %{restart_on_update avahi-daemon} %{restart_on_update avahi-dnsconfd} %insserv_cleanup %if %suse_version >= 1210 %service_del_postun avahi-dnsconfd.service avahi-daemon.service %endif %post -n libavahi-client3 -p /sbin/ldconfig %postun -n libavahi-client3 -p /sbin/ldconfig %post -n libavahi-common3 -p /sbin/ldconfig %postun -n libavahi-common3 -p /sbin/ldconfig %post -n libavahi-core7 -p /sbin/ldconfig %postun -n libavahi-core7 -p /sbin/ldconfig %post -n libdns_sd -p /sbin/ldconfig %postun -n libdns_sd -p /sbin/ldconfig %post -n libhowl0 -p /sbin/ldconfig %postun -n libhowl0 -p /sbin/ldconfig %pre -n python-avahi # For update from == 10.3: # Restart will not happen due to package rename. Handle it. if test etc/init.d/avahi-bookmarks -a "$1" = 1 ; then touch var/adm/python_avahi_needs_restart fi %post -n python-avahi # For update from == 10.3: # Restart will not happen due to package rename. Handle it. if test -f var/adm/python_avahi_needs_restart ; then rm var/adm/python_avahi_needs_restart test -f /etc/sysconfig/services && . /etc/sysconfig/services if test "$YAST_IS_RUNNING" != "instsys" -a "$DISABLE_RESTART_ON_UPDATE" != yes ; then /etc/init.d/avahi-bookmarks try-restart > /dev/null || : fi fi %preun -n python-avahi # FIXME: Package was renamed, check for this case! %{stop_on_removal avahi-bookmarks} %insserv_cleanup %postun -n python-avahi %{restart_on_update avahi-bookmarks} %insserv_cleanup %endif %if %build_glib2 %post -n libavahi-ui0 -p /sbin/ldconfig %postun -n libavahi-ui0 -p /sbin/ldconfig %post -n libavahi-ui-gtk3-%{avahi_gtk3_soname} -p /sbin/ldconfig %postun -n libavahi-ui-gtk3-%{avahi_gtk3_soname} -p /sbin/ldconfig %post -n libavahi-gobject0 -p /sbin/ldconfig %postun -n libavahi-gobject0 -p /sbin/ldconfig %post -n libavahi-glib1 -p /sbin/ldconfig %postun -n libavahi-glib1 -p /sbin/ldconfig %post -n python-avahi-gtk %desktop_database_post %postun -n python-avahi-gtk %desktop_database_post %post -n avahi-utils-gtk %desktop_database_post %postun -n avahi-utils-gtk %desktop_database_post %endif %if %build_qt3 %post -n libavahi-qt3-1 -p /sbin/ldconfig %postun -n libavahi-qt3-1 -p /sbin/ldconfig %endif %if %build_qt4 %post -n libavahi-qt4-1 -p /sbin/ldconfig %postun -n libavahi-qt4-1 -p /sbin/ldconfig %endif %if %build_core %files %defattr(-,root,root) %doc LICENSE docs/* # Note: This file is intentionally packaged here. It is needed for avahi-utils-gtk and python-avahi-gtk: %{_datadir}/pixmaps/gnome-nettool2.png # avahi creates the directory itself, we do not package it # since it might be on tmpfs %attr(-,avahi,avahi) %ghost %{_localstatedir}/run/avahi-daemon %doc %{_mandir}/man5/*.5* %doc %{_mandir}/man8/*.8* %{_sbindir}/avahi-* %{_sbindir}/rcavahi-daemon %{_sbindir}/rcavahi-dnsconfd %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/* %dir %{_sysconfdir}/avahi %config %{_sysconfdir}/avahi/avahi-daemon.conf %{_sysconfdir}/avahi/avahi-dnsconfd.action %{_sysconfdir}/avahi/avahi-autoipd.action %dir %{_sysconfdir}/avahi/services %{_sysconfdir}/avahi/services/*.service %{_sysconfdir}/avahi/hosts %{_sysconfdir}/dbus-1/system.d/*.conf %{_sysconfdir}/init.d/avahi-dnsconfd %{_sysconfdir}/init.d/avahi-daemon %{_datadir}/dbus-1/interfaces/org.freedesktop.Avahi.*.xml %{_datadir}/dbus-1/system-services/org.freedesktop.Avahi.service %{_unitdir}/avahi-daemon.service %{_unitdir}/avahi-daemon.socket %{_unitdir}/avahi-dnsconfd.service # Common file for avahi-utils-gtk and python-avahi-gtk: %dir %{_datadir}/avahi/ %{_datadir}/avahi/interfaces %files lang -f %{name}.lang %defattr(-,root,root) %files -n libavahi-client3 %defattr(-,root,root) %{_libdir}/libavahi-client*.so.* %files -n libavahi-common3 %defattr(-,root,root) %{_libdir}/libavahi-common*.so.* %files -n libavahi-core7 %defattr(-,root,root) %{_libdir}/libavahi-core*.so.* %files -n libdns_sd %defattr(-,root,root) # libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility: %{_libdir}/libdns_sd.so %{_libdir}/libdns_sd.so.* %files -n libhowl0 %defattr(-,root,root) %{_libdir}/libhowl.so.* %files -n python-avahi %defattr(-,root,root) %{_bindir}/avahi-bookmarks %doc %{_mandir}/man1/avahi-bookmarks.1* %{_sbindir}/rcavahi-bookmarks %{_sysconfdir}/init.d/avahi-bookmarks %dir %{python_sitelib}/avahi %{python_sitelib}/avahi/__init__.py* %{python_sitelib}/avahi/ServiceTypeDatabase.py %files utils %defattr(-,root,root) %{_bindir}/avahi-browse* %{_bindir}/avahi-publish* %{_bindir}/avahi-resolve* %{_bindir}/avahi-set-host-name %dir %{_datadir}/avahi/ %{_datadir}/avahi/avahi-service.dtd %dir %{_libdir}/avahi/ %{_libdir}/avahi/service-types.db %doc %{_mandir}/man1/avahi-browse*.1* %doc %{_mandir}/man1/avahi-publish*.1* %doc %{_mandir}/man1/avahi-resolve*.1* %doc %{_mandir}/man1/avahi-set-host-name.1* %files -n libavahi-devel %defattr(-,root,root) # FIXME: Maybe split to particular subpackages. #%doc doc/api/html #%doc doc/*.html doc/*.txt doc/file-boilerplate.c doc/TODO %{_includedir}/avahi-client %{_includedir}/avahi-common %{_includedir}/avahi-core # avahi devel files %{_libdir}/libavahi-client.*a %{_libdir}/libavahi-client*.so %{_libdir}/libavahi-core.*a %{_libdir}/libavahi-core*.so %{_libdir}/libavahi-common*.so # do not remove unless you fix the resulting problems # reference is in libavahi-client.la %{_libdir}/libavahi-common*.*a %{_libdir}/pkgconfig/avahi-client.pc %{_libdir}/pkgconfig/avahi-core.pc %files compat-mDNSResponder-devel %defattr(-,root,root) %{_includedir}/avahi-compat-libdns_sd %{_includedir}/dns_sd.h %{_libdir}/libdns_sd.*a %{_libdir}/pkgconfig/avahi-compat-libdns_sd.pc %files compat-howl-devel %defattr(-,root,root) %{_includedir}/avahi-compat-howl %{_libdir}/libhowl.so %{_libdir}/libhowl.*a %{_libdir}/pkgconfig/avahi-compat-howl.pc %{_libdir}/pkgconfig/howl.pc %endif %if %build_glib2 %files -n libavahi-ui0 %defattr(-,root,root) %{_libdir}/libavahi-ui.so.* %files -n libavahi-ui-gtk3-%{avahi_gtk3_soname} %defattr(-,root,root) %{_libdir}/libavahi-ui-gtk3.so.%{avahi_gtk3_soname}* %files -n libavahi-glib1 %defattr(-,root,root) %{_libdir}/libavahi-glib*.so.* %files -n libavahi-gobject0 %defattr(-,root,root) %{_libdir}/libavahi-gobject*.so.* %files -n typelib-1_0-Avahi-0_6 %defattr(-,root,root) %{_libdir}/girepository-1.0/Avahi-0.6.typelib %{_libdir}/girepository-1.0/AvahiCore-0.6.typelib %files -n python-avahi-gtk %defattr(-,root,root) %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop %doc %{_mandir}/man1/avahi-discover.1* %{python_sitelib}/avahi_discover %files -n avahi-utils-gtk %defattr(-,root,root) %{_bindir}/bshell %{_bindir}/bssh %{_bindir}/bvnc %{_bindir}/avahi-discover-standalone %{_datadir}/applications/bssh.desktop %{_datadir}/applications/bvnc.desktop %doc %{_mandir}/man1/bssh.1.* %doc %{_mandir}/man1/bvnc.1.* %files -n libavahi-glib-devel %defattr(-,root,root) %{_includedir}/avahi-glib %{_includedir}/avahi-ui %{_libdir}/libavahi-glib*.*a %{_libdir}/libavahi-glib*.so %{_libdir}/libavahi-ui*.*a %{_libdir}/libavahi-ui*.*so %{_libdir}/pkgconfig/avahi-glib.pc %{_libdir}/pkgconfig/avahi-ui.pc %{_libdir}/pkgconfig/avahi-ui-gtk3.pc %files -n libavahi-gobject-devel %defattr(-,root,root) %{_includedir}/avahi-gobject %{_libdir}/libavahi-gobject*.*a %{_libdir}/libavahi-gobject*.so %{_libdir}/pkgconfig/avahi-gobject.pc %{_datadir}/gir-1.0/*.gir %endif %if %build_qt3 %files -n libavahi-qt3-devel %defattr(-,root,root) %{_includedir}/avahi-qt3 %{_libdir}/libavahi-qt3*.*a %{_libdir}/libavahi-qt3*.so %{_libdir}/pkgconfig/avahi-qt3.pc %files -n libavahi-qt3-1 %defattr(-,root,root) %{_libdir}/libavahi-qt3*.so.* %endif %if %build_qt4 %files -n libavahi-qt4-devel %defattr(-,root,root) %{_includedir}/avahi-qt4 %{_libdir}/libavahi-qt4*.*a %{_libdir}/libavahi-qt4*.so %{_libdir}/pkgconfig/avahi-qt4.pc %files -n libavahi-qt4-1 %defattr(-,root,root) %{_libdir}/libavahi-qt4*.so.* %endif %if %build_mono %if %build_core %files -n avahi-mono %else %files %endif %defattr(-,root,root) %{_libdir}/pkgconfig/avahi-sharp.pc %{_libdir}/pkgconfig/avahi-ui-sharp.pc %{_prefix}/lib/monodoc/sources/*.* %{_prefix}/lib/mono/avahi-sharp %{_prefix}/lib/mono/gac/avahi-sharp %{_prefix}/lib/mono/avahi-ui-sharp %{_prefix}/lib/mono/gac/avahi-ui-sharp %endif %changelog