extra/libreoffice-still to 7.3.5-2

This commit is contained in:
Kevin Mihelich 2022-08-18 23:19:34 +00:00
parent ecbe168b2d
commit e7db35e333
5 changed files with 25 additions and 5215 deletions

View file

@ -1,76 +0,0 @@
From db43e8a2a02adaa3571137b82855c01fad4c2534 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
Date: Wed, 2 Feb 2022 16:21:43 +0000
Subject: rhbz#2047319 drop the SolarMutex before QApplication::init()
https://invent.kde.org/qt/qt/qtwayland/-/merge_requests/24#note_383915
reproducible with with qt5-qtwayland-5.15.2-17.fc35.x86_64 and
export OOO_FORCE_DESKTOP=plasma5
export SAL_USE_VCLPLUGIN=gtk3
Change-Id: Icdf6b8709865c723c266e6400169b33639a1b0e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129428
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
---
shell/Library_kf5be.mk | 1 +
shell/source/backends/kf5be/kf5backend.cxx | 23 +++++++++++++++--------
2 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/shell/Library_kf5be.mk b/shell/Library_kf5be.mk
index 628145176e0f..157f8b9836f8 100644
--- a/shell/Library_kf5be.mk
+++ b/shell/Library_kf5be.mk
@@ -20,6 +20,7 @@ $(eval $(call gb_Library_use_libraries,kf5be1,\
cppu \
cppuhelper \
sal \
+ vcl \
))
$(eval $(call gb_Library_set_componentfile,kf5be1,shell/source/backends/kf5be/kf5be1))
diff --git a/shell/source/backends/kf5be/kf5backend.cxx b/shell/source/backends/kf5be/kf5backend.cxx
index e9e10e60fd27..2b41414c54cd 100644
--- a/shell/source/backends/kf5be/kf5backend.cxx
+++ b/shell/source/backends/kf5be/kf5backend.cxx
@@ -41,6 +41,7 @@
#include <rtl/ustring.hxx>
#include <sal/types.h>
#include <uno/current_context.hxx>
+#include <vcl/svapp.hxx>
#include <osl/process.h>
#include <osl/thread.h>
@@ -172,14 +173,20 @@ void initQApp(std::map<OUString, css::beans::Optional<css::uno::Any>>& rSettings
unsetenv("SESSION_MANAGER");
}
- std::unique_ptr<QApplication> app(new QApplication(nFakeArgc, pFakeArgv));
- QObject::connect(app.get(), &QObject::destroyed, app.get(), [nFakeArgc, pFakeArgv]() {
- for (int i = 0; i < nFakeArgc; ++i)
- free(pFakeArgv[i]);
- delete[] pFakeArgv;
- });
-
- readKDESettings(rSettings);
+ {
+ // rhbz#2047319 drop the SolarMutex during the execution of QApplication::init()
+ // https://invent.kde.org/qt/qt/qtwayland/-/merge_requests/24#note_383915
+ SolarMutexReleaser aReleaser; // rhbz#2047319 drop the SolarMutex during the execution
+
+ std::unique_ptr<QApplication> app(new QApplication(nFakeArgc, pFakeArgv));
+ QObject::connect(app.get(), &QObject::destroyed, app.get(), [nFakeArgc, pFakeArgv]() {
+ for (int i = 0; i < nFakeArgc; ++i)
+ free(pFakeArgv[i]);
+ delete[] pFakeArgv;
+ });
+
+ readKDESettings(rSettings);
+ }
if (session_manager != nullptr)
{
--
cgit v1.2.1

View file

@ -17,9 +17,9 @@ _google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
pkgbase=libreoffice-still
pkgname=('libreoffice-still-sdk' 'libreoffice-still')
_LOver=7.2.7.2
pkgver=7.2.7
pkgrel=5
_LOver=7.3.5.2
pkgver=7.3.5
pkgrel=2
arch=('x86_64')
license=('LGPL3')
url="https://www.libreoffice.org/"
@ -36,8 +36,9 @@ makedepends=('curl>=7.20.0' 'hunspell>=1.2.8' 'python>=3.7' 'libwpd>=0.9.2' 'lib
'apr' 'serf' 'ttf-liberation' 'ttf-dejavu' 'ttf-carlito' 'libxinerama' 'libpagemaker' 'glm'
'libabw' 'libmwaw' 'libe-book' 'coin-or-mp' 'liblangtag' 'liborcus'
'libexttextcat' 'libcmis' 'gobject-introspection' # 'libfbclient'
'libtommath' 'libzmf' 'xmlsec' 'rxvt-unicode' #'gpgme'
'libtommath' 'libzmf' 'xmlsec' 'rxvt-unicode' 'gpgme'
'libepubgen' 'libfreehand' 'libqxp' 'libstaroffice' 'boost' 'libnumbertext'
'libcuckoo' 'abseil-cpp' 'clang' #'zxing-cpp'
'libffi' 'box2d' 'git'
)
options=('!lto') # using --enable-lto (for parallel link-time optimization)
@ -54,23 +55,16 @@ source=(${_mirror}/libreoffice{,-help,-translations}-${_LOver}.tar.xz{,.asc}
${_additional_source_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
${_additional_source_url}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
${_additional_source_url}/pdfium-4500.tar.bz2
${_additional_source_url}/pdfium-4699.tar.bz2
${_additional_source_url}/dtoa-20180411.tgz
${_additional_source_url}/lxml-4.1.1.tgz
${_additional_source_url}/zxing-cpp-1.1.1.tar.gz
${_additional_source_url}/skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz
${_additional_source_url}/gpgme-1.13.1.tar.bz2
${_additional_source_url}/libgpg-error-1.37.tar.bz2
${_additional_source_url}/libassuan-2.5.3.tar.bz2
${_additional_source_url}/skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz
${_additional_source_url}/zxing-cpp-1.2.0.tar.gz
${_additional_source_url2}/8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar # for test suite
${_additional_source_url2}/odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies-971c54fd38a968f5860014b44301872706f9e540.jar # for test suite
${_additional_source_url2}/f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf
${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll
poppler-22.03.0.patch
poppler-22.04.0.patch
make-pyuno-work-with-system-wide-module-install.diff
mdds-2.0-and-orcus-0.17.diff
0001_drop_the_SolarMutex_before_QApplication.patch
soffice-template.desktop.in
libreoffice-still.sh libreoffice-still.csh)
noextract=(35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
@ -81,25 +75,22 @@ noextract=(35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
pdfium-4500.tar.bz2
pdfium-4699.tar.bz2
dtoa-20180411.tgz
lxml-4.1.1.tgz
zxing-cpp-1.1.1.tar.gz
skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz
gpgme-1.13.1.tar.bz2
libgpg-error-1.37.tar.bz2
libassuan-2.5.3.tar.bz2
skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz
zxing-cpp-1.2.0.tar.gz
8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar # for test suite
odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies-971c54fd38a968f5860014b44301872706f9e540.jar # for test suite
f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf
185d60944ea767075d27247c3162b3bc-unowinreg.dll
)
validpgpkeys=('C2839ECAD9408FBE9531C3E9F434A1EFAFEEAEA3') # LibreOffice Build Team (CODE SIGNING KEY) <build@documentfoundation.org>
sha256sums=('6deaf83a0c2b83c5c8c53c2a9443e2ece51e19469494be2027d4fef3a61bc6a2'
sha256sums=('9b3e0db1ee153330ea05f04109bd817dbac2203d2eed83ef54be54d4c741e991'
'SKIP'
'a4d87b16c05e892b741db9683474692c25907f8df162d5c27ba65bdc8fcb6fe2'
'9571c1953d7297d158dee8849f7e6315b102fb0cafb2280693e6064ef8013ca2'
'SKIP'
'2377014eea11b41e998545aae875ee32df097e869ea329f1be07a44c28595d04'
'd2fe9df14d1d7bbf16dd4c7f2fc9331622619d18caadf612d932496f52e146b2'
'SKIP'
'64585ac36a81291a58269ec5347e7e3e2e8596dbacb9221015c208191333c6e1'
'1fb458d6aab06932693cc8a9b6e4e70944ee1ff052fa63606e3131df34e21753'
@ -109,24 +100,17 @@ sha256sums=('6deaf83a0c2b83c5c8c53c2a9443e2ece51e19469494be2027d4fef3a61bc6a2'
'd30b13f4ba2e3b6a2d4f020c0dee0a9fb9fc6fbcc2d561f36b78da4bf3802370'
'1b5b24f7bc543c0362b667692f78db8bab4ed6dafc6172f104d0bd3757d8a133'
'233f66e8d25c5dd971716d4200203a612a407649686ef3b52075d04b4c9df0dd'
'26a03dd60e5ed0979cdaba9cc848242895110ddfdf347d40989ce2f14020f304'
'ee80fe0a3b20ef5c5babc494cd655d1b1a0bdec710acb04524789df500c563bf'
'0082d0684f7db6f62361b76c4b7faba19e0c7ce5cb8e36c4b65fea8281e711b4'
'940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e'
'acb85cedafa10ce106b1823fb236b1b3e5d942a5741e8f8435cc8ccfec0afe76'
'e595b3fa2ec320beb0b28f6af56b1141853257c2611686685639cebb3b248c86'
'abe0b94d54edb717c58d74263f4ed3d27824d2ce9e9f2ce85a21ab38d993f94d'
'c4e30b227682374c23cddc7fdb9324a99694d907e79242a25a4deeedb393be46'
'b32d6ff72a73cf79797f7f2d039e95e9c6f92f0c1450215410840ab62aea9763'
'91bcb0403866b4e7c4bc1cc52ed4c364a9b5414b3994f718c70303f7f765e702'
'97e859e8467eca9d2441cd23079b61c2c3863b5687620f18cc31a9f966740177'
'653d9e44195d86cf64a36af9ff3a1978ec5599df3882439fefa56e7064f55e8a'
'f2443f27561af52324eee03a1892d9f569adc8db9e7bca55614898bc2a13a770'
'984f2a479df79e27e7b01a5815ac53ae64e07746b882262d8a64566494515504'
'f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140'
'eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6'
'e61e2a266c7a4374377475254a2f095c1ce2376980b301955a4e5a0d32d3c25b'
'caaef7919c6296ab93c7d02607503f91ec965387d038779c0aba9fce78b8e456'
'c463654a73ecfbc242ff109726fb4faecdbfb3d91affafe919b24bea65afb563'
'fd84c4920b25a6ec4f5f08c852ae10a63a3d19c07d83916964f7fa23597d33dd'
'81a8551aaea0ab1750d36fb8bfbd04340a43eaab349a43c1384d21ef6504ab47'
'd0be8099cbee3c9dfda694a828149b881c345b204ab68826f317580aafb50879'
'cd1b25ff390e436c6bffa65c6e12382236e3ccbf8d3aae51b1b59bcaed79fd8a'
'de20f36d45f0fecc2d94176dd3ec7226ab07fa8ffb9b0bc73c200349a9273de1')
@ -135,6 +119,9 @@ prepare() {
cd libreoffice-$_LOver
# Workaround to fix build with gpgme 1.18.0
export ac_cv_lib_gpgmepp_progress_callback=yes
# move external sources into place
mkdir "${srcdir}"/ext_sources && pushd "${srcdir}"/ext_sources
for source in "${noextract[@]}"; do
@ -147,18 +134,9 @@ prepare() {
rm "${srcdir}"/ext_sources/185d60944ea767075d27247c3162b3bc-unowinreg.dll
cp -f "${srcdir}"/185d60944ea767075d27247c3162b3bc-unowinreg.dll "${srcdir}"/ext_sources
patch -Np1 -i "${srcdir}"/poppler-22.03.0.patch
patch -Np0 -i "${srcdir}"/poppler-22.04.0.patch
# fix not upstreamable pyuno paths - FS#54250
patch -Np1 -i "${srcdir}"/make-pyuno-work-with-system-wide-module-install.diff
# fix build with current system libixion/liborcus/mdds
patch -Np1 -i "${srcdir}"/mdds-2.0-and-orcus-0.17.diff
# fix crash on start - FS#73471
patch -Np1 -i "${srcdir}"/0001_drop_the_SolarMutex_before_QApplication.patch
#use the CFLAGS but remove the LibO overridden ones
for i in $CFLAGS; do
case "$i" in
@ -241,8 +219,9 @@ build() {
--with-system-libwps \
--with-system-redland\
--with-system-libzmf \
--without-system-gpgmepp \
--with-system-gpgmepp \
--with-system-libstaroffice \
--with-system-cuckoo \
--with-system-serf \
--with-jdk-home="/usr/lib/jvm/default" \
--with-ant-home="/usr/share/ant"\
@ -308,8 +287,9 @@ package_libreoffice-still() {
'desktop-file-utils' 'shared-mime-info' 'libpagemaker'
'libxinerama' 'libabw' 'libmwaw' 'libe-book' 'libcups'
'liblangtag' 'libexttextcat' 'libcmis' 'liborcus' # 'libfbclient'
'libtommath' 'libzmf' 'libatomic_ops' 'xmlsec' 'libnumbertext' #'gpgme'
'libtommath' 'libzmf' 'libatomic_ops' 'xmlsec' 'libnumbertext' 'gpgme'
'libfreehand' 'libstaroffice' 'libepubgen' 'libqxp' 'libepoxy' 'box2d'
#'zxing-cpp'
'xdg-utils')
optdepends=('java-runtime: adds java support'
'java-environment: required by extension-wiki-publisher and extension-nlpsolver'
@ -410,3 +390,4 @@ package_libreoffice-still() {
'sid','sk','sl','sq','sv','ta','tg','tr','ug','uk','vi','zh-CN','zh-TW'])" \
> "${pkgdir}"/usr/lib/libreoffice/help/languages.js
}

File diff suppressed because it is too large Load diff

View file

@ -1,28 +0,0 @@
diff --git a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
index ad6320139..e5f6d9c68 100644
--- a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
+++ b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
@@ -138,6 +138,15 @@ int main(int argc, char **argv)
_setmode( _fileno( g_binary_out ), _O_BINARY );
#endif
+#if POPPLER_CHECK_VERSION(22, 3, 0)
+ PDFDoc aDoc( std::make_unique<GooString>(pFileName),
+ GooString(pOwnerPasswordStr),
+ GooString(pUserPasswordStr) );
+
+ PDFDoc aErrDoc( std::make_unique<GooString>(pErrFileName),
+ GooString(pOwnerPasswordStr),
+ GooString(pUserPasswordStr) );
+#else
PDFDoc aDoc( pFileName,
pOwnerPasswordStr,
pUserPasswordStr );
@@ -145,6 +154,7 @@ int main(int argc, char **argv)
PDFDoc aErrDoc( pErrFileName,
pOwnerPasswordStr,
pUserPasswordStr );
+#endif
// Check various permissions for aDoc.
PDFDoc &rDoc = aDoc.isOk()? aDoc: aErrDoc;

View file

@ -1,71 +0,0 @@
# Patch from FreeBSD (https://cgit.freebsd.org/ports/commit/?id=d9b5ef800dbd)
--- sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx.orig 2022-04-26 16:11:01 UTC
+++ sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
@@ -474,11 +474,17 @@ int PDFOutDev::parseFont( long long nNewId, GfxFont* g
{
// TODO(P3): Unfortunately, need to read stream twice, since
// we must write byte count to stdout before
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
char* pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef(), &nSize );
+#else
+ std::optional<std::vector<unsigned char>> pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef() );
+#endif
if( pBuf )
{
aNewFont.isEmbedded = true;
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
gfree(pBuf);
+#endif
}
}
@@ -492,21 +498,32 @@ void PDFOutDev::writeFontFile( GfxFont* gfxFont ) cons
return;
int nSize = 0;
- char* pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef(), &nSize );
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
+ char* pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef(), &nSize );
+#else
+ std::optional<std::vector<unsigned char>> pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef() );
+#endif
if( !pBuf )
return;
// ---sync point--- see SYNC STREAMS above
fflush(stdout);
-
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
if( fwrite(pBuf, sizeof(char), nSize, g_binary_out) != static_cast<size_t>(nSize) )
+#else
+ if( fwrite(reinterpret_cast<char*>(pBuf.value().data()), sizeof(char), nSize, g_binary_out) != static_cast<size_t>(nSize) )
+#endif
{
- gfree(pBuf);
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
+ gfree(pBuf);
+#endif
exit(1); // error
}
// ---sync point--- see SYNC STREAMS above
fflush(g_binary_out);
- gfree(pBuf);
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
+ gfree(pBuf);
+#endif
}
#if POPPLER_CHECK_VERSION(0, 83, 0)
@@ -759,7 +776,11 @@ void PDFOutDev::updateFont(GfxState *state)
{
assert(state);
+#if !POPPLER_CHECK_VERSION(22, 3, 0)
GfxFont *gfxFont = state->getFont();
+#else
+ GfxFont *gfxFont = state->getFont().get();
+#endif
if( !gfxFont )
return;