From dd53bfdcda4eceedd14ffc710ec07919891ce738 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Tue, 17 Nov 2020 16:54:27 -0600 Subject: [PATCH] fix undefined symbols in libavahi-qt3 (#1897925) --- 0016-fix-QT3-build.patch | 29 ++++++++++++++++ avahi-0.8-no_undefined.patch | 66 ++++++++++++++++++++++++++++++++++++ avahi.spec | 11 ++++-- 3 files changed, 104 insertions(+), 2 deletions(-) create mode 100644 0016-fix-QT3-build.patch create mode 100644 avahi-0.8-no_undefined.patch diff --git a/0016-fix-QT3-build.patch b/0016-fix-QT3-build.patch new file mode 100644 index 0000000..470c212 --- /dev/null +++ b/0016-fix-QT3-build.patch @@ -0,0 +1,29 @@ +From 66a684b988052664669158819fc123469b714f50 Mon Sep 17 00:00:00 2001 +From: Rex Dieter +Date: Tue, 17 Nov 2020 16:42:00 -0600 +Subject: [PATCH 16/16] fix QT3 build + +recent commit d1e71b320d96d0f213ecb0885c8313039a09f693 adding QT5 +support added a new conditional +but failed to actually set the define. This commit adds that to +allow successful build when enabling QT3 support +--- + avahi-qt/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/avahi-qt/Makefile.am b/avahi-qt/Makefile.am +index 09ce7ca..b404810 100644 +--- a/avahi-qt/Makefile.am ++++ b/avahi-qt/Makefile.am +@@ -38,7 +38,7 @@ libavahi_qt3_la_SOURCES = \ + qt-watch.moc3: qt-watch.cpp + $(AM_V_GEN)$(MOC_QT3) $^ > $@ + +-libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) $(VISIBILITY_HIDDEN_CFLAGS) ++libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS) + libavahi_qt3_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT3_LIBS) + libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO) + endif +-- +2.28.0 + diff --git a/avahi-0.8-no_undefined.patch b/avahi-0.8-no_undefined.patch new file mode 100644 index 0000000..04dc068 --- /dev/null +++ b/avahi-0.8-no_undefined.patch @@ -0,0 +1,66 @@ +diff -up avahi-0.8/avahi-qt/Makefile.am.no_undefined avahi-0.8/avahi-qt/Makefile.am +--- avahi-0.8/avahi-qt/Makefile.am.no_undefined 2018-09-14 00:31:28.490023071 -0500 ++++ avahi-0.8/avahi-qt/Makefile.am 2020-11-17 16:35:04.646045499 -0600 +@@ -38,9 +38,9 @@ libavahi_qt3_la_SOURCES = \ + qt-watch.moc3: qt-watch.cpp + $(AM_V_GEN)$(MOC_QT3) $^ > $@ + +-libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS) ++libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS) + libavahi_qt3_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT3_LIBS) +-libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO) ++libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO) + endif + + if HAVE_QT4 +@@ -62,7 +62,7 @@ qt-watch.moc4: qt-watch.cpp + + libavahi_qt4_la_CPPFLAGS = $(AM_CFLAGS) $(QT4_CFLAGS) -DQT4 $(VISIBILITY_HIDDEN_CFLAGS) + libavahi_qt4_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT4_LIBS) +-libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT4_VERSION_INFO) ++libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT4_VERSION_INFO) + endif + + if HAVE_QT5 +@@ -84,7 +84,7 @@ qt-watch.moc5: qt-watch.cpp + + libavahi_qt5_la_CPPFLAGS = $(AM_CFLAGS) --std=gnu++11 $(QT5_CFLAGS) -DQT5 $(VISIBILITY_HIDDEN_CFLAGS) + libavahi_qt5_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT5_LIBS) +-libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT5_VERSION_INFO) ++libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT5_VERSION_INFO) + endif + + CLEANFILES = $(BUILT_SOURCES) +diff -up avahi-0.8/avahi-qt/Makefile.in.no_undefined avahi-0.8/avahi-qt/Makefile.in +--- avahi-0.8/avahi-qt/Makefile.in.no_undefined 2020-02-18 01:03:16.474614659 -0600 ++++ avahi-0.8/avahi-qt/Makefile.in 2020-11-17 16:36:12.263297534 -0600 +@@ -551,9 +551,9 @@ BUILT_SOURCES = $(am__append_2) $(am__ap + @HAVE_QT3_TRUE@libavahi_qt3_la_SOURCES = \ + @HAVE_QT3_TRUE@ qt-watch.cpp + +-@HAVE_QT3_TRUE@libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) $(VISIBILITY_HIDDEN_CFLAGS) ++@HAVE_QT3_TRUE@libavahi_qt3_la_CPPFLAGS = $(AM_CFLAGS) $(QT3_CFLAGS) -DQT3 $(VISIBILITY_HIDDEN_CFLAGS) + @HAVE_QT3_TRUE@libavahi_qt3_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT3_LIBS) +-@HAVE_QT3_TRUE@libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO) ++@HAVE_QT3_TRUE@libavahi_qt3_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -export-dynamic -version-info $(LIBAVAHI_QT3_VERSION_INFO) + @HAVE_QT4_TRUE@avahiqt4includedir = $(includedir)/avahi-qt4 + @HAVE_QT4_TRUE@avahiqt4include_HEADERS = \ + @HAVE_QT4_TRUE@ qt-watch.h +@@ -563,7 +563,7 @@ BUILT_SOURCES = $(am__append_2) $(am__ap + + @HAVE_QT4_TRUE@libavahi_qt4_la_CPPFLAGS = $(AM_CFLAGS) $(QT4_CFLAGS) -DQT4 $(VISIBILITY_HIDDEN_CFLAGS) + @HAVE_QT4_TRUE@libavahi_qt4_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT4_LIBS) +-@HAVE_QT4_TRUE@libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT4_VERSION_INFO) ++@HAVE_QT4_TRUE@libavahi_qt4_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT4_VERSION_INFO) + @HAVE_QT5_TRUE@avahiqt5includedir = $(includedir)/avahi-qt5 + @HAVE_QT5_TRUE@avahiqt5include_HEADERS = \ + @HAVE_QT5_TRUE@ qt-watch.h +@@ -573,7 +573,7 @@ BUILT_SOURCES = $(am__append_2) $(am__ap + + @HAVE_QT5_TRUE@libavahi_qt5_la_CPPFLAGS = $(AM_CFLAGS) --std=gnu++11 $(QT5_CFLAGS) -DQT5 $(VISIBILITY_HIDDEN_CFLAGS) + @HAVE_QT5_TRUE@libavahi_qt5_la_LIBADD = $(AM_LDADD) ../avahi-common/libavahi-common.la $(QT5_LIBS) +-@HAVE_QT5_TRUE@libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBAVAHI_QT5_VERSION_INFO) ++@HAVE_QT5_TRUE@libavahi_qt5_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--no-undefined -no-undefined -version-info $(LIBAVAHI_QT5_VERSION_INFO) + CLEANFILES = $(BUILT_SOURCES) + all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-am diff --git a/avahi.spec b/avahi.spec index a787a5c..9ad56d2 100644 --- a/avahi.spec +++ b/avahi.spec @@ -47,7 +47,7 @@ Name: avahi Version: 0.8 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Local network service discovery License: LGPLv2+ URL: http://avahi.org @@ -134,6 +134,10 @@ Patch11: 0011-avahi_dns_packet_consume_uint32-fix-potential-undefi.patch ## downstream patches Patch100: avahi-0.6.30-mono-libdir.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1897925 +# https://github.com/lathiat/avahi/pull/312 +Patch101: 0016-fix-QT3-build.patch +Patch102: avahi-0.8-no_undefined.patch %description Avahi is a system which facilitates service discovery on @@ -431,7 +435,7 @@ rm -fv docs/INSTALL %build -# patch100 requires autogen +# patch100/101/102 requires autogen # and kills rpaths a bonus rm -fv missing NOCONFIGURE=1 ./autogen.sh @@ -820,6 +824,9 @@ exit 0 %changelog +* Tue Nov 17 2020 Rex Dieter - 0.8-7 +- fix undefined symbols in libavahi-qt3 (#1897925) + * Thu Oct 15 2020 Rex Dieter - 0.8-6 - resurrect ui-tools, not just for python (#1885513)