drop python bindings/support (includes -ui-tools that use the bindings) on f31+ (#1751484)

This commit is contained in:
Rex Dieter 2019-09-19 17:07:00 -05:00
parent a311802c04
commit 8d87c1f62b

View File

@ -3,11 +3,17 @@
%{?!WITH_COMPAT_HOWL: %global WITH_COMPAT_HOWL 1} %{?!WITH_COMPAT_HOWL: %global WITH_COMPAT_HOWL 1}
%{?!WITH_QT3: %global WITH_QT3 1} %{?!WITH_QT3: %global WITH_QT3 1}
%{?!WITH_QT4: %global WITH_QT4 1} %{?!WITH_QT4: %global WITH_QT4 1}
%{?!WITH_PYTHON: %global WITH_PYTHON 1}
%ifnarch %{mono_arches} %ifnarch %{mono_arches}
%define WITH_MONO 0 %define WITH_MONO 0
%endif %endif
# https://bugzilla.redhat.com/show_bug.cgi?id=1751484
%if 0%{?fedora} > 30
%global WITH_PYTHON 0
%endif
%if 0%{?rhel} %if 0%{?rhel}
%define WITH_MONO 0 %define WITH_MONO 0
%if 0%{?rhel} >= 6 %if 0%{?rhel} >= 6
@ -42,15 +48,6 @@ BuildRequires: automake
BuildRequires: libtool BuildRequires: libtool
BuildRequires: dbus-devel >= 0.90 BuildRequires: dbus-devel >= 0.90
BuildRequires: dbus-glib-devel >= 0.70 BuildRequires: dbus-glib-devel >= 0.70
%if 0%{?fedora} > 27
%global python2_dbus python2-dbus
%global python2_libxml2 python2-libxml2
%else
%global python2_dbus dbus-python
%global python2_libxml2 libxml2-python
%endif
BuildRequires: %{python2_dbus}
BuildRequires: %{python2_libxml2}
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: gtk2-devel BuildRequires: gtk2-devel
BuildRequires: gtk3-devel >= 2.99.0 BuildRequires: gtk3-devel >= 2.99.0
@ -65,8 +62,24 @@ BuildRequires: libdaemon-devel >= 0.11
BuildRequires: glib2-devel BuildRequires: glib2-devel
BuildRequires: libcap-devel BuildRequires: libcap-devel
BuildRequires: expat-devel BuildRequires: expat-devel
%if %{WITH_PYTHON}
%if 0%{?fedora} > 27
%global python2_dbus python2-dbus
%global python2_libxml2 python2-libxml2
%else
%global python2_dbus dbus-python
%global python2_libxml2 libxml2-python
%endif
BuildRequires: %{python2_dbus}
BuildRequires: %{python2_libxml2}
# really only need interpreter + rpm-macros -- rex
BuildRequires: python2-devel BuildRequires: python2-devel
BuildRequires: python3-devel BuildRequires: python3-devel
%else
Obsoletes: python2-avahi < %{version}-%{release}
Obsoletes: python3-avahi < %{version}-%{release}
Obsoletes: avahi-ui-tools < %{version}-%{release}
%endif
BuildRequires: gdbm-devel BuildRequires: gdbm-devel
BuildRequires: pkgconfig(pygobject-3.0) BuildRequires: pkgconfig(pygobject-3.0)
BuildRequires: pygtk2 BuildRequires: pygtk2
@ -117,14 +130,16 @@ Requires: %{name} = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: %{name}-glib%{?_isa} = %{version}-%{release} Requires: %{name}-glib%{?_isa} = %{version}-%{release}
Requires: %{name}-ui-gtk3%{?_isa} = %{version}-%{release} Requires: %{name}-ui-gtk3%{?_isa} = %{version}-%{release}
Requires: python2-avahi = %{version}-%{release}
Requires: tigervnc Requires: tigervnc
Requires: openssh-clients Requires: openssh-clients
Requires: pygtk2 Requires: pygtk2
Requires: pygtk2-libglade Requires: pygtk2-libglade
Requires: gdbm Requires: gdbm
%if %{WITH_PYTHON}
Requires: python2-avahi = %{version}-%{release}
Requires: %{python2_dbus} Requires: %{python2_dbus}
Requires: python2-gobject-base Requires: python2-gobject-base
%endif
%description ui-tools %description ui-tools
Graphical user interface tools that use Avahi to browse for mDNS services. Graphical user interface tools that use Avahi to browse for mDNS services.
@ -340,6 +355,7 @@ avahi-dnsconfd connects to a running avahi-daemon and runs the script
local LAN. This is useful for configuring unicast DNS servers in a DHCP-like local LAN. This is useful for configuring unicast DNS servers in a DHCP-like
fashion with mDNS. fashion with mDNS.
%if %{WITH_PYTHON}
%package -n python2-avahi %package -n python2-avahi
Summary: Python2 Avahi bindings Summary: Python2 Avahi bindings
Obsoletes: python-avahi < 0.7 Obsoletes: python-avahi < 0.7
@ -357,6 +373,7 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description -n python3-avahi %description -n python3-avahi
%{summary}. %{summary}.
%endif
%prep %prep
@ -384,6 +401,9 @@ NOCONFIGURE=1 ./autogen.sh
--enable-shared=yes \ --enable-shared=yes \
--enable-static=no \ --enable-static=no \
--disable-silent-rules \ --disable-silent-rules \
%if ! %{WITH_PYTHON}
--disable-python \
%endif
%if %{WITH_COMPAT_DNSSD} %if %{WITH_COMPAT_DNSSD}
--enable-compat-libdns_sd \ --enable-compat-libdns_sd \
%endif %endif
@ -435,29 +455,37 @@ ln -s avahi-compat-libdns_sd.pc %{buildroot}/%{_libdir}/pkgconfig/libdns_sd.pc
ln -s avahi-compat-libdns_sd/dns_sd.h %{buildroot}/%{_includedir}/ ln -s avahi-compat-libdns_sd/dns_sd.h %{buildroot}/%{_includedir}/
%endif %endif
%if %{WITH_PYTHON}
# Add python3 support # Add python3 support
mkdir -p %{buildroot}%{python3_sitelib}/avahi/ mkdir -p %{buildroot}%{python3_sitelib}/avahi/
cp -r %{buildroot}%{python2_sitelib}/avahi/* %{buildroot}%{python3_sitelib}/avahi/ cp -r %{buildroot}%{python2_sitelib}/avahi/* %{buildroot}%{python3_sitelib}/avahi/
rm -fv %{buildroot}%{buildroot}%{python3_sitelib}/avahi/*.py{c,o} rm -fv %{buildroot}%{buildroot}%{python3_sitelib}/avahi/*.py{c,o}
sed -i 's!/usr/bin/python2!/usr/bin/python3!' %{buildroot}%{python3_sitelib}/avahi/ServiceTypeDatabase.py sed -i 's!/usr/bin/python2!/usr/bin/python3!' %{buildroot}%{python3_sitelib}/avahi/ServiceTypeDatabase.py
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-daemon
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-dnsconfd
# avoid empty GenericName keys from .desktop files # avoid empty GenericName keys from .desktop files
for i in %{buildroot}%{_datadir}/applications/*.desktop ; do for i in %{buildroot}%{_datadir}/applications/*.desktop ; do
if [ -n "$(grep '^GenericName=$' $i)" ]; then if [ -n "$(grep '^GenericName=$' $i)" ]; then
desktop-file-edit --copy-name-to-generic-name $i desktop-file-edit --copy-name-to-generic-name $i
fi fi
done done
%else
# unpackaged files
rm -fv %{buildroot}%{_datadir}/applications/{bssh,bvnc}.desktop
rm -fv %{buildroot}%{_datadir}/avahi/interfaces/avahi-discover.ui
%endif
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-daemon
rm -fv %{buildroot}%{_sysconfdir}/rc.d/init.d/avahi-dnsconfd
%find_lang %{name} %find_lang %{name}
%check %check
%if %{WITH_PYTHON}
for i in %{buildroot}%{_datadir}/applications/*.desktop ; do for i in %{buildroot}%{_datadir}/applications/*.desktop ; do
desktop-file-validate $i desktop-file-validate $i
done done
%endif
%pre %pre
@ -534,7 +562,9 @@ exit 0
%dir %{_datadir}/avahi %dir %{_datadir}/avahi
%{_datadir}/avahi/*.dtd %{_datadir}/avahi/*.dtd
%dir %{_libdir}/avahi %dir %{_libdir}/avahi
%if %{WITH_PYTHON}
%{_libdir}/avahi/service-types.db %{_libdir}/avahi/service-types.db
%endif
%{_mandir}/man5/* %{_mandir}/man5/*
%{_mandir}/man8/avahi-daemon.* %{_mandir}/man8/avahi-daemon.*
%{_unitdir}/avahi-daemon.service %{_unitdir}/avahi-daemon.service
@ -558,6 +588,7 @@ exit 0
%files tools %files tools
%{_bindir}/* %{_bindir}/*
%{_mandir}/man1/* %{_mandir}/man1/*
%if %{WITH_PYTHON}
%exclude %{_bindir}/b* %exclude %{_bindir}/b*
%exclude %{_bindir}/avahi-discover* %exclude %{_bindir}/avahi-discover*
%exclude %{_bindir}/avahi-bookmarks %exclude %{_bindir}/avahi-bookmarks
@ -577,6 +608,7 @@ exit 0
%{_datadir}/applications/avahi-discover.desktop %{_datadir}/applications/avahi-discover.desktop
%{_datadir}/avahi/interfaces/ %{_datadir}/avahi/interfaces/
%{python2_sitelib}/avahi_discover/ %{python2_sitelib}/avahi_discover/
%endif
%files devel %files devel
%{_libdir}/libavahi-common.so %{_libdir}/libavahi-common.so
@ -688,16 +720,19 @@ exit 0
%{_libdir}/pkgconfig/libdns_sd.pc %{_libdir}/pkgconfig/libdns_sd.pc
%endif %endif
%if %{WITH_PYTHON}
%files -n python2-avahi %files -n python2-avahi
# These are .py files only, so they don't go in lib64
%{python2_sitelib}/avahi/ %{python2_sitelib}/avahi/
%files -n python3-avahi %files -n python3-avahi
# These are .py files only, so they don't go in lib64
%{python3_sitelib}/avahi/ %{python3_sitelib}/avahi/
%endif
%changelog %changelog
* Thu Sep 19 2019 Rex Dieter <rdieter@fedoraproject.org> - 0.7-21
- drop python bindings/support (includes -ui-tools that use the bindings) on f31+ (#1751484)
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.7-21 * Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.7-21
- Rebuilt for Python 3.8 - Rebuilt for Python 3.8