From 620ba6ecf7da14fc8dd3d3c914786e2d5dcf4d0495ce83bde616d991e250f126 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 10 Mar 2008 01:27:42 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/avahi?expand=0&rev=33 --- avahi-mono.spec | 550 +++++++++++--------- avahi-qt4.changes | 5 + avahi-qt4.spec | 1126 +++++++++++++++++++++++++++++++++++++++++ avahi.changes | 7 + avahi.spec | 556 +++++++++++--------- avahi_spec-prepare.sh | 21 +- 6 files changed, 1773 insertions(+), 492 deletions(-) create mode 100644 avahi-qt4.changes create mode 100644 avahi-qt4.spec diff --git a/avahi-mono.spec b/avahi-mono.spec index ea55cb2..e88ace4 100644 --- a/avahi-mono.spec +++ b/avahi-mono.spec @@ -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 Sebastien Estienne -%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 - Trent Lloyd - Sebastien Estienne - -%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-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 @@ -536,66 +491,6 @@ across 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 - -%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 @@ -661,7 +556,161 @@ Authors: Sebastien Estienne %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 + 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 +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 +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_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 + Trent Lloyd + Sebastien Estienne + +%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 diff --git a/avahi-qt4.changes b/avahi-qt4.changes new file mode 100644 index 0000000..8ac26e2 --- /dev/null +++ b/avahi-qt4.changes @@ -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. + diff --git a/avahi-qt4.spec b/avahi-qt4.spec new file mode 100644 index 0000000..852f0f7 --- /dev/null +++ b/avahi-qt4.spec @@ -0,0 +1,1126 @@ +# +# spec file for package avahi-qt4 (Version 0.6.22) +# +# 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-qt4 +# 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 0 +%define build_qt3 0 +%define build_qt4 1 +Version: 0.6.22 +Release: 1 +%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 +%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/GUI/KDE +License: LGPL v2.1 or later +Summary: Qt4 Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour +Source: %{_name}-%{version}.tar.bz2 +Source1: gnome-nettool2.png +Source2: avahi-bookmarks.init +Source3: avahi.firewall +#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 +BuildRoot: %{_tmppath}/%{name}-%{version}-build +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 +Requires: dbus-1 +Requires: nss-mdns +# mDNSResponder was used for <= 10.2: +Provides: mDNSResponder = 107.5 +Obsoletes: mDNSResponder <= 107.5 +%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 + +%description +Qt4 bindings for avahi. + +Avahi is an Implementation the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. It uses D-BUS for communication +between user applications and a system daemon. The daemon is used to +coordinate application efforts in caching replies, necessary to +minimize the traffic imposed on networks. + +The Avahi mDNS responder is now feature complete implementing all MUSTs +and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all +tests in the Apple Bonjour conformance test suite. In addition it +supports some nifty things that have never been seen elsewhere like +correct mDNS reflection accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%if %build_core + +%package -n libavahi-client3 +Summary: D-BUS Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-client3 +Avahi is an implementation of the DNS Service Discovery and Multicast +DNS specifications for Zeroconf Computing. It uses D-BUS for +communication between user applications and a system daemon. The daemon +is used to coordinate application efforts in caching replies, necessary +to minimize the traffic imposed on networks. + +The Avahi mDNS responder is now complete with features, implementing +all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. +It passes all tests in the Apple Bonjour conformance test suite. In +addition, it supports some nifty things, like correct mDNS reflection +across LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-common3 +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 +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 libavahi-ui0 +Summary: D-BUS Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-ui0 +Avahi is an implementation of the DNS Service Discovery and Multicast +DNS specifications for Zeroconf Computing. It uses D-BUS for +communication between user applications and a system daemon. The daemon +is used to coordinate application efforts in caching replies, necessary +to minimize the traffic imposed on networks. + +The Avahi mDNS responder is now complete with features, implementing +all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. +It passes all tests in the Apple Bonjour conformance test suite. In +addition, it supports some nifty things, like correct mDNS reflection +across LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-glib1 +Summary: Glib Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour +Group: System/GUI/GNOME +# Old name used for <= 10.3: +Provides: avahi-glib = %{version} +Obsoletes: avahi-glib <= %{version} + +%description -n libavahi-glib1 +GLib support for avahi. + +Avahi is an Implementation the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. It uses D-BUS for communication +between user applications and a system daemon. The daemon is used to +coordinate application efforts in caching replies, necessary to +minimize the traffic imposed on networks. + +The Avahi mDNS responder is now feature complete implementing all MUSTs +and the majority of the SHOULDs of the mDNS/DNS-SD RFCs. It passes all +tests in the Apple Bonjour conformance test suite. In addition it +supports some nifty things that have never been seen elsewhere like +correct mDNS reflection accross LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libavahi-gobject0 +Summary: D-BUS Service for Zeroconf and Bonjour +Group: System/Daemons + +%description -n libavahi-gobject0 +Avahi is an implementation of the DNS Service Discovery and Multicast +DNS specifications for Zeroconf Computing. It uses D-BUS for +communication between user applications and a system daemon. The daemon +is used to coordinate application efforts in caching replies, necessary +to minimize the traffic imposed on networks. + +The Avahi mDNS responder is now complete with features, implementing +all MUSTs and the majority of the SHOULDs of the mDNS and DNS-SD RFCs. +It passes all tests in the Apple Bonjour conformance test suite. In +addition, it supports some nifty things, like correct mDNS reflection +across LAN segments. + + + +Authors: +-------- + Lennart Poettering + Trent Lloyd + Sebastien Estienne + +%package -n libdns_sd +Summary: mDNSResponder Compatibility Package for D-BUS Service for Zeroconf/Bonjour +Group: System/Libraries +# mDNSResponder-lib used unversioned soname. +# Provide full compatibility with mDNSResponder (FIXME: should be fixed in the package): +%ifarch ia64 x86_64 ppc64 s390x +Provides: libdns_sd.so()(64bit) +%else +Provides: libdns_sd.so +%endif +# 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 +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 +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 utils-gtk +Summary: GTK+ Utilities for D-BUS Service for Zeroconf and Bonjour +Requires: %{name} >= %{version} +Group: Productivity/Networking/Other + +%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 +Summary: A set of Avahi utilities written in Python +PreReq: coreutils +Requires: %{name} = %{version} python-gdbm python-gtk 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 -n libavahi-devel +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 -n libavahi-glib-devel +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 +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 + +%package compat-mDNSResponder-devel +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 +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_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 +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 +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_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 + Trent Lloyd + Sebastien Estienne + +%endif +%if %build_core +%lang_package +%endif + +%prep +%setup -q -n %{_name}-%{version} +%patch0 +%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 +%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\ +%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 +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 +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 +%find_lang %{name} +%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_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 + +%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 + +%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 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 + +%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 + +%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/* +%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/* +%attr(-,avahi,avahi) %{_localstatedir}/run/avahi-daemon +%doc %{_mandir}/man5/*.5* +%doc %{_mandir}/man8/*.8* +%{_sbindir}/avahi-* +%{_sbindir}/rcavahi-daemon +%{_sbindir}/rcavahi-dnsconfd +%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 + +%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 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: +%{_libdir}/libdns_sd.so +%{_libdir}/libdns_sd.so.* + +%files -n libhowl0 +%defattr(-,root,root) +%{_libdir}/libhowl.so.* + +%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 +%{_datadir}/pixmaps/gnome-nettool2.png +%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 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. +#%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 -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 + +%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 + +%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 +- Create new spec file to avoid dependency of avahi core on Qt. diff --git a/avahi.changes b/avahi.changes index b4e8d6b..85b45f1 100644 --- a/avahi.changes +++ b/avahi.changes @@ -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 diff --git a/avahi.spec b/avahi.spec index d38a52b..70ae6fe 100644 --- a/avahi.spec +++ b/avahi.spec @@ -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 Sebastien Estienne -%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 - Trent Lloyd - Sebastien Estienne - -%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-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 @@ -537,66 +494,6 @@ across 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 - -%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 @@ -662,7 +559,161 @@ Authors: Sebastien Estienne %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 + 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 +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 +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_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 + Trent Lloyd + Sebastien Estienne + +%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 diff --git a/avahi_spec-prepare.sh b/avahi_spec-prepare.sh index 8071c94..606742d 100644 --- a/avahi_spec-prepare.sh +++ b/avahi_spec-prepare.sh @@ -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