From 31d31b13de877639db57795a3fbb73a90dd33be19b1deef98241088d674554e8 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Fri, 18 Jul 2008 20:22:24 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/avahi?expand=0&rev=40 --- avahi-0.6.22.tar.bz2 | 3 - avahi-0.6.23.tar.bz2 | 3 + avahi-bookmarks-no-pygtk.patch | 26 + avahi-glib-gettext.m4 | 420 ++++++++++ avahi-glib2.changes | 18 + avahi-glib2.spec | 1294 ++++++++++++++++++++++++++++++ avahi-init-lsb.patch | 130 ++- avahi-man-selection.patch | 40 + avahi-mono.changes | 15 + avahi-mono.spec | 746 ++++++++++------- avahi-no-gtk-no-interfaces.patch | 11 + avahi-no-gtk-python.patch | 16 + avahi-qt4.changes | 15 + avahi-qt4.spec | 746 ++++++++++------- avahi.changes | 23 + avahi.spec | 751 ++++++++++------- avahi_spec-prepare.sh | 13 + 17 files changed, 3293 insertions(+), 977 deletions(-) delete mode 100644 avahi-0.6.22.tar.bz2 create mode 100644 avahi-0.6.23.tar.bz2 create mode 100644 avahi-bookmarks-no-pygtk.patch create mode 100644 avahi-glib-gettext.m4 create mode 100644 avahi-glib2.changes create mode 100644 avahi-glib2.spec create mode 100644 avahi-man-selection.patch create mode 100644 avahi-no-gtk-no-interfaces.patch create mode 100644 avahi-no-gtk-python.patch diff --git a/avahi-0.6.22.tar.bz2 b/avahi-0.6.22.tar.bz2 deleted file mode 100644 index 8cad173..0000000 --- a/avahi-0.6.22.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:78ba26f4eb52d808378062193a01193b9518cb69b5a1ddb7b8747daa05bf9aa1 -size 855716 diff --git a/avahi-0.6.23.tar.bz2 b/avahi-0.6.23.tar.bz2 new file mode 100644 index 0000000..d208e36 --- /dev/null +++ b/avahi-0.6.23.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3357550ec0477c813fa1a1928e4507a40b21cf1c382c9f7b88118b84557cee94 +size 802719 diff --git a/avahi-bookmarks-no-pygtk.patch b/avahi-bookmarks-no-pygtk.patch new file mode 100644 index 0000000..b1f42d5 --- /dev/null +++ b/avahi-bookmarks-no-pygtk.patch @@ -0,0 +1,26 @@ +--- avahi-python/Makefile.am ++++ avahi-python/Makefile.am +@@ -29,7 +29,6 @@ + + if HAVE_PYTHON + if HAVE_PYTHON_DBUS +-if HAVE_PYGTK + + pythonscripts = \ + avahi-bookmarks +@@ -43,4 +42,3 @@ + + endif + endif +-endif +--- avahi-python/avahi-bookmarks.in ++++ avahi-python/avahi-bookmarks.in +@@ -24,7 +24,7 @@ + try: + import avahi, gobject, dbus + except ImportError: +- print "Sorry, to use this tool you need to install Avahi, pygtk and python-dbus." ++ print "Sorry, to use this tool you need to install Avahi and python-dbus." + sys.exit(1) + + try: diff --git a/avahi-glib-gettext.m4 b/avahi-glib-gettext.m4 new file mode 100644 index 0000000..5ad035e --- /dev/null +++ b/avahi-glib-gettext.m4 @@ -0,0 +1,420 @@ +# Copyright (C) 1995-2002 Free Software Foundation, Inc. +# Copyright (C) 2001-2003,2004 Red Hat, Inc. +# +# This file is free software, distributed under the terms of the GNU +# General Public License. As a special exception to the GNU General +# Public License, this file may be distributed as part of a program +# that contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# This file can be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU Public License +# but which still want to provide support for the GNU gettext functionality. +# +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995, 1996 +# +# Modified to never use included libintl. +# Owen Taylor , 12/15/1998 +# +# Major rework to remove unused code +# Owen Taylor , 12/11/2002 +# +# Added better handling of ALL_LINGUAS from GNU gettext version +# written by Bruno Haible, Owen Taylor 5/30/3002 +# +# Modified to require ngettext +# Matthias Clasen 08/06/2004 +# +# We need this here as well, since someone might use autoconf-2.5x +# to configure GLib then an older version to configure a package +# using AM_GLIB_GNU_GETTEXT +AC_PREREQ(2.53) + +dnl +dnl We go to great lengths to make sure that aclocal won't +dnl try to pull in the installed version of these macros +dnl when running aclocal in the glib directory. +dnl +m4_copy([AC_DEFUN],[glib_DEFUN]) +m4_copy([AC_REQUIRE],[glib_REQUIRE]) +dnl +dnl At the end, if we're not within glib, we'll define the public +dnl definitions in terms of our private definitions. +dnl + +# GLIB_LC_MESSAGES +#-------------------- +glib_DEFUN([GLIB_LC_MESSAGES], + [AC_CHECK_HEADERS([locale.h]) + if test $ac_cv_header_locale_h = yes; then + AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, + [AC_TRY_LINK([#include ], [return LC_MESSAGES], + am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) + if test $am_cv_val_LC_MESSAGES = yes; then + AC_DEFINE(HAVE_LC_MESSAGES, 1, + [Define if your file defines LC_MESSAGES.]) + fi + fi]) + +# GLIB_PATH_PROG_WITH_TEST +#---------------------------- +dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], +[# Extract the first word of "$2", so it can be a program name with args. +set dummy $2; ac_word=[$]2 +AC_MSG_CHECKING([for $ac_word]) +AC_CACHE_VAL(ac_cv_path_$1, +[case "[$]$1" in + /*) + ac_cv_path_$1="[$]$1" # Let the user override the test with a path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in ifelse([$5], , $PATH, [$5]); do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if [$3]; then + ac_cv_path_$1="$ac_dir/$ac_word" + break + fi + fi + done + IFS="$ac_save_ifs" +dnl If no 4th arg is given, leave the cache variable unset, +dnl so AC_PATH_PROGS will keep looking. +ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" +])dnl + ;; +esac])dnl +$1="$ac_cv_path_$1" +if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + +# GLIB_WITH_NLS +#----------------- +glib_DEFUN([GLIB_WITH_NLS], + dnl NLS is obligatory + [USE_NLS=yes + AC_SUBST(USE_NLS) + + gt_cv_have_gettext=no + + CATOBJEXT=NONE + XGETTEXT=: + INTLLIBS= + + AC_CHECK_HEADER(libintl.h, + [gt_cv_func_dgettext_libintl="no" + libintl_extra_libs="" + + # + # First check in libc + # + AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, + [AC_TRY_LINK([ +#include +], + [return !ngettext ("","", 1)], + gt_cv_func_ngettext_libc=yes, + gt_cv_func_ngettext_libc=no) + ]) + + if test "$gt_cv_func_ngettext_libc" = "yes" ; then + AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, + [AC_TRY_LINK([ +#include +], + [return !dgettext ("","")], + gt_cv_func_dgettext_libc=yes, + gt_cv_func_dgettext_libc=no) + ]) + fi + + if test "$gt_cv_func_ngettext_libc" = "yes" ; then + AC_CHECK_FUNCS(bind_textdomain_codeset) + fi + + # + # If we don't have everything we want, check in libintl + # + if test "$gt_cv_func_dgettext_libc" != "yes" \ + || test "$gt_cv_func_ngettext_libc" != "yes" \ + || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then + + AC_CHECK_LIB(intl, bindtextdomain, + [AC_CHECK_LIB(intl, ngettext, + [AC_CHECK_LIB(intl, dgettext, + gt_cv_func_dgettext_libintl=yes)])]) + + if test "$gt_cv_func_dgettext_libintl" != "yes" ; then + AC_MSG_CHECKING([if -liconv is needed to use gettext]) + AC_MSG_RESULT([]) + AC_CHECK_LIB(intl, ngettext, + [AC_CHECK_LIB(intl, dcgettext, + [gt_cv_func_dgettext_libintl=yes + libintl_extra_libs=-liconv], + :,-liconv)], + :,-liconv) + fi + + # + # If we found libintl, then check in it for bind_textdomain_codeset(); + # we'll prefer libc if neither have bind_textdomain_codeset(), + # and both have dgettext and ngettext + # + if test "$gt_cv_func_dgettext_libintl" = "yes" ; then + glib_save_LIBS="$LIBS" + LIBS="$LIBS -lintl $libintl_extra_libs" + unset ac_cv_func_bind_textdomain_codeset + AC_CHECK_FUNCS(bind_textdomain_codeset) + LIBS="$glib_save_LIBS" + + if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then + gt_cv_func_dgettext_libc=no + else + if test "$gt_cv_func_dgettext_libc" = "yes" \ + && test "$gt_cv_func_ngettext_libc" = "yes"; then + gt_cv_func_dgettext_libintl=no + fi + fi + fi + fi + + if test "$gt_cv_func_dgettext_libc" = "yes" \ + || test "$gt_cv_func_dgettext_libintl" = "yes"; then + gt_cv_have_gettext=yes + fi + + if test "$gt_cv_func_dgettext_libintl" = "yes"; then + INTLLIBS="-lintl $libintl_extra_libs" + fi + + if test "$gt_cv_have_gettext" = "yes"; then + AC_DEFINE(HAVE_GETTEXT,1, + [Define if the GNU gettext() function is already present or preinstalled.]) + GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl + if test "$MSGFMT" != "no"; then + glib_save_LIBS="$LIBS" + LIBS="$LIBS $INTLLIBS" + AC_CHECK_FUNCS(dcgettext) + MSGFMT_OPTS= + AC_MSG_CHECKING([if msgfmt accepts -c]) + GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: test 1.0\n" +"PO-Revision-Date: 2007-02-15 12:01+0100\n" +"Last-Translator: test \n" +"Language-Team: C \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) + AC_SUBST(MSGFMT_OPTS) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; + return _nl_msg_cat_cntr], + [CATOBJEXT=.gmo + DATADIRNAME=share], + [case $host in + *-*-solaris*) + dnl On Solaris, if bind_textdomain_codeset is in libc, + dnl GNU format message catalog is always supported, + dnl since both are added to the libc all together. + dnl Hence, we'd like to go with DATADIRNAME=share and + dnl and CATOBJEXT=.gmo in this case. + AC_CHECK_FUNC(bind_textdomain_codeset, + [CATOBJEXT=.gmo + DATADIRNAME=share], + [CATOBJEXT=.mo + DATADIRNAME=lib]) + ;; + *) + CATOBJEXT=.mo + DATADIRNAME=lib + ;; + esac]) + LIBS="$glib_save_LIBS" + INSTOBJEXT=.mo + else + gt_cv_have_gettext=no + fi + fi + ]) + + if test "$gt_cv_have_gettext" = "yes" ; then + AC_DEFINE(ENABLE_NLS, 1, + [always defined to indicate that i18n is enabled]) + fi + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is not GNU xgettext we define it as : so that the + dnl Makefiles still can work. + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then + : ; + else + AC_MSG_RESULT( + [found xgettext program is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + + # We need to process the po/ directory. + POSUB=po + + AC_OUTPUT_COMMANDS( + [case "$CONFIG_FILES" in *po/Makefile.in*) + sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile + esac]) + + dnl These rules are solely for the distribution goal. While doing this + dnl we only have to keep exactly one list of the available catalogs + dnl in configure.in. + for lang in $ALL_LINGUAS; do + GMOFILES="$GMOFILES $lang.gmo" + POFILES="$POFILES $lang.po" + done + + dnl Make all variables we use known to autoconf. + AC_SUBST(CATALOGS) + AC_SUBST(CATOBJEXT) + AC_SUBST(DATADIRNAME) + AC_SUBST(GMOFILES) + AC_SUBST(INSTOBJEXT) + AC_SUBST(INTLLIBS) + AC_SUBST(PO_IN_DATADIR_TRUE) + AC_SUBST(PO_IN_DATADIR_FALSE) + AC_SUBST(POFILES) + AC_SUBST(POSUB) + ]) + +# AM_GLIB_GNU_GETTEXT +# ------------------- +# Do checks necessary for use of gettext. If a suitable implementation +# of gettext is found in either in libintl or in the C library, +# it will set INTLLIBS to the libraries needed for use of gettext +# and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable +# gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() +# on various variables needed by the Makefile.in.in installed by +# glib-gettextize. +dnl +glib_DEFUN([GLIB_GNU_GETTEXT], + [AC_REQUIRE([AC_PROG_CC])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + + GLIB_LC_MESSAGES + GLIB_WITH_NLS + + if test "$gt_cv_have_gettext" = "yes"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for presentlang in $ALL_LINGUAS; do + useit=no + if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then + desiredlanguages="$LINGUAS" + else + desiredlanguages="$ALL_LINGUAS" + fi + for desiredlang in $desiredlanguages; do + # Use the presentlang catalog if desiredlang is + # a. equal to presentlang, or + # b. a variant of presentlang (because in this case, + # presentlang can be used as a fallback for messages + # which are not translated in the desiredlang catalog). + case "$desiredlang" in + "$presentlang"*) useit=yes;; + esac + done + if test $useit = yes; then + NEW_LINGUAS="$NEW_LINGUAS $presentlang" + fi + done + LINGUAS=$NEW_LINGUAS + AC_MSG_RESULT($LINGUAS) + fi + + dnl Construct list of names of catalog files to be constructed. + if test -n "$LINGUAS"; then + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done + fi + fi + + dnl Generate list of files to be processed by xgettext which will + dnl be included in po/Makefile. + test -d po || mkdir po + if test "x$srcdir" != "x."; then + if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then + posrcprefix="$srcdir/" + else + posrcprefix="../$srcdir/" + fi + else + posrcprefix="../" + fi + rm -f po/POTFILES + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ + < $srcdir/po/POTFILES.in > po/POTFILES + ]) + +# AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) +# ------------------------------- +# Define VARIABLE to the location where catalog files will +# be installed by po/Makefile. +glib_DEFUN([GLIB_DEFINE_LOCALEDIR], +[glib_REQUIRE([GLIB_GNU_GETTEXT])dnl +glib_save_prefix="$prefix" +glib_save_exec_prefix="$exec_prefix" +glib_save_datarootdir="$datarootdir" +test "x$prefix" = xNONE && prefix=$ac_default_prefix +test "x$exec_prefix" = xNONE && exec_prefix=$prefix +datarootdir=`eval echo "${datarootdir}"` +if test "x$CATOBJEXT" = "x.mo" ; then + localedir=`eval echo "${libdir}/locale"` +else + localedir=`eval echo "${datadir}/locale"` +fi +prefix="$glib_save_prefix" +exec_prefix="$glib_save_exec_prefix" +datarootdir="$glib_save_datarootdir" +AC_DEFINE_UNQUOTED($1, "$localedir", + [Define the location where the catalogs will be installed]) +]) + +dnl +dnl Now the definitions that aclocal will find +dnl +ifdef(glib_configure_in,[],[ +AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) +AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) +])dnl + +# GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) +# +# Create a temporary file with TEST-FILE as its contents and pass the +# file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with +# 0 and perform ACTION-IF-FAIL for any other exit status. +AC_DEFUN([GLIB_RUN_PROG], +[cat >conftest.foo <<_ACEOF +$2 +_ACEOF +if AC_RUN_LOG([$1 conftest.foo]); then + m4_ifval([$3], [$3], [:]) +m4_ifvaln([$4], [else $4])dnl +echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD +sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD +fi]) + diff --git a/avahi-glib2.changes b/avahi-glib2.changes new file mode 100644 index 0000000..5734b2f --- /dev/null +++ b/avahi-glib2.changes @@ -0,0 +1,18 @@ +------------------------------------------------------------------- +Fri Jul 18 17:18:20 CEST 2008 - sbrabec@suse.cz + +- Build glib2, gobject and python stuff separately to break build + loop cups -> gtk2 -> avahi -> cups. +- Split avahi-python-gtk from avahi-python. +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. + diff --git a/avahi-glib2.spec b/avahi-glib2.spec new file mode 100644 index 0000000..6e90ae4 --- /dev/null +++ b/avahi-glib2.spec @@ -0,0 +1,1294 @@ +# +# spec file for package avahi-glib2 (Version 0.6.23) +# +# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + + +Name: avahi-glib2 +# 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 options to 1. +%define build_core 0 +# NOTE: build_glib2 also controls build of gobject, gtk2 and pygtk code. +%define build_glib2 1 +%define build_mono 0 +%define build_qt3 0 +%define build_qt4 0 +Version: 0.6.23 +Release: 1 +%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 +%define avahi_core_soname 5 +%define avahi_ui_soname 0 +%define avahi_glib_soname 1 +%define avahi_gobject_soname 0 +%define avahi_qt3_soname 1 +%define avahi_qt4_soname 1 +Url: http://www.avahi.org/ +Group: System/Daemons +License: LGPL v2.1 or later +Summary: D-BUS Service for Zeroconf and Bonjour +Source: %{_name}-%{version}.tar.bz2 +Source1: gnome-nettool2.png +Source2: avahi-bookmarks.init +Source3: avahi.firewall +# 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-init-lsb.patch -- committed after 0.6.22 release upstream +Patch2: avahi-init-lsb.patch +#PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer +Patch3: avahi-empty-share-dir.patch +#PATCH-FIX-UPSTREAM avahi-man-link.patch avahi222 sbrabec@suse.cz -- link man page only if it is installed +Patch4: avahi-man-selection.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- if gtk is disabled do not install glade files +Patch5: avahi-no-gtk-no-interfaces.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- build avahi-bookmarks even without python-gtk +Patch6: avahi-bookmarks-no-pygtk.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-python.patch avahi222 sbrabec@suse.cz -- build python module if gtk is disabled +Patch7: avahi-no-gtk-python.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: dbus-1-python fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libexpat-devel perl-XML-Parser pkg-config +# Even if we are not building python bindings, we need python to build service types database: +BuildRequires: python-devel python-gdbm +%if %build_core +Source5: %{_name}_spec-prepare.sh +PreReq: pwdutils +Requires: %{name}-lang = %{version} +BuildRequires: dbus-1-devel doxygen graphviz python-gdbm zlib-devel +# For python bindings and utilities: +#BuildRequires: dbus-1-python +#Requires: dbus-1 +Requires: nss-mdns +# mDNSResponder was used for <= 10.2: +Provides: mDNSResponder = 107.5 +Obsoletes: mDNSResponder <= 107.5 +%endif +%if %build_glib2 +BuildRequires: libglade2-devel python-gtk-devel update-desktop-files +BuildRequires: libavahi-devel +%endif +%if %build_qt3 +BuildRequires: qt3-devel +BuildRequires: libavahi-devel +%endif +%if %build_qt4 +BuildRequires: libqt4-devel +BuildRequires: libavahi-devel +%endif +%if %build_mono +BuildRequires: gtk-sharp2 libavahi-glib-devel libglade2-devel mono-devel monodoc-core +# Please copy this line to avahi-mono definition below for build all-in-once: +Requires: gtk-sharp2 libavahi-client3 >= %{version} libavahi-common3 >= %{version} libavahi-ui0 >= %{version} libavahi-glib1 >= %{version} +%endif + +%description +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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%if %build_core + +%package -n libavahi-client3 +License: LGPL v2.1 or later +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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-common3 +License: LGPL v2.1 or later +Summary: D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-core5 +License: LGPL v2.1 or later +Summary: D-BUS Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-core5 +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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libdns_sd +License: LGPL v2.1 or later +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 +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libhowl0 +License: LGPL v2.1 or later +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n python-avahi +License: LGPL v2.1 or later +Summary: A set of Avahi utilities written in Python +PreReq: coreutils +Requires: %{name} = %{version} python-gdbm dbus-1-python python-twisted python-twisted-web +Group: Development/Languages/Python +# 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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package utils +License: LGPL v2.1 or later +Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +Group: Productivity/Networking/Other + +%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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-devel +License: LGPL v2.1 or later +Summary: Include Files and Libraries Mandatory for Development +# +Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-mDNSResponder-devel +License: LGPL v2.1 or later +Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libdns_sd = %{version} +Group: Development/Libraries/C and C++ +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-howl-devel +License: LGPL v2.1 or later +Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libhowl0 = %{version} +Group: Development/Libraries/C and C++ + +%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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_glib2 + +%package -n libavahi-ui0 +License: LGPL v2.1 or later +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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-glib1 +License: LGPL v2.1 or later +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-gobject0 +License: LGPL v2.1 or later +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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package utils-gtk +License: LGPL v2.1 or later +Summary: D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +Group: System/Daemons + +%description 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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n python-avahi-gtk +License: LGPL v2.1 or later +Summary: A set of Avahi utilities written in Python Using python-gtk +PreReq: coreutils +Requires: python-avahi = %{version} python-gtk +Group: Development/Languages/Python +# 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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-glib-devel +License: LGPL v2.1 or later +Summary: Include Files and Libraries Mandatory for Development +Requires: libavahi-devel = %{version} libavahi-ui0 = %{version} libavahi-glib1 = %{version} glib2-devel gtk2-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-gobject-devel +License: LGPL v2.1 or later +Summary: D-BUS Service for Zeroconf and Bonjour +Requires: libavahi-devel = %{version} libavahi-glib-devel libavahi-gobject0 = %{version} glib2-devel +Group: System/Daemons + +%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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-qt3-devel + +Summary: Include Files and Libraries Mandatory for Development +Requires: libavahi-devel = %{version} libavahi-qt3-1 = %{version} qt3-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_qt4 + +%package -n libavahi-qt4-1 +License: LGPL v2.1 or later +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-qt4-devel +License: LGPL v2.1 or later +Summary: Include Files and Libraries Mandatory for Development +Requires: libavahi-devel = %{version} libavahi-qt4-1 = %{version} libqt4-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_core +%if %build_mono + +%package -n avahi-mono +License: LGPL v2.1 or later +Summary: Mono Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour +Requires: gtk-sharp2 libavahi-client3 >= %{version} libavahi-common3 >= %{version} libavahi-ui0 >= %{version} libavahi-glib1 >= %{version} +Group: Development/Languages/Mono + +%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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%lang_package +%endif + +%prep +%setup -q -n %{_name}-%{version} +%patch0 +%patch1 -p1 +%patch2 +%patch3 +%patch4 +%patch5 +%patch6 +%patch7 +%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-pygtk\ +%else + --disable-glib\ + --disable-gobject\ +%if ! %build_mono + --disable-gtk\ +%endif + --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 %{?jobs:-j%jobs} +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 %{?jobs:-j%jobs} +cd ../avahi-ui-sharp +%endif +%__make %{?jobs:-j%jobs} + +%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 %{?jobs:-j%jobs} install-pkgconfigDATA DESTDIR=$RPM_BUILD_ROOT +%endif +%if %build_core +## WARNING: found empty dependency_libs variable. please remove the +## pointless libtool .la file +## /var/tmp/avahi-0.6.20-build/usr/lib64/lib\avahi-common.la +## If you don't understand this, mailto=rguenther@suse.de +## A number of packages want this file, however, so we won't remove it. +# rm $RPM_BUILD_ROOT/${_prefix}/${_lib}/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 +%find_lang %{name} +%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%{py_sitedir}/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* +%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 +%endif +%fdupes $RPM_BUILD_ROOT%{_libdir} + +%clean +rm -rf $RPM_BUILD_ROOT +%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 || : + +%post +/sbin/ldconfig +%{fillup_and_insserv -f -Y avahi-daemon} +%{fillup_and_insserv -f -Y avahi-dnsconfd} + +%preun +%{stop_on_removal avahi-daemon} +%{stop_on_removal avahi-dnsconfd} + +%postun +/sbin/ldconfig +%{restart_on_update avahi-daemon} +%{restart_on_update avahi-dnsconfd} +%insserv_cleanup + +%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-core5 -p /sbin/ldconfig + +%postun -n libavahi-core5 -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-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 +%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 +%attr(-,avahi,avahi) %{_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 + +%files lang -f %{name}.lang +%defattr(-,root,root) +# FIXME: These directories should be part of filesystem package: +%dir %{_datadir}/locale/en_NZ +%dir %{_datadir}/locale/en_NZ/LC_MESSAGES +%dir %{_datadir}/locale/sr@latin +%dir %{_datadir}/locale/sr@latin/LC_MESSAGES + +%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-core5 +%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 +%{py_sitedir}/avahi +%{py_sitedir}/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 +%{_datadir}/avahi/introspection +%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 +%{_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-glib1 +%defattr(-,root,root) +%{_libdir}/libavahi-glib*.so.* + +%files -n libavahi-gobject0 +%defattr(-,root,root) +%{_libdir}/libavahi-gobject*.so.* + +%files -n python-avahi-gtk +%defattr(-,root,root) +%{_bindir}/avahi-discover +%{_datadir}/applications/avahi-discover.desktop +%doc %{_mandir}/man1/avahi-discover.1* +%{py_sitedir}/avahi_discover + +%files utils-gtk +%defattr(-,root,root) +%{_bindir}/bshell +%{_bindir}/bssh +%{_bindir}/bvnc +%{_bindir}/avahi-discover-standalone +%{_datadir}/applications/bssh.desktop +%{_datadir}/applications/bvnc.desktop +%dir %{_datadir}/avahi/ +%{_datadir}/avahi/interfaces +%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 + +%files -n libavahi-gobject-devel +%defattr(-,root,root) +%{_includedir}/avahi-gobject +%{_libdir}/libavahi-gobject*.*a +%{_libdir}/libavahi-gobject*.so +%{_libdir}/pkgconfig/avahi-gobject.pc +%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 +* Fri Jul 18 2008 sbrabec@suse.cz +- Build glib2, gobject and python stuff separately to break build + loop cups -> gtk2 -> avahi -> cups. +- Split avahi-python-gtk from avahi-python. +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. diff --git a/avahi-init-lsb.patch b/avahi-init-lsb.patch index f777bd9..74c4de4 100644 --- a/avahi-init-lsb.patch +++ b/avahi-init-lsb.patch @@ -1,84 +1,60 @@ --- initscript/suse/avahi-daemon.in +++ initscript/suse/avahi-daemon.in -@@ -1,9 +1,10 @@ - #! /bin/sh - ### BEGIN INIT INFO - # Provides: avahi --# Required-Start: $network dbus -+# Required-Start: $network $remote_fs dbus - # Default-Start: 3 5 - # Default-Stop: -+# Short-Description: ZeroConf daemon - # Description: Avahi, a ZeroConf daemon for mDNS and service registration - ### END INIT INFO - -@@ -33,6 +34,18 @@ - $AVAHI_BIN -k || /bin/true - rc_status -v - ;; -+ try-restart|condrestart) -+ if test "$1" = "condrestart"; then -+ echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}" -+ fi -+ $0 status -+ if test $? = 0; then -+ $0 restart -+ else -+ rc_reset -+ fi -+ rc_status +@@ -25,6 +25,18 @@ + $AVAHI_BIN -k 2>/dev/null || /bin/true + rc_status -v + ;; ++ try-restart|condrestart) ++ if test "$1" = "condrestart"; then ++ echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}" ++ fi ++ $0 status ++ if test $? = 0; then ++ $0 restart ++ else ++ rc_reset ++ fi ++ rc_status + ;; - restart) - $0 stop - $0 start -@@ -49,7 +62,7 @@ - rc_status -v - ;; - *) -- echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" -+ echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}" - exit 1 - ;; + restart) + $0 stop + $0 start +@@ -41,7 +53,7 @@ + rc_status -v + ;; + *) +- echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" ++ echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}" + exit 1 + ;; esac --- initscript/suse/avahi-dnsconfd.in +++ initscript/suse/avahi-dnsconfd.in -@@ -1,9 +1,10 @@ - #! /bin/sh - ### BEGIN INIT INFO - # Provides: avahi-dnsconfd --# Required-Start: avahi -+# Required-Start: $remote_fs avahi - # Default-Start: 3 5 - # Default-Stop: -+# Short-Description: ZeroConf daemon - # Description: Avahi, a ZeroConf daemon for mDNS and service registration - ### END INIT INFO - -@@ -24,6 +25,18 @@ - $AVAHI_BIN -k || /bin/true - rc_status -v - ;; -+ try-restart|condrestart) -+ if test "$1" = "condrestart"; then -+ echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}" -+ fi -+ $0 status -+ if test $? = 0; then -+ $0 restart -+ else -+ rc_reset -+ fi -+ rc_status -+ ;; - restart) - $0 stop - $0 start -@@ -40,7 +53,7 @@ - rc_status -v - ;; - *) -- echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" -+ echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}" - exit 1 - ;; +@@ -30,6 +30,18 @@ + $0 start + rc_status + ;; ++ try-restart|condrestart) ++ if test "$1" = "condrestart"; then ++ echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}" ++ fi ++ $0 status ++ if test $? = 0; then ++ $0 restart ++ else ++ rc_reset ++ fi ++ rc_status ++ ;; + force-reload|reload) + echo -n "Reloading Avahi DNS Configuration daemon " + $AVAHI_BIN -r +@@ -41,7 +53,7 @@ + rc_status -v + ;; + *) +- echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" ++ echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}" + exit 1 + ;; esac diff --git a/avahi-man-selection.patch b/avahi-man-selection.patch new file mode 100644 index 0000000..ea96df0 --- /dev/null +++ b/avahi-man-selection.patch @@ -0,0 +1,40 @@ +--- man/Makefile.am ++++ man/Makefile.am +@@ -65,8 +65,11 @@ + + if HAVE_PYTHON + man_MANS += \ +- avahi-discover.1 \ + avahi-bookmarks.1 ++if HAVE_GTK ++man_MANS += \ ++ avahi-discover.1 ++endif + endif + endif + +@@ -233,16 +236,22 @@ + + if HAVE_DBUS + ++BSSH_LN = ++if HAVE_GTK ++if HAVE_GLIB ++BSSH_LN += $(LN_S) bssh.1 bvnc.1 && ++endif ++endif + install-exec-local: + mkdir -p $(DESTDIR)/$(mandir)/man1 && \ + cd $(DESTDIR)/$(mandir)/man1 && \ + rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 && \ ++ $(BSSH_LN) \ + $(LN_S) avahi-resolve.1 avahi-resolve-host-name.1 && \ + $(LN_S) avahi-resolve.1 avahi-resolve-address.1 && \ + $(LN_S) avahi-browse.1 avahi-browse-domains.1 && \ + $(LN_S) avahi-publish.1 avahi-publish-address.1 && \ +- $(LN_S) avahi-publish.1 avahi-publish-service.1 && \ +- $(LN_S) bssh.1 bvnc.1 ++ $(LN_S) avahi-publish.1 avahi-publish-service.1 + + + endif diff --git a/avahi-mono.changes b/avahi-mono.changes index 696cfbe..adafec2 100644 --- a/avahi-mono.changes +++ b/avahi-mono.changes @@ -1,3 +1,18 @@ +------------------------------------------------------------------- +Fri Jul 18 17:18:20 CEST 2008 - sbrabec@suse.cz + +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. + ------------------------------------------------------------------- Sun May 11 11:49:29 CEST 2008 - coolo@suse.de diff --git a/avahi-mono.spec b/avahi-mono.spec index b78f2d6..8bb19c3 100644 --- a/avahi-mono.spec +++ b/avahi-mono.spec @@ -1,5 +1,5 @@ # -# spec file for package avahi-mono (Version 0.6.22) +# spec file for package avahi-mono (Version 0.6.23) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -18,12 +18,14 @@ Name: avahi-mono # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other options to 1. %define build_core 0 +# NOTE: build_glib2 also controls build of gobject, gtk2 and pygtk code. +%define build_glib2 0 %define build_mono 1 %define build_qt3 0 %define build_qt4 0 -Version: 0.6.22 -Release: 83 -%if !%build_mono && !%build_qt3 && !%build_qt4 +Version: 0.6.23 +Release: 1 +%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 @@ -43,6 +45,8 @@ Source: %{_name}-%{version}.tar.bz2 Source1: gnome-nettool2.png Source2: avahi-bookmarks.init Source3: avahi.firewall +# 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 @@ -51,21 +55,35 @@ Patch1: avahi-desktop.patch Patch2: avahi-init-lsb.patch #PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer Patch3: avahi-empty-share-dir.patch +#PATCH-FIX-UPSTREAM avahi-man-link.patch avahi222 sbrabec@suse.cz -- link man page only if it is installed +Patch4: avahi-man-selection.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- if gtk is disabled do not install glade files +Patch5: avahi-no-gtk-no-interfaces.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- build avahi-bookmarks even without python-gtk +Patch6: avahi-bookmarks-no-pygtk.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-python.patch avahi222 sbrabec@suse.cz -- build python module if gtk is disabled +Patch7: avahi-no-gtk-python.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libglade2-devel +BuildRequires: dbus-1-python fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libexpat-devel perl-XML-Parser pkg-config +# Even if we are not building python bindings, we need python to build service types database: +BuildRequires: python-devel python-gdbm %if %build_core -Source4: %{_name}_spec-prepare.sh +Source5: %{_name}_spec-prepare.sh PreReq: pwdutils Requires: %{name}-lang = %{version} -BuildRequires: dbus-1-devel doxygen graphviz update-desktop-files zlib-devel +BuildRequires: dbus-1-devel doxygen graphviz python-gdbm zlib-devel # For python bindings and utilities: -BuildRequires: dbus-1-python python-devel python-gdbm python-gtk-devel -Requires: dbus-1 +#BuildRequires: dbus-1-python +#Requires: dbus-1 Requires: nss-mdns # mDNSResponder was used for <= 10.2: Provides: mDNSResponder = 107.5 Obsoletes: mDNSResponder <= 107.5 %endif +%if %build_glib2 +BuildRequires: libglade2-devel python-gtk-devel update-desktop-files +BuildRequires: libavahi-devel +%endif %if %build_qt3 BuildRequires: qt3-devel BuildRequires: libavahi-devel @@ -75,7 +93,7 @@ BuildRequires: libqt4-devel BuildRequires: libavahi-devel %endif %if %build_mono -BuildRequires: gtk-sharp2 libavahi-glib-devel mono-devel monodoc-core +BuildRequires: gtk-sharp2 libavahi-glib-devel libglade2-devel mono-devel monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 libavahi-client3 >= %{version} libavahi-common3 >= %{version} libavahi-ui0 >= %{version} libavahi-glib1 >= %{version} %endif @@ -181,6 +199,231 @@ Authors: Trent Lloyd Sebastien Estienne +%package -n libdns_sd +License: LGPL v2.1 or later +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 +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libhowl0 +License: LGPL v2.1 or later +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n python-avahi +License: LGPL v2.1 or later +Summary: A set of Avahi utilities written in Python +PreReq: coreutils +Requires: %{name} = %{version} python-gdbm dbus-1-python python-twisted python-twisted-web +Group: Development/Languages/Python +# 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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package utils +License: LGPL v2.1 or later +Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +Group: Productivity/Networking/Other + +%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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-devel +License: LGPL v2.1 or later +Summary: Include Files and Libraries Mandatory for Development +# +Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-mDNSResponder-devel +License: LGPL v2.1 or later +Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libdns_sd = %{version} +Group: Development/Libraries/C and C++ +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-howl-devel +License: LGPL v2.1 or later +Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libhowl0 = %{version} +Group: Development/Libraries/C and C++ + +%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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_glib2 + %package -n libavahi-ui0 License: LGPL v2.1 or later Summary: D-BUS Service for Zeroconf and Bonjour @@ -258,105 +501,6 @@ across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libdns_sd -License: LGPL v2.1 or later -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 -# 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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libhowl0 -License: LGPL v2.1 or later -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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package utils -License: LGPL v2.1 or later -Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour -Requires: %{name} >= %{version} -Group: Productivity/Networking/Other - -%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. - - - Authors: -------- Lennart Poettering @@ -390,18 +534,20 @@ Authors: Trent Lloyd Sebastien Estienne -%package -n python-avahi +%package -n python-avahi-gtk License: LGPL v2.1 or later -Summary: A set of Avahi utilities written in Python +Summary: A set of Avahi utilities written in Python Using python-gtk PreReq: coreutils -Requires: %{name} = %{version} python-gdbm python-gtk dbus-1-python python-twisted python-twisted-web +Requires: python-avahi = %{version} python-gtk Group: Development/Languages/Python # 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 +%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 @@ -416,37 +562,6 @@ elsewhere, like correct mDNS reflection across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libavahi-devel -License: LGPL v2.1 or later -Summary: Include Files and Libraries Mandatory for Development -# -Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel -Group: Development/Libraries/C and C++ -# 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 accross LAN segments. - - - Authors: -------- Lennart Poettering @@ -459,7 +574,7 @@ Summary: Include Files and Libraries Mandatory for Development Requires: libavahi-devel = %{version} libavahi-ui0 = %{version} libavahi-glib1 = %{version} glib2-devel gtk2-devel Group: Development/Libraries/C and C++ # Last appeared in OpenSUSE 10.3: -Provides: avahi-devel:%{_libdir}/libavahi-glib.so +Provides: avahi-devel:%{_libdir}/libavahi-glib.so %description -n libavahi-glib-devel GLib support for avahi. @@ -505,66 +620,6 @@ across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package compat-mDNSResponder-devel -License: LGPL v2.1 or later -Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour -Requires: libavahi-devel = %{version} libdns_sd = %{version} -Group: Development/Libraries/C and C++ -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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package compat-howl-devel -License: LGPL v2.1 or later -Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour -Requires: libavahi-devel = %{version} libhowl0 = %{version} -Group: Development/Libraries/C and C++ - -%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 accross LAN segments. - - - Authors: -------- Lennart Poettering @@ -741,47 +796,80 @@ Authors: %patch1 -p1 %patch2 %patch3 +%patch4 +%patch5 +%patch6 +%patch7 %if !%build_core -# Replace all .la references from local .la files to installed versions. +# 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-python\ - --enable-pygtk\ --enable-compat-libdns_sd\ --enable-compat-howl\ %else - --disable-python\ - --disable-pygtk\ --disable-compat-libdns_sd\ --disable-compat-howl\ %endif -%if %build_qt3 - --enable-qt3\ +%if %build_glib2 + --enable-glib\ + --enable-gobject\ + --enable-gtk\ + --enable-pygtk\ %else - --disable-qt3\ + --disable-glib\ + --disable-gobject\ +%if ! %build_mono + --disable-gtk\ +%endif + --disable-pygtk\ +%endif +%if %build_qt3 + --enable-qt3\ +%else + --disable-qt3\ %endif %if %build_qt4 - --enable-qt4\ + --enable-qt4\ %else - --disable-qt4\ + --disable-qt4\ %endif %if %build_mono - --enable-mono\ + --enable-mono\ + --enable-gtk\ %else - --disable-mono \ + --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 %{?jobs:-j%jobs} +cd .. +done +%endif %if %build_qt3 && !%build_core cd avahi-qt %endif @@ -796,6 +884,14 @@ cd ../avahi-ui-sharp %__make %{?jobs:-j%jobs} %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 @@ -813,8 +909,6 @@ cd .. %__make %{?jobs:-j%jobs} install-pkgconfigDATA DESTDIR=$RPM_BUILD_ROOT %endif %if %build_core -install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps -install -m 644 %{S:1} $RPM_BUILD_ROOT%{_datadir}/pixmaps/gnome-nettool2.png ## WARNING: found empty dependency_libs variable. please remove the ## pointless libtool .la file ## /var/tmp/avahi-0.6.20-build/usr/lib64/lib\avahi-common.la @@ -833,20 +927,47 @@ mkdir -p $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSE 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 -ln -s %{_sysconfdir}/init.d/avahi-bookmarks $RPM_BUILD_ROOT%{_sbindir}/rcavahi-bookmarks install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/avahi -# 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 +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 %find_lang %{name} %else -# There is no simple way to install only selected pc files. Remove core files. +# 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 -rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-glib.pc -rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-gobject.pc +%if %build_glib2 +rm $RPM_BUILD_ROOT%{_bindir}/avahi-bookmarks +rm -r $RPM_BUILD_ROOT%{py_sitedir}/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* +%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 +%endif %fdupes $RPM_BUILD_ROOT%{_libdir} %clean @@ -872,6 +993,26 @@ rm -rf $RPM_BUILD_ROOT %{restart_on_update avahi-dnsconfd} %insserv_cleanup +%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-core5 -p /sbin/ldconfig + +%postun -n libavahi-core5 -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. @@ -898,18 +1039,8 @@ fi %postun -n python-avahi %{restart_on_update avahi-bookmarks} %insserv_cleanup - -%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-core5 -p /sbin/ldconfig - -%postun -n libavahi-core5 -p /sbin/ldconfig +%endif +%if %build_glib2 %post -n libavahi-ui0 -p /sbin/ldconfig @@ -922,14 +1053,6 @@ fi %post -n libavahi-glib1 -p /sbin/ldconfig %postun -n libavahi-glib1 -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 %endif %if %build_qt3 @@ -948,13 +1071,15 @@ fi %files %defattr(-,root,root) %doc LICENSE docs/* -%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/* +# Note: This file is intentionally packaged here. It is needed for avahi-utils-gtk and python-avahi-gtk: +%{_datadir}/pixmaps/gnome-nettool2.png %attr(-,avahi,avahi) %{_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 @@ -967,6 +1092,12 @@ fi %{_sysconfdir}/init.d/avahi-daemon %files lang -f %{name}.lang +%defattr(-,root,root) +# FIXME: These directories should be part of filesystem package: +%dir %{_datadir}/locale/en_NZ +%dir %{_datadir}/locale/en_NZ/LC_MESSAGES +%dir %{_datadir}/locale/sr@latin +%dir %{_datadir}/locale/sr@latin/LC_MESSAGES %files -n libavahi-client3 %defattr(-,root,root) @@ -980,18 +1111,6 @@ fi %defattr(-,root,root) %{_libdir}/libavahi-core*.so.* -%files -n libavahi-ui0 -%defattr(-,root,root) -%{_libdir}/libavahi-ui*.so.* - -%files -n libavahi-glib1 -%defattr(-,root,root) -%{_libdir}/libavahi-glib*.so.* - -%files -n libavahi-gobject0 -%defattr(-,root,root) -%{_libdir}/libavahi-gobject*.so.* - %files -n libdns_sd %defattr(-,root,root) # libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility: @@ -1002,6 +1121,15 @@ fi %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 +%{py_sitedir}/avahi +%{py_sitedir}/avahi/ServiceTypeDatabase.py + %files utils %defattr(-,root,root) %{_bindir}/avahi-browse* @@ -1011,7 +1139,6 @@ fi %dir %{_datadir}/avahi/ %{_datadir}/avahi/avahi-service.dtd %{_datadir}/avahi/introspection -%{_datadir}/pixmaps/gnome-nettool2.png %dir %{_libdir}/avahi/ %{_libdir}/avahi/service-types.db %doc %{_mandir}/man1/avahi-browse*.1* @@ -1019,31 +1146,6 @@ fi %doc %{_mandir}/man1/avahi-resolve*.1* %doc %{_mandir}/man1/avahi-set-host-name.1* -%files utils-gtk -%defattr(-,root,root) -%{_bindir}/bshell -%{_bindir}/bssh -%{_bindir}/bvnc -%{_bindir}/avahi-discover-standalone -%{_datadir}/applications/bssh.desktop -%{_datadir}/applications/bvnc.desktop -%dir %{_datadir}/avahi/ -%{_datadir}/avahi/interfaces -%doc %{_mandir}/man1/bssh.1.* -%doc %{_mandir}/man1/bvnc.1.* - -%files -n python-avahi -%defattr(-,root,root) -%{py_sitedir}/avahi -%{py_sitedir}/avahi_discover -%{_bindir}/avahi-discover -%{_bindir}/avahi-bookmarks -%doc %{_mandir}/man1/avahi-bookmarks.1* -%doc %{_mandir}/man1/avahi-discover.1* -%{_datadir}/applications/avahi-discover.desktop -%{_sbindir}/rcavahi-bookmarks -%{_sysconfdir}/init.d/avahi-bookmarks - %files -n libavahi-devel %defattr(-,root,root) # FIXME: Maybe split to particular subpackages. @@ -1062,6 +1164,55 @@ fi %{_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-glib1 +%defattr(-,root,root) +%{_libdir}/libavahi-glib*.so.* + +%files -n libavahi-gobject0 +%defattr(-,root,root) +%{_libdir}/libavahi-gobject*.so.* + +%files -n python-avahi-gtk +%defattr(-,root,root) +%{_bindir}/avahi-discover +%{_datadir}/applications/avahi-discover.desktop +%doc %{_mandir}/man1/avahi-discover.1* +%{py_sitedir}/avahi_discover + +%files utils-gtk +%defattr(-,root,root) +%{_bindir}/bshell +%{_bindir}/bssh +%{_bindir}/bvnc +%{_bindir}/avahi-discover-standalone +%{_datadir}/applications/bssh.desktop +%{_datadir}/applications/bvnc.desktop +%dir %{_datadir}/avahi/ +%{_datadir}/avahi/interfaces +%doc %{_mandir}/man1/bssh.1.* +%doc %{_mandir}/man1/bvnc.1.* + %files -n libavahi-glib-devel %defattr(-,root,root) %{_includedir}/avahi-glib @@ -1079,21 +1230,6 @@ fi %{_libdir}/libavahi-gobject*.*a %{_libdir}/libavahi-gobject*.so %{_libdir}/pkgconfig/avahi-gobject.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_qt3 @@ -1140,6 +1276,18 @@ fi %endif %changelog +* Fri Jul 18 2008 sbrabec@suse.cz +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. * Sun May 11 2008 coolo@suse.de - fix rename of xxbit packages * Tue Mar 11 2008 sbrabec@suse.cz diff --git a/avahi-no-gtk-no-interfaces.patch b/avahi-no-gtk-no-interfaces.patch new file mode 100644 index 0000000..ddc023c --- /dev/null +++ b/avahi-no-gtk-no-interfaces.patch @@ -0,0 +1,11 @@ +--- avahi-discover-standalone/Makefile.am ++++ avahi-discover-standalone/Makefile.am +@@ -52,7 +52,7 @@ + + if HAVE_PYTHON_DBUS + +-interfaces_DATA = $(interfaces) ++interfaces_DATA = + + endif + endif diff --git a/avahi-no-gtk-python.patch b/avahi-no-gtk-python.patch new file mode 100644 index 0000000..ad04339 --- /dev/null +++ b/avahi-no-gtk-python.patch @@ -0,0 +1,16 @@ +--- avahi-python/avahi/Makefile.am ++++ avahi-python/avahi/Makefile.am +@@ -52,13 +52,11 @@ + + avahi_PYTHON = $(avahi_SCRIPTS) + +-if HAVE_PYGTK + if HAVE_PYTHON_DBUS + + avahi_PYTHON += __init__.py + + endif + endif +-endif + + CLEANFILES=*.pyc *.pyo ServiceTypeDatabase.py diff --git a/avahi-qt4.changes b/avahi-qt4.changes index 8bbac98..f4f27fb 100644 --- a/avahi-qt4.changes +++ b/avahi-qt4.changes @@ -1,3 +1,18 @@ +------------------------------------------------------------------- +Fri Jul 18 17:18:20 CEST 2008 - sbrabec@suse.cz + +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. + ------------------------------------------------------------------- Sun May 11 11:49:29 CEST 2008 - coolo@suse.de diff --git a/avahi-qt4.spec b/avahi-qt4.spec index fcc7512..a931ea6 100644 --- a/avahi-qt4.spec +++ b/avahi-qt4.spec @@ -1,5 +1,5 @@ # -# spec file for package avahi-qt4 (Version 0.6.22) +# spec file for package avahi-qt4 (Version 0.6.23) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -18,12 +18,14 @@ Name: avahi-qt4 # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other options to 1. %define build_core 0 +# NOTE: build_glib2 also controls build of gobject, gtk2 and pygtk code. +%define build_glib2 0 %define build_mono 0 %define build_qt3 0 %define build_qt4 1 -Version: 0.6.22 -Release: 7 -%if !%build_mono && !%build_qt3 && !%build_qt4 +Version: 0.6.23 +Release: 1 +%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 @@ -43,6 +45,8 @@ Source: %{_name}-%{version}.tar.bz2 Source1: gnome-nettool2.png Source2: avahi-bookmarks.init Source3: avahi.firewall +# 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 @@ -51,21 +55,35 @@ Patch1: avahi-desktop.patch Patch2: avahi-init-lsb.patch #PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer Patch3: avahi-empty-share-dir.patch +#PATCH-FIX-UPSTREAM avahi-man-link.patch avahi222 sbrabec@suse.cz -- link man page only if it is installed +Patch4: avahi-man-selection.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- if gtk is disabled do not install glade files +Patch5: avahi-no-gtk-no-interfaces.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- build avahi-bookmarks even without python-gtk +Patch6: avahi-bookmarks-no-pygtk.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-python.patch avahi222 sbrabec@suse.cz -- build python module if gtk is disabled +Patch7: avahi-no-gtk-python.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libglade2-devel +BuildRequires: dbus-1-python fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libexpat-devel perl-XML-Parser pkg-config +# Even if we are not building python bindings, we need python to build service types database: +BuildRequires: python-devel python-gdbm %if %build_core -Source4: %{_name}_spec-prepare.sh +Source5: %{_name}_spec-prepare.sh PreReq: pwdutils Requires: %{name}-lang = %{version} -BuildRequires: dbus-1-devel doxygen graphviz update-desktop-files zlib-devel +BuildRequires: dbus-1-devel doxygen graphviz python-gdbm zlib-devel # For python bindings and utilities: -BuildRequires: dbus-1-python python-devel python-gdbm python-gtk-devel -Requires: dbus-1 +#BuildRequires: dbus-1-python +#Requires: dbus-1 Requires: nss-mdns # mDNSResponder was used for <= 10.2: Provides: mDNSResponder = 107.5 Obsoletes: mDNSResponder <= 107.5 %endif +%if %build_glib2 +BuildRequires: libglade2-devel python-gtk-devel update-desktop-files +BuildRequires: libavahi-devel +%endif %if %build_qt3 BuildRequires: qt3-devel BuildRequires: libavahi-devel @@ -75,7 +93,7 @@ BuildRequires: libqt4-devel BuildRequires: libavahi-devel %endif %if %build_mono -BuildRequires: gtk-sharp2 libavahi-glib-devel mono-devel monodoc-core +BuildRequires: gtk-sharp2 libavahi-glib-devel libglade2-devel mono-devel monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 libavahi-client3 >= %{version} libavahi-common3 >= %{version} libavahi-ui0 >= %{version} libavahi-glib1 >= %{version} %endif @@ -184,6 +202,231 @@ Authors: Trent Lloyd Sebastien Estienne +%package -n libdns_sd +License: LGPL v2.1 or later +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 +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libhowl0 +License: LGPL v2.1 or later +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n python-avahi +License: LGPL v2.1 or later +Summary: A set of Avahi utilities written in Python +PreReq: coreutils +Requires: %{name} = %{version} python-gdbm dbus-1-python python-twisted python-twisted-web +Group: Development/Languages/Python +# 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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package utils +License: LGPL v2.1 or later +Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +Group: Productivity/Networking/Other + +%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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-devel +License: LGPL v2.1 or later +Summary: Include Files and Libraries Mandatory for Development +# +Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-mDNSResponder-devel +License: LGPL v2.1 or later +Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libdns_sd = %{version} +Group: Development/Libraries/C and C++ +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-howl-devel +License: LGPL v2.1 or later +Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libhowl0 = %{version} +Group: Development/Libraries/C and C++ + +%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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_glib2 + %package -n libavahi-ui0 License: LGPL v2.1 or later Summary: D-BUS Service for Zeroconf and Bonjour @@ -261,105 +504,6 @@ across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libdns_sd -License: LGPL v2.1 or later -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 -# 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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libhowl0 -License: LGPL v2.1 or later -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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package utils -License: LGPL v2.1 or later -Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour -Requires: %{name} >= %{version} -Group: Productivity/Networking/Other - -%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. - - - Authors: -------- Lennart Poettering @@ -393,18 +537,20 @@ Authors: Trent Lloyd Sebastien Estienne -%package -n python-avahi +%package -n python-avahi-gtk License: LGPL v2.1 or later -Summary: A set of Avahi utilities written in Python +Summary: A set of Avahi utilities written in Python Using python-gtk PreReq: coreutils -Requires: %{name} = %{version} python-gdbm python-gtk dbus-1-python python-twisted python-twisted-web +Requires: python-avahi = %{version} python-gtk Group: Development/Languages/Python # 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 +%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 @@ -419,37 +565,6 @@ elsewhere, like correct mDNS reflection across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libavahi-devel -License: LGPL v2.1 or later -Summary: Include Files and Libraries Mandatory for Development -# -Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel -Group: Development/Libraries/C and C++ -# 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 accross LAN segments. - - - Authors: -------- Lennart Poettering @@ -462,7 +577,7 @@ Summary: Include Files and Libraries Mandatory for Development Requires: libavahi-devel = %{version} libavahi-ui0 = %{version} libavahi-glib1 = %{version} glib2-devel gtk2-devel Group: Development/Libraries/C and C++ # Last appeared in OpenSUSE 10.3: -Provides: avahi-devel:%{_libdir}/libavahi-glib.so +Provides: avahi-devel:%{_libdir}/libavahi-glib.so %description -n libavahi-glib-devel GLib support for avahi. @@ -508,66 +623,6 @@ across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package compat-mDNSResponder-devel -License: LGPL v2.1 or later -Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour -Requires: libavahi-devel = %{version} libdns_sd = %{version} -Group: Development/Libraries/C and C++ -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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package compat-howl-devel -License: LGPL v2.1 or later -Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour -Requires: libavahi-devel = %{version} libhowl0 = %{version} -Group: Development/Libraries/C and C++ - -%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 accross LAN segments. - - - Authors: -------- Lennart Poettering @@ -744,47 +799,80 @@ Authors: %patch1 -p1 %patch2 %patch3 +%patch4 +%patch5 +%patch6 +%patch7 %if !%build_core -# Replace all .la references from local .la files to installed versions. +# 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-python\ - --enable-pygtk\ --enable-compat-libdns_sd\ --enable-compat-howl\ %else - --disable-python\ - --disable-pygtk\ --disable-compat-libdns_sd\ --disable-compat-howl\ %endif -%if %build_qt3 - --enable-qt3\ +%if %build_glib2 + --enable-glib\ + --enable-gobject\ + --enable-gtk\ + --enable-pygtk\ %else - --disable-qt3\ + --disable-glib\ + --disable-gobject\ +%if ! %build_mono + --disable-gtk\ +%endif + --disable-pygtk\ +%endif +%if %build_qt3 + --enable-qt3\ +%else + --disable-qt3\ %endif %if %build_qt4 - --enable-qt4\ + --enable-qt4\ %else - --disable-qt4\ + --disable-qt4\ %endif %if %build_mono - --enable-mono\ + --enable-mono\ + --enable-gtk\ %else - --disable-mono \ + --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 %{?jobs:-j%jobs} +cd .. +done +%endif %if %build_qt3 && !%build_core cd avahi-qt %endif @@ -799,6 +887,14 @@ cd ../avahi-ui-sharp %__make %{?jobs:-j%jobs} %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 @@ -816,8 +912,6 @@ cd .. %__make %{?jobs:-j%jobs} install-pkgconfigDATA DESTDIR=$RPM_BUILD_ROOT %endif %if %build_core -install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps -install -m 644 %{S:1} $RPM_BUILD_ROOT%{_datadir}/pixmaps/gnome-nettool2.png ## WARNING: found empty dependency_libs variable. please remove the ## pointless libtool .la file ## /var/tmp/avahi-0.6.20-build/usr/lib64/lib\avahi-common.la @@ -836,20 +930,47 @@ mkdir -p $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSE 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 -ln -s %{_sysconfdir}/init.d/avahi-bookmarks $RPM_BUILD_ROOT%{_sbindir}/rcavahi-bookmarks install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/avahi -# 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 +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 %find_lang %{name} %else -# There is no simple way to install only selected pc files. Remove core files. +# 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 -rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-glib.pc -rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-gobject.pc +%if %build_glib2 +rm $RPM_BUILD_ROOT%{_bindir}/avahi-bookmarks +rm -r $RPM_BUILD_ROOT%{py_sitedir}/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* +%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 +%endif %fdupes $RPM_BUILD_ROOT%{_libdir} %clean @@ -875,6 +996,26 @@ rm -rf $RPM_BUILD_ROOT %{restart_on_update avahi-dnsconfd} %insserv_cleanup +%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-core5 -p /sbin/ldconfig + +%postun -n libavahi-core5 -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. @@ -901,18 +1042,8 @@ fi %postun -n python-avahi %{restart_on_update avahi-bookmarks} %insserv_cleanup - -%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-core5 -p /sbin/ldconfig - -%postun -n libavahi-core5 -p /sbin/ldconfig +%endif +%if %build_glib2 %post -n libavahi-ui0 -p /sbin/ldconfig @@ -925,14 +1056,6 @@ fi %post -n libavahi-glib1 -p /sbin/ldconfig %postun -n libavahi-glib1 -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 %endif %if %build_qt3 @@ -951,13 +1074,15 @@ fi %files %defattr(-,root,root) %doc LICENSE docs/* -%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/* +# Note: This file is intentionally packaged here. It is needed for avahi-utils-gtk and python-avahi-gtk: +%{_datadir}/pixmaps/gnome-nettool2.png %attr(-,avahi,avahi) %{_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 @@ -970,6 +1095,12 @@ fi %{_sysconfdir}/init.d/avahi-daemon %files lang -f %{name}.lang +%defattr(-,root,root) +# FIXME: These directories should be part of filesystem package: +%dir %{_datadir}/locale/en_NZ +%dir %{_datadir}/locale/en_NZ/LC_MESSAGES +%dir %{_datadir}/locale/sr@latin +%dir %{_datadir}/locale/sr@latin/LC_MESSAGES %files -n libavahi-client3 %defattr(-,root,root) @@ -983,18 +1114,6 @@ fi %defattr(-,root,root) %{_libdir}/libavahi-core*.so.* -%files -n libavahi-ui0 -%defattr(-,root,root) -%{_libdir}/libavahi-ui*.so.* - -%files -n libavahi-glib1 -%defattr(-,root,root) -%{_libdir}/libavahi-glib*.so.* - -%files -n libavahi-gobject0 -%defattr(-,root,root) -%{_libdir}/libavahi-gobject*.so.* - %files -n libdns_sd %defattr(-,root,root) # libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility: @@ -1005,6 +1124,15 @@ fi %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 +%{py_sitedir}/avahi +%{py_sitedir}/avahi/ServiceTypeDatabase.py + %files utils %defattr(-,root,root) %{_bindir}/avahi-browse* @@ -1014,7 +1142,6 @@ fi %dir %{_datadir}/avahi/ %{_datadir}/avahi/avahi-service.dtd %{_datadir}/avahi/introspection -%{_datadir}/pixmaps/gnome-nettool2.png %dir %{_libdir}/avahi/ %{_libdir}/avahi/service-types.db %doc %{_mandir}/man1/avahi-browse*.1* @@ -1022,31 +1149,6 @@ fi %doc %{_mandir}/man1/avahi-resolve*.1* %doc %{_mandir}/man1/avahi-set-host-name.1* -%files utils-gtk -%defattr(-,root,root) -%{_bindir}/bshell -%{_bindir}/bssh -%{_bindir}/bvnc -%{_bindir}/avahi-discover-standalone -%{_datadir}/applications/bssh.desktop -%{_datadir}/applications/bvnc.desktop -%dir %{_datadir}/avahi/ -%{_datadir}/avahi/interfaces -%doc %{_mandir}/man1/bssh.1.* -%doc %{_mandir}/man1/bvnc.1.* - -%files -n python-avahi -%defattr(-,root,root) -%{py_sitedir}/avahi -%{py_sitedir}/avahi_discover -%{_bindir}/avahi-discover -%{_bindir}/avahi-bookmarks -%doc %{_mandir}/man1/avahi-bookmarks.1* -%doc %{_mandir}/man1/avahi-discover.1* -%{_datadir}/applications/avahi-discover.desktop -%{_sbindir}/rcavahi-bookmarks -%{_sysconfdir}/init.d/avahi-bookmarks - %files -n libavahi-devel %defattr(-,root,root) # FIXME: Maybe split to particular subpackages. @@ -1065,6 +1167,55 @@ fi %{_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-glib1 +%defattr(-,root,root) +%{_libdir}/libavahi-glib*.so.* + +%files -n libavahi-gobject0 +%defattr(-,root,root) +%{_libdir}/libavahi-gobject*.so.* + +%files -n python-avahi-gtk +%defattr(-,root,root) +%{_bindir}/avahi-discover +%{_datadir}/applications/avahi-discover.desktop +%doc %{_mandir}/man1/avahi-discover.1* +%{py_sitedir}/avahi_discover + +%files utils-gtk +%defattr(-,root,root) +%{_bindir}/bshell +%{_bindir}/bssh +%{_bindir}/bvnc +%{_bindir}/avahi-discover-standalone +%{_datadir}/applications/bssh.desktop +%{_datadir}/applications/bvnc.desktop +%dir %{_datadir}/avahi/ +%{_datadir}/avahi/interfaces +%doc %{_mandir}/man1/bssh.1.* +%doc %{_mandir}/man1/bvnc.1.* + %files -n libavahi-glib-devel %defattr(-,root,root) %{_includedir}/avahi-glib @@ -1082,21 +1233,6 @@ fi %{_libdir}/libavahi-gobject*.*a %{_libdir}/libavahi-gobject*.so %{_libdir}/pkgconfig/avahi-gobject.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_qt3 @@ -1143,6 +1279,18 @@ fi %endif %changelog +* Fri Jul 18 2008 sbrabec@suse.cz +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. * Sun May 11 2008 coolo@suse.de - fix rename of xxbit packages * Wed Mar 05 2008 sbrabec@suse.cz diff --git a/avahi.changes b/avahi.changes index 1444209..efea628 100644 --- a/avahi.changes +++ b/avahi.changes @@ -1,3 +1,26 @@ +------------------------------------------------------------------- +Fri Jul 18 17:18:20 CEST 2008 - sbrabec@suse.cz + +- Build glib2, gobject and python stuff separately to break build + loop cups -> gtk2 -> avahi -> cups. +- Split avahi-python-gtk from avahi-python. +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. + +------------------------------------------------------------------- +Wed Jul 16 13:30:43 CEST 2008 - coolo@suse.de + +- don't build cycle between avahi and cups + ------------------------------------------------------------------- Tue May 27 18:04:25 CEST 2008 - coolo@suse.de diff --git a/avahi.spec b/avahi.spec index 58a0cb6..ddd48d5 100644 --- a/avahi.spec +++ b/avahi.spec @@ -1,5 +1,5 @@ # -# spec file for package avahi (Version 0.6.22) +# spec file for package avahi (Version 0.6.23) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -20,12 +20,14 @@ Name: avahi # For build all at once, set all to 1. # If you set build_core to 0, you cannot set more than one other options to 1. %define build_core 1 +# NOTE: build_glib2 also controls build of gobject, gtk2 and pygtk code. +%define build_glib2 0 %define build_mono 0 %define build_qt3 0 %define build_qt4 0 -Version: 0.6.22 -Release: 65 -%if !%build_mono && !%build_qt3 && !%build_qt4 +Version: 0.6.23 +Release: 1 +%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 @@ -45,6 +47,8 @@ Source: %{_name}-%{version}.tar.bz2 Source1: gnome-nettool2.png Source2: avahi-bookmarks.init Source3: avahi.firewall +# 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 @@ -53,21 +57,35 @@ Patch1: avahi-desktop.patch Patch2: avahi-init-lsb.patch #PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer Patch3: avahi-empty-share-dir.patch +#PATCH-FIX-UPSTREAM avahi-man-link.patch avahi222 sbrabec@suse.cz -- link man page only if it is installed +Patch4: avahi-man-selection.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- if gtk is disabled do not install glade files +Patch5: avahi-no-gtk-no-interfaces.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-no-interfaces.patch avahi222 sbrabec@suse.cz -- build avahi-bookmarks even without python-gtk +Patch6: avahi-bookmarks-no-pygtk.patch +#PATCH-FIX-UPSTREAM avahi-no-gtk-python.patch avahi222 sbrabec@suse.cz -- build python module if gtk is disabled +Patch7: avahi-no-gtk-python.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libglade2-devel +BuildRequires: dbus-1-python fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libexpat-devel perl-XML-Parser pkg-config +# Even if we are not building python bindings, we need python to build service types database: +BuildRequires: python-devel python-gdbm %if %build_core -Source4: %{_name}_spec-prepare.sh +Source5: %{_name}_spec-prepare.sh PreReq: pwdutils Requires: %{name}-lang = %{version} -BuildRequires: dbus-1-devel doxygen graphviz update-desktop-files zlib-devel +BuildRequires: dbus-1-devel doxygen graphviz python-gdbm zlib-devel # For python bindings and utilities: -BuildRequires: dbus-1-python python-devel python-gdbm python-gtk-devel -Requires: dbus-1 +#BuildRequires: dbus-1-python +#Requires: dbus-1 Requires: nss-mdns # mDNSResponder was used for <= 10.2: Provides: mDNSResponder = 107.5 Obsoletes: mDNSResponder <= 107.5 %endif +%if %build_glib2 +BuildRequires: libglade2-devel python-gtk-devel update-desktop-files +BuildRequires: libavahi-devel +%endif %if %build_qt3 BuildRequires: qt3-devel BuildRequires: libavahi-devel @@ -77,7 +95,7 @@ BuildRequires: libqt4-devel BuildRequires: libavahi-devel %endif %if %build_mono -BuildRequires: gtk-sharp2 libavahi-glib-devel mono-devel monodoc-core +BuildRequires: gtk-sharp2 libavahi-glib-devel libglade2-devel mono-devel monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 libavahi-client3 >= %{version} libavahi-common3 >= %{version} libavahi-ui0 >= %{version} libavahi-glib1 >= %{version} %endif @@ -184,6 +202,231 @@ Authors: Trent Lloyd Sebastien Estienne +%package -n libdns_sd +License: LGPL v2.1 or later +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 +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libhowl0 +License: LGPL v2.1 or later +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n python-avahi +License: LGPL v2.1 or later +Summary: A set of Avahi utilities written in Python +PreReq: coreutils +Requires: %{name} = %{version} python-gdbm dbus-1-python python-twisted python-twisted-web +Group: Development/Languages/Python +# 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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package utils +License: LGPL v2.1 or later +Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +Group: Productivity/Networking/Other + +%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. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-devel +License: LGPL v2.1 or later +Summary: Include Files and Libraries Mandatory for Development +# +Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel +Group: Development/Libraries/C and C++ +# 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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-mDNSResponder-devel +License: LGPL v2.1 or later +Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libdns_sd = %{version} +Group: Development/Libraries/C and C++ +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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package compat-howl-devel +License: LGPL v2.1 or later +Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Requires: libavahi-devel = %{version} libhowl0 = %{version} +Group: Development/Libraries/C and C++ + +%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 accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_glib2 + %package -n libavahi-ui0 License: LGPL v2.1 or later Summary: D-BUS Service for Zeroconf and Bonjour @@ -261,105 +504,6 @@ across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libdns_sd -License: LGPL v2.1 or later -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 -# 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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libhowl0 -License: LGPL v2.1 or later -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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package utils -License: LGPL v2.1 or later -Summary: Command Line Utilities for D-BUS Service for Zeroconf and Bonjour -Requires: %{name} >= %{version} -Group: Productivity/Networking/Other - -%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. - - - Authors: -------- Lennart Poettering @@ -393,18 +537,20 @@ Authors: Trent Lloyd Sebastien Estienne -%package -n python-avahi +%package -n python-avahi-gtk License: LGPL v2.1 or later -Summary: A set of Avahi utilities written in Python +Summary: A set of Avahi utilities written in Python Using python-gtk PreReq: coreutils -Requires: %{name} = %{version} python-gdbm python-gtk dbus-1-python python-twisted python-twisted-web +Requires: python-avahi = %{version} python-gtk Group: Development/Languages/Python # 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 +%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 @@ -419,37 +565,6 @@ elsewhere, like correct mDNS reflection across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package -n libavahi-devel -License: LGPL v2.1 or later -Summary: Include Files and Libraries Mandatory for Development -# -Requires: %{name} = %{version} libavahi-common3 = %{version} libavahi-core5 = %{version} libavahi-client3 = %{version} dbus-1-devel glibc-devel -Group: Development/Libraries/C and C++ -# 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 accross LAN segments. - - - Authors: -------- Lennart Poettering @@ -462,7 +577,7 @@ Summary: Include Files and Libraries Mandatory for Development Requires: libavahi-devel = %{version} libavahi-ui0 = %{version} libavahi-glib1 = %{version} glib2-devel gtk2-devel Group: Development/Libraries/C and C++ # Last appeared in OpenSUSE 10.3: -Provides: avahi-devel:%{_libdir}/libavahi-glib.so +Provides: avahi-devel:%{_libdir}/libavahi-glib.so %description -n libavahi-glib-devel GLib support for avahi. @@ -508,66 +623,6 @@ across LAN segments. -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package compat-mDNSResponder-devel -License: LGPL v2.1 or later -Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour -Requires: libavahi-devel = %{version} libdns_sd = %{version} -Group: Development/Libraries/C and C++ -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 accross LAN segments. - - - -Authors: --------- - Lennart Poettering - Trent Lloyd - Sebastien Estienne - -%package compat-howl-devel -License: LGPL v2.1 or later -Summary: howl Compatibility Package for D-BUS Service for Zeroconf/Bonjour -Requires: libavahi-devel = %{version} libhowl0 = %{version} -Group: Development/Libraries/C and C++ - -%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 accross LAN segments. - - - Authors: -------- Lennart Poettering @@ -744,47 +799,80 @@ Authors: %patch1 -p1 %patch2 %patch3 +%patch4 +%patch5 +%patch6 +%patch7 %if !%build_core -# Replace all .la references from local .la files to installed versions. +# 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-python\ - --enable-pygtk\ --enable-compat-libdns_sd\ --enable-compat-howl\ %else - --disable-python\ - --disable-pygtk\ --disable-compat-libdns_sd\ --disable-compat-howl\ %endif -%if %build_qt3 - --enable-qt3\ +%if %build_glib2 + --enable-glib\ + --enable-gobject\ + --enable-gtk\ + --enable-pygtk\ %else - --disable-qt3\ + --disable-glib\ + --disable-gobject\ +%if ! %build_mono + --disable-gtk\ +%endif + --disable-pygtk\ +%endif +%if %build_qt3 + --enable-qt3\ +%else + --disable-qt3\ %endif %if %build_qt4 - --enable-qt4\ + --enable-qt4\ %else - --disable-qt4\ + --disable-qt4\ %endif %if %build_mono - --enable-mono\ + --enable-mono\ + --enable-gtk\ %else - --disable-mono \ + --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 %{?jobs:-j%jobs} +cd .. +done +%endif %if %build_qt3 && !%build_core cd avahi-qt %endif @@ -799,6 +887,14 @@ cd ../avahi-ui-sharp %__make %{?jobs:-j%jobs} %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 @@ -816,8 +912,6 @@ cd .. %__make %{?jobs:-j%jobs} install-pkgconfigDATA DESTDIR=$RPM_BUILD_ROOT %endif %if %build_core -install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps -install -m 644 %{S:1} $RPM_BUILD_ROOT%{_datadir}/pixmaps/gnome-nettool2.png ## WARNING: found empty dependency_libs variable. please remove the ## pointless libtool .la file ## /var/tmp/avahi-0.6.20-build/usr/lib64/lib\avahi-common.la @@ -836,20 +930,47 @@ mkdir -p $RPM_BUILD_ROOT%{_sbindir} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSE 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 -ln -s %{_sysconfdir}/init.d/avahi-bookmarks $RPM_BUILD_ROOT%{_sbindir}/rcavahi-bookmarks install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/avahi -# 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 +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 %find_lang %{name} %else -# There is no simple way to install only selected pc files. Remove core files. +# 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 -rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-glib.pc -rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-gobject.pc +%if %build_glib2 +rm $RPM_BUILD_ROOT%{_bindir}/avahi-bookmarks +rm -r $RPM_BUILD_ROOT%{py_sitedir}/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* +%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 +%endif %fdupes $RPM_BUILD_ROOT%{_libdir} %clean @@ -875,6 +996,26 @@ rm -rf $RPM_BUILD_ROOT %{restart_on_update avahi-dnsconfd} %insserv_cleanup +%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-core5 -p /sbin/ldconfig + +%postun -n libavahi-core5 -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. @@ -901,18 +1042,8 @@ fi %postun -n python-avahi %{restart_on_update avahi-bookmarks} %insserv_cleanup - -%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-core5 -p /sbin/ldconfig - -%postun -n libavahi-core5 -p /sbin/ldconfig +%endif +%if %build_glib2 %post -n libavahi-ui0 -p /sbin/ldconfig @@ -925,14 +1056,6 @@ fi %post -n libavahi-glib1 -p /sbin/ldconfig %postun -n libavahi-glib1 -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 %endif %if %build_qt3 @@ -951,13 +1074,15 @@ fi %files %defattr(-,root,root) %doc LICENSE docs/* -%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/* +# Note: This file is intentionally packaged here. It is needed for avahi-utils-gtk and python-avahi-gtk: +%{_datadir}/pixmaps/gnome-nettool2.png %attr(-,avahi,avahi) %{_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 @@ -970,6 +1095,12 @@ fi %{_sysconfdir}/init.d/avahi-daemon %files lang -f %{name}.lang +%defattr(-,root,root) +# FIXME: These directories should be part of filesystem package: +%dir %{_datadir}/locale/en_NZ +%dir %{_datadir}/locale/en_NZ/LC_MESSAGES +%dir %{_datadir}/locale/sr@latin +%dir %{_datadir}/locale/sr@latin/LC_MESSAGES %files -n libavahi-client3 %defattr(-,root,root) @@ -983,18 +1114,6 @@ fi %defattr(-,root,root) %{_libdir}/libavahi-core*.so.* -%files -n libavahi-ui0 -%defattr(-,root,root) -%{_libdir}/libavahi-ui*.so.* - -%files -n libavahi-glib1 -%defattr(-,root,root) -%{_libdir}/libavahi-glib*.so.* - -%files -n libavahi-gobject0 -%defattr(-,root,root) -%{_libdir}/libavahi-gobject*.so.* - %files -n libdns_sd %defattr(-,root,root) # libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility: @@ -1005,6 +1124,15 @@ fi %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 +%{py_sitedir}/avahi +%{py_sitedir}/avahi/ServiceTypeDatabase.py + %files utils %defattr(-,root,root) %{_bindir}/avahi-browse* @@ -1014,7 +1142,6 @@ fi %dir %{_datadir}/avahi/ %{_datadir}/avahi/avahi-service.dtd %{_datadir}/avahi/introspection -%{_datadir}/pixmaps/gnome-nettool2.png %dir %{_libdir}/avahi/ %{_libdir}/avahi/service-types.db %doc %{_mandir}/man1/avahi-browse*.1* @@ -1022,31 +1149,6 @@ fi %doc %{_mandir}/man1/avahi-resolve*.1* %doc %{_mandir}/man1/avahi-set-host-name.1* -%files utils-gtk -%defattr(-,root,root) -%{_bindir}/bshell -%{_bindir}/bssh -%{_bindir}/bvnc -%{_bindir}/avahi-discover-standalone -%{_datadir}/applications/bssh.desktop -%{_datadir}/applications/bvnc.desktop -%dir %{_datadir}/avahi/ -%{_datadir}/avahi/interfaces -%doc %{_mandir}/man1/bssh.1.* -%doc %{_mandir}/man1/bvnc.1.* - -%files -n python-avahi -%defattr(-,root,root) -%{py_sitedir}/avahi -%{py_sitedir}/avahi_discover -%{_bindir}/avahi-discover -%{_bindir}/avahi-bookmarks -%doc %{_mandir}/man1/avahi-bookmarks.1* -%doc %{_mandir}/man1/avahi-discover.1* -%{_datadir}/applications/avahi-discover.desktop -%{_sbindir}/rcavahi-bookmarks -%{_sysconfdir}/init.d/avahi-bookmarks - %files -n libavahi-devel %defattr(-,root,root) # FIXME: Maybe split to particular subpackages. @@ -1065,6 +1167,55 @@ fi %{_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-glib1 +%defattr(-,root,root) +%{_libdir}/libavahi-glib*.so.* + +%files -n libavahi-gobject0 +%defattr(-,root,root) +%{_libdir}/libavahi-gobject*.so.* + +%files -n python-avahi-gtk +%defattr(-,root,root) +%{_bindir}/avahi-discover +%{_datadir}/applications/avahi-discover.desktop +%doc %{_mandir}/man1/avahi-discover.1* +%{py_sitedir}/avahi_discover + +%files utils-gtk +%defattr(-,root,root) +%{_bindir}/bshell +%{_bindir}/bssh +%{_bindir}/bvnc +%{_bindir}/avahi-discover-standalone +%{_datadir}/applications/bssh.desktop +%{_datadir}/applications/bvnc.desktop +%dir %{_datadir}/avahi/ +%{_datadir}/avahi/interfaces +%doc %{_mandir}/man1/bssh.1.* +%doc %{_mandir}/man1/bvnc.1.* + %files -n libavahi-glib-devel %defattr(-,root,root) %{_includedir}/avahi-glib @@ -1082,21 +1233,6 @@ fi %{_libdir}/libavahi-gobject*.*a %{_libdir}/libavahi-gobject*.so %{_libdir}/pkgconfig/avahi-gobject.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_qt3 @@ -1143,6 +1279,23 @@ fi %endif %changelog +* Fri Jul 18 2008 sbrabec@suse.cz +- Build glib2, gobject and python stuff separately to break build + loop cups -> gtk2 -> avahi -> cups. +- Split avahi-python-gtk from avahi-python. +- Updated to version 0.6.23: + * A lot of translation updates + * Beef up bnvc quite a bit, including passing a domain to browse + in + * Increase numer of open files resource limit to 300 so that we + can deal with more clients simultaneously. + * Rework 'poof' algorithm a bit to reduce traffic load on noisy + links. + * Build fixes + * Minor other updates + * Backwards compatible with Avahi 0.6.x with x < 23. +* Wed Jul 16 2008 coolo@suse.de +- don't build cycle between avahi and cups * Tue May 27 2008 coolo@suse.de - fix baselibs config one more time * Sat May 17 2008 coolo@suse.de diff --git a/avahi_spec-prepare.sh b/avahi_spec-prepare.sh index 606742d..982b4d9 100644 --- a/avahi_spec-prepare.sh +++ b/avahi_spec-prepare.sh @@ -49,6 +49,18 @@ sed ' # Do not edit this auto generated file! Edit avahi.spec. ' <$1/$ORIG_SPEC.spec >$1/$ORIG_SPEC-mono.spec +# Edit file to fit -glib2 build needs: +sed ' + s/build_core\ 1/build_core 0/; + s/build_glib2\ 0/build_glib2 1/; + s/^.ame:.*/&-glib2/; + # No more needed. + #s/^..hangelog.*/& qt/; + /^# WARNING: After editing/,/^# to update spec files/d + /^%define[[:space:]]*_name/i \ +# Do not edit this auto generated file! Edit avahi.spec. +' <$1/$ORIG_SPEC.spec >$1/$ORIG_SPEC-glib2.spec + # Edit file to fit -qt4 build needs: sed ' s/build_core\ 1/build_core 0/; @@ -62,5 +74,6 @@ sed ' ' <$1/$ORIG_SPEC.spec >$1/$ORIG_SPEC-qt4.spec # Not wanted for avahi: +#cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-glib2.changes #cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-mono.changes #cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-qt.changes