Hello community, here is the log from the commit of package avahi for openSUSE:Factory checked in at 2020-11-19 11:54:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/avahi (Old) and /work/SRC/openSUSE:Factory/.avahi.new.5913 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "avahi" Thu Nov 19 11:54:08 2020 rev:135 rq:847170 version:0.8 Changes: -------- --- /work/SRC/openSUSE:Factory/avahi/avahi-glib2.changes 2020-08-12 10:23:04.383750253 +0200 +++ /work/SRC/openSUSE:Factory/.avahi.new.5913/avahi-glib2.changes 2020-11-23 10:21:58.876786340 +0100 @@ -1,0 +2,5 @@ +Mon Aug 31 10:21:27 UTC 2020 - Antonio Larrosa <alarr...@suse.com> + +- Update to version 0.8 + +------------------------------------------------------------------- avahi-mono.changes: same change New Changes file: --- /dev/null 2020-11-18 17:46:03.679371574 +0100 +++ /work/SRC/openSUSE:Factory/.avahi.new.5913/avahi-qt5.changes 2020-11-23 10:21:59.000786481 +0100 @@ -0,0 +1,4 @@ +------------------------------------------------------------------- +Mon Aug 31 12:14:11 UTC 2020 - Antonio Larrosa <alarr...@suse.com> + +- Add initial release of avahi-qt5 flavor --- /work/SRC/openSUSE:Factory/avahi/avahi.changes 2020-08-12 10:23:12.623754308 +0200 +++ /work/SRC/openSUSE:Factory/.avahi.new.5913/avahi.changes 2020-11-23 10:21:59.156786657 +0100 @@ -1,0 +2,106 @@ +Wed Sep 2 10:11:46 UTC 2020 - Antonio Larrosa <alarr...@suse.com> + +- Use sover variables all over the spec file + +------------------------------------------------------------------- +Mon Aug 31 10:21:27 UTC 2020 - Antonio Larrosa <alarr...@suse.com> + +- Update to version 0.8: + + The Avahi 0.8 release brings a number of new features and bug + fix changes including a backward-compatible addition to the + D-Bus API and the avahi-core API. + + The existing API is still fully supported however clients + using the new API will not work with older Avahi releases. + The avahi-client library is not affected. See the "API Changes" + section for further details. + + New Features: + - New options for filtering reflected queries between networks + (reflect-filter) + - New mainloop integration for Qt5 and libevent + - docs/THREADS: Information for multi-threaded avahi-client + apps + - Listen on loopback interfaces by default, allowing local-only + services to be consumed by the local machine + - New D-Bus V2 API and additions to the avahi-core API for + splitting "New" calls into "Prepare" and "Start". See "API + Changes" for more details. + + Notable Changes: + - avahi-autoipd: Initial IP selection based on MAC previously + ignored first octet - this will cause all hosts to select a + different link-local IP than previous versions based on the + same MAC address + - avahi-daemon: Delay sending results on an object for 10ms in + an attempt to give clients enough time to subscribe to + signals from the new object after receiving it's path in + response so the New call. See "API Changes" for more info + + Bug Fixes: + - avahi-python: Various Python 3 enhancements including + encoding unicode strings as UTF-8 + - avahi-common: avahi_string_list_to_string will now escape + embedded quotes, backslashes and control characters. + - avahi-daemon: Fix a crash when txt records have an empty + value in .xml service files + - avahi-daemon: reflector: do not incorrectly cache responses + on outgoing interfaces. Previously we would incorrectly cache + responses reflected from one interface on the outgoing + interface. These responses were later sent to clients on that + network even if the original client had disappeared and could + cause those clients to have a hostname conflict with + themselves on restart. We no longer incorrectly cache such + traffic. + + Security Fixes: + - Drop legacy unicast queries from address not on local link + which can lead to UDP traffic amplification attacks + (CVE-2017-6519) + + API Changes: The avahi-core API and D-Bus API have implemented + a new API where a call to the "New" method can now be split + into a "Prepare" and then "Start" method for some objects. The + previous "New" API is still fully supported and there is no + intention to deprecate it. + This change affects the the following objects: + AsyncAddressResolver, AsyncHostNameResolver, + AsyncServiceResolver, DomainBrowser, RecordBrowser, + ServiceBrowser, ServiceTypeBrowser + This is because the D-Bus implementation in some languages + would only bind to signals of an object after it was created + and had received the new object's path. This led to such + languages missing the initial results sent between the time the + object was created and it had setup a filter to receive it's + signals. + This primarily occured in languages that create dynamic + bindings for D-Bus objects using introspection such as Python. + The avahi-client C api was not affected as it globally binds to + all avahi signals without specifying individual object paths + and still makes use of the V1 API. + The v2 Prepare/Start API is available under the new + org.freedesktop.Avahi.Server2 D-Bus interface and also has + corresponding avahi_s_* calls for users of the embedded + avahi-core library. + The old org.freedesktop.Avahi.Server interface is still + supported and there is no intention to remove this API. + Additionally this problem has also been solved for old clients + by adding a very small 10ms delay before we start sending + results to give the client time to bind to the signals which + should silently fix the issue in most cases without introducing + a noticable or impactful delay. + Clients implementing the new org.freedesktop.Avahi.Server2 + D-Bus interface will not work with older Avahi daemons. It is + suggested that clients may wish to either check for and + fallback to the older API version, or continue to use the OLD + API and rely on the 10ms timer to resolve the issue. + - This release is backwards compatible with Avahi 0.6.x and 0.7. +- Add qt5 bindings in a separate package +- Add patch to add IT_PROG_INTLTOOL to configure.ac so intltoolize + can be used: + * add-IT_PROG_INTLTOOL.patch +- Add file missing from the tarball: + * build-db +- Rebase patch: + * avahi-desktop.patch +- Drop patches already included by upstream: + * avahi-0.7-dbm.patch + * avahi-0.7-encode-strings-as-utf8.patch + * avahi-0.7-python3-bookmarks.patch + * CVE-2018-1000845.patch + +------------------------------------------------------------------- Old: ---- CVE-2018-1000845.patch avahi-0.7-dbm.patch avahi-0.7-encode-strings-as-utf8.patch avahi-0.7-python3-bookmarks.patch avahi-0.7.tar.gz New: ---- add-IT_PROG_INTLTOOL.patch avahi-0.8.tar.gz avahi-qt5.changes avahi-qt5.spec build-db ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ avahi-glib2.spec ++++++ --- /var/tmp/diff_new_pack.Ca681f/_old 2020-11-23 10:21:59.912787511 +0100 +++ /var/tmp/diff_new_pack.Ca681f/_new 2020-11-23 10:21:59.916787516 +0100 @@ -25,18 +25,22 @@ # NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. %define build_glib2 1 %define build_mono 0 +%define build_qt5 0 %define avahi_client_sover 3 %define avahi_common_sover 3 %define avahi_core_sover 7 +%define avahi_libevent_sover 1 +%define avahi_libhowl_sover 0 %define avahi_ui_sover 0 %define avahi_glib_sover 1 %define avahi_gobject_sover 0 %define avahi_gtk3_sover 0 +%define avahi_qt5_sover 1 %if %{build_glib2} %define debug_package_requires libavahi-ui%{avahi_ui_sover} = %{version}-%{release} %endif Name: avahi-glib2 -Version: 0.7 +Version: 0.8 Release: 0 Summary: D-Bus Service for Zeroconf and Bonjour License: LGPL-2.1-or-later @@ -55,6 +59,8 @@ Source9: avahi-autoipd.README.SUSE Source10: avahi-autoipd.if-up Source11: avahi-autoipd.if-down +# File missing from 0.8 tarball +Source12: https://raw.githubusercontent.com/lathiat/avahi/master/service-type-database/build-db Source100: attributes Source101: update_spec.pl Source102: baselibs.conf @@ -66,14 +72,8 @@ Patch4: avahi-daemon-check-dns-suse.patch # PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgo...@suse.com -- only warn on missing resolv.conf if it is being used. Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch - # PATCH-FIX-UPSTREAM avahi-0.7-dbm.patch bsc#1076402 mgo...@suse.com -- use the agnostic dbm interface, needed for python 3. -Patch20: avahi-0.7-dbm.patch -# PATCH-FIX-UPSTREAM avahi-0.7-encode-strings-as-utf8.patch boo#1110668 mgo...@suse.com -- encode strings as UTF-8. -Patch21: avahi-0.7-encode-strings-as-utf8.patch -# PATCh-FIX-UPSTREAM avahi-0.7-python3-bookmarks.patch boo#1110668 mgo...@suse.com -- make bookmarks python 3 compatible. -Patch22: avahi-0.7-python3-bookmarks.patch -# PATCH-FIX-UPSTREAM CVE-2018-1000845.patch boo#1110281 mgo...@suse.com -- drop legacy unicast queries from address not on local link (CVE-2018-1000845). -Patch23: CVE-2018-1000845.patch +# PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarr...@suse.com -- add IT_PROG_INTLTOOL so intltool works +Patch20: add-IT_PROG_INTLTOOL.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -89,7 +89,7 @@ BuildRequires: python3-devel BuildRequires: translation-update-upstream # FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). -%if !%{build_glib2} && !%{build_mono} +%if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif @@ -100,6 +100,7 @@ BuildRequires: dbus-1-devel BuildRequires: doxygen BuildRequires: graphviz +BuildRequires: libevent-devel >= 2.1.5 BuildRequires: python3-dbm BuildRequires: zlib-devel BuildRequires: pkgconfig(systemd) @@ -119,20 +120,26 @@ %if %{build_glib2} BuildRequires: gobject-introspection-devel BuildRequires: gtk3-devel -BuildRequires: libavahi-devel +BuildRequires: libavahi-devel = %{version} BuildRequires: update-desktop-files BuildRequires: pkgconfig(pygobject-3.0) %endif %if %{build_mono} BuildRequires: gtk-sharp2 -BuildRequires: libavahi-glib-devel +BuildRequires: libavahi-glib-devel = %{version} BuildRequires: mono-devel BuildRequires: monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 -Requires: libavahi-client3 >= %{version} -Requires: libavahi-common3 >= %{version} -Requires: libavahi-glib1 >= %{version} +Requires: libavahi-client%{avahi_client_sover} >= %{version} +Requires: libavahi-common%{avahi_common_sover} >= %{version} +Requires: libavahi-glib%{avahi_glib_sover} >= %{version} +%endif +%if %{build_qt5} +BuildRequires: dbus-1-devel +BuildRequires: libavahi-devel = %{version} +BuildRequires: pkgconfig(Qt5Core) +Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif %description @@ -148,27 +155,35 @@ addition, it supports some nifty things, like correct mDNS reflection across LAN segments. -%package -n libavahi-client3 +%package -n libavahi-client%{avahi_client_sover} +Summary: D-Bus Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-client%{avahi_client_sover} +Avahi is an implementation of the DNS Service Discovery and Multicast +DNS specifications for Zeroconf Computing. + +%package -n libavahi-common%{avahi_common_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-client3 +%description -n libavahi-common%{avahi_common_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-common3 +%package -n libavahi-core%{avahi_core_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-common3 +%description -n libavahi-core%{avahi_core_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-core7 +%package -n libavahi-libevent%{avahi_libevent_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-core7 +%description -n libavahi-libevent%{avahi_libevent_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. @@ -196,14 +211,14 @@ Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libhowl0 +%package -n libhowl%{avahi_libhowl_sover} Summary: Howl Compatibility Package for the Zeroconf/Bonjour D-Bus service # Old name used for <= 10.3: Group: System/Libraries Provides: avahi-compat-howl = %{version} Obsoletes: avahi-compat-howl < %{version} -%description -n libhowl0 +%description -n libhowl%{avahi_libhowl_sover} Howl compatibility layer for Avahi. Avahi is an implementation of the DNS Service Discovery and Multicast DNS @@ -260,9 +275,9 @@ Requires: %{_name} = %{version} Requires: dbus-1-devel Requires: glibc-devel -Requires: libavahi-client3 = %{version} -Requires: libavahi-common3 = %{version} -Requires: libavahi-core7 = %{version} +Requires: libavahi-client%{avahi_client_sover} = %{version} +Requires: libavahi-common%{avahi_common_sover} = %{version} +Requires: libavahi-core%{avahi_core_sover} = %{version} # Last appeared in OpenSUSE 10.3: Provides: avahi-devel = %{version} Obsoletes: avahi-devel < %{version} @@ -289,7 +304,7 @@ Summary: Howl Compatibility Package for the Zeroconf/Bonjour D-Bus service Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} -Requires: libhowl0 = %{version} +Requires: libhowl%{avahi_libhowl_sover} = %{version} %description compat-howl-devel Howl compatibility layer for Avahi. @@ -305,24 +320,24 @@ Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-glib1 +%package -n libavahi-glib%{avahi_glib_sover} Summary: Glib Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour # Old name used for <= 10.3: Group: System/Libraries Provides: avahi-glib = %{version} Obsoletes: avahi-glib < %{version} -%description -n libavahi-glib1 +%description -n libavahi-glib%{avahi_glib_sover} GLib support for Avahi. Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-gobject0 +%package -n libavahi-gobject%{avahi_gobject_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-gobject0 +%description -n libavahi-gobject%{avahi_gobject_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. @@ -373,7 +388,7 @@ Summary: Header files for Avahi's Glib bindings Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} -Requires: libavahi-glib1 = %{version} +Requires: libavahi-glib%{avahi_glib_sover} = %{version} Requires: libavahi-ui-gtk3-%{avahi_gtk3_sover} = %{version} Requires: typelib-1_0-Avahi-0_6 = %{version} # Last appeared in OpenSUSE 10.3: @@ -391,7 +406,7 @@ Requires: glib2-devel Requires: libavahi-devel = %{version} Requires: libavahi-glib-devel -Requires: libavahi-gobject0 = %{version} +Requires: libavahi-gobject%{avahi_gobject_sover} = %{version} %description -n libavahi-gobject-devel Avahi is an implementation of the DNS Service Discovery and Multicast @@ -403,9 +418,9 @@ Summary: Mono Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour Group: Development/Languages/Mono Requires: gtk-sharp2 -Requires: libavahi-client3 >= %{version} -Requires: libavahi-common3 >= %{version} -Requires: libavahi-glib1 >= %{version} +Requires: libavahi-client%{avahi_client_sover} >= %{version} +Requires: libavahi-common%{avahi_common_sover} >= %{version} +Requires: libavahi-glib%{avahi_glib_sover} >= %{version} %description -n avahi-mono This package provides Mono bindings for avahi. Avahi is an @@ -423,6 +438,30 @@ %lang_package %endif +%if %{build_qt5} +%package -n libavahi-qt5-%{avahi_qt5_sover} +Summary: Qt5 Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-qt5-%{avahi_qt5_sover} +Qt5 support for Avahi. + +Avahi is an implementation of the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. + +%package -n libavahi-qt5-devel +Summary: Header files for Avahi's Qt5 bindings +Group: Development/Libraries/C and C++ +Requires: libavahi-devel = %{version} +Requires: libavahi-qt5-%{avahi_qt5_sover} = %{version} + +%description -n libavahi-qt5-devel +Development files for the Qt5 support for Avahi. + +Avahi is an implementation of the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. +%endif + %prep %setup -q -n %{_name}-%{version} cp -a %{SOURCE1} %{SOURCE7} . @@ -431,15 +470,14 @@ cp -a %{SOURCE9} avahi-autoipd/README.SUSE sed "s:@sbindir@:%{_sbindir}:g" <%{SOURCE10} >avahi-autoipd/avahi-autoipd.if-up sed "s:@sbindir@:%{_sbindir}:g" <%{SOURCE11} >avahi-autoipd/avahi-autoipd.if-down +sed -ie "s/libevent-[0-9\.]*/libevent/" avahi-libevent.pc.in +cp -a %{SOURCE12} service-type-database/build-db translation-update-upstream %patch0 %patch1 -p1 %patch4 %patch19 -p1 %patch20 -p1 -%patch21 -p1 -%patch22 -p1 -%patch23 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -472,9 +510,11 @@ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ + --enable-libevent\ %else --disable-compat-libdns_sd\ --disable-compat-howl\ + --disable-libevent\ %endif %if %{build_glib2} --enable-glib\ @@ -499,6 +539,11 @@ %else --disable-mono\ %endif +%if %{build_qt5} + --enable-qt5\ +%else + --disable-qt5\ +%endif --with-avahi-priv-access-group=avahi\ --with-autoipd-user=avahi-autoipd\ --with-autoipd-group=avahi-autoipd @@ -530,6 +575,9 @@ %make_install cd ../avahi-ui-sharp %endif +%if %{build_qt5} && !%{build_core} +cd avahi-qt +%endif %make_install # do not install sysv init scripts rm -rf %{buildroot}%{_sysconfdir}/init.d/ @@ -652,22 +700,28 @@ # Change ownership of /var/lib/avahi-autoipd after upgrade from openSUSE <= 12.3 and SLE <= 11. find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:avahi-autoipd {} + -%post -n libavahi-client3 -p /sbin/ldconfig -%postun -n libavahi-client3 -p /sbin/ldconfig -%post -n libavahi-common3 -p /sbin/ldconfig -%postun -n libavahi-common3 -p /sbin/ldconfig -%post -n libavahi-core7 -p /sbin/ldconfig -%postun -n libavahi-core7 -p /sbin/ldconfig +%post -n libavahi-client%{avahi_client_sover} -p /sbin/ldconfig +%postun -n libavahi-client%{avahi_client_sover} -p /sbin/ldconfig +%post -n libavahi-common%{avahi_common_sover} -p /sbin/ldconfig +%postun -n libavahi-common%{avahi_common_sover} -p /sbin/ldconfig +%post -n libavahi-core%{avahi_core_sover} -p /sbin/ldconfig +%postun -n libavahi-core%{avahi_core_sover} -p /sbin/ldconfig +%post -n libavahi-libevent%{avahi_libevent_sover} -p /sbin/ldconfig +%postun -n libavahi-libevent%{avahi_libevent_sover} -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 +%post -n libhowl%{avahi_libhowl_sover} -p /sbin/ldconfig +%postun -n libhowl%{avahi_libhowl_sover} -p /sbin/ldconfig %post -n libavahi-ui-gtk3-%{avahi_gtk3_sover} -p /sbin/ldconfig %postun -n libavahi-ui-gtk3-%{avahi_gtk3_sover} -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 libavahi-gobject%{avahi_gobject_sover} -p /sbin/ldconfig +%postun -n libavahi-gobject%{avahi_gobject_sover} -p /sbin/ldconfig +%post -n libavahi-glib%{avahi_glib_sover} -p /sbin/ldconfig +%postun -n libavahi-glib%{avahi_glib_sover} -p /sbin/ldconfig +%if %{build_qt5} +%post -n libavahi-qt5-%{avahi_qt5_sover} -p /sbin/ldconfig +%postun -n libavahi-qt5-%{avahi_qt5_sover} -p /sbin/ldconfig +%endif %post -n python3-avahi-gtk %desktop_database_post @@ -720,21 +774,24 @@ %files lang -f %{name}.lang -%files -n libavahi-client3 +%files -n libavahi-client%{avahi_client_sover} %{_libdir}/libavahi-client*.so.* -%files -n libavahi-common3 +%files -n libavahi-common%{avahi_common_sover} %{_libdir}/libavahi-common*.so.* -%files -n libavahi-core7 +%files -n libavahi-core%{avahi_core_sover} %{_libdir}/libavahi-core*.so.* +%files -n libavahi-libevent%{avahi_libevent_sover} +%{_libdir}/libavahi-libevent*.so.* + %files -n libdns_sd # 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 +%files -n libhowl%{avahi_libhowl_sover} %{_libdir}/libhowl.so.* %files -n python3-avahi @@ -774,6 +831,7 @@ %{_includedir}/avahi-client %{_includedir}/avahi-common %{_includedir}/avahi-core +%{_includedir}/avahi-libevent # avahi devel files %{_libdir}/libavahi-client.*a %{_libdir}/libavahi-client*.so @@ -783,8 +841,11 @@ # do not remove unless you fix the resulting problems # reference is in libavahi-client.la %{_libdir}/libavahi-common*.*a +%{_libdir}/libavahi-libevent.*a +%{_libdir}/libavahi-libevent*.so %{_libdir}/pkgconfig/avahi-client.pc %{_libdir}/pkgconfig/avahi-core.pc +%{_libdir}/pkgconfig/avahi-libevent.pc %files compat-mDNSResponder-devel %{_includedir}/avahi-compat-libdns_sd @@ -804,10 +865,10 @@ %files -n libavahi-ui-gtk3-%{avahi_gtk3_sover} %{_libdir}/libavahi-ui-gtk3.so.%{avahi_gtk3_sover}* -%files -n libavahi-glib1 +%files -n libavahi-glib%{avahi_glib_sover} %{_libdir}/libavahi-glib*.so.* -%files -n libavahi-gobject0 +%files -n libavahi-gobject%{avahi_gobject_sover} %{_libdir}/libavahi-gobject*.so.* %files -n typelib-1_0-Avahi-0_6 @@ -817,7 +878,6 @@ %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop -%{python3_sitelib}/avahi_discover %files -n avahi-utils-gtk %{_bindir}/bshell @@ -859,4 +919,15 @@ %{_prefix}/lib/mono/gac/avahi-sharp %endif +%if %{build_qt5} +%files -n libavahi-qt5-%{avahi_qt5_sover} +%{_libdir}/libavahi-qt5.so.* + +%files -n libavahi-qt5-devel +%{_includedir}/avahi-qt5 +%{_libdir}/libavahi-qt5.*a +%{_libdir}/libavahi-qt5.so +%{_libdir}/pkgconfig/avahi-qt5.pc +%endif + %changelog ++++++ avahi-mono.spec ++++++ --- /var/tmp/diff_new_pack.Ca681f/_old 2020-11-23 10:21:59.940787543 +0100 +++ /var/tmp/diff_new_pack.Ca681f/_new 2020-11-23 10:21:59.940787543 +0100 @@ -25,18 +25,22 @@ # NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. %define build_glib2 0 %define build_mono 1 +%define build_qt5 0 %define avahi_client_sover 3 %define avahi_common_sover 3 %define avahi_core_sover 7 +%define avahi_libevent_sover 1 +%define avahi_libhowl_sover 0 %define avahi_ui_sover 0 %define avahi_glib_sover 1 %define avahi_gobject_sover 0 %define avahi_gtk3_sover 0 +%define avahi_qt5_sover 1 %if %{build_glib2} %define debug_package_requires libavahi-ui%{avahi_ui_sover} = %{version}-%{release} %endif Name: avahi-mono -Version: 0.7 +Version: 0.8 Release: 0 Summary: Mono Bindings for avahi, the D-BUS Service for Zeroconf and Bonjour License: LGPL-2.1-or-later @@ -55,6 +59,8 @@ Source9: avahi-autoipd.README.SUSE Source10: avahi-autoipd.if-up Source11: avahi-autoipd.if-down +# File missing from 0.8 tarball +Source12: https://raw.githubusercontent.com/lathiat/avahi/master/service-type-database/build-db Source100: attributes Source101: update_spec.pl Source102: baselibs.conf @@ -66,14 +72,8 @@ Patch4: avahi-daemon-check-dns-suse.patch # PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgo...@suse.com -- only warn on missing resolv.conf if it is being used. Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch - # PATCH-FIX-UPSTREAM avahi-0.7-dbm.patch bsc#1076402 mgo...@suse.com -- use the agnostic dbm interface, needed for python 3. -Patch20: avahi-0.7-dbm.patch -# PATCH-FIX-UPSTREAM avahi-0.7-encode-strings-as-utf8.patch boo#1110668 mgo...@suse.com -- encode strings as UTF-8. -Patch21: avahi-0.7-encode-strings-as-utf8.patch -# PATCh-FIX-UPSTREAM avahi-0.7-python3-bookmarks.patch boo#1110668 mgo...@suse.com -- make bookmarks python 3 compatible. -Patch22: avahi-0.7-python3-bookmarks.patch -# PATCH-FIX-UPSTREAM CVE-2018-1000845.patch boo#1110281 mgo...@suse.com -- drop legacy unicast queries from address not on local link (CVE-2018-1000845). -Patch23: CVE-2018-1000845.patch +# PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarr...@suse.com -- add IT_PROG_INTLTOOL so intltool works +Patch20: add-IT_PROG_INTLTOOL.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -89,7 +89,7 @@ BuildRequires: python3-devel BuildRequires: translation-update-upstream # FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). -%if !%{build_glib2} && !%{build_mono} +%if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif @@ -100,6 +100,7 @@ BuildRequires: dbus-1-devel BuildRequires: doxygen BuildRequires: graphviz +BuildRequires: libevent-devel >= 2.1.5 BuildRequires: python3-dbm BuildRequires: zlib-devel BuildRequires: pkgconfig(systemd) @@ -119,20 +120,26 @@ %if %{build_glib2} BuildRequires: gobject-introspection-devel BuildRequires: gtk3-devel -BuildRequires: libavahi-devel +BuildRequires: libavahi-devel = %{version} BuildRequires: update-desktop-files BuildRequires: pkgconfig(pygobject-3.0) %endif %if %{build_mono} BuildRequires: gtk-sharp2 -BuildRequires: libavahi-glib-devel +BuildRequires: libavahi-glib-devel = %{version} BuildRequires: mono-devel BuildRequires: monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 -Requires: libavahi-client3 >= %{version} -Requires: libavahi-common3 >= %{version} -Requires: libavahi-glib1 >= %{version} +Requires: libavahi-client%{avahi_client_sover} >= %{version} +Requires: libavahi-common%{avahi_common_sover} >= %{version} +Requires: libavahi-glib%{avahi_glib_sover} >= %{version} +%endif +%if %{build_qt5} +BuildRequires: dbus-1-devel +BuildRequires: libavahi-devel = %{version} +BuildRequires: pkgconfig(Qt5Core) +Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif %description @@ -147,27 +154,35 @@ Bonjour conformance test suite. In addition, it supports some nifty things, like correct mDNS reflection across LAN segments. -%package -n libavahi-client3 +%package -n libavahi-client%{avahi_client_sover} +Summary: D-Bus Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-client%{avahi_client_sover} +Avahi is an implementation of the DNS Service Discovery and Multicast +DNS specifications for Zeroconf Computing. + +%package -n libavahi-common%{avahi_common_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-client3 +%description -n libavahi-common%{avahi_common_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-common3 +%package -n libavahi-core%{avahi_core_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-common3 +%description -n libavahi-core%{avahi_core_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-core7 +%package -n libavahi-libevent%{avahi_libevent_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-core7 +%description -n libavahi-libevent%{avahi_libevent_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. @@ -195,14 +210,14 @@ Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libhowl0 +%package -n libhowl%{avahi_libhowl_sover} Summary: Howl Compatibility Package for the Zeroconf/Bonjour D-Bus service # Old name used for <= 10.3: Group: System/Libraries Provides: avahi-compat-howl = %{version} Obsoletes: avahi-compat-howl < %{version} -%description -n libhowl0 +%description -n libhowl%{avahi_libhowl_sover} Howl compatibility layer for Avahi. Avahi is an implementation of the DNS Service Discovery and Multicast DNS @@ -259,9 +274,9 @@ Requires: %{_name} = %{version} Requires: dbus-1-devel Requires: glibc-devel -Requires: libavahi-client3 = %{version} -Requires: libavahi-common3 = %{version} -Requires: libavahi-core7 = %{version} +Requires: libavahi-client%{avahi_client_sover} = %{version} +Requires: libavahi-common%{avahi_common_sover} = %{version} +Requires: libavahi-core%{avahi_core_sover} = %{version} # Last appeared in OpenSUSE 10.3: Provides: avahi-devel = %{version} Obsoletes: avahi-devel < %{version} @@ -288,7 +303,7 @@ Summary: Howl Compatibility Package for the Zeroconf/Bonjour D-Bus service Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} -Requires: libhowl0 = %{version} +Requires: libhowl%{avahi_libhowl_sover} = %{version} %description compat-howl-devel Howl compatibility layer for Avahi. @@ -304,24 +319,24 @@ Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-glib1 +%package -n libavahi-glib%{avahi_glib_sover} Summary: Glib Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour # Old name used for <= 10.3: Group: System/Libraries Provides: avahi-glib = %{version} Obsoletes: avahi-glib < %{version} -%description -n libavahi-glib1 +%description -n libavahi-glib%{avahi_glib_sover} GLib support for Avahi. Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-gobject0 +%package -n libavahi-gobject%{avahi_gobject_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-gobject0 +%description -n libavahi-gobject%{avahi_gobject_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. @@ -372,7 +387,7 @@ Summary: Header files for Avahi's Glib bindings Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} -Requires: libavahi-glib1 = %{version} +Requires: libavahi-glib%{avahi_glib_sover} = %{version} Requires: libavahi-ui-gtk3-%{avahi_gtk3_sover} = %{version} Requires: typelib-1_0-Avahi-0_6 = %{version} # Last appeared in OpenSUSE 10.3: @@ -390,7 +405,7 @@ Requires: glib2-devel Requires: libavahi-devel = %{version} Requires: libavahi-glib-devel -Requires: libavahi-gobject0 = %{version} +Requires: libavahi-gobject%{avahi_gobject_sover} = %{version} %description -n libavahi-gobject-devel Avahi is an implementation of the DNS Service Discovery and Multicast @@ -403,9 +418,9 @@ License: LGPL-2.1-or-later Group: Development/Languages/Mono Requires: gtk-sharp2 -Requires: libavahi-client3 >= %{version} -Requires: libavahi-common3 >= %{version} -Requires: libavahi-glib1 >= %{version} +Requires: libavahi-client%{avahi_client_sover} >= %{version} +Requires: libavahi-common%{avahi_common_sover} >= %{version} +Requires: libavahi-glib%{avahi_glib_sover} >= %{version} %description -n avahi-mono This package provides Mono bindings for avahi. Avahi is an @@ -423,6 +438,30 @@ %lang_package %endif +%if %{build_qt5} +%package -n libavahi-qt5-%{avahi_qt5_sover} +Summary: Qt5 Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-qt5-%{avahi_qt5_sover} +Qt5 support for Avahi. + +Avahi is an implementation of the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. + +%package -n libavahi-qt5-devel +Summary: Header files for Avahi's Qt5 bindings +Group: Development/Libraries/C and C++ +Requires: libavahi-devel = %{version} +Requires: libavahi-qt5-%{avahi_qt5_sover} = %{version} + +%description -n libavahi-qt5-devel +Development files for the Qt5 support for Avahi. + +Avahi is an implementation of the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. +%endif + %prep %setup -q -n %{_name}-%{version} cp -a %{SOURCE1} %{SOURCE7} . @@ -431,15 +470,14 @@ cp -a %{SOURCE9} avahi-autoipd/README.SUSE sed "s:@sbindir@:%{_sbindir}:g" <%{SOURCE10} >avahi-autoipd/avahi-autoipd.if-up sed "s:@sbindir@:%{_sbindir}:g" <%{SOURCE11} >avahi-autoipd/avahi-autoipd.if-down +sed -ie "s/libevent-[0-9\.]*/libevent/" avahi-libevent.pc.in +cp -a %{SOURCE12} service-type-database/build-db translation-update-upstream %patch0 %patch1 -p1 %patch4 %patch19 -p1 %patch20 -p1 -%patch21 -p1 -%patch22 -p1 -%patch23 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -472,9 +510,11 @@ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ + --enable-libevent\ %else --disable-compat-libdns_sd\ --disable-compat-howl\ + --disable-libevent\ %endif %if %{build_glib2} --enable-glib\ @@ -499,6 +539,11 @@ %else --disable-mono\ %endif +%if %{build_qt5} + --enable-qt5\ +%else + --disable-qt5\ +%endif --with-avahi-priv-access-group=avahi\ --with-autoipd-user=avahi-autoipd\ --with-autoipd-group=avahi-autoipd @@ -530,6 +575,9 @@ %make_install cd ../avahi-ui-sharp %endif +%if %{build_qt5} && !%{build_core} +cd avahi-qt +%endif %make_install # do not install sysv init scripts rm -rf %{buildroot}%{_sysconfdir}/init.d/ @@ -652,22 +700,28 @@ # Change ownership of /var/lib/avahi-autoipd after upgrade from openSUSE <= 12.3 and SLE <= 11. find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:avahi-autoipd {} + -%post -n libavahi-client3 -p /sbin/ldconfig -%postun -n libavahi-client3 -p /sbin/ldconfig -%post -n libavahi-common3 -p /sbin/ldconfig -%postun -n libavahi-common3 -p /sbin/ldconfig -%post -n libavahi-core7 -p /sbin/ldconfig -%postun -n libavahi-core7 -p /sbin/ldconfig +%post -n libavahi-client%{avahi_client_sover} -p /sbin/ldconfig +%postun -n libavahi-client%{avahi_client_sover} -p /sbin/ldconfig +%post -n libavahi-common%{avahi_common_sover} -p /sbin/ldconfig +%postun -n libavahi-common%{avahi_common_sover} -p /sbin/ldconfig +%post -n libavahi-core%{avahi_core_sover} -p /sbin/ldconfig +%postun -n libavahi-core%{avahi_core_sover} -p /sbin/ldconfig +%post -n libavahi-libevent%{avahi_libevent_sover} -p /sbin/ldconfig +%postun -n libavahi-libevent%{avahi_libevent_sover} -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 +%post -n libhowl%{avahi_libhowl_sover} -p /sbin/ldconfig +%postun -n libhowl%{avahi_libhowl_sover} -p /sbin/ldconfig %post -n libavahi-ui-gtk3-%{avahi_gtk3_sover} -p /sbin/ldconfig %postun -n libavahi-ui-gtk3-%{avahi_gtk3_sover} -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 libavahi-gobject%{avahi_gobject_sover} -p /sbin/ldconfig +%postun -n libavahi-gobject%{avahi_gobject_sover} -p /sbin/ldconfig +%post -n libavahi-glib%{avahi_glib_sover} -p /sbin/ldconfig +%postun -n libavahi-glib%{avahi_glib_sover} -p /sbin/ldconfig +%if %{build_qt5} +%post -n libavahi-qt5-%{avahi_qt5_sover} -p /sbin/ldconfig +%postun -n libavahi-qt5-%{avahi_qt5_sover} -p /sbin/ldconfig +%endif %post -n python3-avahi-gtk %desktop_database_post @@ -720,21 +774,24 @@ %files lang -f %{name}.lang -%files -n libavahi-client3 +%files -n libavahi-client%{avahi_client_sover} %{_libdir}/libavahi-client*.so.* -%files -n libavahi-common3 +%files -n libavahi-common%{avahi_common_sover} %{_libdir}/libavahi-common*.so.* -%files -n libavahi-core7 +%files -n libavahi-core%{avahi_core_sover} %{_libdir}/libavahi-core*.so.* +%files -n libavahi-libevent%{avahi_libevent_sover} +%{_libdir}/libavahi-libevent*.so.* + %files -n libdns_sd # 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 +%files -n libhowl%{avahi_libhowl_sover} %{_libdir}/libhowl.so.* %files -n python3-avahi @@ -774,6 +831,7 @@ %{_includedir}/avahi-client %{_includedir}/avahi-common %{_includedir}/avahi-core +%{_includedir}/avahi-libevent # avahi devel files %{_libdir}/libavahi-client.*a %{_libdir}/libavahi-client*.so @@ -783,8 +841,11 @@ # do not remove unless you fix the resulting problems # reference is in libavahi-client.la %{_libdir}/libavahi-common*.*a +%{_libdir}/libavahi-libevent.*a +%{_libdir}/libavahi-libevent*.so %{_libdir}/pkgconfig/avahi-client.pc %{_libdir}/pkgconfig/avahi-core.pc +%{_libdir}/pkgconfig/avahi-libevent.pc %files compat-mDNSResponder-devel %{_includedir}/avahi-compat-libdns_sd @@ -804,10 +865,10 @@ %files -n libavahi-ui-gtk3-%{avahi_gtk3_sover} %{_libdir}/libavahi-ui-gtk3.so.%{avahi_gtk3_sover}* -%files -n libavahi-glib1 +%files -n libavahi-glib%{avahi_glib_sover} %{_libdir}/libavahi-glib*.so.* -%files -n libavahi-gobject0 +%files -n libavahi-gobject%{avahi_gobject_sover} %{_libdir}/libavahi-gobject*.so.* %files -n typelib-1_0-Avahi-0_6 @@ -817,7 +878,6 @@ %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop -%{python3_sitelib}/avahi_discover %files -n avahi-utils-gtk %{_bindir}/bshell @@ -859,4 +919,15 @@ %{_prefix}/lib/mono/gac/avahi-sharp %endif +%if %{build_qt5} +%files -n libavahi-qt5-%{avahi_qt5_sover} +%{_libdir}/libavahi-qt5.so.* + +%files -n libavahi-qt5-devel +%{_includedir}/avahi-qt5 +%{_libdir}/libavahi-qt5.*a +%{_libdir}/libavahi-qt5.so +%{_libdir}/pkgconfig/avahi-qt5.pc +%endif + %changelog ++++++ avahi-qt5.spec ++++++ ++++ 933 lines (skipped) ++++++ avahi.spec ++++++ --- /var/tmp/diff_new_pack.Ca681f/_old 2020-11-23 10:21:59.976787584 +0100 +++ /var/tmp/diff_new_pack.Ca681f/_new 2020-11-23 10:21:59.980787588 +0100 @@ -27,18 +27,22 @@ # NOTE: build_glib2 also controls build of gobject, gtk2, gtk3 and pygobject code. %define build_glib2 0 %define build_mono 0 +%define build_qt5 0 %define avahi_client_sover 3 %define avahi_common_sover 3 %define avahi_core_sover 7 +%define avahi_libevent_sover 1 +%define avahi_libhowl_sover 0 %define avahi_ui_sover 0 %define avahi_glib_sover 1 %define avahi_gobject_sover 0 %define avahi_gtk3_sover 0 +%define avahi_qt5_sover 1 %if %{build_glib2} %define debug_package_requires libavahi-ui%{avahi_ui_sover} = %{version}-%{release} %endif Name: avahi -Version: 0.7 +Version: 0.8 Release: 0 Summary: D-Bus Service for Zeroconf and Bonjour License: LGPL-2.1-or-later @@ -57,6 +61,8 @@ Source9: avahi-autoipd.README.SUSE Source10: avahi-autoipd.if-up Source11: avahi-autoipd.if-down +# File missing from 0.8 tarball +Source12: https://raw.githubusercontent.com/lathiat/avahi/master/service-type-database/build-db Source100: attributes Source101: update_spec.pl Source102: baselibs.conf @@ -68,14 +74,8 @@ Patch4: avahi-daemon-check-dns-suse.patch # PATCH-FIX-UPSTREAM avahi-0.6.32-suppress-resolv-conf-warning.patch bsc#982317 mgo...@suse.com -- only warn on missing resolv.conf if it is being used. Patch19: avahi-0.6.32-suppress-resolv-conf-warning.patch - # PATCH-FIX-UPSTREAM avahi-0.7-dbm.patch bsc#1076402 mgo...@suse.com -- use the agnostic dbm interface, needed for python 3. -Patch20: avahi-0.7-dbm.patch -# PATCH-FIX-UPSTREAM avahi-0.7-encode-strings-as-utf8.patch boo#1110668 mgo...@suse.com -- encode strings as UTF-8. -Patch21: avahi-0.7-encode-strings-as-utf8.patch -# PATCh-FIX-UPSTREAM avahi-0.7-python3-bookmarks.patch boo#1110668 mgo...@suse.com -- make bookmarks python 3 compatible. -Patch22: avahi-0.7-python3-bookmarks.patch -# PATCH-FIX-UPSTREAM CVE-2018-1000845.patch boo#1110281 mgo...@suse.com -- drop legacy unicast queries from address not on local link (CVE-2018-1000845). -Patch23: CVE-2018-1000845.patch +# PATCH-FIX-UPSTREAM add-IT_PROG_INTLTOOL.patch alarr...@suse.com -- add IT_PROG_INTLTOOL so intltool works +Patch20: add-IT_PROG_INTLTOOL.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gdbm-devel @@ -91,7 +91,7 @@ BuildRequires: python3-devel BuildRequires: translation-update-upstream # FIXME: on upgrade, ensure to verify if -DGTK_DISABLE_DEPRECATED=1 can remain in avahi=ui/Makefile.am (GtkStock deprecated with GTK+ 3.9.10). -%if !%{build_glib2} && !%{build_mono} +%if !%{build_glib2} && !%{build_mono} && !%{build_qt5} # Create split spec files only when building per partes: #%(sh %{_sourcedir}/%{_name}_spec-prepare.sh %{_sourcedir} %{name}) %endif @@ -102,6 +102,7 @@ BuildRequires: dbus-1-devel BuildRequires: doxygen BuildRequires: graphviz +BuildRequires: libevent-devel >= 2.1.5 BuildRequires: python3-dbm BuildRequires: zlib-devel BuildRequires: pkgconfig(systemd) @@ -121,20 +122,26 @@ %if %{build_glib2} BuildRequires: gobject-introspection-devel BuildRequires: gtk3-devel -BuildRequires: libavahi-devel +BuildRequires: libavahi-devel = %{version} BuildRequires: update-desktop-files BuildRequires: pkgconfig(pygobject-3.0) %endif %if %{build_mono} BuildRequires: gtk-sharp2 -BuildRequires: libavahi-glib-devel +BuildRequires: libavahi-glib-devel = %{version} BuildRequires: mono-devel BuildRequires: monodoc-core # Please copy this line to avahi-mono definition below for build all-in-once: Requires: gtk-sharp2 -Requires: libavahi-client3 >= %{version} -Requires: libavahi-common3 >= %{version} -Requires: libavahi-glib1 >= %{version} +Requires: libavahi-client%{avahi_client_sover} >= %{version} +Requires: libavahi-common%{avahi_common_sover} >= %{version} +Requires: libavahi-glib%{avahi_glib_sover} >= %{version} +%endif +%if %{build_qt5} +BuildRequires: dbus-1-devel +BuildRequires: libavahi-devel = %{version} +BuildRequires: pkgconfig(Qt5Core) +Requires: libavahi-client%{avahi_client_sover} >= %{version} %endif %description @@ -150,27 +157,35 @@ addition, it supports some nifty things, like correct mDNS reflection across LAN segments. -%package -n libavahi-client3 +%package -n libavahi-client%{avahi_client_sover} +Summary: D-Bus Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-client%{avahi_client_sover} +Avahi is an implementation of the DNS Service Discovery and Multicast +DNS specifications for Zeroconf Computing. + +%package -n libavahi-common%{avahi_common_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-client3 +%description -n libavahi-common%{avahi_common_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-common3 +%package -n libavahi-core%{avahi_core_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-common3 +%description -n libavahi-core%{avahi_core_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-core7 +%package -n libavahi-libevent%{avahi_libevent_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-core7 +%description -n libavahi-libevent%{avahi_libevent_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. @@ -198,14 +213,14 @@ Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libhowl0 +%package -n libhowl%{avahi_libhowl_sover} Summary: Howl Compatibility Package for the Zeroconf/Bonjour D-Bus service # Old name used for <= 10.3: Group: System/Libraries Provides: avahi-compat-howl = %{version} Obsoletes: avahi-compat-howl < %{version} -%description -n libhowl0 +%description -n libhowl%{avahi_libhowl_sover} Howl compatibility layer for Avahi. Avahi is an implementation of the DNS Service Discovery and Multicast DNS @@ -262,9 +277,9 @@ Requires: %{_name} = %{version} Requires: dbus-1-devel Requires: glibc-devel -Requires: libavahi-client3 = %{version} -Requires: libavahi-common3 = %{version} -Requires: libavahi-core7 = %{version} +Requires: libavahi-client%{avahi_client_sover} = %{version} +Requires: libavahi-common%{avahi_common_sover} = %{version} +Requires: libavahi-core%{avahi_core_sover} = %{version} # Last appeared in OpenSUSE 10.3: Provides: avahi-devel = %{version} Obsoletes: avahi-devel < %{version} @@ -291,7 +306,7 @@ Summary: Howl Compatibility Package for the Zeroconf/Bonjour D-Bus service Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} -Requires: libhowl0 = %{version} +Requires: libhowl%{avahi_libhowl_sover} = %{version} %description compat-howl-devel Howl compatibility layer for Avahi. @@ -307,24 +322,24 @@ Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-glib1 +%package -n libavahi-glib%{avahi_glib_sover} Summary: Glib Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour # Old name used for <= 10.3: Group: System/Libraries Provides: avahi-glib = %{version} Obsoletes: avahi-glib < %{version} -%description -n libavahi-glib1 +%description -n libavahi-glib%{avahi_glib_sover} GLib support for Avahi. Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. -%package -n libavahi-gobject0 +%package -n libavahi-gobject%{avahi_gobject_sover} Summary: D-Bus Service for Zeroconf and Bonjour Group: System/Libraries -%description -n libavahi-gobject0 +%description -n libavahi-gobject%{avahi_gobject_sover} Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Computing. @@ -375,7 +390,7 @@ Summary: Header files for Avahi's Glib bindings Group: Development/Libraries/C and C++ Requires: libavahi-devel = %{version} -Requires: libavahi-glib1 = %{version} +Requires: libavahi-glib%{avahi_glib_sover} = %{version} Requires: libavahi-ui-gtk3-%{avahi_gtk3_sover} = %{version} Requires: typelib-1_0-Avahi-0_6 = %{version} # Last appeared in OpenSUSE 10.3: @@ -393,7 +408,7 @@ Requires: glib2-devel Requires: libavahi-devel = %{version} Requires: libavahi-glib-devel -Requires: libavahi-gobject0 = %{version} +Requires: libavahi-gobject%{avahi_gobject_sover} = %{version} %description -n libavahi-gobject-devel Avahi is an implementation of the DNS Service Discovery and Multicast @@ -405,9 +420,9 @@ Summary: Mono Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour Group: Development/Languages/Mono Requires: gtk-sharp2 -Requires: libavahi-client3 >= %{version} -Requires: libavahi-common3 >= %{version} -Requires: libavahi-glib1 >= %{version} +Requires: libavahi-client%{avahi_client_sover} >= %{version} +Requires: libavahi-common%{avahi_common_sover} >= %{version} +Requires: libavahi-glib%{avahi_glib_sover} >= %{version} %description -n avahi-mono This package provides Mono bindings for avahi. Avahi is an @@ -418,6 +433,30 @@ %lang_package %endif +%if %{build_qt5} +%package -n libavahi-qt5-%{avahi_qt5_sover} +Summary: Qt5 Bindings for avahi, the D-Bus Service for Zeroconf and Bonjour +Group: System/Libraries + +%description -n libavahi-qt5-%{avahi_qt5_sover} +Qt5 support for Avahi. + +Avahi is an implementation of the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. + +%package -n libavahi-qt5-devel +Summary: Header files for Avahi's Qt5 bindings +Group: Development/Libraries/C and C++ +Requires: libavahi-devel = %{version} +Requires: libavahi-qt5-%{avahi_qt5_sover} = %{version} + +%description -n libavahi-qt5-devel +Development files for the Qt5 support for Avahi. + +Avahi is an implementation of the DNS Service Discovery and Multicast DNS +specifications for Zeroconf Computing. +%endif + %prep %setup -q -n %{_name}-%{version} cp -a %{SOURCE1} %{SOURCE7} . @@ -426,15 +465,14 @@ cp -a %{SOURCE9} avahi-autoipd/README.SUSE sed "s:@sbindir@:%{_sbindir}:g" <%{SOURCE10} >avahi-autoipd/avahi-autoipd.if-up sed "s:@sbindir@:%{_sbindir}:g" <%{SOURCE11} >avahi-autoipd/avahi-autoipd.if-down +sed -ie "s/libevent-[0-9\.]*/libevent/" avahi-libevent.pc.in +cp -a %{SOURCE12} service-type-database/build-db translation-update-upstream %patch0 %patch1 -p1 %patch4 %patch19 -p1 %patch20 -p1 -%patch21 -p1 -%patch22 -p1 -%patch23 -p1 %if !%{build_core} # Replace all .la references from local .la files to installed versions @@ -467,9 +505,11 @@ %if %{build_core} --enable-compat-libdns_sd\ --enable-compat-howl\ + --enable-libevent\ %else --disable-compat-libdns_sd\ --disable-compat-howl\ + --disable-libevent\ %endif %if %{build_glib2} --enable-glib\ @@ -494,6 +534,11 @@ %else --disable-mono\ %endif +%if %{build_qt5} + --enable-qt5\ +%else + --disable-qt5\ +%endif --with-avahi-priv-access-group=avahi\ --with-autoipd-user=avahi-autoipd\ --with-autoipd-group=avahi-autoipd @@ -525,6 +570,9 @@ %make_install cd ../avahi-ui-sharp %endif +%if %{build_qt5} && !%{build_core} +cd avahi-qt +%endif %make_install # do not install sysv init scripts rm -rf %{buildroot}%{_sysconfdir}/init.d/ @@ -647,22 +695,28 @@ # Change ownership of /var/lib/avahi-autoipd after upgrade from openSUSE <= 12.3 and SLE <= 11. find %{_localstatedir}/lib/avahi-autoipd -user avahi -exec chown avahi-autoipd:avahi-autoipd {} + -%post -n libavahi-client3 -p /sbin/ldconfig -%postun -n libavahi-client3 -p /sbin/ldconfig -%post -n libavahi-common3 -p /sbin/ldconfig -%postun -n libavahi-common3 -p /sbin/ldconfig -%post -n libavahi-core7 -p /sbin/ldconfig -%postun -n libavahi-core7 -p /sbin/ldconfig +%post -n libavahi-client%{avahi_client_sover} -p /sbin/ldconfig +%postun -n libavahi-client%{avahi_client_sover} -p /sbin/ldconfig +%post -n libavahi-common%{avahi_common_sover} -p /sbin/ldconfig +%postun -n libavahi-common%{avahi_common_sover} -p /sbin/ldconfig +%post -n libavahi-core%{avahi_core_sover} -p /sbin/ldconfig +%postun -n libavahi-core%{avahi_core_sover} -p /sbin/ldconfig +%post -n libavahi-libevent%{avahi_libevent_sover} -p /sbin/ldconfig +%postun -n libavahi-libevent%{avahi_libevent_sover} -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 +%post -n libhowl%{avahi_libhowl_sover} -p /sbin/ldconfig +%postun -n libhowl%{avahi_libhowl_sover} -p /sbin/ldconfig %post -n libavahi-ui-gtk3-%{avahi_gtk3_sover} -p /sbin/ldconfig %postun -n libavahi-ui-gtk3-%{avahi_gtk3_sover} -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 libavahi-gobject%{avahi_gobject_sover} -p /sbin/ldconfig +%postun -n libavahi-gobject%{avahi_gobject_sover} -p /sbin/ldconfig +%post -n libavahi-glib%{avahi_glib_sover} -p /sbin/ldconfig +%postun -n libavahi-glib%{avahi_glib_sover} -p /sbin/ldconfig +%if %{build_qt5} +%post -n libavahi-qt5-%{avahi_qt5_sover} -p /sbin/ldconfig +%postun -n libavahi-qt5-%{avahi_qt5_sover} -p /sbin/ldconfig +%endif %post -n python3-avahi-gtk %desktop_database_post @@ -715,21 +769,24 @@ %files lang -f %{name}.lang -%files -n libavahi-client3 +%files -n libavahi-client%{avahi_client_sover} %{_libdir}/libavahi-client*.so.* -%files -n libavahi-common3 +%files -n libavahi-common%{avahi_common_sover} %{_libdir}/libavahi-common*.so.* -%files -n libavahi-core7 +%files -n libavahi-core%{avahi_core_sover} %{_libdir}/libavahi-core*.so.* +%files -n libavahi-libevent%{avahi_libevent_sover} +%{_libdir}/libavahi-libevent*.so.* + %files -n libdns_sd # 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 +%files -n libhowl%{avahi_libhowl_sover} %{_libdir}/libhowl.so.* %files -n python3-avahi @@ -769,6 +826,7 @@ %{_includedir}/avahi-client %{_includedir}/avahi-common %{_includedir}/avahi-core +%{_includedir}/avahi-libevent # avahi devel files %{_libdir}/libavahi-client.*a %{_libdir}/libavahi-client*.so @@ -778,8 +836,11 @@ # do not remove unless you fix the resulting problems # reference is in libavahi-client.la %{_libdir}/libavahi-common*.*a +%{_libdir}/libavahi-libevent.*a +%{_libdir}/libavahi-libevent*.so %{_libdir}/pkgconfig/avahi-client.pc %{_libdir}/pkgconfig/avahi-core.pc +%{_libdir}/pkgconfig/avahi-libevent.pc %files compat-mDNSResponder-devel %{_includedir}/avahi-compat-libdns_sd @@ -799,10 +860,10 @@ %files -n libavahi-ui-gtk3-%{avahi_gtk3_sover} %{_libdir}/libavahi-ui-gtk3.so.%{avahi_gtk3_sover}* -%files -n libavahi-glib1 +%files -n libavahi-glib%{avahi_glib_sover} %{_libdir}/libavahi-glib*.so.* -%files -n libavahi-gobject0 +%files -n libavahi-gobject%{avahi_gobject_sover} %{_libdir}/libavahi-gobject*.so.* %files -n typelib-1_0-Avahi-0_6 @@ -812,7 +873,6 @@ %files -n python3-avahi-gtk %{_bindir}/avahi-discover %{_datadir}/applications/avahi-discover.desktop -%{python3_sitelib}/avahi_discover %files -n avahi-utils-gtk %{_bindir}/bshell @@ -854,4 +914,15 @@ %{_prefix}/lib/mono/gac/avahi-sharp %endif +%if %{build_qt5} +%files -n libavahi-qt5-%{avahi_qt5_sover} +%{_libdir}/libavahi-qt5.so.* + +%files -n libavahi-qt5-devel +%{_includedir}/avahi-qt5 +%{_libdir}/libavahi-qt5.*a +%{_libdir}/libavahi-qt5.so +%{_libdir}/pkgconfig/avahi-qt5.pc +%endif + %changelog ++++++ add-IT_PROG_INTLTOOL.patch ++++++ Index: avahi-0.8/configure.ac =================================================================== --- avahi-0.8.orig/configure.ac +++ avahi-0.8/configure.ac @@ -24,6 +24,7 @@ AC_CONFIG_SRCDIR([avahi-core/server.c]) AC_CONFIG_MACRO_DIR([common]) AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability silent-rules tar-pax]) +IT_PROG_INTLTOOL([0.50.1]) AC_SUBST(PACKAGE_URL, [http://avahi.org/]) ++++++ avahi-0.7.tar.gz -> avahi-0.8.tar.gz ++++++ ++++ 25827 lines of diff (skipped) ++++++ avahi-desktop.patch ++++++ --- /var/tmp/diff_new_pack.Ca681f/_old 2020-11-23 10:22:00.352788009 +0100 +++ /var/tmp/diff_new_pack.Ca681f/_new 2020-11-23 10:22:00.352788009 +0100 @@ -2,35 +2,32 @@ =================================================================== --- avahi-0.6.31.orig/avahi-ui/bssh.desktop.in.in +++ avahi-0.6.31/avahi-ui/bssh.desktop.in.in -@@ -6,6 +6,6 @@ Exec=@bindir@/bssh +@@ -6,5 +6,5 @@ Exec=@bindir@/bssh Terminal=false Type=Application Icon=network-wired -Categories=GNOME;Network; +Categories=GTK;Network;RemoteAccess; StartupNotify=false - GenericName= Index: avahi-0.6.31/avahi-ui/bvnc.desktop.in.in =================================================================== --- avahi-0.6.31.orig/avahi-ui/bvnc.desktop.in.in +++ avahi-0.6.31/avahi-ui/bvnc.desktop.in.in -@@ -6,6 +6,6 @@ Exec=@bindir@/bvnc +@@ -6,5 +6,5 @@ Exec=@bindir@/bvnc Terminal=false Type=Application Icon=network-wired -Categories=GNOME;Network; +Categories=GTK;Network;RemoteAccess; StartupNotify=false - GenericName= Index: avahi-0.6.31/avahi-python/avahi-discover/avahi-discover.desktop.in.in =================================================================== --- avahi-0.6.31.orig/avahi-python/avahi-discover/avahi-discover.desktop.in.in +++ avahi-0.6.31/avahi-python/avahi-discover/avahi-discover.desktop.in.in -@@ -6,6 +6,6 @@ Exec=@bindir@/avahi-discover +@@ -6,5 +6,5 @@ Exec=@bindir@/avahi-discover Terminal=false Type=Application Icon=network-wired -Categories=GNOME;System; +Categories=GTK;Network;Monitor; StartupNotify=false - GenericName= ++++++ avahi_spec-prepare.sh ++++++ --- /var/tmp/diff_new_pack.Ca681f/_old 2020-11-23 10:22:00.400788063 +0100 +++ /var/tmp/diff_new_pack.Ca681f/_new 2020-11-23 10:22:00.400788063 +0100 @@ -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%-qt5} # Never update -mono file when it is already opened. It will break advanced build scripts: if test "$2" != "$ORIG_SPEC" ; then exit @@ -42,7 +43,22 @@ perl $1/update_spec.pl $1/$ORIG_SPEC-glib2.spec.new attributes > $1/$ORIG_SPEC-glib2.spec rm $1/$ORIG_SPEC-glib2.spec.new +# Edit file to fit -qt5 build needs: +sed ' + s/spec file for package avahi/spec file for package avahi-qt5/; + s/build_core\ 1/build_core 0/; + s/build_qt5\ 0/build_qt5 1/; + s/^.ame:.*/&-qt5/; + # 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-qt5.spec.new +perl $1/update_spec.pl $1/$ORIG_SPEC-qt5.spec.new attributes > $1/$ORIG_SPEC-qt5.spec +rm $1/$ORIG_SPEC-qt5.spec.new + # Not wanted for avahi: #cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-glib2.changes #cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-mono.changes -#cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-qt.changes +#cp -a $1/$ORIG_SPEC.changes $1/$ORIG_SPEC-qt5.changes ++++++ build-db ++++++ #!/usr/bin/env python # -*-python-*- # This file is part of avahi. # # avahi is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2 of the # License, or (at your option) any later version. # # avahi is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public # License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with avahi; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 # USA. try: import anydbm as dbm except ImportError: import dbm import sys if len(sys.argv) > 1: infn = sys.argv[1] else: infn = "service-types" if len(sys.argv) > 2: outfn = sys.argv[2] else: outfn = infn + ".db" db = dbm.open(outfn, "n") for ln in open(infn, "r"): ln = ln.strip(" \r\n\t") if ln == "" or ln.startswith("#"): continue t, n = ln.split(":", 1) db[t.strip()] = n.strip() db.close() _______________________________________________ openSUSE Commits mailing list -- commit@lists.opensuse.org To unsubscribe, email commit-le...@lists.opensuse.org List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette List Archives: https://lists.opensuse.org/archives/list/commit@lists.opensuse.org