From 57871a06283fe6887c1782ae7010e60b0635f5ab Mon Sep 17 00:00:00 2001 From: Andrey Bondrov Date: Fri, 20 Sep 2013 08:28:49 +1100 Subject: [PATCH] LOG Force Qt4 event loops because with glib event loops libreoffice-kde4 doesn't work well --- libreoffice-4.1.2.2-kde-qt-event-loop.patch | 21 +++++++++++ libreoffice.spec | 39 ++++++++++----------- 2 files changed, 40 insertions(+), 20 deletions(-) create mode 100644 libreoffice-4.1.2.2-kde-qt-event-loop.patch diff --git a/libreoffice-4.1.2.2-kde-qt-event-loop.patch b/libreoffice-4.1.2.2-kde-qt-event-loop.patch new file mode 100644 index 0000000..8878a15 --- /dev/null +++ b/libreoffice-4.1.2.2-kde-qt-event-loop.patch @@ -0,0 +1,21 @@ +diff -urN libreoffice-4.1.2.2/vcl/unx/kde4/KDEXLib.cxx libreoffice-4.1.2.2-patched/vcl/unx/kde4/KDEXLib.cxx +--- libreoffice-4.1.2.2/vcl/unx/kde4/KDEXLib.cxx 2013-09-18 03:27:21.000000000 +1100 ++++ libreoffice-4.1.2.2-patched/vcl/unx/kde4/KDEXLib.cxx 2013-09-19 22:26:27.331000338 +1100 +@@ -42,17 +42,8 @@ + + #include + +-#if QT_VERSION >= QT_VERSION_CHECK( 4, 9, 0 ) + #define QT_UNIX_EVENT_LOOP_SUPPORT 1 +-#else +-#define QT_UNIX_EVENT_LOOP_SUPPORT 0 +-#endif +- +-#if KDE_HAVE_GLIB +-#define GLIB_EVENT_LOOP_SUPPORT 1 +-#else + #define GLIB_EVENT_LOOP_SUPPORT 0 +-#endif + + #if GLIB_EVENT_LOOP_SUPPORT + #include diff --git a/libreoffice.spec b/libreoffice.spec index 59cc453..ff365ce 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -6,7 +6,7 @@ %define l10n 1 %{?_with_l10n: %global l10n 1} %{?_without_l10n: %global l10n 0} -%if %l10n +%if %{l10n} %define langs "en-US af ar as bg bn br bs ca cs cy da de dz el en-GB es et eu fa fi fr ga gl gu he hi hr hu it ja ko kn lt lv mai mk ml mr nb nl nn nr nso or pa-IN pl pt pt-BR ro ru sh si sk sl sr ss st sv ta te th tn tr ts uk ve xh zh-TW zh-CN zu" %else %define langs "en-US" @@ -16,6 +16,8 @@ # As of 4.0, doesn't work -- probably the extensions need porting %define extensionenabled 1 +%define build_kde4 1 + %define relurl http://download.documentfoundation.org/libreoffice/src/%{version} %define devurl http://dev-www.libreoffice.org/ooo_external %define distroname ROSA @@ -26,7 +28,7 @@ %define antpath %{_builddir}/libreoffice-%{version}/apache-ant-1.8.1 #define unopkg %{_bindir}/unopkg -%define use_icecream 0 +%define use_icecream 0 %{?_with_icecream: %global use_icecream 1} %{?_without_icecream: %global use_icecream 0} @@ -44,7 +46,7 @@ Summary: Office suite Name: libreoffice Epoch: 1 Version: 4.1.2 -Release: 1 +Release: 2 License: (MPLv1.1 or LGPLv3+) and LGPLv3 and LGPLv2+ and BSD and (MPLv1.1 or GPLv2 or LGPLv2 or Netscape) and Public Domain and ASL 2.0 and Artistic Group: Office Url: http://www.libreoffice.org @@ -77,6 +79,9 @@ Patch0: libreoffice-4.1.0.1-non-fatal-error-during-test.patch Patch1: libreoffice-3.5.2.2-icu-49.patch Patch2: help-images-mdv64789.patch Patch3: libreoffice-4.1-libcmis-0.4.patch +# Force Qt4 event loops because with glib event loops libreoffice-kde4 doesn't work well +# Requires patched Qt4, see https://bugreports.qt-project.org/browse/QTBUG-16934 +Patch4: libreoffice-4.1.2.2-kde-qt-event-loop.patch # ROSA vendor patch Patch100: libreoffice-4.1-vendor.patch @@ -123,7 +128,9 @@ BuildRequires: zip BuildRequires: cups-devel BuildRequires: hyphen-devel BuildRequires: java-devel +%if %{build_kde4} BuildRequires: kdelibs4-devel +%endif BuildRequires: libwpd-devel >= 0.9.0 BuildRequires: libwpg-devel BuildRequires: libwps-devel @@ -304,11 +311,14 @@ Requires(post,postun): desktop-file-utils Requires(post,postun): update-alternatives # We don't have pdfimport extension anymore and want to make the update smooth Obsoletes: libreoffice-pdfimport < 1:4.1.1 +%if !%{build_kde4} +Obsoletes: %{name}-kde4 < %{EVRD} +%endif %description common This package contains the architecture-independent files of LibreOffice. -%files common -f file-lists/common_list.uniq.sorted.txt +%files common -f file-lists/common_list.uniq.sorted.txt %{_iconsdir}/hicolor/scalable/apps/mandriva-rosa-lo_72.svg %{_mandir}/man1/loffice* %{_mandir}/man1/lofromtemplate* @@ -451,6 +461,7 @@ This package contains the presentation component for LibreOffice. #---------------------------------------------------------------------------- +%if %{build_kde4} %package kde4 Group: Office Summary: KDE4 Integration for LibreOffice (Widgets, Dialogs, Addressbook) @@ -464,6 +475,7 @@ KDE4/Qt4.x and a KDEish File Picker when running under KDE4. %files kde4 -f file-lists/kde4_list.txt %{_libdir}/libreoffice/program/libkde4be1lo.so +%endif #---------------------------------------------------------------------------- @@ -2810,21 +2822,6 @@ export ARCH_FLAGS_OPT="%{optflags} -O2" echo "Configure start at: "`date` >> ooobuildtime.log -ENVCFLAGS="%{optflags} %{optsafe} -g0 -fno-omit-frame-pointer -fno-strict-aliasing" \ -ENVCXXFLAGS="%{optflags} %{optsafe} -g0 -fno-omit-frame-pointer -fno-strict-aliasing -fpermissive -fvisibility-inlines-hidden " \ -#./autogen.sh \ -# --prefix=%{_prefix} \ -# --exec-prefix=%{_prefix} \ -# --bindir=%{_bindir} \ -# --sbindir=%{_sbindir} \ -# --sysconfdir=%{_sysconfdir} \ -# --datadir=%{_datadir} \ -# --includedir=%{_includedir} \ -# --libdir=%{_libdir} \ -# --libexecdir=%{_libdir} \ -# --localstatedir=/var \ -# --mandir=%{_mandir} \ -# --infodir=%{_infodir} \ touch autogen.lastrun %configure2_5x \ --with-distro=%{distroname} \ @@ -2835,13 +2832,15 @@ touch autogen.lastrun --disable-gstreamer-0.10 \ --enable-gstreamer \ --disable-kde \ +%if %{build_kde4} --enable-kde4 \ +%endif --enable-lockdown \ --enable-release-build \ --enable-opengl \ --enable-odk \ --enable-split-app-modules \ - --enable-split-opt-features \ + --enable-split-opt-features \ --enable-telepathy \ --without-fonts \ --without-junit \