OBS User unknown 2008-03-10 01:27:42 +00:00 committed by Git OBS Bridge
parent 37d665f443
commit 620ba6ecf7
6 changed files with 1773 additions and 492 deletions

View File

@ -10,14 +10,23 @@
# norootforbuild
Name: avahi-mono
# Do not edit this auto generated file! Edit avahi.spec.
%define _name avahi
# In automatic build systems you want to emable 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
%define build_mono 1
# WARNING: Do not edit this auto generated file.
%define build_qt3 0
%define build_qt4 0
Version: 0.6.22
Release: 18
# WARNING: After changing versions please call Re or rpmbuild to auto-update spec file:
#%(sh %{_sourcedir}/%{name}_spec-prepare.sh %{_sourcedir} %{name})
Release: 39
%if !%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
@ -34,7 +43,6 @@ Source: %{_name}-%{version}.tar.bz2
Source1: gnome-nettool2.png
Source2: avahi-bookmarks.init
Source3: avahi.firewall
Source4: %{_name}_spec-prepare.sh
#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
@ -44,24 +52,31 @@ Patch2: avahi-init-lsb.patch
#PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer
Patch3: avahi-empty-share-dir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: dbus-1-devel doxygen fdupes gcc-c++ gdbm-devel graphviz intltool libdaemon-devel libglade2-devel update-desktop-files zlib-devel
%if !%build_mono
BuildRequires: fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libglade2-devel
%if %build_core
Source4: %{_name}_spec-prepare.sh
PreReq: pwdutils
Requires: %{name}-lang = %{version}
BuildRequires: dbus-1-devel doxygen graphviz update-desktop-files zlib-devel
# For python bindings and utilities:
BuildRequires: dbus-1-python python-devel python-gdbm python-gtk-devel
# For qt3 bindings
BuildRequires: qt3-devel
# For qt4 bindings
BuildRequires: libqt4-devel
Requires: dbus-1
Requires: nss-mdns
# mDNSResponder was used for <= 10.2:
Provides: mDNSResponder = 107.5
Obsoletes: mDNSResponder <= 107.5
%else
# For mono bindings:
BuildRequires: gtk-sharp2 libavahi-client3 libavahi-glib1 libavahi-ui0 mono-devel monodoc-core
%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 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
@ -85,7 +100,7 @@ Authors:
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%if !%build_mono
%if %build_core
%package -n libavahi-client3
Summary: D-BUS Service for Zeroconf and Bonjour
@ -237,66 +252,6 @@ across LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%package -n libavahi-qt4-1
Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
Group: System/GUI/KDE
# Old name used for <= 10.3:
Provides: avahi-qt4 = %{version}
Obsoletes: avahi-qt4 <= %{version}
%description -n libavahi-qt4-1
Qt4 bindings for avahi.
Avahi is an Implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection accross LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
@ -536,66 +491,6 @@ across LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%package -n libavahi-qt4-devel
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 <mztabzr@0pointer.de>
@ -661,7 +556,161 @@ Authors:
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if !%build_mono
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if %build_qt4
%package -n libavahi-qt4-1
Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
Group: System/GUI/KDE
# Old name used for <= 10.3:
Provides: avahi-qt4 = %{version}
Obsoletes: avahi-qt4 <= %{version}
%description -n libavahi-qt4-1
Qt4 bindings for avahi.
Avahi is an Implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection accross LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%package -n libavahi-qt4-devel
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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if %build_mono
%package -n avahi-mono
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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if %build_core
%lang_package
%endif
@ -671,6 +720,11 @@ Authors:
%patch1 -p1
%patch2
%patch3
%if !%build_core
# Replace all .la references from local .la files to installed versions.
# It allows to build only the binding subpackage.
sed -i 's:\(\.\.\|\$(top_builddir)\)/[^/]*/\(lib[^ ]*\.la\):%{_libdir}/\2:g' */Makefile.am
%endif
%build
autoreconf -f -i
@ -678,39 +732,74 @@ autoreconf -f -i
--libexecdir=%{_prefix}/lib\
--disable-static\
--with-distro=suse\
%if %build_mono
--enable-mono\
--disable-qt3\
--disable-qt4\
--disable-python\
--disable-pygtk\
--disable-compat-libdns_sd\
--disable-compat-howl\
%else
--disable-mono \
--enable-qt3\
--enable-qt4\
%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\
%else
--disable-qt3\
%endif
%if %build_qt4
--enable-qt4\
%else
--disable-qt4\
%endif
%if %build_mono
--enable-mono\
%else
--disable-mono \
%endif
--with-avahi-priv-access-group=avahi\
--with-autoipd-user=avahi\
--with-autoipd-group=avahi
%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_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
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
## 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
%if !%build_mono
install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -m 644 %{S:1} $RPM_BUILD_ROOT%{_datadir}/pixmaps/gnome-nettool2.png
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
@ -728,61 +817,20 @@ install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/se
# 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
%find_lang %{name}
%endif
# Remove files if only building mono
%if %build_mono
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-discover-standalone
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-browse*
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-publish*
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-resolve*
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-set-host-name
rm -rf $RPM_BUILD_ROOT%{_bindir}/bshell
rm -rf $RPM_BUILD_ROOT%{_bindir}/bssh
rm -rf $RPM_BUILD_ROOT%{_bindir}/bvnc
rm -rf $RPM_BUILD_ROOT%{_datadir}/avahi
rm -rf $RPM_BUILD_ROOT%{_datadir}/applications/bssh.desktop
rm -rf $RPM_BUILD_ROOT%{_datadir}/applications/bvnc.desktop
rm -rf $RPM_BUILD_ROOT%{_datadir}/locale
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-client*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-common*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-core*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-ui*.so.*
rm -rf $RPM_BUILD_ROOT%{_mandir}/man1
rm -rf $RPM_BUILD_ROOT%{_mandir}/man5
rm -rf $RPM_BUILD_ROOT%{_mandir}/man8
rm -rf $RPM_BUILD_ROOT%{_sbindir}/avahi-*
rm -rf $RPM_BUILD_ROOT%{_sbindir}/rcavahi-daemon
rm -rf $RPM_BUILD_ROOT%{_sbindir}/rcavahi-dnsconfd
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/avahi
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/dbus-1/system.d/*.conf
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/init.d/avahi-dnsconfd
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/init.d/avahi-daemon
rm -rf $RPM_BUILD_ROOT%{_includedir}
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-client.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-client*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-core.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-core*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-common*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-common*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-glib*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-glib*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-glib*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-gobject*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-gobject*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-gobject*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-ui*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-ui*.*so
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-client.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-core.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-glib.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-gobject.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-ui.pc
%else
# There is no simple way to install only selected pc files. Remove core files.
# 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
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-ui.pc
%endif
%fdupes $RPM_BUILD_ROOT%{_libdir}
%clean
rm -rf $RPM_BUILD_ROOT
%if !%build_mono
%if %build_core
%pre
%{_sbindir}/groupadd -r avahi 2> /dev/null || :
@ -846,14 +894,6 @@ fi
%postun -n libavahi-ui0 -p /sbin/ldconfig
%post -n libavahi-qt3-1 -p /sbin/ldconfig
%postun -n libavahi-qt3-1 -p /sbin/ldconfig
%post -n libavahi-qt4-1 -p /sbin/ldconfig
%postun -n libavahi-qt4-1 -p /sbin/ldconfig
%post -n libavahi-gobject0 -p /sbin/ldconfig
%postun -n libavahi-gobject0 -p /sbin/ldconfig
@ -870,18 +910,19 @@ fi
%postun -n libhowl0 -p /sbin/ldconfig
%endif
%if %build_mono
%if %build_qt3
%files
%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
%else
%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)
@ -903,10 +944,8 @@ fi
%{_sysconfdir}/dbus-1/system.d/*.conf
%{_sysconfdir}/init.d/avahi-dnsconfd
%{_sysconfdir}/init.d/avahi-daemon
%if !%build_mono
%files lang -f %{name}.lang
%endif
%files -n libavahi-client3
%defattr(-,root,root)
@ -932,14 +971,6 @@ fi
%defattr(-,root,root)
%{_libdir}/libavahi-gobject*.so.*
%files -n libavahi-qt3-1
%defattr(-,root,root)
%{_libdir}/libavahi-qt3*.so.*
%files -n libavahi-qt4-1
%defattr(-,root,root)
%{_libdir}/libavahi-qt4*.so.*
%files -n libdns_sd
%defattr(-,root,root)
# libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility:
@ -959,9 +990,9 @@ 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
%{_datadir}/pixmaps/gnome-nettool2.png
%doc %{_mandir}/man1/avahi-browse*.1*
%doc %{_mandir}/man1/avahi-publish*.1*
%doc %{_mandir}/man1/avahi-resolve*.1*
@ -1028,20 +1059,6 @@ fi
%{_libdir}/libavahi-gobject*.so
%{_libdir}/pkgconfig/avahi-gobject.pc
%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-qt4-devel
%defattr(-,root,root)
%{_includedir}/avahi-qt4
%{_libdir}/libavahi-qt4*.*a
%{_libdir}/libavahi-qt4*.so
%{_libdir}/pkgconfig/avahi-qt4.pc
%files compat-mDNSResponder-devel
%defattr(-,root,root)
%{_includedir}/avahi-compat-libdns_sd
@ -1057,6 +1074,49 @@ fi
%{_libdir}/pkgconfig/avahi-compat-howl.pc
%{_libdir}/pkgconfig/howl.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
* Thu Oct 11 2007 sbrabec@suse.de

5
avahi-qt4.changes Normal file
View File

@ -0,0 +1,5 @@
-------------------------------------------------------------------
Wed Mar 5 16:14:36 CET 2008 - sbrabec@suse.cz
- Create new spec file to avoid dependency of avahi core on Qt.

1126
avahi-qt4.spec Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Wed Mar 5 16:13:04 CET 2008 - sbrabec@suse.cz
- Build Qt bindings in separate packages to shorten build path and
unneeded triggering for rebuild.
- Spec file rewritten to allow simple and fast build per partes.
-------------------------------------------------------------------
Wed Jan 30 17:13:23 CET 2008 - sbrabec@suse.cz

View File

@ -10,14 +10,25 @@
# norootforbuild
Name: avahi
# WARNING: After editing this file please call Re, rpmbuild or
# bash avahi_spec-prepare.sh "$PWD" avahi
# to update spec files:
%define _name avahi
# In automatic build systems you want to emable 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 1
%define build_mono 0
# WARNING: After editing this file please call Re or rpmbuild to update spec files:
%define build_qt3 0
%define build_qt4 0
Version: 0.6.22
Release: 16
# WARNING: After changing versions please call Re or rpmbuild to auto-update spec file:
#%(sh %{_sourcedir}/%{name}_spec-prepare.sh %{_sourcedir} %{name})
Release: 35
%if !%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
@ -34,7 +45,6 @@ Source: %{_name}-%{version}.tar.bz2
Source1: gnome-nettool2.png
Source2: avahi-bookmarks.init
Source3: avahi.firewall
Source4: %{_name}_spec-prepare.sh
#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
@ -44,24 +54,31 @@ Patch2: avahi-init-lsb.patch
#PATCH-FIX-UPSTREAM avahi-empty-share-dir.patch jpr@novell.com -- mailed maintainer
Patch3: avahi-empty-share-dir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: dbus-1-devel doxygen fdupes gcc-c++ gdbm-devel graphviz intltool libdaemon-devel libglade2-devel update-desktop-files zlib-devel
%if !%build_mono
BuildRequires: fdupes gcc-c++ gdbm-devel intltool libdaemon-devel libglade2-devel
%if %build_core
Source4: %{_name}_spec-prepare.sh
PreReq: pwdutils
Requires: %{name}-lang = %{version}
BuildRequires: dbus-1-devel doxygen graphviz update-desktop-files zlib-devel
# For python bindings and utilities:
BuildRequires: dbus-1-python python-devel python-gdbm python-gtk-devel
# For qt3 bindings
BuildRequires: qt3-devel
# For qt4 bindings
BuildRequires: libqt4-devel
Requires: dbus-1
Requires: nss-mdns
# mDNSResponder was used for <= 10.2:
Provides: mDNSResponder = 107.5
Obsoletes: mDNSResponder <= 107.5
%else
# For mono bindings:
BuildRequires: gtk-sharp2 libavahi-client3 libavahi-glib1 libavahi-ui0 mono-devel monodoc-core
%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 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
@ -86,7 +103,7 @@ Authors:
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%if !%build_mono
%if %build_core
%package -n libavahi-client3
Summary: D-BUS Service for Zeroconf and Bonjour
@ -238,66 +255,6 @@ across LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%package -n libavahi-qt4-1
Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
Group: System/GUI/KDE
# Old name used for <= 10.3:
Provides: avahi-qt4 = %{version}
Obsoletes: avahi-qt4 <= %{version}
%description -n libavahi-qt4-1
Qt4 bindings for avahi.
Avahi is an Implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection accross LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
@ -537,66 +494,6 @@ across LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%package -n libavahi-qt4-devel
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 <mztabzr@0pointer.de>
@ -662,7 +559,161 @@ Authors:
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if !%build_mono
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if %build_qt4
%package -n libavahi-qt4-1
Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour
Group: System/GUI/KDE
# Old name used for <= 10.3:
Provides: avahi-qt4 = %{version}
Obsoletes: avahi-qt4 <= %{version}
%description -n libavahi-qt4-1
Qt4 bindings for avahi.
Avahi is an Implementation the DNS Service Discovery and Multicast DNS
specifications for Zeroconf Computing. It uses D-BUS for communication
between user applications and a system daemon. The daemon is used to
coordinate application efforts in caching replies, necessary to
minimize the traffic imposed on networks.
The Avahi mDNS responder is now feature complete implementing all MUSTs
and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all
tests in the Apple Bonjour conformance test suite. In addition it
supports some nifty things that have never been seen elsewhere like
correct mDNS reflection accross LAN segments.
Authors:
--------
Lennart Poettering <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%package -n libavahi-qt4-devel
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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if %build_mono
%package -n avahi-mono
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 <mztabzr@0pointer.de>
Trent Lloyd <lathiat@freedesktop.org>
Sebastien Estienne <sebastien.estienne@gmail.com>
%endif
%if %build_core
%lang_package
%endif
@ -672,6 +723,11 @@ Authors:
%patch1 -p1
%patch2
%patch3
%if !%build_core
# Replace all .la references from local .la files to installed versions.
# It allows to build only the binding subpackage.
sed -i 's:\(\.\.\|\$(top_builddir)\)/[^/]*/\(lib[^ ]*\.la\):%{_libdir}/\2:g' */Makefile.am
%endif
%build
autoreconf -f -i
@ -679,39 +735,74 @@ autoreconf -f -i
--libexecdir=%{_prefix}/lib\
--disable-static\
--with-distro=suse\
%if %build_mono
--enable-mono\
--disable-qt3\
--disable-qt4\
--disable-python\
--disable-pygtk\
--disable-compat-libdns_sd\
--disable-compat-howl\
%else
--disable-mono \
--enable-qt3\
--enable-qt4\
%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\
%else
--disable-qt3\
%endif
%if %build_qt4
--enable-qt4\
%else
--disable-qt4\
%endif
%if %build_mono
--enable-mono\
%else
--disable-mono \
%endif
--with-avahi-priv-access-group=avahi\
--with-autoipd-user=avahi\
--with-autoipd-group=avahi
%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_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
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
## 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
%if !%build_mono
install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -m 644 %{S:1} $RPM_BUILD_ROOT%{_datadir}/pixmaps/gnome-nettool2.png
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
@ -729,61 +820,20 @@ install -m 644 %{S:3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/se
# 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
%find_lang %{name}
%endif
# Remove files if only building mono
%if %build_mono
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-discover-standalone
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-browse*
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-publish*
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-resolve*
rm -rf $RPM_BUILD_ROOT%{_bindir}/avahi-set-host-name
rm -rf $RPM_BUILD_ROOT%{_bindir}/bshell
rm -rf $RPM_BUILD_ROOT%{_bindir}/bssh
rm -rf $RPM_BUILD_ROOT%{_bindir}/bvnc
rm -rf $RPM_BUILD_ROOT%{_datadir}/avahi
rm -rf $RPM_BUILD_ROOT%{_datadir}/applications/bssh.desktop
rm -rf $RPM_BUILD_ROOT%{_datadir}/applications/bvnc.desktop
rm -rf $RPM_BUILD_ROOT%{_datadir}/locale
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-client*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-common*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-core*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-ui*.so.*
rm -rf $RPM_BUILD_ROOT%{_mandir}/man1
rm -rf $RPM_BUILD_ROOT%{_mandir}/man5
rm -rf $RPM_BUILD_ROOT%{_mandir}/man8
rm -rf $RPM_BUILD_ROOT%{_sbindir}/avahi-*
rm -rf $RPM_BUILD_ROOT%{_sbindir}/rcavahi-daemon
rm -rf $RPM_BUILD_ROOT%{_sbindir}/rcavahi-dnsconfd
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/avahi
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/dbus-1/system.d/*.conf
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/init.d/avahi-dnsconfd
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/init.d/avahi-daemon
rm -rf $RPM_BUILD_ROOT%{_includedir}
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-client.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-client*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-core.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-core*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-common*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-common*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-glib*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-glib*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-glib*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-gobject*.so
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-gobject*.so.*
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-gobject*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-ui*.*a
rm -rf $RPM_BUILD_ROOT%{_libdir}/libavahi-ui*.*so
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-client.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-core.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-glib.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-gobject.pc
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-ui.pc
%else
# There is no simple way to install only selected pc files. Remove core files.
# 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
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/avahi-ui.pc
%endif
%fdupes $RPM_BUILD_ROOT%{_libdir}
%clean
rm -rf $RPM_BUILD_ROOT
%if !%build_mono
%if %build_core
%pre
%{_sbindir}/groupadd -r avahi 2> /dev/null || :
@ -847,14 +897,6 @@ fi
%postun -n libavahi-ui0 -p /sbin/ldconfig
%post -n libavahi-qt3-1 -p /sbin/ldconfig
%postun -n libavahi-qt3-1 -p /sbin/ldconfig
%post -n libavahi-qt4-1 -p /sbin/ldconfig
%postun -n libavahi-qt4-1 -p /sbin/ldconfig
%post -n libavahi-gobject0 -p /sbin/ldconfig
%postun -n libavahi-gobject0 -p /sbin/ldconfig
@ -871,18 +913,19 @@ fi
%postun -n libhowl0 -p /sbin/ldconfig
%endif
%if %build_mono
%if %build_qt3
%files
%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
%else
%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)
@ -904,10 +947,8 @@ fi
%{_sysconfdir}/dbus-1/system.d/*.conf
%{_sysconfdir}/init.d/avahi-dnsconfd
%{_sysconfdir}/init.d/avahi-daemon
%if !%build_mono
%files lang -f %{name}.lang
%endif
%files -n libavahi-client3
%defattr(-,root,root)
@ -933,14 +974,6 @@ fi
%defattr(-,root,root)
%{_libdir}/libavahi-gobject*.so.*
%files -n libavahi-qt3-1
%defattr(-,root,root)
%{_libdir}/libavahi-qt3*.so.*
%files -n libavahi-qt4-1
%defattr(-,root,root)
%{_libdir}/libavahi-qt4*.so.*
%files -n libdns_sd
%defattr(-,root,root)
# libdns_sd.so must be in non-devel package to provide mDNSResponder-lib compatibility:
@ -960,9 +993,9 @@ 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
%{_datadir}/pixmaps/gnome-nettool2.png
%doc %{_mandir}/man1/avahi-browse*.1*
%doc %{_mandir}/man1/avahi-publish*.1*
%doc %{_mandir}/man1/avahi-resolve*.1*
@ -1029,20 +1062,6 @@ fi
%{_libdir}/libavahi-gobject*.so
%{_libdir}/pkgconfig/avahi-gobject.pc
%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-qt4-devel
%defattr(-,root,root)
%{_includedir}/avahi-qt4
%{_libdir}/libavahi-qt4*.*a
%{_libdir}/libavahi-qt4*.so
%{_libdir}/pkgconfig/avahi-qt4.pc
%files compat-mDNSResponder-devel
%defattr(-,root,root)
%{_includedir}/avahi-compat-libdns_sd
@ -1058,8 +1077,55 @@ fi
%{_libdir}/pkgconfig/avahi-compat-howl.pc
%{_libdir}/pkgconfig/howl.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
* Wed Mar 05 2008 sbrabec@suse.cz
- Build Qt bindings in separate packages to shorten build path and
unneeded triggering for rebuild.
- Spec file rewritten to allow simple and fast build per partes.
* Wed Jan 30 2008 sbrabec@suse.cz
- Fixed init scripts (bnc#332964).
* Mon Jan 21 2008 ro@suse.de

View File

@ -3,6 +3,7 @@
# Autobuild doesn't support package names with macros. This script will update versions in package names.
ORIG_SPEC=${2%-mono}
ORIG_SPEC=${ORIG_SPEC%-qt4}
# Never update -mono file when it is already opened. It will break advanced build scripts:
if test "$2" != "$ORIG_SPEC" ; then
exit
@ -12,7 +13,7 @@ if ! test -f $1/$ORIG_SPEC.spec ; then
exit
fi
for PKGNAME in avahi-client avahi-common avahi-core avahi-ui avahi-glib avahi-gobject avahi-qt3 avahi-qt4 ; do
for PKGNAME in avahi-client avahi-common avahi-core avahi-ui avahi-glib avahi-gobject avahi-qt4 ; do
# Packages with name ending by number needs separator
if test x`echo $PKGNAME | sed "s/.*[0-9]$//"` = x ; then
SEPARATOR=-
@ -38,12 +39,28 @@ done
# Edit file to fit -mono build needs:
sed '
s/build_core\ 1/build_core 0/;
s/build_mono\ 0/build_mono 1/;
s/^.ame:.*/&-mono/;
# No more needed.
#s/^..hangelog.*/& mono/;
s/^\(# WARNING:\).*After editing.*/\1 Do not edit this auto generated file./
/^# 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-mono.spec
# Edit file to fit -qt4 build needs:
sed '
s/build_core\ 1/build_core 0/;
s/build_qt4\ 0/build_qt4 1/;
s/^.ame:.*/&-qt4/;
# 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-qt4.spec
# Not wanted for avahi:
#cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-mono.changes
#cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-qt.changes